worker-xquery.js 3.4 MB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086160871608816089160901609116092160931609416095160961609716098160991610016101161021610316104161051610616107161081610916110161111611216113161141611516116161171611816119161201612116122161231612416125161261612716128161291613016131161321613316134161351613616137161381613916140161411614216143161441614516146161471614816149161501615116152161531615416155161561615716158161591616016161161621616316164161651616616167161681616916170161711617216173161741617516176161771617816179161801618116182161831618416185161861618716188161891619016191161921619316194161951619616197161981619916200162011620216203162041620516206162071620816209162101621116212162131621416215162161621716218162191622016221162221622316224162251622616227162281622916230162311623216233162341623516236162371623816239162401624116242162431624416245162461624716248162491625016251162521625316254162551625616257162581625916260162611626216263162641626516266162671626816269162701627116272162731627416275162761627716278162791628016281162821628316284162851628616287162881628916290162911629216293162941629516296162971629816299163001630116302163031630416305163061630716308163091631016311163121631316314163151631616317163181631916320163211632216323163241632516326163271632816329163301633116332163331633416335163361633716338163391634016341163421634316344163451634616347163481634916350163511635216353163541635516356163571635816359163601636116362163631636416365163661636716368163691637016371163721637316374163751637616377163781637916380163811638216383163841638516386163871638816389163901639116392163931639416395163961639716398163991640016401164021640316404164051640616407164081640916410164111641216413164141641516416164171641816419164201642116422164231642416425164261642716428164291643016431164321643316434164351643616437164381643916440164411644216443164441644516446164471644816449164501645116452164531645416455164561645716458164591646016461164621646316464164651646616467164681646916470164711647216473164741647516476164771647816479164801648116482164831648416485164861648716488164891649016491164921649316494164951649616497164981649916500165011650216503165041650516506165071650816509165101651116512165131651416515165161651716518165191652016521165221652316524165251652616527165281652916530165311653216533165341653516536165371653816539165401654116542165431654416545165461654716548165491655016551165521655316554165551655616557165581655916560165611656216563165641656516566165671656816569165701657116572165731657416575165761657716578165791658016581165821658316584165851658616587165881658916590165911659216593165941659516596165971659816599166001660116602166031660416605166061660716608166091661016611166121661316614166151661616617166181661916620166211662216623166241662516626166271662816629166301663116632166331663416635166361663716638166391664016641166421664316644166451664616647166481664916650166511665216653166541665516656166571665816659166601666116662166631666416665166661666716668166691667016671166721667316674166751667616677166781667916680166811668216683166841668516686166871668816689166901669116692166931669416695166961669716698166991670016701167021670316704167051670616707167081670916710167111671216713167141671516716167171671816719167201672116722167231672416725167261672716728167291673016731167321673316734167351673616737167381673916740167411674216743167441674516746167471674816749167501675116752167531675416755167561675716758167591676016761167621676316764167651676616767167681676916770167711677216773167741677516776167771677816779167801678116782167831678416785167861678716788167891679016791167921679316794167951679616797167981679916800168011680216803168041680516806168071680816809168101681116812168131681416815168161681716818168191682016821168221682316824168251682616827168281682916830168311683216833168341683516836168371683816839168401684116842168431684416845168461684716848168491685016851168521685316854168551685616857168581685916860168611686216863168641686516866168671686816869168701687116872168731687416875168761687716878168791688016881168821688316884168851688616887168881688916890168911689216893168941689516896168971689816899169001690116902169031690416905169061690716908169091691016911169121691316914169151691616917169181691916920169211692216923169241692516926169271692816929169301693116932169331693416935169361693716938169391694016941169421694316944169451694616947169481694916950169511695216953169541695516956169571695816959169601696116962169631696416965169661696716968169691697016971169721697316974169751697616977169781697916980169811698216983169841698516986169871698816989169901699116992169931699416995169961699716998169991700017001170021700317004170051700617007170081700917010170111701217013170141701517016170171701817019170201702117022170231702417025170261702717028170291703017031170321703317034170351703617037170381703917040170411704217043170441704517046170471704817049170501705117052170531705417055170561705717058170591706017061170621706317064170651706617067170681706917070170711707217073170741707517076170771707817079170801708117082170831708417085170861708717088170891709017091170921709317094170951709617097170981709917100171011710217103171041710517106171071710817109171101711117112171131711417115171161711717118171191712017121171221712317124171251712617127171281712917130171311713217133171341713517136171371713817139171401714117142171431714417145171461714717148171491715017151171521715317154171551715617157171581715917160171611716217163171641716517166171671716817169171701717117172171731717417175171761717717178171791718017181171821718317184171851718617187171881718917190171911719217193171941719517196171971719817199172001720117202172031720417205172061720717208172091721017211172121721317214172151721617217172181721917220172211722217223172241722517226172271722817229172301723117232172331723417235172361723717238172391724017241172421724317244172451724617247172481724917250172511725217253172541725517256172571725817259172601726117262172631726417265172661726717268172691727017271172721727317274172751727617277172781727917280172811728217283172841728517286172871728817289172901729117292172931729417295172961729717298172991730017301173021730317304173051730617307173081730917310173111731217313173141731517316173171731817319173201732117322173231732417325173261732717328173291733017331173321733317334173351733617337173381733917340173411734217343173441734517346173471734817349173501735117352173531735417355173561735717358173591736017361173621736317364173651736617367173681736917370173711737217373173741737517376173771737817379173801738117382173831738417385173861738717388173891739017391173921739317394173951739617397173981739917400174011740217403174041740517406174071740817409174101741117412174131741417415174161741717418174191742017421174221742317424174251742617427174281742917430174311743217433174341743517436174371743817439174401744117442174431744417445174461744717448174491745017451174521745317454174551745617457174581745917460174611746217463174641746517466174671746817469174701747117472174731747417475174761747717478174791748017481174821748317484174851748617487174881748917490174911749217493174941749517496174971749817499175001750117502175031750417505175061750717508175091751017511175121751317514175151751617517175181751917520175211752217523175241752517526175271752817529175301753117532175331753417535175361753717538175391754017541175421754317544175451754617547175481754917550175511755217553175541755517556175571755817559175601756117562175631756417565175661756717568175691757017571175721757317574175751757617577175781757917580175811758217583175841758517586175871758817589175901759117592175931759417595175961759717598175991760017601176021760317604176051760617607176081760917610176111761217613176141761517616176171761817619176201762117622176231762417625176261762717628176291763017631176321763317634176351763617637176381763917640176411764217643176441764517646176471764817649176501765117652176531765417655176561765717658176591766017661176621766317664176651766617667176681766917670176711767217673176741767517676176771767817679176801768117682176831768417685176861768717688176891769017691176921769317694176951769617697176981769917700177011770217703177041770517706177071770817709177101771117712177131771417715177161771717718177191772017721177221772317724177251772617727177281772917730177311773217733177341773517736177371773817739177401774117742177431774417745177461774717748177491775017751177521775317754177551775617757177581775917760177611776217763177641776517766177671776817769177701777117772177731777417775177761777717778177791778017781177821778317784177851778617787177881778917790177911779217793177941779517796177971779817799178001780117802178031780417805178061780717808178091781017811178121781317814178151781617817178181781917820178211782217823178241782517826178271782817829178301783117832178331783417835178361783717838178391784017841178421784317844178451784617847178481784917850178511785217853178541785517856178571785817859178601786117862178631786417865178661786717868178691787017871178721787317874178751787617877178781787917880178811788217883178841788517886178871788817889178901789117892178931789417895178961789717898178991790017901179021790317904179051790617907179081790917910179111791217913179141791517916179171791817919179201792117922179231792417925179261792717928179291793017931179321793317934179351793617937179381793917940179411794217943179441794517946179471794817949179501795117952179531795417955179561795717958179591796017961179621796317964179651796617967179681796917970179711797217973179741797517976179771797817979179801798117982179831798417985179861798717988179891799017991179921799317994179951799617997179981799918000180011800218003180041800518006180071800818009180101801118012180131801418015180161801718018180191802018021180221802318024180251802618027180281802918030180311803218033180341803518036180371803818039180401804118042180431804418045180461804718048180491805018051180521805318054180551805618057180581805918060180611806218063180641806518066180671806818069180701807118072180731807418075180761807718078180791808018081180821808318084180851808618087180881808918090180911809218093180941809518096180971809818099181001810118102181031810418105181061810718108181091811018111181121811318114181151811618117181181811918120181211812218123181241812518126181271812818129181301813118132181331813418135181361813718138181391814018141181421814318144181451814618147181481814918150181511815218153181541815518156181571815818159181601816118162181631816418165181661816718168181691817018171181721817318174181751817618177181781817918180181811818218183181841818518186181871818818189181901819118192181931819418195181961819718198181991820018201182021820318204182051820618207182081820918210182111821218213182141821518216182171821818219182201822118222182231822418225182261822718228182291823018231182321823318234182351823618237182381823918240182411824218243182441824518246182471824818249182501825118252182531825418255182561825718258182591826018261182621826318264182651826618267182681826918270182711827218273182741827518276182771827818279182801828118282182831828418285182861828718288182891829018291182921829318294182951829618297182981829918300183011830218303183041830518306183071830818309183101831118312183131831418315183161831718318183191832018321183221832318324183251832618327183281832918330183311833218333183341833518336183371833818339183401834118342183431834418345183461834718348183491835018351183521835318354183551835618357183581835918360183611836218363183641836518366183671836818369183701837118372183731837418375183761837718378183791838018381183821838318384183851838618387183881838918390183911839218393183941839518396183971839818399184001840118402184031840418405184061840718408184091841018411184121841318414184151841618417184181841918420184211842218423184241842518426184271842818429184301843118432184331843418435184361843718438184391844018441184421844318444184451844618447184481844918450184511845218453184541845518456184571845818459184601846118462184631846418465184661846718468184691847018471184721847318474184751847618477184781847918480184811848218483184841848518486184871848818489184901849118492184931849418495184961849718498184991850018501185021850318504185051850618507185081850918510185111851218513185141851518516185171851818519185201852118522185231852418525185261852718528185291853018531185321853318534185351853618537185381853918540185411854218543185441854518546185471854818549185501855118552185531855418555185561855718558185591856018561185621856318564185651856618567185681856918570185711857218573185741857518576185771857818579185801858118582185831858418585185861858718588185891859018591185921859318594185951859618597185981859918600186011860218603186041860518606186071860818609186101861118612186131861418615186161861718618186191862018621186221862318624186251862618627186281862918630186311863218633186341863518636186371863818639186401864118642186431864418645186461864718648186491865018651186521865318654186551865618657186581865918660186611866218663186641866518666186671866818669186701867118672186731867418675186761867718678186791868018681186821868318684186851868618687186881868918690186911869218693186941869518696186971869818699187001870118702187031870418705187061870718708187091871018711187121871318714187151871618717187181871918720187211872218723187241872518726187271872818729187301873118732187331873418735187361873718738187391874018741187421874318744187451874618747187481874918750187511875218753187541875518756187571875818759187601876118762187631876418765187661876718768187691877018771187721877318774187751877618777187781877918780187811878218783187841878518786187871878818789187901879118792187931879418795187961879718798187991880018801188021880318804188051880618807188081880918810188111881218813188141881518816188171881818819188201882118822188231882418825188261882718828188291883018831188321883318834188351883618837188381883918840188411884218843188441884518846188471884818849188501885118852188531885418855188561885718858188591886018861188621886318864188651886618867188681886918870188711887218873188741887518876188771887818879188801888118882188831888418885188861888718888188891889018891188921889318894188951889618897188981889918900189011890218903189041890518906189071890818909189101891118912189131891418915189161891718918189191892018921189221892318924189251892618927189281892918930189311893218933189341893518936189371893818939189401894118942189431894418945189461894718948189491895018951189521895318954189551895618957189581895918960189611896218963189641896518966189671896818969189701897118972189731897418975189761897718978189791898018981189821898318984189851898618987189881898918990189911899218993189941899518996189971899818999190001900119002190031900419005190061900719008190091901019011190121901319014190151901619017190181901919020190211902219023190241902519026190271902819029190301903119032190331903419035190361903719038190391904019041190421904319044190451904619047190481904919050190511905219053190541905519056190571905819059190601906119062190631906419065190661906719068190691907019071190721907319074190751907619077190781907919080190811908219083190841908519086190871908819089190901909119092190931909419095190961909719098190991910019101191021910319104191051910619107191081910919110191111911219113191141911519116191171911819119191201912119122191231912419125191261912719128191291913019131191321913319134191351913619137191381913919140191411914219143191441914519146191471914819149191501915119152191531915419155191561915719158191591916019161191621916319164191651916619167191681916919170191711917219173191741917519176191771917819179191801918119182191831918419185191861918719188191891919019191191921919319194191951919619197191981919919200192011920219203192041920519206192071920819209192101921119212192131921419215192161921719218192191922019221192221922319224192251922619227192281922919230192311923219233192341923519236192371923819239192401924119242192431924419245192461924719248192491925019251192521925319254192551925619257192581925919260192611926219263192641926519266192671926819269192701927119272192731927419275192761927719278192791928019281192821928319284192851928619287192881928919290192911929219293192941929519296192971929819299193001930119302193031930419305193061930719308193091931019311193121931319314193151931619317193181931919320193211932219323193241932519326193271932819329193301933119332193331933419335193361933719338193391934019341193421934319344193451934619347193481934919350193511935219353193541935519356193571935819359193601936119362193631936419365193661936719368193691937019371193721937319374193751937619377193781937919380193811938219383193841938519386193871938819389193901939119392193931939419395193961939719398193991940019401194021940319404194051940619407194081940919410194111941219413194141941519416194171941819419194201942119422194231942419425194261942719428194291943019431194321943319434194351943619437194381943919440194411944219443194441944519446194471944819449194501945119452194531945419455194561945719458194591946019461194621946319464194651946619467194681946919470194711947219473194741947519476194771947819479194801948119482194831948419485194861948719488194891949019491194921949319494194951949619497194981949919500195011950219503195041950519506195071950819509195101951119512195131951419515195161951719518195191952019521195221952319524195251952619527195281952919530195311953219533195341953519536195371953819539195401954119542195431954419545195461954719548195491955019551195521955319554195551955619557195581955919560195611956219563195641956519566195671956819569195701957119572195731957419575195761957719578195791958019581195821958319584195851958619587195881958919590195911959219593195941959519596195971959819599196001960119602196031960419605196061960719608196091961019611196121961319614196151961619617196181961919620196211962219623196241962519626196271962819629196301963119632196331963419635196361963719638196391964019641196421964319644196451964619647196481964919650196511965219653196541965519656196571965819659196601966119662196631966419665196661966719668196691967019671196721967319674196751967619677196781967919680196811968219683196841968519686196871968819689196901969119692196931969419695196961969719698196991970019701197021970319704197051970619707197081970919710197111971219713197141971519716197171971819719197201972119722197231972419725197261972719728197291973019731197321973319734197351973619737197381973919740197411974219743197441974519746197471974819749197501975119752197531975419755197561975719758197591976019761197621976319764197651976619767197681976919770197711977219773197741977519776197771977819779197801978119782197831978419785197861978719788197891979019791197921979319794197951979619797197981979919800198011980219803198041980519806198071980819809198101981119812198131981419815198161981719818198191982019821198221982319824198251982619827198281982919830198311983219833198341983519836198371983819839198401984119842198431984419845198461984719848198491985019851198521985319854198551985619857198581985919860198611986219863198641986519866198671986819869198701987119872198731987419875198761987719878198791988019881198821988319884198851988619887198881988919890198911989219893198941989519896198971989819899199001990119902199031990419905199061990719908199091991019911199121991319914199151991619917199181991919920199211992219923199241992519926199271992819929199301993119932199331993419935199361993719938199391994019941199421994319944199451994619947199481994919950199511995219953199541995519956199571995819959199601996119962199631996419965199661996719968199691997019971199721997319974199751997619977199781997919980199811998219983199841998519986199871998819989199901999119992199931999419995199961999719998199992000020001200022000320004200052000620007200082000920010200112001220013200142001520016200172001820019200202002120022200232002420025200262002720028200292003020031200322003320034200352003620037200382003920040200412004220043200442004520046200472004820049200502005120052200532005420055200562005720058200592006020061200622006320064200652006620067200682006920070200712007220073200742007520076200772007820079200802008120082200832008420085200862008720088200892009020091200922009320094200952009620097200982009920100201012010220103201042010520106201072010820109201102011120112201132011420115201162011720118201192012020121201222012320124201252012620127201282012920130201312013220133201342013520136201372013820139201402014120142201432014420145201462014720148201492015020151201522015320154201552015620157201582015920160201612016220163201642016520166201672016820169201702017120172201732017420175201762017720178201792018020181201822018320184201852018620187201882018920190201912019220193201942019520196201972019820199202002020120202202032020420205202062020720208202092021020211202122021320214202152021620217202182021920220202212022220223202242022520226202272022820229202302023120232202332023420235202362023720238202392024020241202422024320244202452024620247202482024920250202512025220253202542025520256202572025820259202602026120262202632026420265202662026720268202692027020271202722027320274202752027620277202782027920280202812028220283202842028520286202872028820289202902029120292202932029420295202962029720298202992030020301203022030320304203052030620307203082030920310203112031220313203142031520316203172031820319203202032120322203232032420325203262032720328203292033020331203322033320334203352033620337203382033920340203412034220343203442034520346203472034820349203502035120352203532035420355203562035720358203592036020361203622036320364203652036620367203682036920370203712037220373203742037520376203772037820379203802038120382203832038420385203862038720388203892039020391203922039320394203952039620397203982039920400204012040220403204042040520406204072040820409204102041120412204132041420415204162041720418204192042020421204222042320424204252042620427204282042920430204312043220433204342043520436204372043820439204402044120442204432044420445204462044720448204492045020451204522045320454204552045620457204582045920460204612046220463204642046520466204672046820469204702047120472204732047420475204762047720478204792048020481204822048320484204852048620487204882048920490204912049220493204942049520496204972049820499205002050120502205032050420505205062050720508205092051020511205122051320514205152051620517205182051920520205212052220523205242052520526205272052820529205302053120532205332053420535205362053720538205392054020541205422054320544205452054620547205482054920550205512055220553205542055520556205572055820559205602056120562205632056420565205662056720568205692057020571205722057320574205752057620577205782057920580205812058220583205842058520586205872058820589205902059120592205932059420595205962059720598205992060020601206022060320604206052060620607206082060920610206112061220613206142061520616206172061820619206202062120622206232062420625206262062720628206292063020631206322063320634206352063620637206382063920640206412064220643206442064520646206472064820649206502065120652206532065420655206562065720658206592066020661206622066320664206652066620667206682066920670206712067220673206742067520676206772067820679206802068120682206832068420685206862068720688206892069020691206922069320694206952069620697206982069920700207012070220703207042070520706207072070820709207102071120712207132071420715207162071720718207192072020721207222072320724207252072620727207282072920730207312073220733207342073520736207372073820739207402074120742207432074420745207462074720748207492075020751207522075320754207552075620757207582075920760207612076220763207642076520766207672076820769207702077120772207732077420775207762077720778207792078020781207822078320784207852078620787207882078920790207912079220793207942079520796207972079820799208002080120802208032080420805208062080720808208092081020811208122081320814208152081620817208182081920820208212082220823208242082520826208272082820829208302083120832208332083420835208362083720838208392084020841208422084320844208452084620847208482084920850208512085220853208542085520856208572085820859208602086120862208632086420865208662086720868208692087020871208722087320874208752087620877208782087920880208812088220883208842088520886208872088820889208902089120892208932089420895208962089720898208992090020901209022090320904209052090620907209082090920910209112091220913209142091520916209172091820919209202092120922209232092420925209262092720928209292093020931209322093320934209352093620937209382093920940209412094220943209442094520946209472094820949209502095120952209532095420955209562095720958209592096020961209622096320964209652096620967209682096920970209712097220973209742097520976209772097820979209802098120982209832098420985209862098720988209892099020991209922099320994209952099620997209982099921000210012100221003210042100521006210072100821009210102101121012210132101421015210162101721018210192102021021210222102321024210252102621027210282102921030210312103221033210342103521036210372103821039210402104121042210432104421045210462104721048210492105021051210522105321054210552105621057210582105921060210612106221063210642106521066210672106821069210702107121072210732107421075210762107721078210792108021081210822108321084210852108621087210882108921090210912109221093210942109521096210972109821099211002110121102211032110421105211062110721108211092111021111211122111321114211152111621117211182111921120211212112221123211242112521126211272112821129211302113121132211332113421135211362113721138211392114021141211422114321144211452114621147211482114921150211512115221153211542115521156211572115821159211602116121162211632116421165211662116721168211692117021171211722117321174211752117621177211782117921180211812118221183211842118521186211872118821189211902119121192211932119421195211962119721198211992120021201212022120321204212052120621207212082120921210212112121221213212142121521216212172121821219212202122121222212232122421225212262122721228212292123021231212322123321234212352123621237212382123921240212412124221243212442124521246212472124821249212502125121252212532125421255212562125721258212592126021261212622126321264212652126621267212682126921270212712127221273212742127521276212772127821279212802128121282212832128421285212862128721288212892129021291212922129321294212952129621297212982129921300213012130221303213042130521306213072130821309213102131121312213132131421315213162131721318213192132021321213222132321324213252132621327213282132921330213312133221333213342133521336213372133821339213402134121342213432134421345213462134721348213492135021351213522135321354213552135621357213582135921360213612136221363213642136521366213672136821369213702137121372213732137421375213762137721378213792138021381213822138321384213852138621387213882138921390213912139221393213942139521396213972139821399214002140121402214032140421405214062140721408214092141021411214122141321414214152141621417214182141921420214212142221423214242142521426214272142821429214302143121432214332143421435214362143721438214392144021441214422144321444214452144621447214482144921450214512145221453214542145521456214572145821459214602146121462214632146421465214662146721468214692147021471214722147321474214752147621477214782147921480214812148221483214842148521486214872148821489214902149121492214932149421495214962149721498214992150021501215022150321504215052150621507215082150921510215112151221513215142151521516215172151821519215202152121522215232152421525215262152721528215292153021531215322153321534215352153621537215382153921540215412154221543215442154521546215472154821549215502155121552215532155421555215562155721558215592156021561215622156321564215652156621567215682156921570215712157221573215742157521576215772157821579215802158121582215832158421585215862158721588215892159021591215922159321594215952159621597215982159921600216012160221603216042160521606216072160821609216102161121612216132161421615216162161721618216192162021621216222162321624216252162621627216282162921630216312163221633216342163521636216372163821639216402164121642216432164421645216462164721648216492165021651216522165321654216552165621657216582165921660216612166221663216642166521666216672166821669216702167121672216732167421675216762167721678216792168021681216822168321684216852168621687216882168921690216912169221693216942169521696216972169821699217002170121702217032170421705217062170721708217092171021711217122171321714217152171621717217182171921720217212172221723217242172521726217272172821729217302173121732217332173421735217362173721738217392174021741217422174321744217452174621747217482174921750217512175221753217542175521756217572175821759217602176121762217632176421765217662176721768217692177021771217722177321774217752177621777217782177921780217812178221783217842178521786217872178821789217902179121792217932179421795217962179721798217992180021801218022180321804218052180621807218082180921810218112181221813218142181521816218172181821819218202182121822218232182421825218262182721828218292183021831218322183321834218352183621837218382183921840218412184221843218442184521846218472184821849218502185121852218532185421855218562185721858218592186021861218622186321864218652186621867218682186921870218712187221873218742187521876218772187821879218802188121882218832188421885218862188721888218892189021891218922189321894218952189621897218982189921900219012190221903219042190521906219072190821909219102191121912219132191421915219162191721918219192192021921219222192321924219252192621927219282192921930219312193221933219342193521936219372193821939219402194121942219432194421945219462194721948219492195021951219522195321954219552195621957219582195921960219612196221963219642196521966219672196821969219702197121972219732197421975219762197721978219792198021981219822198321984219852198621987219882198921990219912199221993219942199521996219972199821999220002200122002220032200422005220062200722008220092201022011220122201322014220152201622017220182201922020220212202222023220242202522026220272202822029220302203122032220332203422035220362203722038220392204022041220422204322044220452204622047220482204922050220512205222053220542205522056220572205822059220602206122062220632206422065220662206722068220692207022071220722207322074220752207622077220782207922080220812208222083220842208522086220872208822089220902209122092220932209422095220962209722098220992210022101221022210322104221052210622107221082210922110221112211222113221142211522116221172211822119221202212122122221232212422125221262212722128221292213022131221322213322134221352213622137221382213922140221412214222143221442214522146221472214822149221502215122152221532215422155221562215722158221592216022161221622216322164221652216622167221682216922170221712217222173221742217522176221772217822179221802218122182221832218422185221862218722188221892219022191221922219322194221952219622197221982219922200222012220222203222042220522206222072220822209222102221122212222132221422215222162221722218222192222022221222222222322224222252222622227222282222922230222312223222233222342223522236222372223822239222402224122242222432224422245222462224722248222492225022251222522225322254222552225622257222582225922260222612226222263222642226522266222672226822269222702227122272222732227422275222762227722278222792228022281222822228322284222852228622287222882228922290222912229222293222942229522296222972229822299223002230122302223032230422305223062230722308223092231022311223122231322314223152231622317223182231922320223212232222323223242232522326223272232822329223302233122332223332233422335223362233722338223392234022341223422234322344223452234622347223482234922350223512235222353223542235522356223572235822359223602236122362223632236422365223662236722368223692237022371223722237322374223752237622377223782237922380223812238222383223842238522386223872238822389223902239122392223932239422395223962239722398223992240022401224022240322404224052240622407224082240922410224112241222413224142241522416224172241822419224202242122422224232242422425224262242722428224292243022431224322243322434224352243622437224382243922440224412244222443224442244522446224472244822449224502245122452224532245422455224562245722458224592246022461224622246322464224652246622467224682246922470224712247222473224742247522476224772247822479224802248122482224832248422485224862248722488224892249022491224922249322494224952249622497224982249922500225012250222503225042250522506225072250822509225102251122512225132251422515225162251722518225192252022521225222252322524225252252622527225282252922530225312253222533225342253522536225372253822539225402254122542225432254422545225462254722548225492255022551225522255322554225552255622557225582255922560225612256222563225642256522566225672256822569225702257122572225732257422575225762257722578225792258022581225822258322584225852258622587225882258922590225912259222593225942259522596225972259822599226002260122602226032260422605226062260722608226092261022611226122261322614226152261622617226182261922620226212262222623226242262522626226272262822629226302263122632226332263422635226362263722638226392264022641226422264322644226452264622647226482264922650226512265222653226542265522656226572265822659226602266122662226632266422665226662266722668226692267022671226722267322674226752267622677226782267922680226812268222683226842268522686226872268822689226902269122692226932269422695226962269722698226992270022701227022270322704227052270622707227082270922710227112271222713227142271522716227172271822719227202272122722227232272422725227262272722728227292273022731227322273322734227352273622737227382273922740227412274222743227442274522746227472274822749227502275122752227532275422755227562275722758227592276022761227622276322764227652276622767227682276922770227712277222773227742277522776227772277822779227802278122782227832278422785227862278722788227892279022791227922279322794227952279622797227982279922800228012280222803228042280522806228072280822809228102281122812228132281422815228162281722818228192282022821228222282322824228252282622827228282282922830228312283222833228342283522836228372283822839228402284122842228432284422845228462284722848228492285022851228522285322854228552285622857228582285922860228612286222863228642286522866228672286822869228702287122872228732287422875228762287722878228792288022881228822288322884228852288622887228882288922890228912289222893228942289522896228972289822899229002290122902229032290422905229062290722908229092291022911229122291322914229152291622917229182291922920229212292222923229242292522926229272292822929229302293122932229332293422935229362293722938229392294022941229422294322944229452294622947229482294922950229512295222953229542295522956229572295822959229602296122962229632296422965229662296722968229692297022971229722297322974229752297622977229782297922980229812298222983229842298522986229872298822989229902299122992229932299422995229962299722998229992300023001230022300323004230052300623007230082300923010230112301223013230142301523016230172301823019230202302123022230232302423025230262302723028230292303023031230322303323034230352303623037230382303923040230412304223043230442304523046230472304823049230502305123052230532305423055230562305723058230592306023061230622306323064230652306623067230682306923070230712307223073230742307523076230772307823079230802308123082230832308423085230862308723088230892309023091230922309323094230952309623097230982309923100231012310223103231042310523106231072310823109231102311123112231132311423115231162311723118231192312023121231222312323124231252312623127231282312923130231312313223133231342313523136231372313823139231402314123142231432314423145231462314723148231492315023151231522315323154231552315623157231582315923160231612316223163231642316523166231672316823169231702317123172231732317423175231762317723178231792318023181231822318323184231852318623187231882318923190231912319223193231942319523196231972319823199232002320123202232032320423205232062320723208232092321023211232122321323214232152321623217232182321923220232212322223223232242322523226232272322823229232302323123232232332323423235232362323723238232392324023241232422324323244232452324623247232482324923250232512325223253232542325523256232572325823259232602326123262232632326423265232662326723268232692327023271232722327323274232752327623277232782327923280232812328223283232842328523286232872328823289232902329123292232932329423295232962329723298232992330023301233022330323304233052330623307233082330923310233112331223313233142331523316233172331823319233202332123322233232332423325233262332723328233292333023331233322333323334233352333623337233382333923340233412334223343233442334523346233472334823349233502335123352233532335423355233562335723358233592336023361233622336323364233652336623367233682336923370233712337223373233742337523376233772337823379233802338123382233832338423385233862338723388233892339023391233922339323394233952339623397233982339923400234012340223403234042340523406234072340823409234102341123412234132341423415234162341723418234192342023421234222342323424234252342623427234282342923430234312343223433234342343523436234372343823439234402344123442234432344423445234462344723448234492345023451234522345323454234552345623457234582345923460234612346223463234642346523466234672346823469234702347123472234732347423475234762347723478234792348023481234822348323484234852348623487234882348923490234912349223493234942349523496234972349823499235002350123502235032350423505235062350723508235092351023511235122351323514235152351623517235182351923520235212352223523235242352523526235272352823529235302353123532235332353423535235362353723538235392354023541235422354323544235452354623547235482354923550235512355223553235542355523556235572355823559235602356123562235632356423565235662356723568235692357023571235722357323574235752357623577235782357923580235812358223583235842358523586235872358823589235902359123592235932359423595235962359723598235992360023601236022360323604236052360623607236082360923610236112361223613236142361523616236172361823619236202362123622236232362423625236262362723628236292363023631236322363323634236352363623637236382363923640236412364223643236442364523646236472364823649236502365123652236532365423655236562365723658236592366023661236622366323664236652366623667236682366923670236712367223673236742367523676236772367823679236802368123682236832368423685236862368723688236892369023691236922369323694236952369623697236982369923700237012370223703237042370523706237072370823709237102371123712237132371423715237162371723718237192372023721237222372323724237252372623727237282372923730237312373223733237342373523736237372373823739237402374123742237432374423745237462374723748237492375023751237522375323754237552375623757237582375923760237612376223763237642376523766237672376823769237702377123772237732377423775237762377723778237792378023781237822378323784237852378623787237882378923790237912379223793237942379523796237972379823799238002380123802238032380423805238062380723808238092381023811238122381323814238152381623817238182381923820238212382223823238242382523826238272382823829238302383123832238332383423835238362383723838238392384023841238422384323844238452384623847238482384923850238512385223853238542385523856238572385823859238602386123862238632386423865238662386723868238692387023871238722387323874238752387623877238782387923880238812388223883238842388523886238872388823889238902389123892238932389423895238962389723898238992390023901239022390323904239052390623907239082390923910239112391223913239142391523916239172391823919239202392123922239232392423925239262392723928239292393023931239322393323934239352393623937239382393923940239412394223943239442394523946239472394823949239502395123952239532395423955239562395723958239592396023961239622396323964239652396623967239682396923970239712397223973239742397523976239772397823979239802398123982239832398423985239862398723988239892399023991239922399323994239952399623997239982399924000240012400224003240042400524006240072400824009240102401124012240132401424015240162401724018240192402024021240222402324024240252402624027240282402924030240312403224033240342403524036240372403824039240402404124042240432404424045240462404724048240492405024051240522405324054240552405624057240582405924060240612406224063240642406524066240672406824069240702407124072240732407424075240762407724078240792408024081240822408324084240852408624087240882408924090240912409224093240942409524096240972409824099241002410124102241032410424105241062410724108241092411024111241122411324114241152411624117241182411924120241212412224123241242412524126241272412824129241302413124132241332413424135241362413724138241392414024141241422414324144241452414624147241482414924150241512415224153241542415524156241572415824159241602416124162241632416424165241662416724168241692417024171241722417324174241752417624177241782417924180241812418224183241842418524186241872418824189241902419124192241932419424195241962419724198241992420024201242022420324204242052420624207242082420924210242112421224213242142421524216242172421824219242202422124222242232422424225242262422724228242292423024231242322423324234242352423624237242382423924240242412424224243242442424524246242472424824249242502425124252242532425424255242562425724258242592426024261242622426324264242652426624267242682426924270242712427224273242742427524276242772427824279242802428124282242832428424285242862428724288242892429024291242922429324294242952429624297242982429924300243012430224303243042430524306243072430824309243102431124312243132431424315243162431724318243192432024321243222432324324243252432624327243282432924330243312433224333243342433524336243372433824339243402434124342243432434424345243462434724348243492435024351243522435324354243552435624357243582435924360243612436224363243642436524366243672436824369243702437124372243732437424375243762437724378243792438024381243822438324384243852438624387243882438924390243912439224393243942439524396243972439824399244002440124402244032440424405244062440724408244092441024411244122441324414244152441624417244182441924420244212442224423244242442524426244272442824429244302443124432244332443424435244362443724438244392444024441244422444324444244452444624447244482444924450244512445224453244542445524456244572445824459244602446124462244632446424465244662446724468244692447024471244722447324474244752447624477244782447924480244812448224483244842448524486244872448824489244902449124492244932449424495244962449724498244992450024501245022450324504245052450624507245082450924510245112451224513245142451524516245172451824519245202452124522245232452424525245262452724528245292453024531245322453324534245352453624537245382453924540245412454224543245442454524546245472454824549245502455124552245532455424555245562455724558245592456024561245622456324564245652456624567245682456924570245712457224573245742457524576245772457824579245802458124582245832458424585245862458724588245892459024591245922459324594245952459624597245982459924600246012460224603246042460524606246072460824609246102461124612246132461424615246162461724618246192462024621246222462324624246252462624627246282462924630246312463224633246342463524636246372463824639246402464124642246432464424645246462464724648246492465024651246522465324654246552465624657246582465924660246612466224663246642466524666246672466824669246702467124672246732467424675246762467724678246792468024681246822468324684246852468624687246882468924690246912469224693246942469524696246972469824699247002470124702247032470424705247062470724708247092471024711247122471324714247152471624717247182471924720247212472224723247242472524726247272472824729247302473124732247332473424735247362473724738247392474024741247422474324744247452474624747247482474924750247512475224753247542475524756247572475824759247602476124762247632476424765247662476724768247692477024771247722477324774247752477624777247782477924780247812478224783247842478524786247872478824789247902479124792247932479424795247962479724798247992480024801248022480324804248052480624807248082480924810248112481224813248142481524816248172481824819248202482124822248232482424825248262482724828248292483024831248322483324834248352483624837248382483924840248412484224843248442484524846248472484824849248502485124852248532485424855248562485724858248592486024861248622486324864248652486624867248682486924870248712487224873248742487524876248772487824879248802488124882248832488424885248862488724888248892489024891248922489324894248952489624897248982489924900249012490224903249042490524906249072490824909249102491124912249132491424915249162491724918249192492024921249222492324924249252492624927249282492924930249312493224933249342493524936249372493824939249402494124942249432494424945249462494724948249492495024951249522495324954249552495624957249582495924960249612496224963249642496524966249672496824969249702497124972249732497424975249762497724978249792498024981249822498324984249852498624987249882498924990249912499224993249942499524996249972499824999250002500125002250032500425005250062500725008250092501025011250122501325014250152501625017250182501925020250212502225023250242502525026250272502825029250302503125032250332503425035250362503725038250392504025041250422504325044250452504625047250482504925050250512505225053250542505525056250572505825059250602506125062250632506425065250662506725068250692507025071250722507325074250752507625077250782507925080250812508225083250842508525086250872508825089250902509125092250932509425095250962509725098250992510025101251022510325104251052510625107251082510925110251112511225113251142511525116251172511825119251202512125122251232512425125251262512725128251292513025131251322513325134251352513625137251382513925140251412514225143251442514525146251472514825149251502515125152251532515425155251562515725158251592516025161251622516325164251652516625167251682516925170251712517225173251742517525176251772517825179251802518125182251832518425185251862518725188251892519025191251922519325194251952519625197251982519925200252012520225203252042520525206252072520825209252102521125212252132521425215252162521725218252192522025221252222522325224252252522625227252282522925230252312523225233252342523525236252372523825239252402524125242252432524425245252462524725248252492525025251252522525325254252552525625257252582525925260252612526225263252642526525266252672526825269252702527125272252732527425275252762527725278252792528025281252822528325284252852528625287252882528925290252912529225293252942529525296252972529825299253002530125302253032530425305253062530725308253092531025311253122531325314253152531625317253182531925320253212532225323253242532525326253272532825329253302533125332253332533425335253362533725338253392534025341253422534325344253452534625347253482534925350253512535225353253542535525356253572535825359253602536125362253632536425365253662536725368253692537025371253722537325374253752537625377253782537925380253812538225383253842538525386253872538825389253902539125392253932539425395253962539725398253992540025401254022540325404254052540625407254082540925410254112541225413254142541525416254172541825419254202542125422254232542425425254262542725428254292543025431254322543325434254352543625437254382543925440254412544225443254442544525446254472544825449254502545125452254532545425455254562545725458254592546025461254622546325464254652546625467254682546925470254712547225473254742547525476254772547825479254802548125482254832548425485254862548725488254892549025491254922549325494254952549625497254982549925500255012550225503255042550525506255072550825509255102551125512255132551425515255162551725518255192552025521255222552325524255252552625527255282552925530255312553225533255342553525536255372553825539255402554125542255432554425545255462554725548255492555025551255522555325554255552555625557255582555925560255612556225563255642556525566255672556825569255702557125572255732557425575255762557725578255792558025581255822558325584255852558625587255882558925590255912559225593255942559525596255972559825599256002560125602256032560425605256062560725608256092561025611256122561325614256152561625617256182561925620256212562225623256242562525626256272562825629256302563125632256332563425635256362563725638256392564025641256422564325644256452564625647256482564925650256512565225653256542565525656256572565825659256602566125662256632566425665256662566725668256692567025671256722567325674256752567625677256782567925680256812568225683256842568525686256872568825689256902569125692256932569425695256962569725698256992570025701257022570325704257052570625707257082570925710257112571225713257142571525716257172571825719257202572125722257232572425725257262572725728257292573025731257322573325734257352573625737257382573925740257412574225743257442574525746257472574825749257502575125752257532575425755257562575725758257592576025761257622576325764257652576625767257682576925770257712577225773257742577525776257772577825779257802578125782257832578425785257862578725788257892579025791257922579325794257952579625797257982579925800258012580225803258042580525806258072580825809258102581125812258132581425815258162581725818258192582025821258222582325824258252582625827258282582925830258312583225833258342583525836258372583825839258402584125842258432584425845258462584725848258492585025851258522585325854258552585625857258582585925860258612586225863258642586525866258672586825869258702587125872258732587425875258762587725878258792588025881258822588325884258852588625887258882588925890258912589225893258942589525896258972589825899259002590125902259032590425905259062590725908259092591025911259122591325914259152591625917259182591925920259212592225923259242592525926259272592825929259302593125932259332593425935259362593725938259392594025941259422594325944259452594625947259482594925950259512595225953259542595525956259572595825959259602596125962259632596425965259662596725968259692597025971259722597325974259752597625977259782597925980259812598225983259842598525986259872598825989259902599125992259932599425995259962599725998259992600026001260022600326004260052600626007260082600926010260112601226013260142601526016260172601826019260202602126022260232602426025260262602726028260292603026031260322603326034260352603626037260382603926040260412604226043260442604526046260472604826049260502605126052260532605426055260562605726058260592606026061260622606326064260652606626067260682606926070260712607226073260742607526076260772607826079260802608126082260832608426085260862608726088260892609026091260922609326094260952609626097260982609926100261012610226103261042610526106261072610826109261102611126112261132611426115261162611726118261192612026121261222612326124261252612626127261282612926130261312613226133261342613526136261372613826139261402614126142261432614426145261462614726148261492615026151261522615326154261552615626157261582615926160261612616226163261642616526166261672616826169261702617126172261732617426175261762617726178261792618026181261822618326184261852618626187261882618926190261912619226193261942619526196261972619826199262002620126202262032620426205262062620726208262092621026211262122621326214262152621626217262182621926220262212622226223262242622526226262272622826229262302623126232262332623426235262362623726238262392624026241262422624326244262452624626247262482624926250262512625226253262542625526256262572625826259262602626126262262632626426265262662626726268262692627026271262722627326274262752627626277262782627926280262812628226283262842628526286262872628826289262902629126292262932629426295262962629726298262992630026301263022630326304263052630626307263082630926310263112631226313263142631526316263172631826319263202632126322263232632426325263262632726328263292633026331263322633326334263352633626337263382633926340263412634226343263442634526346263472634826349263502635126352263532635426355263562635726358263592636026361263622636326364263652636626367263682636926370263712637226373263742637526376263772637826379263802638126382263832638426385263862638726388263892639026391263922639326394263952639626397263982639926400264012640226403264042640526406264072640826409264102641126412264132641426415264162641726418264192642026421264222642326424264252642626427264282642926430264312643226433264342643526436264372643826439264402644126442264432644426445264462644726448264492645026451264522645326454264552645626457264582645926460264612646226463264642646526466264672646826469264702647126472264732647426475264762647726478264792648026481264822648326484264852648626487264882648926490264912649226493264942649526496264972649826499265002650126502265032650426505265062650726508265092651026511265122651326514265152651626517265182651926520265212652226523265242652526526265272652826529265302653126532265332653426535265362653726538265392654026541265422654326544265452654626547265482654926550265512655226553265542655526556265572655826559265602656126562265632656426565265662656726568265692657026571265722657326574265752657626577265782657926580265812658226583265842658526586265872658826589265902659126592265932659426595265962659726598265992660026601266022660326604266052660626607266082660926610266112661226613266142661526616266172661826619266202662126622266232662426625266262662726628266292663026631266322663326634266352663626637266382663926640266412664226643266442664526646266472664826649266502665126652266532665426655266562665726658266592666026661266622666326664266652666626667266682666926670266712667226673266742667526676266772667826679266802668126682266832668426685266862668726688266892669026691266922669326694266952669626697266982669926700267012670226703267042670526706267072670826709267102671126712267132671426715267162671726718267192672026721267222672326724267252672626727267282672926730267312673226733267342673526736267372673826739267402674126742267432674426745267462674726748267492675026751267522675326754267552675626757267582675926760267612676226763267642676526766267672676826769267702677126772267732677426775267762677726778267792678026781267822678326784267852678626787267882678926790267912679226793267942679526796267972679826799268002680126802268032680426805268062680726808268092681026811268122681326814268152681626817268182681926820268212682226823268242682526826268272682826829268302683126832268332683426835268362683726838268392684026841268422684326844268452684626847268482684926850268512685226853268542685526856268572685826859268602686126862268632686426865268662686726868268692687026871268722687326874268752687626877268782687926880268812688226883268842688526886268872688826889268902689126892268932689426895268962689726898268992690026901269022690326904269052690626907269082690926910269112691226913269142691526916269172691826919269202692126922269232692426925269262692726928269292693026931269322693326934269352693626937269382693926940269412694226943269442694526946269472694826949269502695126952269532695426955269562695726958269592696026961269622696326964269652696626967269682696926970269712697226973269742697526976269772697826979269802698126982269832698426985269862698726988269892699026991269922699326994269952699626997269982699927000270012700227003270042700527006270072700827009270102701127012270132701427015270162701727018270192702027021270222702327024270252702627027270282702927030270312703227033270342703527036270372703827039270402704127042270432704427045270462704727048270492705027051270522705327054270552705627057270582705927060270612706227063270642706527066270672706827069270702707127072270732707427075270762707727078270792708027081270822708327084270852708627087270882708927090270912709227093270942709527096270972709827099271002710127102271032710427105271062710727108271092711027111271122711327114271152711627117271182711927120271212712227123271242712527126271272712827129271302713127132271332713427135271362713727138271392714027141271422714327144271452714627147271482714927150271512715227153271542715527156271572715827159271602716127162271632716427165271662716727168271692717027171271722717327174271752717627177271782717927180271812718227183271842718527186271872718827189271902719127192271932719427195271962719727198271992720027201272022720327204272052720627207272082720927210272112721227213272142721527216272172721827219272202722127222272232722427225272262722727228272292723027231272322723327234272352723627237272382723927240272412724227243272442724527246272472724827249272502725127252272532725427255272562725727258272592726027261272622726327264272652726627267272682726927270272712727227273272742727527276272772727827279272802728127282272832728427285272862728727288272892729027291272922729327294272952729627297272982729927300273012730227303273042730527306273072730827309273102731127312273132731427315273162731727318273192732027321273222732327324273252732627327273282732927330273312733227333273342733527336273372733827339273402734127342273432734427345273462734727348273492735027351273522735327354273552735627357273582735927360273612736227363273642736527366273672736827369273702737127372273732737427375273762737727378273792738027381273822738327384273852738627387273882738927390273912739227393273942739527396273972739827399274002740127402274032740427405274062740727408274092741027411274122741327414274152741627417274182741927420274212742227423274242742527426274272742827429274302743127432274332743427435274362743727438274392744027441274422744327444274452744627447274482744927450274512745227453274542745527456274572745827459274602746127462274632746427465274662746727468274692747027471274722747327474274752747627477274782747927480274812748227483274842748527486274872748827489274902749127492274932749427495274962749727498274992750027501275022750327504275052750627507275082750927510275112751227513275142751527516275172751827519275202752127522275232752427525275262752727528275292753027531275322753327534275352753627537275382753927540275412754227543275442754527546275472754827549275502755127552275532755427555275562755727558275592756027561275622756327564275652756627567275682756927570275712757227573275742757527576275772757827579275802758127582275832758427585275862758727588275892759027591275922759327594275952759627597275982759927600276012760227603276042760527606276072760827609276102761127612276132761427615276162761727618276192762027621276222762327624276252762627627276282762927630276312763227633276342763527636276372763827639276402764127642276432764427645276462764727648276492765027651276522765327654276552765627657276582765927660276612766227663276642766527666276672766827669276702767127672276732767427675276762767727678276792768027681276822768327684276852768627687276882768927690276912769227693276942769527696276972769827699277002770127702277032770427705277062770727708277092771027711277122771327714277152771627717277182771927720277212772227723277242772527726277272772827729277302773127732277332773427735277362773727738277392774027741277422774327744277452774627747277482774927750277512775227753277542775527756277572775827759277602776127762277632776427765277662776727768277692777027771277722777327774277752777627777277782777927780277812778227783277842778527786277872778827789277902779127792277932779427795277962779727798277992780027801278022780327804278052780627807278082780927810278112781227813278142781527816278172781827819278202782127822278232782427825278262782727828278292783027831278322783327834278352783627837278382783927840278412784227843278442784527846278472784827849278502785127852278532785427855278562785727858278592786027861278622786327864278652786627867278682786927870278712787227873278742787527876278772787827879278802788127882278832788427885278862788727888278892789027891278922789327894278952789627897278982789927900279012790227903279042790527906279072790827909279102791127912279132791427915279162791727918279192792027921279222792327924279252792627927279282792927930279312793227933279342793527936279372793827939279402794127942279432794427945279462794727948279492795027951279522795327954279552795627957279582795927960279612796227963279642796527966279672796827969279702797127972279732797427975279762797727978279792798027981279822798327984279852798627987279882798927990279912799227993279942799527996279972799827999280002800128002280032800428005280062800728008280092801028011280122801328014280152801628017280182801928020280212802228023280242802528026280272802828029280302803128032280332803428035280362803728038280392804028041280422804328044280452804628047280482804928050280512805228053280542805528056280572805828059280602806128062280632806428065280662806728068280692807028071280722807328074280752807628077280782807928080280812808228083280842808528086280872808828089280902809128092280932809428095280962809728098280992810028101281022810328104281052810628107281082810928110281112811228113281142811528116281172811828119281202812128122281232812428125281262812728128281292813028131281322813328134281352813628137281382813928140281412814228143281442814528146281472814828149281502815128152281532815428155281562815728158281592816028161281622816328164281652816628167281682816928170281712817228173281742817528176281772817828179281802818128182281832818428185281862818728188281892819028191281922819328194281952819628197281982819928200282012820228203282042820528206282072820828209282102821128212282132821428215282162821728218282192822028221282222822328224282252822628227282282822928230282312823228233282342823528236282372823828239282402824128242282432824428245282462824728248282492825028251282522825328254282552825628257282582825928260282612826228263282642826528266282672826828269282702827128272282732827428275282762827728278282792828028281282822828328284282852828628287282882828928290282912829228293282942829528296282972829828299283002830128302283032830428305283062830728308283092831028311283122831328314283152831628317283182831928320283212832228323283242832528326283272832828329283302833128332283332833428335283362833728338283392834028341283422834328344283452834628347283482834928350283512835228353283542835528356283572835828359283602836128362283632836428365283662836728368283692837028371283722837328374283752837628377283782837928380283812838228383283842838528386283872838828389283902839128392283932839428395283962839728398283992840028401284022840328404284052840628407284082840928410284112841228413284142841528416284172841828419284202842128422284232842428425284262842728428284292843028431284322843328434284352843628437284382843928440284412844228443284442844528446284472844828449284502845128452284532845428455284562845728458284592846028461284622846328464284652846628467284682846928470284712847228473284742847528476284772847828479284802848128482284832848428485284862848728488284892849028491284922849328494284952849628497284982849928500285012850228503285042850528506285072850828509285102851128512285132851428515285162851728518285192852028521285222852328524285252852628527285282852928530285312853228533285342853528536285372853828539285402854128542285432854428545285462854728548285492855028551285522855328554285552855628557285582855928560285612856228563285642856528566285672856828569285702857128572285732857428575285762857728578285792858028581285822858328584285852858628587285882858928590285912859228593285942859528596285972859828599286002860128602286032860428605286062860728608286092861028611286122861328614286152861628617286182861928620286212862228623286242862528626286272862828629286302863128632286332863428635286362863728638286392864028641286422864328644286452864628647286482864928650286512865228653286542865528656286572865828659286602866128662286632866428665286662866728668286692867028671286722867328674286752867628677286782867928680286812868228683286842868528686286872868828689286902869128692286932869428695286962869728698286992870028701287022870328704287052870628707287082870928710287112871228713287142871528716287172871828719287202872128722287232872428725287262872728728287292873028731287322873328734287352873628737287382873928740287412874228743287442874528746287472874828749287502875128752287532875428755287562875728758287592876028761287622876328764287652876628767287682876928770287712877228773287742877528776287772877828779287802878128782287832878428785287862878728788287892879028791287922879328794287952879628797287982879928800288012880228803288042880528806288072880828809288102881128812288132881428815288162881728818288192882028821288222882328824288252882628827288282882928830288312883228833288342883528836288372883828839288402884128842288432884428845288462884728848288492885028851288522885328854288552885628857288582885928860288612886228863288642886528866288672886828869288702887128872288732887428875288762887728878288792888028881288822888328884288852888628887288882888928890288912889228893288942889528896288972889828899289002890128902289032890428905289062890728908289092891028911289122891328914289152891628917289182891928920289212892228923289242892528926289272892828929289302893128932289332893428935289362893728938289392894028941289422894328944289452894628947289482894928950289512895228953289542895528956289572895828959289602896128962289632896428965289662896728968289692897028971289722897328974289752897628977289782897928980289812898228983289842898528986289872898828989289902899128992289932899428995289962899728998289992900029001290022900329004290052900629007290082900929010290112901229013290142901529016290172901829019290202902129022290232902429025290262902729028290292903029031290322903329034290352903629037290382903929040290412904229043290442904529046290472904829049290502905129052290532905429055290562905729058290592906029061290622906329064290652906629067290682906929070290712907229073290742907529076290772907829079290802908129082290832908429085290862908729088290892909029091290922909329094290952909629097290982909929100291012910229103291042910529106291072910829109291102911129112291132911429115291162911729118291192912029121291222912329124291252912629127291282912929130291312913229133291342913529136291372913829139291402914129142291432914429145291462914729148291492915029151291522915329154291552915629157291582915929160291612916229163291642916529166291672916829169291702917129172291732917429175291762917729178291792918029181291822918329184291852918629187291882918929190291912919229193291942919529196291972919829199292002920129202292032920429205292062920729208292092921029211292122921329214292152921629217292182921929220292212922229223292242922529226292272922829229292302923129232292332923429235292362923729238292392924029241292422924329244292452924629247292482924929250292512925229253292542925529256292572925829259292602926129262292632926429265292662926729268292692927029271292722927329274292752927629277292782927929280292812928229283292842928529286292872928829289292902929129292292932929429295292962929729298292992930029301293022930329304293052930629307293082930929310293112931229313293142931529316293172931829319293202932129322293232932429325293262932729328293292933029331293322933329334293352933629337293382933929340293412934229343293442934529346293472934829349293502935129352293532935429355293562935729358293592936029361293622936329364293652936629367293682936929370293712937229373293742937529376293772937829379293802938129382293832938429385293862938729388293892939029391293922939329394293952939629397293982939929400294012940229403294042940529406294072940829409294102941129412294132941429415294162941729418294192942029421294222942329424294252942629427294282942929430294312943229433294342943529436294372943829439294402944129442294432944429445294462944729448294492945029451294522945329454294552945629457294582945929460294612946229463294642946529466294672946829469294702947129472294732947429475294762947729478294792948029481294822948329484294852948629487294882948929490294912949229493294942949529496294972949829499295002950129502295032950429505295062950729508295092951029511295122951329514295152951629517295182951929520295212952229523295242952529526295272952829529295302953129532295332953429535295362953729538295392954029541295422954329544295452954629547295482954929550295512955229553295542955529556295572955829559295602956129562295632956429565295662956729568295692957029571295722957329574295752957629577295782957929580295812958229583295842958529586295872958829589295902959129592295932959429595295962959729598295992960029601296022960329604296052960629607296082960929610296112961229613296142961529616296172961829619296202962129622296232962429625296262962729628296292963029631296322963329634296352963629637296382963929640296412964229643296442964529646296472964829649296502965129652296532965429655296562965729658296592966029661296622966329664296652966629667296682966929670296712967229673296742967529676296772967829679296802968129682296832968429685296862968729688296892969029691296922969329694296952969629697296982969929700297012970229703297042970529706297072970829709297102971129712297132971429715297162971729718297192972029721297222972329724297252972629727297282972929730297312973229733297342973529736297372973829739297402974129742297432974429745297462974729748297492975029751297522975329754297552975629757297582975929760297612976229763297642976529766297672976829769297702977129772297732977429775297762977729778297792978029781297822978329784297852978629787297882978929790297912979229793297942979529796297972979829799298002980129802298032980429805298062980729808298092981029811298122981329814298152981629817298182981929820298212982229823298242982529826298272982829829298302983129832298332983429835298362983729838298392984029841298422984329844298452984629847298482984929850298512985229853298542985529856298572985829859298602986129862298632986429865298662986729868298692987029871298722987329874298752987629877298782987929880298812988229883298842988529886298872988829889298902989129892298932989429895298962989729898298992990029901299022990329904299052990629907299082990929910299112991229913299142991529916299172991829919299202992129922299232992429925299262992729928299292993029931299322993329934299352993629937299382993929940299412994229943299442994529946299472994829949299502995129952299532995429955299562995729958299592996029961299622996329964299652996629967299682996929970299712997229973299742997529976299772997829979299802998129982299832998429985299862998729988299892999029991299922999329994299952999629997299982999930000300013000230003300043000530006300073000830009300103001130012300133001430015300163001730018300193002030021300223002330024300253002630027300283002930030300313003230033300343003530036300373003830039300403004130042300433004430045300463004730048300493005030051300523005330054300553005630057300583005930060300613006230063300643006530066300673006830069300703007130072300733007430075300763007730078300793008030081300823008330084300853008630087300883008930090300913009230093300943009530096300973009830099301003010130102301033010430105301063010730108301093011030111301123011330114301153011630117301183011930120301213012230123301243012530126301273012830129301303013130132301333013430135301363013730138301393014030141301423014330144301453014630147301483014930150301513015230153301543015530156301573015830159301603016130162301633016430165301663016730168301693017030171301723017330174301753017630177301783017930180301813018230183301843018530186301873018830189301903019130192301933019430195301963019730198301993020030201302023020330204302053020630207302083020930210302113021230213302143021530216302173021830219302203022130222302233022430225302263022730228302293023030231302323023330234302353023630237302383023930240302413024230243302443024530246302473024830249302503025130252302533025430255302563025730258302593026030261302623026330264302653026630267302683026930270302713027230273302743027530276302773027830279302803028130282302833028430285302863028730288302893029030291302923029330294302953029630297302983029930300303013030230303303043030530306303073030830309303103031130312303133031430315303163031730318303193032030321303223032330324303253032630327303283032930330303313033230333303343033530336303373033830339303403034130342303433034430345303463034730348303493035030351303523035330354303553035630357303583035930360303613036230363303643036530366303673036830369303703037130372303733037430375303763037730378303793038030381303823038330384303853038630387303883038930390303913039230393303943039530396303973039830399304003040130402304033040430405304063040730408304093041030411304123041330414304153041630417304183041930420304213042230423304243042530426304273042830429304303043130432304333043430435304363043730438304393044030441304423044330444304453044630447304483044930450304513045230453304543045530456304573045830459304603046130462304633046430465304663046730468304693047030471304723047330474304753047630477304783047930480304813048230483304843048530486304873048830489304903049130492304933049430495304963049730498304993050030501305023050330504305053050630507305083050930510305113051230513305143051530516305173051830519305203052130522305233052430525305263052730528305293053030531305323053330534305353053630537305383053930540305413054230543305443054530546305473054830549305503055130552305533055430555305563055730558305593056030561305623056330564305653056630567305683056930570305713057230573305743057530576305773057830579305803058130582305833058430585305863058730588305893059030591305923059330594305953059630597305983059930600306013060230603306043060530606306073060830609306103061130612306133061430615306163061730618306193062030621306223062330624306253062630627306283062930630306313063230633306343063530636306373063830639306403064130642306433064430645306463064730648306493065030651306523065330654306553065630657306583065930660306613066230663306643066530666306673066830669306703067130672306733067430675306763067730678306793068030681306823068330684306853068630687306883068930690306913069230693306943069530696306973069830699307003070130702307033070430705307063070730708307093071030711307123071330714307153071630717307183071930720307213072230723307243072530726307273072830729307303073130732307333073430735307363073730738307393074030741307423074330744307453074630747307483074930750307513075230753307543075530756307573075830759307603076130762307633076430765307663076730768307693077030771307723077330774307753077630777307783077930780307813078230783307843078530786307873078830789307903079130792307933079430795307963079730798307993080030801308023080330804308053080630807308083080930810308113081230813308143081530816308173081830819308203082130822308233082430825308263082730828308293083030831308323083330834308353083630837308383083930840308413084230843308443084530846308473084830849308503085130852308533085430855308563085730858308593086030861308623086330864308653086630867308683086930870308713087230873308743087530876308773087830879308803088130882308833088430885308863088730888308893089030891308923089330894308953089630897308983089930900309013090230903309043090530906309073090830909309103091130912309133091430915309163091730918309193092030921309223092330924309253092630927309283092930930309313093230933309343093530936309373093830939309403094130942309433094430945309463094730948309493095030951309523095330954309553095630957309583095930960309613096230963309643096530966309673096830969309703097130972309733097430975309763097730978309793098030981309823098330984309853098630987309883098930990309913099230993309943099530996309973099830999310003100131002310033100431005310063100731008310093101031011310123101331014310153101631017310183101931020310213102231023310243102531026310273102831029310303103131032310333103431035310363103731038310393104031041310423104331044310453104631047310483104931050310513105231053310543105531056310573105831059310603106131062310633106431065310663106731068310693107031071310723107331074310753107631077310783107931080310813108231083310843108531086310873108831089310903109131092310933109431095310963109731098310993110031101311023110331104311053110631107311083110931110311113111231113311143111531116311173111831119311203112131122311233112431125311263112731128311293113031131311323113331134311353113631137311383113931140311413114231143311443114531146311473114831149311503115131152311533115431155311563115731158311593116031161311623116331164311653116631167311683116931170311713117231173311743117531176311773117831179311803118131182311833118431185311863118731188311893119031191311923119331194311953119631197311983119931200312013120231203312043120531206312073120831209312103121131212312133121431215312163121731218312193122031221312223122331224312253122631227312283122931230312313123231233312343123531236312373123831239312403124131242312433124431245312463124731248312493125031251312523125331254312553125631257312583125931260312613126231263312643126531266312673126831269312703127131272312733127431275312763127731278312793128031281312823128331284312853128631287312883128931290312913129231293312943129531296312973129831299313003130131302313033130431305313063130731308313093131031311313123131331314313153131631317313183131931320313213132231323313243132531326313273132831329313303133131332313333133431335313363133731338313393134031341313423134331344313453134631347313483134931350313513135231353313543135531356313573135831359313603136131362313633136431365313663136731368313693137031371313723137331374313753137631377313783137931380313813138231383313843138531386313873138831389313903139131392313933139431395313963139731398313993140031401314023140331404314053140631407314083140931410314113141231413314143141531416314173141831419314203142131422314233142431425314263142731428314293143031431314323143331434314353143631437314383143931440314413144231443314443144531446314473144831449314503145131452314533145431455314563145731458314593146031461314623146331464314653146631467314683146931470314713147231473314743147531476314773147831479314803148131482314833148431485314863148731488314893149031491314923149331494314953149631497314983149931500315013150231503315043150531506315073150831509315103151131512315133151431515315163151731518315193152031521315223152331524315253152631527315283152931530315313153231533315343153531536315373153831539315403154131542315433154431545315463154731548315493155031551315523155331554315553155631557315583155931560315613156231563315643156531566315673156831569315703157131572315733157431575315763157731578315793158031581315823158331584315853158631587315883158931590315913159231593315943159531596315973159831599316003160131602316033160431605316063160731608316093161031611316123161331614316153161631617316183161931620316213162231623316243162531626316273162831629316303163131632316333163431635316363163731638316393164031641316423164331644316453164631647316483164931650316513165231653316543165531656316573165831659316603166131662316633166431665316663166731668316693167031671316723167331674316753167631677316783167931680316813168231683316843168531686316873168831689316903169131692316933169431695316963169731698316993170031701317023170331704317053170631707317083170931710317113171231713317143171531716317173171831719317203172131722317233172431725317263172731728317293173031731317323173331734317353173631737317383173931740317413174231743317443174531746317473174831749317503175131752317533175431755317563175731758317593176031761317623176331764317653176631767317683176931770317713177231773317743177531776317773177831779317803178131782317833178431785317863178731788317893179031791317923179331794317953179631797317983179931800318013180231803318043180531806318073180831809318103181131812318133181431815318163181731818318193182031821318223182331824318253182631827318283182931830318313183231833318343183531836318373183831839318403184131842318433184431845318463184731848318493185031851318523185331854318553185631857318583185931860318613186231863318643186531866318673186831869318703187131872318733187431875318763187731878318793188031881318823188331884318853188631887318883188931890318913189231893318943189531896318973189831899319003190131902319033190431905319063190731908319093191031911319123191331914319153191631917319183191931920319213192231923319243192531926319273192831929319303193131932319333193431935319363193731938319393194031941319423194331944319453194631947319483194931950319513195231953319543195531956319573195831959319603196131962319633196431965319663196731968319693197031971319723197331974319753197631977319783197931980319813198231983319843198531986319873198831989319903199131992319933199431995319963199731998319993200032001320023200332004320053200632007320083200932010320113201232013320143201532016320173201832019320203202132022320233202432025320263202732028320293203032031320323203332034320353203632037320383203932040320413204232043320443204532046320473204832049320503205132052320533205432055320563205732058320593206032061320623206332064320653206632067320683206932070320713207232073320743207532076320773207832079320803208132082320833208432085320863208732088320893209032091320923209332094320953209632097320983209932100321013210232103321043210532106321073210832109321103211132112321133211432115321163211732118321193212032121321223212332124321253212632127321283212932130321313213232133321343213532136321373213832139321403214132142321433214432145321463214732148321493215032151321523215332154321553215632157321583215932160321613216232163321643216532166321673216832169321703217132172321733217432175321763217732178321793218032181321823218332184321853218632187321883218932190321913219232193321943219532196321973219832199322003220132202322033220432205322063220732208322093221032211322123221332214322153221632217322183221932220322213222232223322243222532226322273222832229322303223132232322333223432235322363223732238322393224032241322423224332244322453224632247322483224932250322513225232253322543225532256322573225832259322603226132262322633226432265322663226732268322693227032271322723227332274322753227632277322783227932280322813228232283322843228532286322873228832289322903229132292322933229432295322963229732298322993230032301323023230332304323053230632307323083230932310323113231232313323143231532316323173231832319323203232132322323233232432325323263232732328323293233032331323323233332334323353233632337323383233932340323413234232343323443234532346323473234832349323503235132352323533235432355323563235732358323593236032361323623236332364323653236632367323683236932370323713237232373323743237532376323773237832379323803238132382323833238432385323863238732388323893239032391323923239332394323953239632397323983239932400324013240232403324043240532406324073240832409324103241132412324133241432415324163241732418324193242032421324223242332424324253242632427324283242932430324313243232433324343243532436324373243832439324403244132442324433244432445324463244732448324493245032451324523245332454324553245632457324583245932460324613246232463324643246532466324673246832469324703247132472324733247432475324763247732478324793248032481324823248332484324853248632487324883248932490324913249232493324943249532496324973249832499325003250132502325033250432505325063250732508325093251032511325123251332514325153251632517325183251932520325213252232523325243252532526325273252832529325303253132532325333253432535325363253732538325393254032541325423254332544325453254632547325483254932550325513255232553325543255532556325573255832559325603256132562325633256432565325663256732568325693257032571325723257332574325753257632577325783257932580325813258232583325843258532586325873258832589325903259132592325933259432595325963259732598325993260032601326023260332604326053260632607326083260932610326113261232613326143261532616326173261832619326203262132622326233262432625326263262732628326293263032631326323263332634326353263632637326383263932640326413264232643326443264532646326473264832649326503265132652326533265432655326563265732658326593266032661326623266332664326653266632667326683266932670326713267232673326743267532676326773267832679326803268132682326833268432685326863268732688326893269032691326923269332694326953269632697326983269932700327013270232703327043270532706327073270832709327103271132712327133271432715327163271732718327193272032721327223272332724327253272632727327283272932730327313273232733327343273532736327373273832739327403274132742327433274432745327463274732748327493275032751327523275332754327553275632757327583275932760327613276232763327643276532766327673276832769327703277132772327733277432775327763277732778327793278032781327823278332784327853278632787327883278932790327913279232793327943279532796327973279832799328003280132802328033280432805328063280732808328093281032811328123281332814328153281632817328183281932820328213282232823328243282532826328273282832829328303283132832328333283432835328363283732838328393284032841328423284332844328453284632847328483284932850328513285232853328543285532856328573285832859328603286132862328633286432865328663286732868328693287032871328723287332874328753287632877328783287932880328813288232883328843288532886328873288832889328903289132892328933289432895328963289732898328993290032901329023290332904329053290632907329083290932910329113291232913329143291532916329173291832919329203292132922329233292432925329263292732928329293293032931329323293332934329353293632937329383293932940329413294232943329443294532946329473294832949329503295132952329533295432955329563295732958329593296032961329623296332964329653296632967329683296932970329713297232973329743297532976329773297832979329803298132982329833298432985329863298732988329893299032991329923299332994329953299632997329983299933000330013300233003330043300533006330073300833009330103301133012330133301433015330163301733018330193302033021330223302333024330253302633027330283302933030330313303233033330343303533036330373303833039330403304133042330433304433045330463304733048330493305033051330523305333054330553305633057330583305933060330613306233063330643306533066330673306833069330703307133072330733307433075330763307733078330793308033081330823308333084330853308633087330883308933090330913309233093330943309533096330973309833099331003310133102331033310433105331063310733108331093311033111331123311333114331153311633117331183311933120331213312233123331243312533126331273312833129331303313133132331333313433135331363313733138331393314033141331423314333144331453314633147331483314933150331513315233153331543315533156331573315833159331603316133162331633316433165331663316733168331693317033171331723317333174331753317633177331783317933180331813318233183331843318533186331873318833189331903319133192331933319433195331963319733198331993320033201332023320333204332053320633207332083320933210332113321233213332143321533216332173321833219332203322133222332233322433225332263322733228332293323033231332323323333234332353323633237332383323933240332413324233243332443324533246332473324833249332503325133252332533325433255332563325733258332593326033261332623326333264332653326633267332683326933270332713327233273332743327533276332773327833279332803328133282332833328433285332863328733288332893329033291332923329333294332953329633297332983329933300333013330233303333043330533306333073330833309333103331133312333133331433315333163331733318333193332033321333223332333324333253332633327333283332933330333313333233333333343333533336333373333833339333403334133342333433334433345333463334733348333493335033351333523335333354333553335633357333583335933360333613336233363333643336533366333673336833369333703337133372333733337433375333763337733378333793338033381333823338333384333853338633387333883338933390333913339233393333943339533396333973339833399334003340133402334033340433405334063340733408334093341033411334123341333414334153341633417334183341933420334213342233423334243342533426334273342833429334303343133432334333343433435334363343733438334393344033441334423344333444334453344633447334483344933450334513345233453334543345533456334573345833459334603346133462334633346433465334663346733468334693347033471334723347333474334753347633477334783347933480334813348233483334843348533486334873348833489334903349133492334933349433495334963349733498334993350033501335023350333504335053350633507335083350933510335113351233513335143351533516335173351833519335203352133522335233352433525335263352733528335293353033531335323353333534335353353633537335383353933540335413354233543335443354533546335473354833549335503355133552335533355433555335563355733558335593356033561335623356333564335653356633567335683356933570335713357233573335743357533576335773357833579335803358133582335833358433585335863358733588335893359033591335923359333594335953359633597335983359933600336013360233603336043360533606336073360833609336103361133612336133361433615336163361733618336193362033621336223362333624336253362633627336283362933630336313363233633336343363533636336373363833639336403364133642336433364433645336463364733648336493365033651336523365333654336553365633657336583365933660336613366233663336643366533666336673366833669336703367133672336733367433675336763367733678336793368033681336823368333684336853368633687336883368933690336913369233693336943369533696336973369833699337003370133702337033370433705337063370733708337093371033711337123371333714337153371633717337183371933720337213372233723337243372533726337273372833729337303373133732337333373433735337363373733738337393374033741337423374333744337453374633747337483374933750337513375233753337543375533756337573375833759337603376133762337633376433765337663376733768337693377033771337723377333774337753377633777337783377933780337813378233783337843378533786337873378833789337903379133792337933379433795337963379733798337993380033801338023380333804338053380633807338083380933810338113381233813338143381533816338173381833819338203382133822338233382433825338263382733828338293383033831338323383333834338353383633837338383383933840338413384233843338443384533846338473384833849338503385133852338533385433855338563385733858338593386033861338623386333864338653386633867338683386933870338713387233873338743387533876338773387833879338803388133882338833388433885338863388733888338893389033891338923389333894338953389633897338983389933900339013390233903339043390533906339073390833909339103391133912339133391433915339163391733918339193392033921339223392333924339253392633927339283392933930339313393233933339343393533936339373393833939339403394133942339433394433945339463394733948339493395033951339523395333954339553395633957339583395933960339613396233963339643396533966339673396833969339703397133972339733397433975339763397733978339793398033981339823398333984339853398633987339883398933990339913399233993339943399533996339973399833999340003400134002340033400434005340063400734008340093401034011340123401334014340153401634017340183401934020340213402234023340243402534026340273402834029340303403134032340333403434035340363403734038340393404034041340423404334044340453404634047340483404934050340513405234053340543405534056340573405834059340603406134062340633406434065340663406734068340693407034071340723407334074340753407634077340783407934080340813408234083340843408534086340873408834089340903409134092340933409434095340963409734098340993410034101341023410334104341053410634107341083410934110341113411234113341143411534116341173411834119341203412134122341233412434125341263412734128341293413034131341323413334134341353413634137341383413934140341413414234143341443414534146341473414834149341503415134152341533415434155341563415734158341593416034161341623416334164341653416634167341683416934170341713417234173341743417534176341773417834179341803418134182341833418434185341863418734188341893419034191341923419334194341953419634197341983419934200342013420234203342043420534206342073420834209342103421134212342133421434215342163421734218342193422034221342223422334224342253422634227342283422934230342313423234233342343423534236342373423834239342403424134242342433424434245342463424734248342493425034251342523425334254342553425634257342583425934260342613426234263342643426534266342673426834269342703427134272342733427434275342763427734278342793428034281342823428334284342853428634287342883428934290342913429234293342943429534296342973429834299343003430134302343033430434305343063430734308343093431034311343123431334314343153431634317343183431934320343213432234323343243432534326343273432834329343303433134332343333433434335343363433734338343393434034341343423434334344343453434634347343483434934350343513435234353343543435534356343573435834359343603436134362343633436434365343663436734368343693437034371343723437334374343753437634377343783437934380343813438234383343843438534386343873438834389343903439134392343933439434395343963439734398343993440034401344023440334404344053440634407344083440934410344113441234413344143441534416344173441834419344203442134422344233442434425344263442734428344293443034431344323443334434344353443634437344383443934440344413444234443344443444534446344473444834449344503445134452344533445434455344563445734458344593446034461344623446334464344653446634467344683446934470344713447234473344743447534476344773447834479344803448134482344833448434485344863448734488344893449034491344923449334494344953449634497344983449934500345013450234503345043450534506345073450834509345103451134512345133451434515345163451734518345193452034521345223452334524345253452634527345283452934530345313453234533345343453534536345373453834539345403454134542345433454434545345463454734548345493455034551345523455334554345553455634557345583455934560345613456234563345643456534566345673456834569345703457134572345733457434575345763457734578345793458034581345823458334584345853458634587345883458934590345913459234593345943459534596345973459834599346003460134602346033460434605346063460734608346093461034611346123461334614346153461634617346183461934620346213462234623346243462534626346273462834629346303463134632346333463434635346363463734638346393464034641346423464334644346453464634647346483464934650346513465234653346543465534656346573465834659346603466134662346633466434665346663466734668346693467034671346723467334674346753467634677346783467934680346813468234683346843468534686346873468834689346903469134692346933469434695346963469734698346993470034701347023470334704347053470634707347083470934710347113471234713347143471534716347173471834719347203472134722347233472434725347263472734728347293473034731347323473334734347353473634737347383473934740347413474234743347443474534746347473474834749347503475134752347533475434755347563475734758347593476034761347623476334764347653476634767347683476934770347713477234773347743477534776347773477834779347803478134782347833478434785347863478734788347893479034791347923479334794347953479634797347983479934800348013480234803348043480534806348073480834809348103481134812348133481434815348163481734818348193482034821348223482334824348253482634827348283482934830348313483234833348343483534836348373483834839348403484134842348433484434845348463484734848348493485034851348523485334854348553485634857348583485934860348613486234863348643486534866348673486834869348703487134872348733487434875348763487734878348793488034881348823488334884348853488634887348883488934890348913489234893348943489534896348973489834899349003490134902349033490434905349063490734908349093491034911349123491334914349153491634917349183491934920349213492234923349243492534926349273492834929349303493134932349333493434935349363493734938349393494034941349423494334944349453494634947349483494934950349513495234953349543495534956349573495834959349603496134962349633496434965349663496734968349693497034971349723497334974349753497634977349783497934980349813498234983349843498534986349873498834989349903499134992349933499434995349963499734998349993500035001350023500335004350053500635007350083500935010350113501235013350143501535016350173501835019350203502135022350233502435025350263502735028350293503035031350323503335034350353503635037350383503935040350413504235043350443504535046350473504835049350503505135052350533505435055350563505735058350593506035061350623506335064350653506635067350683506935070350713507235073350743507535076350773507835079350803508135082350833508435085350863508735088350893509035091350923509335094350953509635097350983509935100351013510235103351043510535106351073510835109351103511135112351133511435115351163511735118351193512035121351223512335124351253512635127351283512935130351313513235133351343513535136351373513835139351403514135142351433514435145351463514735148351493515035151351523515335154351553515635157351583515935160351613516235163351643516535166351673516835169351703517135172351733517435175351763517735178351793518035181351823518335184351853518635187351883518935190351913519235193351943519535196351973519835199352003520135202352033520435205352063520735208352093521035211352123521335214352153521635217352183521935220352213522235223352243522535226352273522835229352303523135232352333523435235352363523735238352393524035241352423524335244352453524635247352483524935250352513525235253352543525535256352573525835259352603526135262352633526435265352663526735268352693527035271352723527335274352753527635277352783527935280352813528235283352843528535286352873528835289352903529135292352933529435295352963529735298352993530035301353023530335304353053530635307353083530935310353113531235313353143531535316353173531835319353203532135322353233532435325353263532735328353293533035331353323533335334353353533635337353383533935340353413534235343353443534535346353473534835349353503535135352353533535435355353563535735358353593536035361353623536335364353653536635367353683536935370353713537235373353743537535376353773537835379353803538135382353833538435385353863538735388353893539035391353923539335394353953539635397353983539935400354013540235403354043540535406354073540835409354103541135412354133541435415354163541735418354193542035421354223542335424354253542635427354283542935430354313543235433354343543535436354373543835439354403544135442354433544435445354463544735448354493545035451354523545335454354553545635457354583545935460354613546235463354643546535466354673546835469354703547135472354733547435475354763547735478354793548035481354823548335484354853548635487354883548935490354913549235493354943549535496354973549835499355003550135502355033550435505355063550735508355093551035511355123551335514355153551635517355183551935520355213552235523355243552535526355273552835529355303553135532355333553435535355363553735538355393554035541355423554335544355453554635547355483554935550355513555235553355543555535556355573555835559355603556135562355633556435565355663556735568355693557035571355723557335574355753557635577355783557935580355813558235583355843558535586355873558835589355903559135592355933559435595355963559735598355993560035601356023560335604356053560635607356083560935610356113561235613356143561535616356173561835619356203562135622356233562435625356263562735628356293563035631356323563335634356353563635637356383563935640356413564235643356443564535646356473564835649356503565135652356533565435655356563565735658356593566035661356623566335664356653566635667356683566935670356713567235673356743567535676356773567835679356803568135682356833568435685356863568735688356893569035691356923569335694356953569635697356983569935700357013570235703357043570535706357073570835709357103571135712357133571435715357163571735718357193572035721357223572335724357253572635727357283572935730357313573235733357343573535736357373573835739357403574135742357433574435745357463574735748357493575035751357523575335754357553575635757357583575935760357613576235763357643576535766357673576835769357703577135772357733577435775357763577735778357793578035781357823578335784357853578635787357883578935790357913579235793357943579535796357973579835799358003580135802358033580435805358063580735808358093581035811358123581335814358153581635817358183581935820358213582235823358243582535826358273582835829358303583135832358333583435835358363583735838358393584035841358423584335844358453584635847358483584935850358513585235853358543585535856358573585835859358603586135862358633586435865358663586735868358693587035871358723587335874358753587635877358783587935880358813588235883358843588535886358873588835889358903589135892358933589435895358963589735898358993590035901359023590335904359053590635907359083590935910359113591235913359143591535916359173591835919359203592135922359233592435925359263592735928359293593035931359323593335934359353593635937359383593935940359413594235943359443594535946359473594835949359503595135952359533595435955359563595735958359593596035961359623596335964359653596635967359683596935970359713597235973359743597535976359773597835979359803598135982359833598435985359863598735988359893599035991359923599335994359953599635997359983599936000360013600236003360043600536006360073600836009360103601136012360133601436015360163601736018360193602036021360223602336024360253602636027360283602936030360313603236033360343603536036360373603836039360403604136042360433604436045360463604736048360493605036051360523605336054360553605636057360583605936060360613606236063360643606536066360673606836069360703607136072360733607436075360763607736078360793608036081360823608336084360853608636087360883608936090360913609236093360943609536096360973609836099361003610136102361033610436105361063610736108361093611036111361123611336114361153611636117361183611936120361213612236123361243612536126361273612836129361303613136132361333613436135361363613736138361393614036141361423614336144361453614636147361483614936150361513615236153361543615536156361573615836159361603616136162361633616436165361663616736168361693617036171361723617336174361753617636177361783617936180361813618236183361843618536186361873618836189361903619136192361933619436195361963619736198361993620036201362023620336204362053620636207362083620936210362113621236213362143621536216362173621836219362203622136222362233622436225362263622736228362293623036231362323623336234362353623636237362383623936240362413624236243362443624536246362473624836249362503625136252362533625436255362563625736258362593626036261362623626336264362653626636267362683626936270362713627236273362743627536276362773627836279362803628136282362833628436285362863628736288362893629036291362923629336294362953629636297362983629936300363013630236303363043630536306363073630836309363103631136312363133631436315363163631736318363193632036321363223632336324363253632636327363283632936330363313633236333363343633536336363373633836339363403634136342363433634436345363463634736348363493635036351363523635336354363553635636357363583635936360363613636236363363643636536366363673636836369363703637136372363733637436375363763637736378363793638036381363823638336384363853638636387363883638936390363913639236393363943639536396363973639836399364003640136402364033640436405364063640736408364093641036411364123641336414364153641636417364183641936420364213642236423364243642536426364273642836429364303643136432364333643436435364363643736438364393644036441364423644336444364453644636447364483644936450364513645236453364543645536456364573645836459364603646136462364633646436465364663646736468364693647036471364723647336474364753647636477364783647936480364813648236483364843648536486364873648836489364903649136492364933649436495364963649736498364993650036501365023650336504365053650636507365083650936510365113651236513365143651536516365173651836519365203652136522365233652436525365263652736528365293653036531365323653336534365353653636537365383653936540365413654236543365443654536546365473654836549365503655136552365533655436555365563655736558365593656036561365623656336564365653656636567365683656936570365713657236573365743657536576365773657836579365803658136582365833658436585365863658736588365893659036591365923659336594365953659636597365983659936600366013660236603366043660536606366073660836609366103661136612366133661436615366163661736618366193662036621366223662336624366253662636627366283662936630366313663236633366343663536636366373663836639366403664136642366433664436645366463664736648366493665036651366523665336654366553665636657366583665936660366613666236663366643666536666366673666836669366703667136672366733667436675366763667736678366793668036681366823668336684366853668636687366883668936690366913669236693366943669536696366973669836699367003670136702367033670436705367063670736708367093671036711367123671336714367153671636717367183671936720367213672236723367243672536726367273672836729367303673136732367333673436735367363673736738367393674036741367423674336744367453674636747367483674936750367513675236753367543675536756367573675836759367603676136762367633676436765367663676736768367693677036771367723677336774367753677636777367783677936780367813678236783367843678536786367873678836789367903679136792367933679436795367963679736798367993680036801368023680336804368053680636807368083680936810368113681236813368143681536816368173681836819368203682136822368233682436825368263682736828368293683036831368323683336834368353683636837368383683936840368413684236843368443684536846368473684836849368503685136852368533685436855368563685736858368593686036861368623686336864368653686636867368683686936870368713687236873368743687536876368773687836879368803688136882368833688436885368863688736888368893689036891368923689336894368953689636897368983689936900369013690236903369043690536906369073690836909369103691136912369133691436915369163691736918369193692036921369223692336924369253692636927369283692936930369313693236933369343693536936369373693836939369403694136942369433694436945369463694736948369493695036951369523695336954369553695636957369583695936960369613696236963369643696536966369673696836969369703697136972369733697436975369763697736978369793698036981369823698336984369853698636987369883698936990369913699236993369943699536996369973699836999370003700137002370033700437005370063700737008370093701037011370123701337014370153701637017370183701937020370213702237023370243702537026370273702837029370303703137032370333703437035370363703737038370393704037041370423704337044370453704637047370483704937050370513705237053370543705537056370573705837059370603706137062370633706437065370663706737068370693707037071370723707337074370753707637077370783707937080370813708237083370843708537086370873708837089370903709137092370933709437095370963709737098370993710037101371023710337104371053710637107371083710937110371113711237113371143711537116371173711837119371203712137122371233712437125371263712737128371293713037131371323713337134371353713637137371383713937140371413714237143371443714537146371473714837149371503715137152371533715437155371563715737158371593716037161371623716337164371653716637167371683716937170371713717237173371743717537176371773717837179371803718137182371833718437185371863718737188371893719037191371923719337194371953719637197371983719937200372013720237203372043720537206372073720837209372103721137212372133721437215372163721737218372193722037221372223722337224372253722637227372283722937230372313723237233372343723537236372373723837239372403724137242372433724437245372463724737248372493725037251372523725337254372553725637257372583725937260372613726237263372643726537266372673726837269372703727137272372733727437275372763727737278372793728037281372823728337284372853728637287372883728937290372913729237293372943729537296372973729837299373003730137302373033730437305373063730737308373093731037311373123731337314373153731637317373183731937320373213732237323373243732537326373273732837329373303733137332373333733437335373363733737338373393734037341373423734337344373453734637347373483734937350373513735237353373543735537356373573735837359373603736137362373633736437365373663736737368373693737037371373723737337374373753737637377373783737937380373813738237383373843738537386373873738837389373903739137392373933739437395373963739737398373993740037401374023740337404374053740637407374083740937410374113741237413374143741537416374173741837419374203742137422374233742437425374263742737428374293743037431374323743337434374353743637437374383743937440374413744237443374443744537446374473744837449374503745137452374533745437455374563745737458374593746037461374623746337464374653746637467374683746937470374713747237473374743747537476374773747837479374803748137482374833748437485374863748737488374893749037491374923749337494374953749637497374983749937500375013750237503375043750537506375073750837509375103751137512375133751437515375163751737518375193752037521375223752337524375253752637527375283752937530375313753237533375343753537536375373753837539375403754137542375433754437545375463754737548375493755037551375523755337554375553755637557375583755937560375613756237563375643756537566375673756837569375703757137572375733757437575375763757737578375793758037581375823758337584375853758637587375883758937590375913759237593375943759537596375973759837599376003760137602376033760437605376063760737608376093761037611376123761337614376153761637617376183761937620376213762237623376243762537626376273762837629376303763137632376333763437635376363763737638376393764037641376423764337644376453764637647376483764937650376513765237653376543765537656376573765837659376603766137662376633766437665376663766737668376693767037671376723767337674376753767637677376783767937680376813768237683376843768537686376873768837689376903769137692376933769437695376963769737698376993770037701377023770337704377053770637707377083770937710377113771237713377143771537716377173771837719377203772137722377233772437725377263772737728377293773037731377323773337734377353773637737377383773937740377413774237743377443774537746377473774837749377503775137752377533775437755377563775737758377593776037761377623776337764377653776637767377683776937770377713777237773377743777537776377773777837779377803778137782377833778437785377863778737788377893779037791377923779337794377953779637797377983779937800378013780237803378043780537806378073780837809378103781137812378133781437815378163781737818378193782037821378223782337824378253782637827378283782937830378313783237833378343783537836378373783837839378403784137842378433784437845378463784737848378493785037851378523785337854378553785637857378583785937860378613786237863378643786537866378673786837869378703787137872378733787437875378763787737878378793788037881378823788337884378853788637887378883788937890378913789237893378943789537896378973789837899379003790137902379033790437905379063790737908379093791037911379123791337914379153791637917379183791937920379213792237923379243792537926379273792837929379303793137932379333793437935379363793737938379393794037941379423794337944379453794637947379483794937950379513795237953379543795537956379573795837959379603796137962379633796437965379663796737968379693797037971379723797337974379753797637977379783797937980379813798237983379843798537986379873798837989379903799137992379933799437995379963799737998379993800038001380023800338004380053800638007380083800938010380113801238013380143801538016380173801838019380203802138022380233802438025380263802738028380293803038031380323803338034380353803638037380383803938040380413804238043380443804538046380473804838049380503805138052380533805438055380563805738058380593806038061380623806338064380653806638067380683806938070380713807238073380743807538076380773807838079380803808138082380833808438085380863808738088380893809038091380923809338094380953809638097380983809938100381013810238103381043810538106381073810838109381103811138112381133811438115381163811738118381193812038121381223812338124381253812638127381283812938130381313813238133381343813538136381373813838139381403814138142381433814438145381463814738148381493815038151381523815338154381553815638157381583815938160381613816238163381643816538166381673816838169381703817138172381733817438175381763817738178381793818038181381823818338184381853818638187381883818938190381913819238193381943819538196381973819838199382003820138202382033820438205382063820738208382093821038211382123821338214382153821638217382183821938220382213822238223382243822538226382273822838229382303823138232382333823438235382363823738238382393824038241382423824338244382453824638247382483824938250382513825238253382543825538256382573825838259382603826138262382633826438265382663826738268382693827038271382723827338274382753827638277382783827938280382813828238283382843828538286382873828838289382903829138292382933829438295382963829738298382993830038301383023830338304383053830638307383083830938310383113831238313383143831538316383173831838319383203832138322383233832438325383263832738328383293833038331383323833338334383353833638337383383833938340383413834238343383443834538346383473834838349383503835138352383533835438355383563835738358383593836038361383623836338364383653836638367383683836938370383713837238373383743837538376383773837838379383803838138382383833838438385383863838738388383893839038391383923839338394383953839638397383983839938400384013840238403384043840538406384073840838409384103841138412384133841438415384163841738418384193842038421384223842338424384253842638427384283842938430384313843238433384343843538436384373843838439384403844138442384433844438445384463844738448384493845038451384523845338454384553845638457384583845938460384613846238463384643846538466384673846838469384703847138472384733847438475384763847738478384793848038481384823848338484384853848638487384883848938490384913849238493384943849538496384973849838499385003850138502385033850438505385063850738508385093851038511385123851338514385153851638517385183851938520385213852238523385243852538526385273852838529385303853138532385333853438535385363853738538385393854038541385423854338544385453854638547385483854938550385513855238553385543855538556385573855838559385603856138562385633856438565385663856738568385693857038571385723857338574385753857638577385783857938580385813858238583385843858538586385873858838589385903859138592385933859438595385963859738598385993860038601386023860338604386053860638607386083860938610386113861238613386143861538616386173861838619386203862138622386233862438625386263862738628386293863038631386323863338634386353863638637386383863938640386413864238643386443864538646386473864838649386503865138652386533865438655386563865738658386593866038661386623866338664386653866638667386683866938670386713867238673386743867538676386773867838679386803868138682386833868438685386863868738688386893869038691386923869338694386953869638697386983869938700387013870238703387043870538706387073870838709387103871138712387133871438715387163871738718387193872038721387223872338724387253872638727387283872938730387313873238733387343873538736387373873838739387403874138742387433874438745387463874738748387493875038751387523875338754387553875638757387583875938760387613876238763387643876538766387673876838769387703877138772387733877438775387763877738778387793878038781387823878338784387853878638787387883878938790387913879238793387943879538796387973879838799388003880138802388033880438805388063880738808388093881038811388123881338814388153881638817388183881938820388213882238823388243882538826388273882838829388303883138832388333883438835388363883738838388393884038841388423884338844388453884638847388483884938850388513885238853388543885538856388573885838859388603886138862388633886438865388663886738868388693887038871388723887338874388753887638877388783887938880388813888238883388843888538886388873888838889388903889138892388933889438895388963889738898388993890038901389023890338904389053890638907389083890938910389113891238913389143891538916389173891838919389203892138922389233892438925389263892738928389293893038931389323893338934389353893638937389383893938940389413894238943389443894538946389473894838949389503895138952389533895438955389563895738958389593896038961389623896338964389653896638967389683896938970389713897238973389743897538976389773897838979389803898138982389833898438985389863898738988389893899038991389923899338994389953899638997389983899939000390013900239003390043900539006390073900839009390103901139012390133901439015390163901739018390193902039021390223902339024390253902639027390283902939030390313903239033390343903539036390373903839039390403904139042390433904439045390463904739048390493905039051390523905339054390553905639057390583905939060390613906239063390643906539066390673906839069390703907139072390733907439075390763907739078390793908039081390823908339084390853908639087390883908939090390913909239093390943909539096390973909839099391003910139102391033910439105391063910739108391093911039111391123911339114391153911639117391183911939120391213912239123391243912539126391273912839129391303913139132391333913439135391363913739138391393914039141391423914339144391453914639147391483914939150391513915239153391543915539156391573915839159391603916139162391633916439165391663916739168391693917039171391723917339174391753917639177391783917939180391813918239183391843918539186391873918839189391903919139192391933919439195391963919739198391993920039201392023920339204392053920639207392083920939210392113921239213392143921539216392173921839219392203922139222392233922439225392263922739228392293923039231392323923339234392353923639237392383923939240392413924239243392443924539246392473924839249392503925139252392533925439255392563925739258392593926039261392623926339264392653926639267392683926939270392713927239273392743927539276392773927839279392803928139282392833928439285392863928739288392893929039291392923929339294392953929639297392983929939300393013930239303393043930539306393073930839309393103931139312393133931439315393163931739318393193932039321393223932339324393253932639327393283932939330393313933239333393343933539336393373933839339393403934139342393433934439345393463934739348393493935039351393523935339354393553935639357393583935939360393613936239363393643936539366393673936839369393703937139372393733937439375393763937739378393793938039381393823938339384393853938639387393883938939390393913939239393393943939539396393973939839399394003940139402394033940439405394063940739408394093941039411394123941339414394153941639417394183941939420394213942239423394243942539426394273942839429394303943139432394333943439435394363943739438394393944039441394423944339444394453944639447394483944939450394513945239453394543945539456394573945839459394603946139462394633946439465394663946739468394693947039471394723947339474394753947639477394783947939480394813948239483394843948539486394873948839489394903949139492394933949439495394963949739498394993950039501395023950339504395053950639507395083950939510395113951239513395143951539516395173951839519395203952139522395233952439525395263952739528395293953039531395323953339534395353953639537395383953939540395413954239543395443954539546395473954839549395503955139552395533955439555395563955739558395593956039561395623956339564395653956639567395683956939570395713957239573395743957539576395773957839579395803958139582395833958439585395863958739588395893959039591395923959339594395953959639597395983959939600396013960239603396043960539606396073960839609396103961139612396133961439615396163961739618396193962039621396223962339624396253962639627396283962939630396313963239633396343963539636396373963839639396403964139642396433964439645396463964739648396493965039651396523965339654396553965639657396583965939660396613966239663396643966539666396673966839669396703967139672396733967439675396763967739678396793968039681396823968339684396853968639687396883968939690396913969239693396943969539696396973969839699397003970139702397033970439705397063970739708397093971039711397123971339714397153971639717397183971939720397213972239723397243972539726397273972839729397303973139732397333973439735397363973739738397393974039741397423974339744397453974639747397483974939750397513975239753397543975539756397573975839759397603976139762397633976439765397663976739768397693977039771397723977339774397753977639777397783977939780397813978239783397843978539786397873978839789397903979139792397933979439795397963979739798397993980039801398023980339804398053980639807398083980939810398113981239813398143981539816398173981839819398203982139822398233982439825398263982739828398293983039831398323983339834398353983639837398383983939840398413984239843398443984539846398473984839849398503985139852398533985439855398563985739858398593986039861398623986339864398653986639867398683986939870398713987239873398743987539876398773987839879398803988139882398833988439885398863988739888398893989039891398923989339894398953989639897398983989939900399013990239903399043990539906399073990839909399103991139912399133991439915399163991739918399193992039921399223992339924399253992639927399283992939930399313993239933399343993539936399373993839939399403994139942399433994439945399463994739948399493995039951399523995339954399553995639957399583995939960399613996239963399643996539966399673996839969399703997139972399733997439975399763997739978399793998039981399823998339984399853998639987399883998939990399913999239993399943999539996399973999839999400004000140002400034000440005400064000740008400094001040011400124001340014400154001640017400184001940020400214002240023400244002540026400274002840029400304003140032400334003440035400364003740038400394004040041400424004340044400454004640047400484004940050400514005240053400544005540056400574005840059400604006140062400634006440065400664006740068400694007040071400724007340074400754007640077400784007940080400814008240083400844008540086400874008840089400904009140092400934009440095400964009740098400994010040101401024010340104401054010640107401084010940110401114011240113401144011540116401174011840119401204012140122401234012440125401264012740128401294013040131401324013340134401354013640137401384013940140401414014240143401444014540146401474014840149401504015140152401534015440155401564015740158401594016040161401624016340164401654016640167401684016940170401714017240173401744017540176401774017840179401804018140182401834018440185401864018740188401894019040191401924019340194401954019640197401984019940200402014020240203402044020540206402074020840209402104021140212402134021440215402164021740218402194022040221402224022340224402254022640227402284022940230402314023240233402344023540236402374023840239402404024140242402434024440245402464024740248402494025040251402524025340254402554025640257402584025940260402614026240263402644026540266402674026840269402704027140272402734027440275402764027740278402794028040281402824028340284402854028640287402884028940290402914029240293402944029540296402974029840299403004030140302403034030440305403064030740308403094031040311403124031340314403154031640317403184031940320403214032240323403244032540326403274032840329403304033140332403334033440335403364033740338403394034040341403424034340344403454034640347403484034940350403514035240353403544035540356403574035840359403604036140362403634036440365403664036740368403694037040371403724037340374403754037640377403784037940380403814038240383403844038540386403874038840389403904039140392403934039440395403964039740398403994040040401404024040340404404054040640407404084040940410404114041240413404144041540416404174041840419404204042140422404234042440425404264042740428404294043040431404324043340434404354043640437404384043940440404414044240443404444044540446404474044840449404504045140452404534045440455404564045740458404594046040461404624046340464404654046640467404684046940470404714047240473404744047540476404774047840479404804048140482404834048440485404864048740488404894049040491404924049340494404954049640497404984049940500405014050240503405044050540506405074050840509405104051140512405134051440515405164051740518405194052040521405224052340524405254052640527405284052940530405314053240533405344053540536405374053840539405404054140542405434054440545405464054740548405494055040551405524055340554405554055640557405584055940560405614056240563405644056540566405674056840569405704057140572405734057440575405764057740578405794058040581405824058340584405854058640587405884058940590405914059240593405944059540596405974059840599406004060140602406034060440605406064060740608406094061040611406124061340614406154061640617406184061940620406214062240623406244062540626406274062840629406304063140632406334063440635406364063740638406394064040641406424064340644406454064640647406484064940650406514065240653406544065540656406574065840659406604066140662406634066440665406664066740668406694067040671406724067340674406754067640677406784067940680406814068240683406844068540686406874068840689406904069140692406934069440695406964069740698406994070040701407024070340704407054070640707407084070940710407114071240713407144071540716407174071840719407204072140722407234072440725407264072740728407294073040731407324073340734407354073640737407384073940740407414074240743407444074540746407474074840749407504075140752407534075440755407564075740758407594076040761407624076340764407654076640767407684076940770407714077240773407744077540776407774077840779407804078140782407834078440785407864078740788407894079040791407924079340794407954079640797407984079940800408014080240803408044080540806408074080840809408104081140812408134081440815408164081740818408194082040821408224082340824408254082640827408284082940830408314083240833408344083540836408374083840839408404084140842408434084440845408464084740848408494085040851408524085340854408554085640857408584085940860408614086240863408644086540866408674086840869408704087140872408734087440875408764087740878408794088040881408824088340884408854088640887408884088940890408914089240893408944089540896408974089840899409004090140902409034090440905409064090740908409094091040911409124091340914409154091640917409184091940920409214092240923409244092540926409274092840929409304093140932409334093440935409364093740938409394094040941409424094340944409454094640947409484094940950409514095240953409544095540956409574095840959409604096140962409634096440965409664096740968409694097040971409724097340974409754097640977409784097940980409814098240983409844098540986409874098840989409904099140992409934099440995409964099740998409994100041001410024100341004410054100641007410084100941010410114101241013410144101541016410174101841019410204102141022410234102441025410264102741028410294103041031410324103341034410354103641037410384103941040410414104241043410444104541046410474104841049410504105141052410534105441055410564105741058410594106041061410624106341064410654106641067410684106941070410714107241073410744107541076410774107841079410804108141082410834108441085410864108741088410894109041091410924109341094410954109641097410984109941100411014110241103411044110541106411074110841109411104111141112411134111441115411164111741118411194112041121411224112341124411254112641127411284112941130411314113241133411344113541136411374113841139411404114141142411434114441145411464114741148411494115041151411524115341154411554115641157411584115941160411614116241163411644116541166411674116841169411704117141172411734117441175411764117741178411794118041181411824118341184411854118641187411884118941190411914119241193411944119541196411974119841199412004120141202412034120441205412064120741208412094121041211412124121341214412154121641217412184121941220412214122241223412244122541226412274122841229412304123141232412334123441235412364123741238412394124041241412424124341244412454124641247412484124941250412514125241253412544125541256412574125841259412604126141262412634126441265412664126741268412694127041271412724127341274412754127641277412784127941280412814128241283412844128541286412874128841289412904129141292412934129441295412964129741298412994130041301413024130341304413054130641307413084130941310413114131241313413144131541316413174131841319413204132141322413234132441325413264132741328413294133041331413324133341334413354133641337413384133941340413414134241343413444134541346413474134841349413504135141352413534135441355413564135741358413594136041361413624136341364413654136641367413684136941370413714137241373413744137541376413774137841379413804138141382413834138441385413864138741388413894139041391413924139341394413954139641397413984139941400414014140241403414044140541406414074140841409414104141141412414134141441415414164141741418414194142041421414224142341424414254142641427414284142941430414314143241433414344143541436414374143841439414404144141442414434144441445414464144741448414494145041451414524145341454414554145641457414584145941460414614146241463414644146541466414674146841469414704147141472414734147441475414764147741478414794148041481414824148341484414854148641487414884148941490414914149241493414944149541496414974149841499415004150141502415034150441505415064150741508415094151041511415124151341514415154151641517415184151941520415214152241523415244152541526415274152841529415304153141532415334153441535415364153741538415394154041541415424154341544415454154641547415484154941550415514155241553415544155541556415574155841559415604156141562415634156441565415664156741568415694157041571415724157341574415754157641577415784157941580415814158241583415844158541586415874158841589415904159141592415934159441595415964159741598415994160041601416024160341604416054160641607416084160941610416114161241613416144161541616416174161841619416204162141622416234162441625416264162741628416294163041631416324163341634416354163641637416384163941640416414164241643416444164541646416474164841649416504165141652416534165441655416564165741658416594166041661416624166341664416654166641667416684166941670416714167241673416744167541676416774167841679416804168141682416834168441685416864168741688416894169041691416924169341694416954169641697416984169941700417014170241703417044170541706417074170841709417104171141712417134171441715417164171741718417194172041721417224172341724417254172641727417284172941730417314173241733417344173541736417374173841739417404174141742417434174441745417464174741748417494175041751417524175341754417554175641757417584175941760417614176241763417644176541766417674176841769417704177141772417734177441775417764177741778417794178041781417824178341784417854178641787417884178941790417914179241793417944179541796417974179841799418004180141802418034180441805418064180741808418094181041811418124181341814418154181641817418184181941820418214182241823418244182541826418274182841829418304183141832418334183441835418364183741838418394184041841418424184341844418454184641847418484184941850418514185241853418544185541856418574185841859418604186141862418634186441865418664186741868418694187041871418724187341874418754187641877418784187941880418814188241883418844188541886418874188841889418904189141892418934189441895418964189741898418994190041901419024190341904419054190641907419084190941910419114191241913419144191541916419174191841919419204192141922419234192441925419264192741928419294193041931419324193341934419354193641937419384193941940419414194241943419444194541946419474194841949419504195141952419534195441955419564195741958419594196041961419624196341964419654196641967419684196941970419714197241973419744197541976419774197841979419804198141982419834198441985419864198741988419894199041991419924199341994419954199641997419984199942000420014200242003420044200542006420074200842009420104201142012420134201442015420164201742018420194202042021420224202342024420254202642027420284202942030420314203242033420344203542036420374203842039420404204142042420434204442045420464204742048420494205042051420524205342054420554205642057420584205942060420614206242063420644206542066420674206842069420704207142072420734207442075420764207742078420794208042081420824208342084420854208642087420884208942090420914209242093420944209542096420974209842099421004210142102421034210442105421064210742108421094211042111421124211342114421154211642117421184211942120421214212242123421244212542126421274212842129421304213142132421334213442135421364213742138421394214042141421424214342144421454214642147421484214942150421514215242153421544215542156421574215842159421604216142162421634216442165421664216742168421694217042171421724217342174421754217642177421784217942180421814218242183421844218542186421874218842189421904219142192421934219442195421964219742198421994220042201422024220342204422054220642207422084220942210422114221242213422144221542216422174221842219422204222142222422234222442225422264222742228422294223042231422324223342234422354223642237422384223942240422414224242243422444224542246422474224842249422504225142252422534225442255422564225742258422594226042261422624226342264422654226642267422684226942270422714227242273422744227542276422774227842279422804228142282422834228442285422864228742288422894229042291422924229342294422954229642297422984229942300423014230242303423044230542306423074230842309423104231142312423134231442315423164231742318423194232042321423224232342324423254232642327423284232942330423314233242333423344233542336423374233842339423404234142342423434234442345423464234742348423494235042351423524235342354423554235642357423584235942360423614236242363423644236542366423674236842369423704237142372423734237442375423764237742378423794238042381423824238342384423854238642387423884238942390423914239242393423944239542396423974239842399424004240142402424034240442405424064240742408424094241042411424124241342414424154241642417424184241942420424214242242423424244242542426424274242842429424304243142432424334243442435424364243742438424394244042441424424244342444424454244642447424484244942450424514245242453424544245542456424574245842459424604246142462424634246442465424664246742468424694247042471424724247342474424754247642477424784247942480424814248242483424844248542486424874248842489424904249142492424934249442495424964249742498424994250042501425024250342504425054250642507425084250942510425114251242513425144251542516425174251842519425204252142522425234252442525425264252742528425294253042531425324253342534425354253642537425384253942540425414254242543425444254542546425474254842549425504255142552425534255442555425564255742558425594256042561425624256342564425654256642567425684256942570425714257242573425744257542576425774257842579425804258142582425834258442585425864258742588425894259042591425924259342594425954259642597425984259942600426014260242603426044260542606426074260842609426104261142612426134261442615426164261742618426194262042621426224262342624426254262642627426284262942630426314263242633426344263542636426374263842639426404264142642426434264442645426464264742648426494265042651426524265342654426554265642657426584265942660426614266242663426644266542666426674266842669426704267142672426734267442675426764267742678426794268042681426824268342684426854268642687426884268942690426914269242693426944269542696426974269842699427004270142702427034270442705427064270742708427094271042711427124271342714427154271642717427184271942720427214272242723427244272542726427274272842729427304273142732427334273442735427364273742738427394274042741427424274342744427454274642747427484274942750427514275242753427544275542756427574275842759427604276142762427634276442765427664276742768427694277042771427724277342774427754277642777427784277942780427814278242783427844278542786427874278842789427904279142792427934279442795427964279742798427994280042801428024280342804428054280642807428084280942810428114281242813428144281542816428174281842819428204282142822428234282442825428264282742828428294283042831428324283342834428354283642837428384283942840428414284242843428444284542846428474284842849428504285142852428534285442855428564285742858428594286042861428624286342864428654286642867428684286942870428714287242873428744287542876428774287842879428804288142882428834288442885428864288742888428894289042891428924289342894428954289642897428984289942900429014290242903429044290542906429074290842909429104291142912429134291442915429164291742918429194292042921429224292342924429254292642927429284292942930429314293242933429344293542936429374293842939429404294142942429434294442945429464294742948429494295042951429524295342954429554295642957429584295942960429614296242963429644296542966429674296842969429704297142972429734297442975429764297742978429794298042981429824298342984429854298642987429884298942990429914299242993429944299542996429974299842999430004300143002430034300443005430064300743008430094301043011430124301343014430154301643017430184301943020430214302243023430244302543026430274302843029430304303143032430334303443035430364303743038430394304043041430424304343044430454304643047430484304943050430514305243053430544305543056430574305843059430604306143062430634306443065430664306743068430694307043071430724307343074430754307643077430784307943080430814308243083430844308543086430874308843089430904309143092430934309443095430964309743098430994310043101431024310343104431054310643107431084310943110431114311243113431144311543116431174311843119431204312143122431234312443125431264312743128431294313043131431324313343134431354313643137431384313943140431414314243143431444314543146431474314843149431504315143152431534315443155431564315743158431594316043161431624316343164431654316643167431684316943170431714317243173431744317543176431774317843179431804318143182431834318443185431864318743188431894319043191431924319343194431954319643197431984319943200432014320243203432044320543206432074320843209432104321143212432134321443215432164321743218432194322043221432224322343224432254322643227432284322943230432314323243233432344323543236432374323843239432404324143242432434324443245432464324743248432494325043251432524325343254432554325643257432584325943260432614326243263432644326543266432674326843269432704327143272432734327443275432764327743278432794328043281432824328343284432854328643287432884328943290432914329243293432944329543296432974329843299433004330143302433034330443305433064330743308433094331043311433124331343314433154331643317433184331943320433214332243323433244332543326433274332843329433304333143332433334333443335433364333743338433394334043341433424334343344433454334643347433484334943350433514335243353433544335543356433574335843359433604336143362433634336443365433664336743368433694337043371433724337343374433754337643377433784337943380433814338243383433844338543386433874338843389433904339143392433934339443395433964339743398433994340043401434024340343404434054340643407434084340943410434114341243413434144341543416434174341843419434204342143422434234342443425434264342743428434294343043431434324343343434434354343643437434384343943440434414344243443434444344543446434474344843449434504345143452434534345443455434564345743458434594346043461434624346343464434654346643467434684346943470434714347243473434744347543476434774347843479434804348143482434834348443485434864348743488434894349043491434924349343494434954349643497434984349943500435014350243503435044350543506435074350843509435104351143512435134351443515435164351743518435194352043521435224352343524435254352643527435284352943530435314353243533435344353543536435374353843539435404354143542435434354443545435464354743548435494355043551435524355343554435554355643557435584355943560435614356243563435644356543566435674356843569435704357143572435734357443575435764357743578435794358043581435824358343584435854358643587435884358943590435914359243593435944359543596435974359843599436004360143602436034360443605436064360743608436094361043611436124361343614436154361643617436184361943620436214362243623436244362543626436274362843629436304363143632436334363443635436364363743638436394364043641436424364343644436454364643647436484364943650436514365243653436544365543656436574365843659436604366143662436634366443665436664366743668436694367043671436724367343674436754367643677436784367943680436814368243683436844368543686436874368843689436904369143692436934369443695436964369743698436994370043701437024370343704437054370643707437084370943710437114371243713437144371543716437174371843719437204372143722437234372443725437264372743728437294373043731437324373343734437354373643737437384373943740437414374243743437444374543746437474374843749437504375143752437534375443755437564375743758437594376043761437624376343764437654376643767437684376943770437714377243773437744377543776437774377843779437804378143782437834378443785437864378743788437894379043791437924379343794437954379643797437984379943800438014380243803438044380543806438074380843809438104381143812438134381443815438164381743818438194382043821438224382343824438254382643827438284382943830438314383243833438344383543836438374383843839438404384143842438434384443845438464384743848438494385043851438524385343854438554385643857438584385943860438614386243863438644386543866438674386843869438704387143872438734387443875438764387743878438794388043881438824388343884438854388643887438884388943890438914389243893438944389543896438974389843899439004390143902439034390443905439064390743908439094391043911439124391343914439154391643917439184391943920439214392243923439244392543926439274392843929439304393143932439334393443935439364393743938439394394043941439424394343944439454394643947439484394943950439514395243953439544395543956439574395843959439604396143962439634396443965439664396743968439694397043971439724397343974439754397643977439784397943980439814398243983439844398543986439874398843989439904399143992439934399443995439964399743998439994400044001440024400344004440054400644007440084400944010440114401244013440144401544016440174401844019440204402144022440234402444025440264402744028440294403044031440324403344034440354403644037440384403944040440414404244043440444404544046440474404844049440504405144052440534405444055440564405744058440594406044061440624406344064440654406644067440684406944070440714407244073440744407544076440774407844079440804408144082440834408444085440864408744088440894409044091440924409344094440954409644097440984409944100441014410244103441044410544106441074410844109441104411144112441134411444115441164411744118441194412044121441224412344124441254412644127441284412944130441314413244133441344413544136441374413844139441404414144142441434414444145441464414744148441494415044151441524415344154441554415644157441584415944160441614416244163441644416544166441674416844169441704417144172441734417444175441764417744178441794418044181441824418344184441854418644187441884418944190441914419244193441944419544196441974419844199442004420144202442034420444205442064420744208442094421044211442124421344214442154421644217442184421944220442214422244223442244422544226442274422844229442304423144232442334423444235442364423744238442394424044241442424424344244442454424644247442484424944250442514425244253442544425544256442574425844259442604426144262442634426444265442664426744268442694427044271442724427344274442754427644277442784427944280442814428244283442844428544286442874428844289442904429144292442934429444295442964429744298442994430044301443024430344304443054430644307443084430944310443114431244313443144431544316443174431844319443204432144322443234432444325443264432744328443294433044331443324433344334443354433644337443384433944340443414434244343443444434544346443474434844349443504435144352443534435444355443564435744358443594436044361443624436344364443654436644367443684436944370443714437244373443744437544376443774437844379443804438144382443834438444385443864438744388443894439044391443924439344394443954439644397443984439944400444014440244403444044440544406444074440844409444104441144412444134441444415444164441744418444194442044421444224442344424444254442644427444284442944430444314443244433444344443544436444374443844439444404444144442444434444444445444464444744448444494445044451444524445344454444554445644457444584445944460444614446244463444644446544466444674446844469444704447144472444734447444475444764447744478444794448044481444824448344484444854448644487444884448944490444914449244493444944449544496444974449844499445004450144502445034450444505445064450744508445094451044511445124451344514445154451644517445184451944520445214452244523445244452544526445274452844529445304453144532445334453444535445364453744538445394454044541445424454344544445454454644547445484454944550445514455244553445544455544556445574455844559445604456144562445634456444565445664456744568445694457044571445724457344574445754457644577445784457944580445814458244583445844458544586445874458844589445904459144592445934459444595445964459744598445994460044601446024460344604446054460644607446084460944610446114461244613446144461544616446174461844619446204462144622446234462444625446264462744628446294463044631446324463344634446354463644637446384463944640446414464244643446444464544646446474464844649446504465144652446534465444655446564465744658446594466044661446624466344664446654466644667446684466944670446714467244673446744467544676446774467844679446804468144682446834468444685446864468744688446894469044691446924469344694446954469644697446984469944700447014470244703447044470544706447074470844709447104471144712447134471444715447164471744718447194472044721447224472344724447254472644727447284472944730447314473244733447344473544736447374473844739447404474144742447434474444745447464474744748447494475044751447524475344754447554475644757447584475944760447614476244763447644476544766447674476844769447704477144772447734477444775447764477744778447794478044781447824478344784447854478644787447884478944790447914479244793447944479544796447974479844799448004480144802448034480444805448064480744808448094481044811448124481344814448154481644817448184481944820448214482244823448244482544826448274482844829448304483144832448334483444835448364483744838448394484044841448424484344844448454484644847448484484944850448514485244853448544485544856448574485844859448604486144862448634486444865448664486744868448694487044871448724487344874448754487644877448784487944880448814488244883448844488544886448874488844889448904489144892448934489444895448964489744898448994490044901449024490344904449054490644907449084490944910449114491244913449144491544916449174491844919449204492144922449234492444925449264492744928449294493044931449324493344934449354493644937449384493944940449414494244943449444494544946449474494844949449504495144952449534495444955449564495744958449594496044961449624496344964449654496644967449684496944970449714497244973449744497544976449774497844979449804498144982449834498444985449864498744988449894499044991449924499344994449954499644997449984499945000450014500245003450044500545006450074500845009450104501145012450134501445015450164501745018450194502045021450224502345024450254502645027450284502945030450314503245033450344503545036450374503845039450404504145042450434504445045450464504745048450494505045051450524505345054450554505645057450584505945060450614506245063450644506545066450674506845069450704507145072450734507445075450764507745078450794508045081450824508345084450854508645087450884508945090450914509245093450944509545096450974509845099451004510145102451034510445105451064510745108451094511045111451124511345114451154511645117451184511945120451214512245123451244512545126451274512845129451304513145132451334513445135451364513745138451394514045141451424514345144451454514645147451484514945150451514515245153451544515545156451574515845159451604516145162451634516445165451664516745168451694517045171451724517345174451754517645177451784517945180451814518245183451844518545186451874518845189451904519145192451934519445195451964519745198451994520045201452024520345204452054520645207452084520945210452114521245213452144521545216452174521845219452204522145222452234522445225452264522745228452294523045231452324523345234452354523645237452384523945240452414524245243452444524545246452474524845249452504525145252452534525445255452564525745258452594526045261452624526345264452654526645267452684526945270452714527245273452744527545276452774527845279452804528145282452834528445285452864528745288452894529045291452924529345294452954529645297452984529945300453014530245303453044530545306453074530845309453104531145312453134531445315453164531745318453194532045321453224532345324453254532645327453284532945330453314533245333453344533545336453374533845339453404534145342453434534445345453464534745348453494535045351453524535345354453554535645357453584535945360453614536245363453644536545366453674536845369453704537145372453734537445375453764537745378453794538045381453824538345384453854538645387453884538945390453914539245393453944539545396453974539845399454004540145402454034540445405454064540745408454094541045411454124541345414454154541645417454184541945420454214542245423454244542545426454274542845429454304543145432454334543445435454364543745438454394544045441454424544345444454454544645447454484544945450454514545245453454544545545456454574545845459454604546145462454634546445465454664546745468454694547045471454724547345474454754547645477454784547945480454814548245483454844548545486454874548845489454904549145492454934549445495454964549745498454994550045501455024550345504455054550645507455084550945510455114551245513455144551545516455174551845519455204552145522455234552445525455264552745528455294553045531455324553345534455354553645537455384553945540455414554245543455444554545546455474554845549455504555145552455534555445555455564555745558455594556045561455624556345564455654556645567455684556945570455714557245573455744557545576455774557845579455804558145582455834558445585455864558745588455894559045591455924559345594455954559645597455984559945600456014560245603456044560545606456074560845609456104561145612456134561445615456164561745618456194562045621456224562345624456254562645627456284562945630456314563245633456344563545636456374563845639456404564145642456434564445645456464564745648456494565045651456524565345654456554565645657456584565945660456614566245663456644566545666456674566845669456704567145672456734567445675456764567745678456794568045681456824568345684456854568645687456884568945690456914569245693456944569545696456974569845699457004570145702457034570445705457064570745708457094571045711457124571345714457154571645717457184571945720457214572245723457244572545726457274572845729457304573145732457334573445735457364573745738457394574045741457424574345744457454574645747457484574945750457514575245753457544575545756457574575845759457604576145762457634576445765457664576745768457694577045771457724577345774457754577645777457784577945780457814578245783457844578545786457874578845789457904579145792457934579445795457964579745798457994580045801458024580345804458054580645807458084580945810458114581245813458144581545816458174581845819458204582145822458234582445825458264582745828458294583045831458324583345834458354583645837458384583945840458414584245843458444584545846458474584845849458504585145852458534585445855458564585745858458594586045861458624586345864458654586645867458684586945870458714587245873458744587545876458774587845879458804588145882458834588445885458864588745888458894589045891458924589345894458954589645897458984589945900459014590245903459044590545906459074590845909459104591145912459134591445915459164591745918459194592045921459224592345924459254592645927459284592945930459314593245933459344593545936459374593845939459404594145942459434594445945459464594745948459494595045951459524595345954459554595645957459584595945960459614596245963459644596545966459674596845969459704597145972459734597445975459764597745978459794598045981459824598345984459854598645987459884598945990459914599245993459944599545996459974599845999460004600146002460034600446005460064600746008460094601046011460124601346014460154601646017460184601946020460214602246023460244602546026460274602846029460304603146032460334603446035460364603746038460394604046041460424604346044460454604646047460484604946050460514605246053460544605546056460574605846059460604606146062460634606446065460664606746068460694607046071460724607346074460754607646077460784607946080460814608246083460844608546086460874608846089460904609146092460934609446095460964609746098460994610046101461024610346104461054610646107461084610946110461114611246113461144611546116461174611846119461204612146122461234612446125461264612746128461294613046131461324613346134461354613646137461384613946140461414614246143461444614546146461474614846149461504615146152461534615446155461564615746158461594616046161461624616346164461654616646167461684616946170461714617246173461744617546176461774617846179461804618146182461834618446185461864618746188461894619046191461924619346194461954619646197461984619946200462014620246203462044620546206462074620846209462104621146212462134621446215462164621746218462194622046221462224622346224462254622646227462284622946230462314623246233462344623546236462374623846239462404624146242462434624446245462464624746248462494625046251462524625346254462554625646257462584625946260462614626246263462644626546266462674626846269462704627146272462734627446275462764627746278462794628046281462824628346284462854628646287462884628946290462914629246293462944629546296462974629846299463004630146302463034630446305463064630746308463094631046311463124631346314463154631646317463184631946320463214632246323463244632546326463274632846329463304633146332463334633446335463364633746338463394634046341463424634346344463454634646347463484634946350463514635246353463544635546356463574635846359463604636146362463634636446365463664636746368463694637046371463724637346374463754637646377463784637946380463814638246383463844638546386463874638846389463904639146392463934639446395463964639746398463994640046401464024640346404464054640646407464084640946410464114641246413464144641546416464174641846419464204642146422464234642446425464264642746428464294643046431464324643346434464354643646437464384643946440464414644246443464444644546446464474644846449464504645146452464534645446455464564645746458464594646046461464624646346464464654646646467464684646946470464714647246473464744647546476464774647846479464804648146482464834648446485464864648746488464894649046491464924649346494464954649646497464984649946500465014650246503465044650546506465074650846509465104651146512465134651446515465164651746518465194652046521465224652346524465254652646527465284652946530465314653246533465344653546536465374653846539465404654146542465434654446545465464654746548465494655046551465524655346554465554655646557465584655946560465614656246563465644656546566465674656846569465704657146572465734657446575465764657746578465794658046581465824658346584465854658646587465884658946590465914659246593465944659546596465974659846599466004660146602466034660446605466064660746608466094661046611466124661346614466154661646617466184661946620466214662246623466244662546626466274662846629466304663146632466334663446635466364663746638466394664046641466424664346644466454664646647466484664946650466514665246653466544665546656466574665846659466604666146662466634666446665466664666746668466694667046671466724667346674466754667646677466784667946680466814668246683466844668546686466874668846689466904669146692466934669446695466964669746698466994670046701467024670346704467054670646707467084670946710467114671246713467144671546716467174671846719467204672146722467234672446725467264672746728467294673046731467324673346734467354673646737467384673946740467414674246743467444674546746467474674846749467504675146752467534675446755467564675746758467594676046761467624676346764467654676646767467684676946770467714677246773467744677546776467774677846779467804678146782467834678446785467864678746788467894679046791467924679346794467954679646797467984679946800468014680246803468044680546806468074680846809468104681146812468134681446815468164681746818468194682046821468224682346824468254682646827468284682946830468314683246833468344683546836468374683846839468404684146842468434684446845468464684746848468494685046851468524685346854468554685646857468584685946860468614686246863468644686546866468674686846869468704687146872468734687446875468764687746878468794688046881468824688346884468854688646887468884688946890468914689246893468944689546896468974689846899469004690146902469034690446905469064690746908469094691046911469124691346914469154691646917469184691946920469214692246923469244692546926469274692846929469304693146932469334693446935469364693746938469394694046941469424694346944469454694646947469484694946950469514695246953469544695546956469574695846959469604696146962469634696446965469664696746968469694697046971469724697346974469754697646977469784697946980469814698246983469844698546986469874698846989469904699146992469934699446995469964699746998469994700047001470024700347004470054700647007470084700947010470114701247013470144701547016470174701847019470204702147022470234702447025470264702747028470294703047031470324703347034470354703647037470384703947040470414704247043470444704547046470474704847049470504705147052470534705447055470564705747058470594706047061470624706347064470654706647067470684706947070470714707247073470744707547076470774707847079470804708147082470834708447085470864708747088470894709047091470924709347094470954709647097470984709947100471014710247103471044710547106471074710847109471104711147112471134711447115471164711747118471194712047121471224712347124471254712647127471284712947130471314713247133471344713547136471374713847139471404714147142471434714447145471464714747148471494715047151471524715347154471554715647157471584715947160471614716247163471644716547166471674716847169471704717147172471734717447175471764717747178471794718047181471824718347184471854718647187471884718947190471914719247193471944719547196471974719847199472004720147202472034720447205472064720747208472094721047211472124721347214472154721647217472184721947220472214722247223472244722547226472274722847229472304723147232472334723447235472364723747238472394724047241472424724347244472454724647247472484724947250472514725247253472544725547256472574725847259472604726147262472634726447265472664726747268472694727047271472724727347274472754727647277472784727947280472814728247283472844728547286472874728847289472904729147292472934729447295472964729747298472994730047301473024730347304473054730647307473084730947310473114731247313473144731547316473174731847319473204732147322473234732447325473264732747328473294733047331473324733347334473354733647337473384733947340473414734247343473444734547346473474734847349473504735147352473534735447355473564735747358473594736047361473624736347364473654736647367473684736947370473714737247373473744737547376473774737847379473804738147382473834738447385473864738747388473894739047391473924739347394473954739647397473984739947400474014740247403474044740547406474074740847409474104741147412474134741447415474164741747418474194742047421474224742347424474254742647427474284742947430474314743247433474344743547436474374743847439474404744147442474434744447445474464744747448474494745047451474524745347454474554745647457474584745947460474614746247463474644746547466474674746847469474704747147472474734747447475474764747747478474794748047481474824748347484474854748647487474884748947490474914749247493474944749547496474974749847499475004750147502475034750447505475064750747508475094751047511475124751347514475154751647517475184751947520475214752247523475244752547526475274752847529475304753147532475334753447535475364753747538475394754047541475424754347544475454754647547475484754947550475514755247553475544755547556475574755847559475604756147562475634756447565475664756747568475694757047571475724757347574475754757647577475784757947580475814758247583475844758547586475874758847589475904759147592475934759447595475964759747598475994760047601476024760347604476054760647607476084760947610476114761247613476144761547616476174761847619476204762147622476234762447625476264762747628476294763047631476324763347634476354763647637476384763947640476414764247643476444764547646476474764847649476504765147652476534765447655476564765747658476594766047661476624766347664476654766647667476684766947670476714767247673476744767547676476774767847679476804768147682476834768447685476864768747688476894769047691476924769347694476954769647697476984769947700477014770247703477044770547706477074770847709477104771147712477134771447715477164771747718477194772047721477224772347724477254772647727477284772947730477314773247733477344773547736477374773847739477404774147742477434774447745477464774747748477494775047751477524775347754477554775647757477584775947760477614776247763477644776547766477674776847769477704777147772477734777447775477764777747778477794778047781477824778347784477854778647787477884778947790477914779247793477944779547796477974779847799478004780147802478034780447805478064780747808478094781047811478124781347814478154781647817478184781947820478214782247823478244782547826478274782847829478304783147832478334783447835478364783747838478394784047841478424784347844478454784647847478484784947850478514785247853478544785547856478574785847859478604786147862478634786447865478664786747868478694787047871478724787347874478754787647877478784787947880478814788247883478844788547886478874788847889478904789147892478934789447895478964789747898478994790047901479024790347904479054790647907479084790947910479114791247913479144791547916479174791847919479204792147922479234792447925479264792747928479294793047931479324793347934479354793647937479384793947940479414794247943479444794547946479474794847949479504795147952479534795447955479564795747958479594796047961479624796347964479654796647967479684796947970479714797247973479744797547976479774797847979479804798147982479834798447985479864798747988479894799047991479924799347994479954799647997479984799948000480014800248003480044800548006480074800848009480104801148012480134801448015480164801748018480194802048021480224802348024480254802648027480284802948030480314803248033480344803548036480374803848039480404804148042480434804448045480464804748048480494805048051480524805348054480554805648057480584805948060480614806248063480644806548066480674806848069480704807148072480734807448075480764807748078480794808048081480824808348084480854808648087480884808948090480914809248093480944809548096480974809848099481004810148102481034810448105481064810748108481094811048111481124811348114481154811648117481184811948120481214812248123481244812548126481274812848129481304813148132481334813448135481364813748138481394814048141481424814348144481454814648147481484814948150481514815248153481544815548156481574815848159481604816148162481634816448165481664816748168481694817048171481724817348174481754817648177481784817948180481814818248183481844818548186481874818848189481904819148192481934819448195481964819748198481994820048201482024820348204482054820648207482084820948210482114821248213482144821548216482174821848219482204822148222482234822448225482264822748228482294823048231482324823348234482354823648237482384823948240482414824248243482444824548246482474824848249482504825148252482534825448255482564825748258482594826048261482624826348264482654826648267482684826948270482714827248273482744827548276482774827848279482804828148282482834828448285482864828748288482894829048291482924829348294482954829648297482984829948300483014830248303483044830548306483074830848309483104831148312483134831448315483164831748318483194832048321483224832348324483254832648327483284832948330483314833248333483344833548336483374833848339483404834148342483434834448345483464834748348483494835048351483524835348354483554835648357483584835948360483614836248363483644836548366483674836848369483704837148372483734837448375483764837748378483794838048381483824838348384483854838648387483884838948390483914839248393483944839548396483974839848399484004840148402484034840448405484064840748408484094841048411484124841348414484154841648417484184841948420484214842248423484244842548426484274842848429484304843148432484334843448435484364843748438484394844048441484424844348444484454844648447484484844948450484514845248453484544845548456484574845848459484604846148462484634846448465484664846748468484694847048471484724847348474484754847648477484784847948480484814848248483484844848548486484874848848489484904849148492484934849448495484964849748498484994850048501485024850348504485054850648507485084850948510485114851248513485144851548516485174851848519485204852148522485234852448525485264852748528485294853048531485324853348534485354853648537485384853948540485414854248543485444854548546485474854848549485504855148552485534855448555485564855748558485594856048561485624856348564485654856648567485684856948570485714857248573485744857548576485774857848579485804858148582485834858448585485864858748588485894859048591485924859348594485954859648597485984859948600486014860248603486044860548606486074860848609486104861148612486134861448615486164861748618486194862048621486224862348624486254862648627486284862948630486314863248633486344863548636486374863848639486404864148642486434864448645486464864748648486494865048651486524865348654486554865648657486584865948660486614866248663486644866548666486674866848669486704867148672486734867448675486764867748678486794868048681486824868348684486854868648687486884868948690486914869248693486944869548696486974869848699487004870148702487034870448705487064870748708487094871048711487124871348714487154871648717487184871948720487214872248723487244872548726487274872848729487304873148732487334873448735487364873748738487394874048741487424874348744487454874648747487484874948750487514875248753487544875548756487574875848759487604876148762487634876448765487664876748768487694877048771487724877348774487754877648777487784877948780487814878248783487844878548786487874878848789487904879148792487934879448795487964879748798487994880048801488024880348804488054880648807488084880948810488114881248813488144881548816488174881848819488204882148822488234882448825488264882748828488294883048831488324883348834488354883648837488384883948840488414884248843488444884548846488474884848849488504885148852488534885448855488564885748858488594886048861488624886348864488654886648867488684886948870488714887248873488744887548876488774887848879488804888148882488834888448885488864888748888488894889048891488924889348894488954889648897488984889948900489014890248903489044890548906489074890848909489104891148912489134891448915489164891748918489194892048921489224892348924489254892648927489284892948930489314893248933489344893548936489374893848939489404894148942489434894448945489464894748948489494895048951489524895348954489554895648957489584895948960489614896248963489644896548966489674896848969489704897148972489734897448975489764897748978489794898048981489824898348984489854898648987489884898948990489914899248993489944899548996489974899848999490004900149002490034900449005490064900749008490094901049011490124901349014490154901649017490184901949020490214902249023490244902549026490274902849029490304903149032490334903449035490364903749038490394904049041490424904349044490454904649047490484904949050490514905249053490544905549056490574905849059490604906149062490634906449065490664906749068490694907049071490724907349074490754907649077490784907949080490814908249083490844908549086490874908849089490904909149092490934909449095490964909749098490994910049101491024910349104491054910649107491084910949110491114911249113491144911549116491174911849119491204912149122491234912449125491264912749128491294913049131491324913349134491354913649137491384913949140491414914249143491444914549146491474914849149491504915149152491534915449155491564915749158491594916049161491624916349164491654916649167491684916949170491714917249173491744917549176491774917849179491804918149182491834918449185491864918749188491894919049191491924919349194491954919649197491984919949200492014920249203492044920549206492074920849209492104921149212492134921449215492164921749218492194922049221492224922349224492254922649227492284922949230492314923249233492344923549236492374923849239492404924149242492434924449245492464924749248492494925049251492524925349254492554925649257492584925949260492614926249263492644926549266492674926849269492704927149272492734927449275492764927749278492794928049281492824928349284492854928649287492884928949290492914929249293492944929549296492974929849299493004930149302493034930449305493064930749308493094931049311493124931349314493154931649317493184931949320493214932249323493244932549326493274932849329493304933149332493334933449335493364933749338493394934049341493424934349344493454934649347493484934949350493514935249353493544935549356493574935849359493604936149362493634936449365493664936749368493694937049371493724937349374493754937649377493784937949380493814938249383493844938549386493874938849389493904939149392493934939449395493964939749398493994940049401494024940349404494054940649407494084940949410494114941249413494144941549416494174941849419494204942149422494234942449425494264942749428494294943049431494324943349434494354943649437494384943949440494414944249443494444944549446494474944849449494504945149452494534945449455494564945749458494594946049461494624946349464494654946649467494684946949470494714947249473494744947549476494774947849479494804948149482494834948449485494864948749488494894949049491494924949349494494954949649497494984949949500495014950249503495044950549506495074950849509495104951149512495134951449515495164951749518495194952049521495224952349524495254952649527495284952949530495314953249533495344953549536495374953849539495404954149542495434954449545495464954749548495494955049551495524955349554495554955649557495584955949560495614956249563495644956549566495674956849569495704957149572495734957449575495764957749578495794958049581495824958349584495854958649587495884958949590495914959249593495944959549596495974959849599496004960149602496034960449605496064960749608496094961049611496124961349614496154961649617496184961949620496214962249623496244962549626496274962849629496304963149632496334963449635496364963749638496394964049641496424964349644496454964649647496484964949650496514965249653496544965549656496574965849659496604966149662496634966449665496664966749668496694967049671496724967349674496754967649677496784967949680496814968249683496844968549686496874968849689496904969149692496934969449695496964969749698496994970049701497024970349704497054970649707497084970949710497114971249713497144971549716497174971849719497204972149722497234972449725497264972749728497294973049731497324973349734497354973649737497384973949740497414974249743497444974549746497474974849749497504975149752497534975449755497564975749758497594976049761497624976349764497654976649767497684976949770497714977249773497744977549776497774977849779497804978149782497834978449785497864978749788497894979049791497924979349794497954979649797497984979949800498014980249803498044980549806498074980849809498104981149812498134981449815498164981749818498194982049821498224982349824498254982649827498284982949830498314983249833498344983549836498374983849839498404984149842498434984449845498464984749848498494985049851498524985349854498554985649857498584985949860498614986249863498644986549866498674986849869498704987149872498734987449875498764987749878498794988049881498824988349884498854988649887498884988949890498914989249893498944989549896498974989849899499004990149902499034990449905499064990749908499094991049911499124991349914499154991649917499184991949920499214992249923499244992549926499274992849929499304993149932499334993449935499364993749938499394994049941499424994349944499454994649947499484994949950499514995249953499544995549956499574995849959499604996149962499634996449965499664996749968499694997049971499724997349974499754997649977499784997949980499814998249983499844998549986499874998849989499904999149992499934999449995499964999749998499995000050001500025000350004500055000650007500085000950010500115001250013500145001550016500175001850019500205002150022500235002450025500265002750028500295003050031500325003350034500355003650037500385003950040500415004250043500445004550046500475004850049500505005150052500535005450055500565005750058500595006050061500625006350064500655006650067500685006950070500715007250073500745007550076500775007850079500805008150082500835008450085500865008750088500895009050091500925009350094500955009650097500985009950100501015010250103501045010550106501075010850109501105011150112501135011450115501165011750118501195012050121501225012350124501255012650127501285012950130501315013250133501345013550136501375013850139501405014150142501435014450145501465014750148501495015050151501525015350154501555015650157501585015950160501615016250163501645016550166501675016850169501705017150172501735017450175501765017750178501795018050181501825018350184501855018650187501885018950190501915019250193501945019550196501975019850199502005020150202502035020450205502065020750208502095021050211502125021350214502155021650217502185021950220502215022250223502245022550226502275022850229502305023150232502335023450235502365023750238502395024050241502425024350244502455024650247502485024950250502515025250253502545025550256502575025850259502605026150262502635026450265502665026750268502695027050271502725027350274502755027650277502785027950280502815028250283502845028550286502875028850289502905029150292502935029450295502965029750298502995030050301503025030350304503055030650307503085030950310503115031250313503145031550316503175031850319503205032150322503235032450325503265032750328503295033050331503325033350334503355033650337503385033950340503415034250343503445034550346503475034850349503505035150352503535035450355503565035750358503595036050361503625036350364503655036650367503685036950370503715037250373503745037550376503775037850379503805038150382503835038450385503865038750388503895039050391503925039350394503955039650397503985039950400504015040250403504045040550406504075040850409504105041150412504135041450415504165041750418504195042050421504225042350424504255042650427504285042950430504315043250433504345043550436504375043850439504405044150442504435044450445504465044750448504495045050451504525045350454504555045650457504585045950460504615046250463504645046550466504675046850469504705047150472504735047450475504765047750478504795048050481504825048350484504855048650487504885048950490504915049250493504945049550496504975049850499505005050150502505035050450505505065050750508505095051050511505125051350514505155051650517505185051950520505215052250523505245052550526505275052850529505305053150532505335053450535505365053750538505395054050541505425054350544505455054650547505485054950550505515055250553505545055550556505575055850559505605056150562505635056450565505665056750568505695057050571505725057350574505755057650577505785057950580505815058250583505845058550586505875058850589505905059150592505935059450595505965059750598505995060050601506025060350604506055060650607506085060950610506115061250613506145061550616506175061850619506205062150622506235062450625506265062750628506295063050631506325063350634506355063650637506385063950640506415064250643506445064550646506475064850649506505065150652506535065450655506565065750658506595066050661506625066350664506655066650667506685066950670506715067250673506745067550676506775067850679506805068150682506835068450685506865068750688506895069050691506925069350694506955069650697506985069950700507015070250703507045070550706507075070850709507105071150712507135071450715507165071750718507195072050721507225072350724507255072650727507285072950730507315073250733507345073550736507375073850739507405074150742507435074450745507465074750748507495075050751507525075350754507555075650757507585075950760507615076250763507645076550766507675076850769507705077150772507735077450775507765077750778507795078050781507825078350784507855078650787507885078950790507915079250793507945079550796507975079850799508005080150802508035080450805508065080750808508095081050811508125081350814508155081650817508185081950820508215082250823508245082550826508275082850829508305083150832508335083450835508365083750838508395084050841508425084350844508455084650847508485084950850508515085250853508545085550856508575085850859508605086150862508635086450865508665086750868508695087050871508725087350874508755087650877508785087950880508815088250883508845088550886508875088850889508905089150892508935089450895508965089750898508995090050901509025090350904509055090650907509085090950910509115091250913509145091550916509175091850919509205092150922509235092450925509265092750928509295093050931509325093350934509355093650937509385093950940509415094250943509445094550946509475094850949509505095150952509535095450955509565095750958509595096050961509625096350964509655096650967509685096950970509715097250973509745097550976509775097850979509805098150982509835098450985509865098750988509895099050991509925099350994509955099650997509985099951000510015100251003510045100551006510075100851009510105101151012510135101451015510165101751018510195102051021510225102351024510255102651027510285102951030510315103251033510345103551036510375103851039510405104151042510435104451045510465104751048510495105051051510525105351054510555105651057510585105951060510615106251063510645106551066510675106851069510705107151072510735107451075510765107751078510795108051081510825108351084510855108651087510885108951090510915109251093510945109551096510975109851099511005110151102511035110451105511065110751108511095111051111511125111351114511155111651117511185111951120511215112251123511245112551126511275112851129511305113151132511335113451135511365113751138511395114051141511425114351144511455114651147511485114951150511515115251153511545115551156511575115851159511605116151162511635116451165511665116751168511695117051171511725117351174511755117651177511785117951180511815118251183511845118551186511875118851189511905119151192511935119451195511965119751198511995120051201512025120351204512055120651207512085120951210512115121251213512145121551216512175121851219512205122151222512235122451225512265122751228512295123051231512325123351234512355123651237512385123951240512415124251243512445124551246512475124851249512505125151252512535125451255512565125751258512595126051261512625126351264512655126651267512685126951270512715127251273512745127551276512775127851279512805128151282512835128451285512865128751288512895129051291512925129351294512955129651297512985129951300513015130251303513045130551306513075130851309513105131151312513135131451315513165131751318513195132051321513225132351324513255132651327513285132951330513315133251333513345133551336513375133851339513405134151342513435134451345513465134751348513495135051351513525135351354513555135651357513585135951360513615136251363513645136551366513675136851369513705137151372513735137451375513765137751378513795138051381513825138351384513855138651387513885138951390513915139251393513945139551396513975139851399514005140151402514035140451405514065140751408514095141051411514125141351414514155141651417514185141951420514215142251423514245142551426514275142851429514305143151432514335143451435514365143751438514395144051441514425144351444514455144651447514485144951450514515145251453514545145551456514575145851459514605146151462514635146451465514665146751468514695147051471514725147351474514755147651477514785147951480514815148251483514845148551486514875148851489514905149151492514935149451495514965149751498514995150051501515025150351504515055150651507515085150951510515115151251513515145151551516515175151851519515205152151522515235152451525515265152751528515295153051531515325153351534515355153651537515385153951540515415154251543515445154551546515475154851549515505155151552515535155451555515565155751558515595156051561515625156351564515655156651567515685156951570515715157251573515745157551576515775157851579515805158151582515835158451585515865158751588515895159051591515925159351594515955159651597515985159951600516015160251603516045160551606516075160851609516105161151612516135161451615516165161751618516195162051621516225162351624516255162651627516285162951630516315163251633516345163551636516375163851639516405164151642516435164451645516465164751648516495165051651516525165351654516555165651657516585165951660516615166251663516645166551666516675166851669516705167151672516735167451675516765167751678516795168051681516825168351684516855168651687516885168951690516915169251693516945169551696516975169851699517005170151702517035170451705517065170751708517095171051711517125171351714517155171651717517185171951720517215172251723517245172551726517275172851729517305173151732517335173451735517365173751738517395174051741517425174351744517455174651747517485174951750517515175251753517545175551756517575175851759517605176151762517635176451765517665176751768517695177051771517725177351774517755177651777517785177951780517815178251783517845178551786517875178851789517905179151792517935179451795517965179751798517995180051801518025180351804518055180651807518085180951810518115181251813518145181551816518175181851819518205182151822518235182451825518265182751828518295183051831518325183351834518355183651837518385183951840518415184251843518445184551846518475184851849518505185151852518535185451855518565185751858518595186051861518625186351864518655186651867518685186951870518715187251873518745187551876518775187851879518805188151882518835188451885518865188751888518895189051891518925189351894518955189651897518985189951900519015190251903519045190551906519075190851909519105191151912519135191451915519165191751918519195192051921519225192351924519255192651927519285192951930519315193251933519345193551936519375193851939519405194151942519435194451945519465194751948519495195051951519525195351954519555195651957519585195951960519615196251963519645196551966519675196851969519705197151972519735197451975519765197751978519795198051981519825198351984519855198651987519885198951990519915199251993519945199551996519975199851999520005200152002520035200452005520065200752008520095201052011520125201352014520155201652017520185201952020520215202252023520245202552026520275202852029520305203152032520335203452035520365203752038520395204052041520425204352044520455204652047520485204952050520515205252053520545205552056520575205852059520605206152062520635206452065520665206752068520695207052071520725207352074520755207652077520785207952080520815208252083520845208552086520875208852089520905209152092520935209452095520965209752098520995210052101521025210352104521055210652107521085210952110521115211252113521145211552116521175211852119521205212152122521235212452125521265212752128521295213052131521325213352134521355213652137521385213952140521415214252143521445214552146521475214852149521505215152152521535215452155521565215752158521595216052161521625216352164521655216652167521685216952170521715217252173521745217552176521775217852179521805218152182521835218452185521865218752188521895219052191521925219352194521955219652197521985219952200522015220252203522045220552206522075220852209522105221152212522135221452215522165221752218522195222052221522225222352224522255222652227522285222952230522315223252233522345223552236522375223852239522405224152242522435224452245522465224752248522495225052251522525225352254522555225652257522585225952260522615226252263522645226552266522675226852269522705227152272522735227452275522765227752278522795228052281522825228352284522855228652287522885228952290522915229252293522945229552296522975229852299523005230152302523035230452305523065230752308523095231052311523125231352314523155231652317523185231952320523215232252323523245232552326523275232852329523305233152332523335233452335523365233752338523395234052341523425234352344523455234652347523485234952350523515235252353523545235552356523575235852359523605236152362523635236452365523665236752368523695237052371523725237352374523755237652377523785237952380523815238252383523845238552386523875238852389523905239152392523935239452395523965239752398523995240052401524025240352404524055240652407524085240952410524115241252413524145241552416524175241852419524205242152422524235242452425524265242752428524295243052431524325243352434524355243652437524385243952440524415244252443524445244552446524475244852449524505245152452524535245452455524565245752458524595246052461524625246352464524655246652467524685246952470524715247252473524745247552476524775247852479524805248152482524835248452485524865248752488524895249052491524925249352494524955249652497524985249952500525015250252503525045250552506525075250852509525105251152512525135251452515525165251752518525195252052521525225252352524525255252652527525285252952530525315253252533525345253552536525375253852539525405254152542525435254452545525465254752548525495255052551525525255352554525555255652557525585255952560525615256252563525645256552566525675256852569525705257152572525735257452575525765257752578525795258052581525825258352584525855258652587525885258952590525915259252593525945259552596525975259852599526005260152602526035260452605526065260752608526095261052611526125261352614526155261652617526185261952620526215262252623526245262552626526275262852629526305263152632526335263452635526365263752638526395264052641526425264352644526455264652647526485264952650526515265252653526545265552656526575265852659526605266152662526635266452665526665266752668526695267052671526725267352674526755267652677526785267952680526815268252683526845268552686526875268852689526905269152692526935269452695526965269752698526995270052701527025270352704527055270652707527085270952710527115271252713527145271552716527175271852719527205272152722527235272452725527265272752728527295273052731527325273352734527355273652737527385273952740527415274252743527445274552746527475274852749527505275152752527535275452755527565275752758527595276052761527625276352764527655276652767527685276952770527715277252773527745277552776527775277852779527805278152782527835278452785527865278752788527895279052791527925279352794527955279652797527985279952800528015280252803528045280552806528075280852809528105281152812528135281452815528165281752818528195282052821528225282352824528255282652827528285282952830528315283252833528345283552836528375283852839528405284152842528435284452845528465284752848528495285052851528525285352854528555285652857528585285952860528615286252863528645286552866528675286852869528705287152872528735287452875528765287752878528795288052881528825288352884528855288652887528885288952890528915289252893528945289552896528975289852899529005290152902529035290452905529065290752908529095291052911529125291352914529155291652917529185291952920529215292252923529245292552926529275292852929529305293152932529335293452935529365293752938529395294052941529425294352944529455294652947529485294952950529515295252953529545295552956529575295852959529605296152962529635296452965529665296752968529695297052971529725297352974529755297652977529785297952980529815298252983529845298552986529875298852989529905299152992529935299452995529965299752998529995300053001530025300353004530055300653007530085300953010530115301253013530145301553016530175301853019530205302153022530235302453025530265302753028530295303053031530325303353034530355303653037530385303953040530415304253043530445304553046530475304853049530505305153052530535305453055530565305753058530595306053061530625306353064530655306653067530685306953070530715307253073530745307553076530775307853079530805308153082530835308453085530865308753088530895309053091530925309353094530955309653097530985309953100531015310253103531045310553106531075310853109531105311153112531135311453115531165311753118531195312053121531225312353124531255312653127531285312953130531315313253133531345313553136531375313853139531405314153142531435314453145531465314753148531495315053151531525315353154531555315653157531585315953160531615316253163531645316553166531675316853169531705317153172531735317453175531765317753178531795318053181531825318353184531855318653187531885318953190531915319253193531945319553196531975319853199532005320153202532035320453205532065320753208532095321053211532125321353214532155321653217532185321953220532215322253223532245322553226532275322853229532305323153232532335323453235532365323753238532395324053241532425324353244532455324653247532485324953250532515325253253532545325553256532575325853259532605326153262532635326453265532665326753268532695327053271532725327353274532755327653277532785327953280532815328253283532845328553286532875328853289532905329153292532935329453295532965329753298532995330053301533025330353304533055330653307533085330953310533115331253313533145331553316533175331853319533205332153322533235332453325533265332753328533295333053331533325333353334533355333653337533385333953340533415334253343533445334553346533475334853349533505335153352533535335453355533565335753358533595336053361533625336353364533655336653367533685336953370533715337253373533745337553376533775337853379533805338153382533835338453385533865338753388533895339053391533925339353394533955339653397533985339953400534015340253403534045340553406534075340853409534105341153412534135341453415534165341753418534195342053421534225342353424534255342653427534285342953430534315343253433534345343553436534375343853439534405344153442534435344453445534465344753448534495345053451534525345353454534555345653457534585345953460534615346253463534645346553466534675346853469534705347153472534735347453475534765347753478534795348053481534825348353484534855348653487534885348953490534915349253493534945349553496534975349853499535005350153502535035350453505535065350753508535095351053511535125351353514535155351653517535185351953520535215352253523535245352553526535275352853529535305353153532535335353453535535365353753538535395354053541535425354353544535455354653547535485354953550535515355253553535545355553556535575355853559535605356153562535635356453565535665356753568535695357053571535725357353574535755357653577535785357953580535815358253583535845358553586535875358853589535905359153592535935359453595535965359753598535995360053601536025360353604536055360653607536085360953610536115361253613536145361553616536175361853619536205362153622536235362453625536265362753628536295363053631536325363353634536355363653637536385363953640536415364253643536445364553646536475364853649536505365153652536535365453655536565365753658536595366053661536625366353664536655366653667536685366953670536715367253673536745367553676536775367853679536805368153682536835368453685536865368753688536895369053691536925369353694536955369653697536985369953700537015370253703537045370553706537075370853709537105371153712537135371453715537165371753718537195372053721537225372353724537255372653727537285372953730537315373253733537345373553736537375373853739537405374153742537435374453745537465374753748537495375053751537525375353754537555375653757537585375953760537615376253763537645376553766537675376853769537705377153772537735377453775537765377753778537795378053781537825378353784537855378653787537885378953790537915379253793537945379553796537975379853799538005380153802538035380453805538065380753808538095381053811538125381353814538155381653817538185381953820538215382253823538245382553826538275382853829538305383153832538335383453835538365383753838538395384053841538425384353844538455384653847538485384953850538515385253853538545385553856538575385853859538605386153862538635386453865538665386753868538695387053871538725387353874538755387653877538785387953880538815388253883538845388553886538875388853889538905389153892538935389453895538965389753898538995390053901539025390353904539055390653907539085390953910539115391253913539145391553916539175391853919539205392153922539235392453925539265392753928539295393053931539325393353934539355393653937539385393953940539415394253943539445394553946539475394853949539505395153952539535395453955539565395753958539595396053961539625396353964539655396653967539685396953970539715397253973539745397553976539775397853979539805398153982539835398453985539865398753988539895399053991539925399353994539955399653997539985399954000540015400254003540045400554006540075400854009540105401154012540135401454015540165401754018540195402054021540225402354024540255402654027540285402954030540315403254033540345403554036540375403854039540405404154042540435404454045540465404754048540495405054051540525405354054540555405654057540585405954060540615406254063540645406554066540675406854069540705407154072540735407454075540765407754078540795408054081540825408354084540855408654087540885408954090540915409254093540945409554096540975409854099541005410154102541035410454105541065410754108541095411054111541125411354114541155411654117541185411954120541215412254123541245412554126541275412854129541305413154132541335413454135541365413754138541395414054141541425414354144541455414654147541485414954150541515415254153541545415554156541575415854159541605416154162541635416454165541665416754168541695417054171541725417354174541755417654177541785417954180541815418254183541845418554186541875418854189541905419154192541935419454195541965419754198541995420054201542025420354204542055420654207542085420954210542115421254213542145421554216542175421854219542205422154222542235422454225542265422754228542295423054231542325423354234542355423654237542385423954240542415424254243542445424554246542475424854249542505425154252542535425454255542565425754258542595426054261542625426354264542655426654267542685426954270542715427254273542745427554276542775427854279542805428154282542835428454285542865428754288542895429054291542925429354294542955429654297542985429954300543015430254303543045430554306543075430854309543105431154312543135431454315543165431754318543195432054321543225432354324543255432654327543285432954330543315433254333543345433554336543375433854339543405434154342543435434454345543465434754348543495435054351543525435354354543555435654357543585435954360543615436254363543645436554366543675436854369543705437154372543735437454375543765437754378543795438054381543825438354384543855438654387543885438954390543915439254393543945439554396543975439854399544005440154402544035440454405544065440754408544095441054411544125441354414544155441654417544185441954420544215442254423544245442554426544275442854429544305443154432544335443454435544365443754438544395444054441544425444354444544455444654447544485444954450544515445254453544545445554456544575445854459544605446154462544635446454465544665446754468544695447054471544725447354474544755447654477544785447954480544815448254483544845448554486544875448854489544905449154492544935449454495544965449754498544995450054501545025450354504545055450654507545085450954510545115451254513545145451554516545175451854519545205452154522545235452454525545265452754528545295453054531545325453354534545355453654537545385453954540545415454254543545445454554546545475454854549545505455154552545535455454555545565455754558545595456054561545625456354564545655456654567545685456954570545715457254573545745457554576545775457854579545805458154582545835458454585545865458754588545895459054591545925459354594545955459654597545985459954600546015460254603546045460554606546075460854609546105461154612546135461454615546165461754618546195462054621546225462354624546255462654627546285462954630546315463254633546345463554636546375463854639546405464154642546435464454645546465464754648546495465054651546525465354654546555465654657546585465954660546615466254663546645466554666546675466854669546705467154672546735467454675546765467754678546795468054681546825468354684546855468654687546885468954690546915469254693546945469554696546975469854699547005470154702547035470454705547065470754708547095471054711547125471354714547155471654717547185471954720547215472254723547245472554726547275472854729547305473154732547335473454735547365473754738547395474054741547425474354744547455474654747547485474954750547515475254753547545475554756547575475854759547605476154762547635476454765547665476754768547695477054771547725477354774547755477654777547785477954780547815478254783547845478554786547875478854789547905479154792547935479454795547965479754798547995480054801548025480354804548055480654807548085480954810548115481254813548145481554816548175481854819548205482154822548235482454825548265482754828548295483054831548325483354834548355483654837548385483954840548415484254843548445484554846548475484854849548505485154852548535485454855548565485754858548595486054861548625486354864548655486654867548685486954870548715487254873548745487554876548775487854879548805488154882548835488454885548865488754888548895489054891548925489354894548955489654897548985489954900549015490254903549045490554906549075490854909549105491154912549135491454915549165491754918549195492054921549225492354924549255492654927549285492954930549315493254933549345493554936549375493854939549405494154942549435494454945549465494754948549495495054951549525495354954549555495654957549585495954960549615496254963549645496554966549675496854969549705497154972549735497454975549765497754978549795498054981549825498354984549855498654987549885498954990549915499254993549945499554996549975499854999550005500155002550035500455005550065500755008550095501055011550125501355014550155501655017550185501955020550215502255023550245502555026550275502855029550305503155032550335503455035550365503755038550395504055041550425504355044550455504655047550485504955050550515505255053550545505555056550575505855059550605506155062550635506455065550665506755068550695507055071550725507355074550755507655077550785507955080550815508255083550845508555086550875508855089550905509155092550935509455095550965509755098550995510055101551025510355104551055510655107551085510955110551115511255113551145511555116551175511855119551205512155122551235512455125551265512755128551295513055131551325513355134551355513655137551385513955140551415514255143551445514555146551475514855149551505515155152551535515455155551565515755158551595516055161551625516355164551655516655167551685516955170551715517255173551745517555176551775517855179551805518155182551835518455185551865518755188551895519055191551925519355194551955519655197551985519955200552015520255203552045520555206552075520855209552105521155212552135521455215552165521755218552195522055221552225522355224552255522655227552285522955230552315523255233552345523555236552375523855239552405524155242552435524455245552465524755248552495525055251552525525355254552555525655257552585525955260552615526255263552645526555266552675526855269552705527155272552735527455275552765527755278552795528055281552825528355284552855528655287552885528955290552915529255293552945529555296552975529855299553005530155302553035530455305553065530755308553095531055311553125531355314553155531655317553185531955320553215532255323553245532555326553275532855329553305533155332553335533455335553365533755338553395534055341553425534355344553455534655347553485534955350553515535255353553545535555356553575535855359553605536155362553635536455365553665536755368553695537055371553725537355374553755537655377553785537955380553815538255383553845538555386553875538855389553905539155392553935539455395553965539755398553995540055401554025540355404554055540655407554085540955410554115541255413554145541555416554175541855419554205542155422554235542455425554265542755428554295543055431554325543355434554355543655437554385543955440554415544255443554445544555446554475544855449554505545155452554535545455455554565545755458554595546055461554625546355464554655546655467554685546955470554715547255473554745547555476554775547855479554805548155482554835548455485554865548755488554895549055491554925549355494554955549655497554985549955500555015550255503555045550555506555075550855509555105551155512555135551455515555165551755518555195552055521555225552355524555255552655527555285552955530555315553255533555345553555536555375553855539555405554155542555435554455545555465554755548555495555055551555525555355554555555555655557555585555955560555615556255563555645556555566555675556855569555705557155572555735557455575555765557755578555795558055581555825558355584555855558655587555885558955590555915559255593555945559555596555975559855599556005560155602556035560455605556065560755608556095561055611556125561355614556155561655617556185561955620556215562255623556245562555626556275562855629556305563155632556335563455635556365563755638556395564055641556425564355644556455564655647556485564955650556515565255653556545565555656556575565855659556605566155662556635566455665556665566755668556695567055671556725567355674556755567655677556785567955680556815568255683556845568555686556875568855689556905569155692556935569455695556965569755698556995570055701557025570355704557055570655707557085570955710557115571255713557145571555716557175571855719557205572155722557235572455725557265572755728557295573055731557325573355734557355573655737557385573955740557415574255743557445574555746557475574855749557505575155752557535575455755557565575755758557595576055761557625576355764557655576655767557685576955770557715577255773557745577555776557775577855779557805578155782557835578455785557865578755788557895579055791557925579355794557955579655797557985579955800558015580255803558045580555806558075580855809558105581155812558135581455815558165581755818558195582055821558225582355824558255582655827558285582955830558315583255833558345583555836558375583855839558405584155842558435584455845558465584755848558495585055851558525585355854558555585655857558585585955860558615586255863558645586555866558675586855869558705587155872558735587455875558765587755878558795588055881558825588355884558855588655887558885588955890558915589255893558945589555896558975589855899559005590155902559035590455905559065590755908559095591055911559125591355914559155591655917559185591955920559215592255923559245592555926559275592855929559305593155932559335593455935559365593755938559395594055941559425594355944559455594655947559485594955950559515595255953559545595555956559575595855959559605596155962559635596455965559665596755968559695597055971559725597355974559755597655977559785597955980559815598255983559845598555986559875598855989559905599155992559935599455995559965599755998559995600056001560025600356004560055600656007560085600956010560115601256013560145601556016560175601856019560205602156022560235602456025560265602756028560295603056031560325603356034560355603656037560385603956040560415604256043560445604556046560475604856049560505605156052560535605456055560565605756058560595606056061560625606356064560655606656067560685606956070560715607256073560745607556076560775607856079560805608156082560835608456085560865608756088560895609056091560925609356094560955609656097560985609956100561015610256103561045610556106561075610856109561105611156112561135611456115561165611756118561195612056121561225612356124561255612656127561285612956130561315613256133561345613556136561375613856139561405614156142561435614456145561465614756148561495615056151561525615356154561555615656157561585615956160561615616256163561645616556166561675616856169561705617156172561735617456175561765617756178561795618056181561825618356184561855618656187561885618956190561915619256193561945619556196561975619856199562005620156202562035620456205562065620756208562095621056211562125621356214562155621656217562185621956220562215622256223562245622556226562275622856229562305623156232562335623456235562365623756238562395624056241562425624356244562455624656247562485624956250562515625256253562545625556256562575625856259562605626156262562635626456265562665626756268562695627056271562725627356274562755627656277562785627956280562815628256283562845628556286562875628856289562905629156292562935629456295562965629756298562995630056301563025630356304563055630656307563085630956310563115631256313563145631556316563175631856319563205632156322563235632456325563265632756328563295633056331563325633356334563355633656337563385633956340563415634256343563445634556346563475634856349563505635156352563535635456355563565635756358563595636056361563625636356364563655636656367563685636956370563715637256373563745637556376563775637856379563805638156382563835638456385563865638756388563895639056391563925639356394563955639656397563985639956400564015640256403564045640556406564075640856409564105641156412564135641456415564165641756418564195642056421564225642356424564255642656427564285642956430564315643256433564345643556436564375643856439564405644156442564435644456445564465644756448564495645056451564525645356454564555645656457564585645956460564615646256463564645646556466564675646856469564705647156472564735647456475564765647756478564795648056481564825648356484564855648656487564885648956490564915649256493564945649556496564975649856499565005650156502565035650456505565065650756508565095651056511565125651356514565155651656517565185651956520565215652256523565245652556526565275652856529565305653156532565335653456535565365653756538565395654056541565425654356544565455654656547565485654956550565515655256553565545655556556565575655856559565605656156562565635656456565565665656756568565695657056571565725657356574565755657656577565785657956580565815658256583565845658556586565875658856589565905659156592565935659456595565965659756598565995660056601566025660356604566055660656607566085660956610566115661256613566145661556616566175661856619566205662156622566235662456625566265662756628566295663056631566325663356634566355663656637566385663956640566415664256643566445664556646566475664856649566505665156652566535665456655566565665756658566595666056661566625666356664566655666656667566685666956670566715667256673566745667556676566775667856679566805668156682566835668456685566865668756688566895669056691566925669356694566955669656697566985669956700567015670256703567045670556706567075670856709567105671156712567135671456715567165671756718567195672056721567225672356724567255672656727567285672956730567315673256733567345673556736567375673856739567405674156742567435674456745567465674756748567495675056751567525675356754567555675656757567585675956760567615676256763567645676556766567675676856769567705677156772567735677456775567765677756778567795678056781567825678356784567855678656787567885678956790567915679256793567945679556796567975679856799568005680156802568035680456805568065680756808568095681056811568125681356814568155681656817568185681956820568215682256823568245682556826568275682856829568305683156832568335683456835568365683756838568395684056841568425684356844568455684656847568485684956850568515685256853568545685556856568575685856859568605686156862568635686456865568665686756868568695687056871568725687356874568755687656877568785687956880568815688256883568845688556886568875688856889568905689156892568935689456895568965689756898568995690056901569025690356904569055690656907569085690956910569115691256913569145691556916569175691856919569205692156922569235692456925569265692756928569295693056931569325693356934569355693656937569385693956940569415694256943569445694556946569475694856949569505695156952569535695456955569565695756958569595696056961569625696356964569655696656967569685696956970569715697256973569745697556976569775697856979569805698156982569835698456985569865698756988569895699056991569925699356994569955699656997569985699957000570015700257003570045700557006570075700857009570105701157012570135701457015570165701757018570195702057021570225702357024570255702657027570285702957030570315703257033570345703557036570375703857039570405704157042570435704457045570465704757048570495705057051570525705357054570555705657057570585705957060570615706257063570645706557066570675706857069570705707157072570735707457075570765707757078570795708057081570825708357084570855708657087570885708957090570915709257093570945709557096570975709857099571005710157102571035710457105571065710757108571095711057111571125711357114571155711657117571185711957120571215712257123571245712557126571275712857129571305713157132571335713457135571365713757138571395714057141571425714357144571455714657147571485714957150571515715257153571545715557156571575715857159571605716157162571635716457165571665716757168571695717057171571725717357174571755717657177571785717957180571815718257183571845718557186571875718857189571905719157192571935719457195571965719757198571995720057201572025720357204572055720657207572085720957210572115721257213572145721557216572175721857219572205722157222572235722457225572265722757228572295723057231572325723357234572355723657237572385723957240572415724257243572445724557246572475724857249572505725157252572535725457255572565725757258572595726057261572625726357264572655726657267572685726957270572715727257273572745727557276572775727857279572805728157282572835728457285572865728757288572895729057291572925729357294572955729657297572985729957300573015730257303573045730557306573075730857309573105731157312573135731457315573165731757318573195732057321573225732357324573255732657327573285732957330573315733257333573345733557336573375733857339573405734157342573435734457345573465734757348573495735057351573525735357354573555735657357573585735957360573615736257363573645736557366573675736857369573705737157372573735737457375573765737757378573795738057381573825738357384573855738657387573885738957390573915739257393573945739557396573975739857399574005740157402574035740457405574065740757408574095741057411574125741357414574155741657417574185741957420574215742257423574245742557426574275742857429574305743157432574335743457435574365743757438574395744057441574425744357444574455744657447574485744957450574515745257453574545745557456574575745857459574605746157462574635746457465574665746757468574695747057471574725747357474574755747657477574785747957480574815748257483574845748557486574875748857489574905749157492574935749457495574965749757498574995750057501575025750357504575055750657507575085750957510575115751257513575145751557516575175751857519575205752157522575235752457525575265752757528575295753057531575325753357534575355753657537575385753957540575415754257543575445754557546575475754857549575505755157552575535755457555575565755757558575595756057561575625756357564575655756657567575685756957570575715757257573575745757557576575775757857579575805758157582575835758457585575865758757588575895759057591575925759357594575955759657597575985759957600576015760257603576045760557606576075760857609576105761157612576135761457615576165761757618576195762057621576225762357624576255762657627576285762957630576315763257633576345763557636576375763857639576405764157642576435764457645576465764757648576495765057651576525765357654576555765657657576585765957660576615766257663576645766557666576675766857669576705767157672576735767457675576765767757678576795768057681576825768357684576855768657687576885768957690576915769257693576945769557696576975769857699577005770157702577035770457705577065770757708577095771057711577125771357714577155771657717577185771957720577215772257723577245772557726577275772857729577305773157732577335773457735577365773757738577395774057741577425774357744577455774657747577485774957750577515775257753577545775557756577575775857759577605776157762577635776457765577665776757768577695777057771577725777357774577755777657777577785777957780577815778257783577845778557786577875778857789577905779157792577935779457795577965779757798577995780057801578025780357804578055780657807578085780957810578115781257813578145781557816578175781857819578205782157822578235782457825578265782757828578295783057831578325783357834578355783657837578385783957840578415784257843578445784557846578475784857849578505785157852578535785457855578565785757858578595786057861578625786357864578655786657867578685786957870578715787257873578745787557876578775787857879578805788157882578835788457885578865788757888578895789057891578925789357894578955789657897578985789957900579015790257903579045790557906579075790857909579105791157912579135791457915579165791757918579195792057921579225792357924579255792657927579285792957930579315793257933579345793557936579375793857939579405794157942579435794457945579465794757948579495795057951579525795357954579555795657957579585795957960579615796257963579645796557966579675796857969579705797157972579735797457975579765797757978579795798057981579825798357984579855798657987579885798957990579915799257993579945799557996579975799857999580005800158002580035800458005580065800758008580095801058011580125801358014580155801658017580185801958020580215802258023580245802558026580275802858029580305803158032580335803458035580365803758038580395804058041580425804358044580455804658047580485804958050580515805258053580545805558056580575805858059580605806158062580635806458065580665806758068580695807058071580725807358074580755807658077580785807958080580815808258083580845808558086580875808858089580905809158092580935809458095580965809758098580995810058101581025810358104581055810658107581085810958110581115811258113581145811558116581175811858119581205812158122581235812458125581265812758128581295813058131581325813358134581355813658137581385813958140581415814258143581445814558146581475814858149581505815158152581535815458155581565815758158581595816058161581625816358164581655816658167581685816958170581715817258173581745817558176581775817858179581805818158182581835818458185581865818758188581895819058191581925819358194581955819658197581985819958200582015820258203582045820558206582075820858209582105821158212582135821458215582165821758218582195822058221582225822358224582255822658227582285822958230582315823258233582345823558236582375823858239582405824158242582435824458245582465824758248582495825058251582525825358254582555825658257582585825958260582615826258263582645826558266582675826858269582705827158272582735827458275582765827758278582795828058281582825828358284582855828658287582885828958290582915829258293582945829558296582975829858299583005830158302583035830458305583065830758308583095831058311583125831358314583155831658317583185831958320583215832258323583245832558326583275832858329583305833158332583335833458335583365833758338583395834058341583425834358344583455834658347583485834958350583515835258353583545835558356583575835858359583605836158362583635836458365583665836758368583695837058371583725837358374583755837658377583785837958380583815838258383583845838558386583875838858389583905839158392583935839458395583965839758398583995840058401584025840358404584055840658407584085840958410584115841258413584145841558416584175841858419584205842158422584235842458425584265842758428584295843058431584325843358434584355843658437584385843958440584415844258443584445844558446584475844858449584505845158452584535845458455584565845758458584595846058461584625846358464584655846658467584685846958470584715847258473584745847558476584775847858479584805848158482584835848458485584865848758488584895849058491584925849358494584955849658497584985849958500585015850258503585045850558506585075850858509585105851158512585135851458515585165851758518585195852058521585225852358524585255852658527585285852958530585315853258533585345853558536585375853858539585405854158542585435854458545585465854758548585495855058551585525855358554585555855658557585585855958560585615856258563585645856558566585675856858569585705857158572585735857458575585765857758578585795858058581585825858358584585855858658587585885858958590585915859258593585945859558596585975859858599586005860158602586035860458605586065860758608586095861058611586125861358614586155861658617586185861958620586215862258623586245862558626586275862858629586305863158632586335863458635586365863758638586395864058641586425864358644586455864658647586485864958650586515865258653586545865558656586575865858659586605866158662586635866458665586665866758668586695867058671586725867358674586755867658677586785867958680586815868258683586845868558686586875868858689586905869158692586935869458695586965869758698586995870058701587025870358704587055870658707587085870958710587115871258713587145871558716587175871858719587205872158722587235872458725587265872758728587295873058731587325873358734587355873658737587385873958740587415874258743587445874558746587475874858749587505875158752587535875458755587565875758758587595876058761587625876358764587655876658767587685876958770587715877258773587745877558776587775877858779587805878158782587835878458785587865878758788587895879058791587925879358794587955879658797587985879958800588015880258803588045880558806588075880858809588105881158812588135881458815588165881758818588195882058821588225882358824588255882658827588285882958830588315883258833588345883558836588375883858839588405884158842588435884458845588465884758848588495885058851588525885358854588555885658857588585885958860588615886258863588645886558866588675886858869588705887158872588735887458875588765887758878588795888058881588825888358884588855888658887588885888958890588915889258893588945889558896588975889858899589005890158902589035890458905589065890758908589095891058911589125891358914589155891658917589185891958920589215892258923589245892558926589275892858929589305893158932589335893458935589365893758938589395894058941589425894358944589455894658947589485894958950589515895258953589545895558956589575895858959589605896158962589635896458965589665896758968589695897058971589725897358974589755897658977589785897958980589815898258983589845898558986589875898858989589905899158992589935899458995589965899758998589995900059001590025900359004590055900659007590085900959010590115901259013590145901559016590175901859019590205902159022590235902459025590265902759028590295903059031590325903359034590355903659037590385903959040590415904259043590445904559046590475904859049590505905159052590535905459055590565905759058590595906059061590625906359064590655906659067590685906959070590715907259073590745907559076590775907859079590805908159082590835908459085590865908759088590895909059091590925909359094590955909659097590985909959100591015910259103591045910559106591075910859109591105911159112591135911459115591165911759118591195912059121591225912359124591255912659127591285912959130591315913259133591345913559136591375913859139591405914159142591435914459145591465914759148591495915059151591525915359154591555915659157591585915959160591615916259163591645916559166591675916859169591705917159172591735917459175591765917759178591795918059181591825918359184591855918659187591885918959190591915919259193591945919559196591975919859199592005920159202592035920459205592065920759208592095921059211592125921359214592155921659217592185921959220592215922259223592245922559226592275922859229592305923159232592335923459235592365923759238592395924059241592425924359244592455924659247592485924959250592515925259253592545925559256592575925859259592605926159262592635926459265592665926759268592695927059271592725927359274592755927659277592785927959280592815928259283592845928559286592875928859289592905929159292592935929459295592965929759298592995930059301593025930359304593055930659307593085930959310593115931259313593145931559316593175931859319593205932159322593235932459325593265932759328593295933059331593325933359334593355933659337593385933959340593415934259343593445934559346593475934859349593505935159352593535935459355593565935759358593595936059361593625936359364593655936659367593685936959370593715937259373593745937559376593775937859379593805938159382593835938459385593865938759388593895939059391593925939359394593955939659397593985939959400594015940259403594045940559406594075940859409594105941159412594135941459415594165941759418594195942059421594225942359424594255942659427594285942959430594315943259433594345943559436594375943859439594405944159442594435944459445594465944759448594495945059451594525945359454594555945659457594585945959460594615946259463594645946559466594675946859469594705947159472594735947459475594765947759478594795948059481594825948359484594855948659487594885948959490594915949259493594945949559496594975949859499595005950159502595035950459505595065950759508595095951059511595125951359514595155951659517595185951959520595215952259523595245952559526595275952859529595305953159532595335953459535595365953759538595395954059541595425954359544595455954659547595485954959550595515955259553595545955559556595575955859559595605956159562595635956459565595665956759568595695957059571595725957359574595755957659577595785957959580595815958259583595845958559586595875958859589595905959159592595935959459595595965959759598595995960059601596025960359604596055960659607596085960959610596115961259613596145961559616596175961859619596205962159622596235962459625596265962759628596295963059631596325963359634596355963659637596385963959640596415964259643596445964559646596475964859649596505965159652596535965459655596565965759658596595966059661596625966359664596655966659667596685966959670596715967259673596745967559676596775967859679596805968159682596835968459685596865968759688596895969059691596925969359694596955969659697596985969959700597015970259703597045970559706597075970859709597105971159712597135971459715597165971759718597195972059721597225972359724597255972659727597285972959730597315973259733597345973559736597375973859739597405974159742597435974459745597465974759748597495975059751597525975359754597555975659757597585975959760597615976259763597645976559766597675976859769597705977159772597735977459775597765977759778597795978059781597825978359784597855978659787597885978959790597915979259793597945979559796597975979859799598005980159802598035980459805598065980759808598095981059811598125981359814598155981659817598185981959820598215982259823598245982559826598275982859829598305983159832598335983459835598365983759838598395984059841598425984359844598455984659847598485984959850598515985259853598545985559856598575985859859598605986159862598635986459865598665986759868598695987059871598725987359874598755987659877598785987959880598815988259883598845988559886598875988859889598905989159892598935989459895598965989759898598995990059901599025990359904599055990659907599085990959910599115991259913599145991559916599175991859919599205992159922599235992459925599265992759928599295993059931599325993359934599355993659937599385993959940599415994259943599445994559946599475994859949599505995159952599535995459955599565995759958599595996059961599625996359964599655996659967599685996959970599715997259973599745997559976599775997859979599805998159982599835998459985599865998759988599895999059991599925999359994599955999659997599985999960000600016000260003600046000560006600076000860009600106001160012600136001460015600166001760018600196002060021600226002360024600256002660027600286002960030600316003260033600346003560036600376003860039600406004160042600436004460045600466004760048600496005060051600526005360054600556005660057600586005960060600616006260063600646006560066600676006860069600706007160072600736007460075600766007760078600796008060081600826008360084600856008660087600886008960090600916009260093600946009560096600976009860099601006010160102601036010460105601066010760108601096011060111601126011360114601156011660117601186011960120601216012260123601246012560126601276012860129601306013160132601336013460135601366013760138601396014060141601426014360144601456014660147601486014960150601516015260153601546015560156601576015860159601606016160162601636016460165601666016760168601696017060171601726017360174601756017660177601786017960180601816018260183601846018560186601876018860189601906019160192601936019460195601966019760198601996020060201602026020360204602056020660207602086020960210602116021260213602146021560216602176021860219602206022160222602236022460225602266022760228602296023060231602326023360234602356023660237602386023960240602416024260243602446024560246602476024860249602506025160252602536025460255602566025760258602596026060261602626026360264602656026660267602686026960270602716027260273602746027560276602776027860279602806028160282602836028460285602866028760288602896029060291602926029360294602956029660297602986029960300603016030260303603046030560306603076030860309603106031160312603136031460315603166031760318603196032060321603226032360324603256032660327603286032960330603316033260333603346033560336603376033860339603406034160342603436034460345603466034760348603496035060351603526035360354603556035660357603586035960360603616036260363603646036560366603676036860369603706037160372603736037460375603766037760378603796038060381603826038360384603856038660387603886038960390603916039260393603946039560396603976039860399604006040160402604036040460405604066040760408604096041060411604126041360414604156041660417604186041960420604216042260423604246042560426604276042860429604306043160432604336043460435604366043760438604396044060441604426044360444604456044660447604486044960450604516045260453604546045560456604576045860459604606046160462604636046460465604666046760468604696047060471604726047360474604756047660477604786047960480604816048260483604846048560486604876048860489604906049160492604936049460495604966049760498604996050060501605026050360504605056050660507605086050960510605116051260513605146051560516605176051860519605206052160522605236052460525605266052760528605296053060531605326053360534605356053660537605386053960540605416054260543605446054560546605476054860549605506055160552605536055460555605566055760558605596056060561605626056360564605656056660567605686056960570605716057260573605746057560576605776057860579605806058160582605836058460585605866058760588605896059060591605926059360594605956059660597605986059960600606016060260603606046060560606606076060860609606106061160612606136061460615606166061760618606196062060621606226062360624606256062660627606286062960630606316063260633606346063560636606376063860639606406064160642606436064460645606466064760648606496065060651606526065360654606556065660657606586065960660606616066260663606646066560666606676066860669606706067160672606736067460675606766067760678606796068060681606826068360684606856068660687606886068960690606916069260693606946069560696606976069860699607006070160702607036070460705607066070760708607096071060711607126071360714607156071660717607186071960720607216072260723607246072560726607276072860729607306073160732607336073460735607366073760738607396074060741607426074360744607456074660747607486074960750607516075260753607546075560756607576075860759607606076160762607636076460765607666076760768607696077060771607726077360774607756077660777607786077960780607816078260783607846078560786607876078860789607906079160792607936079460795607966079760798607996080060801608026080360804608056080660807608086080960810608116081260813608146081560816608176081860819608206082160822608236082460825608266082760828608296083060831608326083360834608356083660837608386083960840608416084260843608446084560846608476084860849608506085160852608536085460855608566085760858608596086060861608626086360864608656086660867608686086960870608716087260873608746087560876608776087860879608806088160882608836088460885608866088760888608896089060891608926089360894608956089660897608986089960900609016090260903609046090560906609076090860909609106091160912609136091460915609166091760918609196092060921609226092360924609256092660927609286092960930609316093260933609346093560936609376093860939609406094160942609436094460945609466094760948609496095060951609526095360954609556095660957609586095960960609616096260963609646096560966609676096860969609706097160972609736097460975609766097760978609796098060981609826098360984609856098660987609886098960990609916099260993609946099560996609976099860999610006100161002610036100461005610066100761008610096101061011610126101361014610156101661017610186101961020610216102261023610246102561026610276102861029610306103161032610336103461035610366103761038610396104061041610426104361044610456104661047610486104961050610516105261053610546105561056610576105861059610606106161062610636106461065610666106761068610696107061071610726107361074610756107661077610786107961080610816108261083610846108561086610876108861089610906109161092610936109461095610966109761098610996110061101611026110361104611056110661107611086110961110611116111261113611146111561116611176111861119611206112161122611236112461125611266112761128611296113061131611326113361134611356113661137611386113961140611416114261143611446114561146611476114861149611506115161152611536115461155611566115761158611596116061161611626116361164611656116661167611686116961170611716117261173611746117561176611776117861179611806118161182611836118461185611866118761188611896119061191611926119361194611956119661197611986119961200612016120261203612046120561206612076120861209612106121161212612136121461215612166121761218612196122061221612226122361224612256122661227612286122961230612316123261233612346123561236612376123861239612406124161242612436124461245612466124761248612496125061251612526125361254612556125661257612586125961260612616126261263612646126561266612676126861269612706127161272612736127461275612766127761278612796128061281612826128361284612856128661287612886128961290612916129261293612946129561296612976129861299613006130161302613036130461305613066130761308613096131061311613126131361314613156131661317613186131961320613216132261323613246132561326613276132861329613306133161332613336133461335613366133761338613396134061341613426134361344613456134661347613486134961350613516135261353613546135561356613576135861359613606136161362613636136461365613666136761368613696137061371613726137361374613756137661377613786137961380613816138261383613846138561386613876138861389613906139161392613936139461395613966139761398613996140061401614026140361404614056140661407614086140961410614116141261413614146141561416614176141861419614206142161422614236142461425614266142761428614296143061431614326143361434614356143661437614386143961440614416144261443614446144561446614476144861449614506145161452614536145461455614566145761458614596146061461614626146361464614656146661467614686146961470614716147261473614746147561476614776147861479614806148161482614836148461485614866148761488614896149061491614926149361494614956149661497614986149961500615016150261503615046150561506615076150861509615106151161512615136151461515615166151761518615196152061521615226152361524615256152661527615286152961530615316153261533615346153561536615376153861539615406154161542615436154461545615466154761548615496155061551615526155361554615556155661557615586155961560615616156261563615646156561566615676156861569615706157161572615736157461575615766157761578615796158061581615826158361584615856158661587615886158961590615916159261593615946159561596615976159861599616006160161602616036160461605616066160761608616096161061611616126161361614616156161661617616186161961620616216162261623616246162561626616276162861629616306163161632616336163461635616366163761638616396164061641616426164361644616456164661647616486164961650616516165261653616546165561656616576165861659616606166161662616636166461665616666166761668616696167061671616726167361674616756167661677616786167961680616816168261683616846168561686616876168861689616906169161692616936169461695616966169761698616996170061701617026170361704617056170661707617086170961710617116171261713617146171561716617176171861719617206172161722617236172461725617266172761728617296173061731617326173361734617356173661737617386173961740617416174261743617446174561746617476174861749617506175161752617536175461755617566175761758617596176061761617626176361764617656176661767617686176961770617716177261773617746177561776617776177861779617806178161782617836178461785617866178761788617896179061791617926179361794617956179661797617986179961800618016180261803618046180561806618076180861809618106181161812618136181461815618166181761818618196182061821618226182361824618256182661827618286182961830618316183261833618346183561836618376183861839618406184161842618436184461845618466184761848618496185061851618526185361854618556185661857618586185961860618616186261863618646186561866618676186861869618706187161872618736187461875618766187761878618796188061881618826188361884618856188661887618886188961890618916189261893618946189561896618976189861899619006190161902619036190461905619066190761908619096191061911619126191361914619156191661917619186191961920619216192261923619246192561926619276192861929619306193161932619336193461935619366193761938619396194061941619426194361944619456194661947619486194961950619516195261953619546195561956619576195861959619606196161962619636196461965619666196761968619696197061971619726197361974619756197661977619786197961980619816198261983619846198561986619876198861989619906199161992619936199461995619966199761998619996200062001620026200362004620056200662007620086200962010620116201262013620146201562016620176201862019620206202162022620236202462025620266202762028620296203062031620326203362034620356203662037620386203962040620416204262043620446204562046620476204862049620506205162052620536205462055620566205762058620596206062061620626206362064620656206662067620686206962070620716207262073620746207562076620776207862079620806208162082620836208462085620866208762088620896209062091620926209362094620956209662097620986209962100621016210262103621046210562106621076210862109621106211162112621136211462115621166211762118621196212062121621226212362124621256212662127621286212962130621316213262133621346213562136621376213862139621406214162142621436214462145621466214762148621496215062151621526215362154621556215662157621586215962160621616216262163621646216562166621676216862169621706217162172621736217462175621766217762178621796218062181621826218362184621856218662187621886218962190621916219262193621946219562196621976219862199622006220162202622036220462205622066220762208622096221062211622126221362214622156221662217622186221962220622216222262223622246222562226622276222862229622306223162232622336223462235622366223762238622396224062241622426224362244622456224662247622486224962250622516225262253622546225562256622576225862259622606226162262622636226462265622666226762268622696227062271622726227362274622756227662277622786227962280622816228262283622846228562286622876228862289622906229162292622936229462295622966229762298622996230062301623026230362304623056230662307623086230962310623116231262313623146231562316623176231862319623206232162322623236232462325623266232762328623296233062331623326233362334623356233662337623386233962340623416234262343623446234562346623476234862349623506235162352623536235462355623566235762358623596236062361623626236362364623656236662367623686236962370623716237262373623746237562376623776237862379623806238162382623836238462385623866238762388623896239062391623926239362394623956239662397623986239962400624016240262403624046240562406624076240862409624106241162412624136241462415624166241762418624196242062421624226242362424624256242662427624286242962430624316243262433624346243562436624376243862439624406244162442624436244462445624466244762448624496245062451624526245362454624556245662457624586245962460624616246262463624646246562466624676246862469624706247162472624736247462475624766247762478624796248062481624826248362484624856248662487624886248962490624916249262493624946249562496624976249862499625006250162502625036250462505625066250762508625096251062511625126251362514625156251662517625186251962520625216252262523625246252562526625276252862529625306253162532625336253462535625366253762538625396254062541625426254362544625456254662547625486254962550625516255262553625546255562556625576255862559625606256162562625636256462565625666256762568625696257062571625726257362574625756257662577625786257962580625816258262583625846258562586625876258862589625906259162592625936259462595625966259762598625996260062601626026260362604626056260662607626086260962610626116261262613626146261562616626176261862619626206262162622626236262462625626266262762628626296263062631626326263362634626356263662637626386263962640626416264262643626446264562646626476264862649626506265162652626536265462655626566265762658626596266062661626626266362664626656266662667626686266962670626716267262673626746267562676626776267862679626806268162682626836268462685626866268762688626896269062691626926269362694626956269662697626986269962700627016270262703627046270562706627076270862709627106271162712627136271462715627166271762718627196272062721627226272362724627256272662727627286272962730627316273262733627346273562736627376273862739627406274162742627436274462745627466274762748627496275062751627526275362754627556275662757627586275962760627616276262763627646276562766627676276862769627706277162772627736277462775627766277762778627796278062781627826278362784627856278662787627886278962790627916279262793627946279562796627976279862799628006280162802628036280462805628066280762808628096281062811628126281362814628156281662817628186281962820628216282262823628246282562826628276282862829628306283162832628336283462835628366283762838628396284062841628426284362844628456284662847628486284962850628516285262853628546285562856628576285862859628606286162862628636286462865628666286762868628696287062871628726287362874628756287662877628786287962880628816288262883628846288562886628876288862889628906289162892628936289462895628966289762898628996290062901629026290362904629056290662907629086290962910629116291262913629146291562916629176291862919629206292162922629236292462925629266292762928629296293062931629326293362934629356293662937629386293962940629416294262943629446294562946629476294862949629506295162952629536295462955629566295762958629596296062961629626296362964629656296662967629686296962970629716297262973629746297562976629776297862979629806298162982629836298462985629866298762988629896299062991629926299362994629956299662997629986299963000630016300263003630046300563006630076300863009630106301163012630136301463015630166301763018630196302063021630226302363024630256302663027630286302963030630316303263033630346303563036630376303863039630406304163042630436304463045630466304763048630496305063051630526305363054630556305663057630586305963060630616306263063630646306563066630676306863069630706307163072630736307463075630766307763078630796308063081630826308363084630856308663087630886308963090630916309263093630946309563096630976309863099631006310163102631036310463105631066310763108631096311063111631126311363114631156311663117631186311963120631216312263123631246312563126631276312863129631306313163132631336313463135631366313763138631396314063141631426314363144631456314663147631486314963150631516315263153631546315563156631576315863159631606316163162631636316463165631666316763168631696317063171631726317363174631756317663177631786317963180631816318263183631846318563186631876318863189631906319163192631936319463195631966319763198631996320063201632026320363204632056320663207632086320963210632116321263213632146321563216632176321863219632206322163222632236322463225632266322763228632296323063231632326323363234632356323663237632386323963240632416324263243632446324563246632476324863249632506325163252632536325463255632566325763258632596326063261632626326363264632656326663267632686326963270632716327263273632746327563276632776327863279632806328163282632836328463285632866328763288632896329063291632926329363294632956329663297632986329963300633016330263303633046330563306633076330863309633106331163312633136331463315633166331763318633196332063321633226332363324633256332663327633286332963330633316333263333633346333563336633376333863339633406334163342633436334463345633466334763348633496335063351633526335363354633556335663357633586335963360633616336263363633646336563366633676336863369633706337163372633736337463375633766337763378633796338063381633826338363384633856338663387633886338963390633916339263393633946339563396633976339863399634006340163402634036340463405634066340763408634096341063411634126341363414634156341663417634186341963420634216342263423634246342563426634276342863429634306343163432634336343463435634366343763438634396344063441634426344363444634456344663447634486344963450634516345263453634546345563456634576345863459634606346163462634636346463465634666346763468634696347063471634726347363474634756347663477634786347963480634816348263483634846348563486634876348863489634906349163492634936349463495634966349763498634996350063501635026350363504635056350663507635086350963510635116351263513635146351563516635176351863519635206352163522635236352463525635266352763528635296353063531635326353363534635356353663537635386353963540635416354263543635446354563546635476354863549635506355163552635536355463555635566355763558635596356063561635626356363564635656356663567635686356963570635716357263573635746357563576635776357863579635806358163582635836358463585635866358763588635896359063591635926359363594635956359663597635986359963600636016360263603636046360563606636076360863609636106361163612636136361463615636166361763618636196362063621636226362363624636256362663627636286362963630636316363263633636346363563636636376363863639636406364163642636436364463645636466364763648636496365063651636526365363654636556365663657636586365963660636616366263663636646366563666636676366863669636706367163672636736367463675636766367763678636796368063681636826368363684636856368663687636886368963690636916369263693636946369563696636976369863699637006370163702637036370463705637066370763708637096371063711637126371363714637156371663717637186371963720637216372263723637246372563726637276372863729637306373163732637336373463735637366373763738637396374063741637426374363744637456374663747637486374963750637516375263753637546375563756637576375863759637606376163762637636376463765637666376763768637696377063771637726377363774637756377663777637786377963780637816378263783637846378563786637876378863789637906379163792637936379463795637966379763798637996380063801638026380363804638056380663807638086380963810638116381263813638146381563816638176381863819638206382163822638236382463825638266382763828638296383063831638326383363834638356383663837638386383963840638416384263843638446384563846638476384863849638506385163852638536385463855638566385763858638596386063861638626386363864638656386663867638686386963870638716387263873638746387563876638776387863879638806388163882638836388463885638866388763888638896389063891638926389363894638956389663897638986389963900639016390263903639046390563906639076390863909639106391163912639136391463915639166391763918639196392063921639226392363924639256392663927639286392963930639316393263933639346393563936639376393863939639406394163942639436394463945639466394763948639496395063951639526395363954639556395663957639586395963960639616396263963639646396563966639676396863969639706397163972639736397463975639766397763978639796398063981639826398363984639856398663987639886398963990639916399263993639946399563996639976399863999640006400164002640036400464005640066400764008640096401064011640126401364014640156401664017640186401964020640216402264023640246402564026640276402864029640306403164032640336403464035640366403764038640396404064041640426404364044640456404664047640486404964050640516405264053640546405564056640576405864059640606406164062640636406464065640666406764068640696407064071640726407364074640756407664077640786407964080640816408264083640846408564086640876408864089640906409164092640936409464095640966409764098640996410064101641026410364104641056410664107641086410964110641116411264113641146411564116641176411864119641206412164122641236412464125641266412764128641296413064131641326413364134641356413664137641386413964140641416414264143641446414564146641476414864149641506415164152641536415464155641566415764158641596416064161641626416364164641656416664167641686416964170641716417264173641746417564176641776417864179641806418164182641836418464185641866418764188641896419064191641926419364194641956419664197641986419964200642016420264203642046420564206642076420864209642106421164212642136421464215642166421764218642196422064221642226422364224642256422664227642286422964230642316423264233642346423564236642376423864239642406424164242642436424464245642466424764248642496425064251642526425364254642556425664257642586425964260642616426264263642646426564266642676426864269642706427164272642736427464275642766427764278642796428064281642826428364284642856428664287642886428964290642916429264293642946429564296642976429864299643006430164302643036430464305643066430764308643096431064311643126431364314643156431664317643186431964320643216432264323643246432564326643276432864329643306433164332643336433464335643366433764338643396434064341643426434364344643456434664347643486434964350643516435264353643546435564356643576435864359643606436164362643636436464365643666436764368643696437064371643726437364374643756437664377643786437964380643816438264383643846438564386643876438864389643906439164392643936439464395643966439764398643996440064401644026440364404644056440664407644086440964410644116441264413644146441564416644176441864419644206442164422644236442464425644266442764428644296443064431644326443364434644356443664437644386443964440644416444264443644446444564446644476444864449644506445164452644536445464455644566445764458644596446064461644626446364464644656446664467644686446964470644716447264473644746447564476644776447864479644806448164482644836448464485644866448764488644896449064491644926449364494644956449664497644986449964500645016450264503645046450564506645076450864509645106451164512645136451464515645166451764518645196452064521645226452364524645256452664527645286452964530645316453264533645346453564536645376453864539645406454164542645436454464545645466454764548645496455064551645526455364554645556455664557645586455964560645616456264563645646456564566645676456864569645706457164572645736457464575645766457764578645796458064581645826458364584645856458664587645886458964590645916459264593645946459564596645976459864599646006460164602646036460464605646066460764608646096461064611646126461364614646156461664617646186461964620646216462264623646246462564626646276462864629646306463164632646336463464635646366463764638646396464064641646426464364644646456464664647646486464964650646516465264653646546465564656646576465864659646606466164662646636466464665646666466764668646696467064671646726467364674646756467664677646786467964680646816468264683646846468564686646876468864689646906469164692646936469464695646966469764698646996470064701647026470364704647056470664707647086470964710647116471264713647146471564716647176471864719647206472164722647236472464725647266472764728647296473064731647326473364734647356473664737647386473964740647416474264743647446474564746647476474864749647506475164752647536475464755647566475764758647596476064761647626476364764647656476664767647686476964770647716477264773647746477564776647776477864779647806478164782647836478464785647866478764788647896479064791647926479364794647956479664797647986479964800648016480264803648046480564806648076480864809648106481164812648136481464815648166481764818648196482064821648226482364824648256482664827648286482964830648316483264833648346483564836648376483864839648406484164842648436484464845648466484764848648496485064851648526485364854648556485664857648586485964860648616486264863648646486564866648676486864869648706487164872648736487464875648766487764878648796488064881648826488364884648856488664887648886488964890648916489264893648946489564896648976489864899649006490164902649036490464905649066490764908649096491064911649126491364914649156491664917649186491964920649216492264923649246492564926649276492864929649306493164932649336493464935649366493764938649396494064941649426494364944649456494664947649486494964950649516495264953649546495564956649576495864959649606496164962649636496464965649666496764968649696497064971649726497364974649756497664977649786497964980649816498264983649846498564986649876498864989649906499164992649936499464995649966499764998649996500065001650026500365004650056500665007650086500965010650116501265013650146501565016650176501865019650206502165022650236502465025650266502765028650296503065031650326503365034650356503665037650386503965040650416504265043650446504565046650476504865049650506505165052650536505465055650566505765058650596506065061650626506365064650656506665067650686506965070650716507265073650746507565076650776507865079650806508165082650836508465085650866508765088650896509065091650926509365094650956509665097650986509965100651016510265103651046510565106651076510865109651106511165112651136511465115651166511765118651196512065121651226512365124651256512665127651286512965130651316513265133651346513565136651376513865139651406514165142651436514465145651466514765148651496515065151651526515365154651556515665157651586515965160651616516265163651646516565166651676516865169651706517165172651736517465175651766517765178651796518065181651826518365184651856518665187651886518965190651916519265193651946519565196651976519865199652006520165202652036520465205652066520765208652096521065211652126521365214652156521665217652186521965220652216522265223652246522565226652276522865229652306523165232652336523465235652366523765238652396524065241652426524365244652456524665247652486524965250652516525265253652546525565256652576525865259652606526165262652636526465265652666526765268652696527065271652726527365274652756527665277652786527965280652816528265283652846528565286652876528865289652906529165292652936529465295652966529765298652996530065301653026530365304653056530665307653086530965310653116531265313653146531565316653176531865319653206532165322653236532465325653266532765328653296533065331653326533365334653356533665337653386533965340653416534265343653446534565346653476534865349653506535165352653536535465355653566535765358653596536065361653626536365364653656536665367653686536965370653716537265373653746537565376653776537865379653806538165382653836538465385653866538765388653896539065391653926539365394653956539665397653986539965400654016540265403654046540565406654076540865409654106541165412654136541465415654166541765418654196542065421654226542365424654256542665427654286542965430654316543265433654346543565436654376543865439654406544165442654436544465445654466544765448654496545065451654526545365454654556545665457654586545965460654616546265463654646546565466654676546865469654706547165472654736547465475654766547765478654796548065481654826548365484654856548665487654886548965490654916549265493654946549565496654976549865499655006550165502655036550465505655066550765508655096551065511655126551365514655156551665517655186551965520655216552265523655246552565526655276552865529655306553165532655336553465535655366553765538655396554065541655426554365544655456554665547655486554965550655516555265553655546555565556655576555865559655606556165562655636556465565655666556765568655696557065571655726557365574655756557665577655786557965580655816558265583655846558565586655876558865589655906559165592655936559465595655966559765598655996560065601656026560365604656056560665607656086560965610656116561265613656146561565616656176561865619656206562165622656236562465625656266562765628656296563065631656326563365634656356563665637656386563965640656416564265643656446564565646656476564865649656506565165652656536565465655656566565765658656596566065661656626566365664656656566665667656686566965670656716567265673656746567565676656776567865679656806568165682656836568465685656866568765688656896569065691656926569365694656956569665697656986569965700657016570265703657046570565706657076570865709657106571165712657136571465715657166571765718657196572065721657226572365724657256572665727657286572965730657316573265733657346573565736657376573865739657406574165742657436574465745657466574765748657496575065751657526575365754657556575665757657586575965760657616576265763657646576565766657676576865769657706577165772657736577465775657766577765778657796578065781657826578365784657856578665787657886578965790657916579265793657946579565796657976579865799658006580165802658036580465805658066580765808658096581065811658126581365814658156581665817658186581965820658216582265823658246582565826658276582865829658306583165832658336583465835658366583765838658396584065841658426584365844658456584665847658486584965850658516585265853658546585565856658576585865859658606586165862658636586465865658666586765868658696587065871658726587365874658756587665877658786587965880658816588265883658846588565886658876588865889658906589165892658936589465895658966589765898658996590065901659026590365904659056590665907659086590965910659116591265913659146591565916659176591865919659206592165922659236592465925659266592765928659296593065931659326593365934659356593665937659386593965940659416594265943659446594565946659476594865949659506595165952659536595465955659566595765958659596596065961659626596365964659656596665967659686596965970659716597265973659746597565976659776597865979659806598165982659836598465985659866598765988659896599065991659926599365994659956599665997659986599966000660016600266003660046600566006660076600866009660106601166012660136601466015660166601766018660196602066021660226602366024660256602666027660286602966030660316603266033660346603566036660376603866039660406604166042660436604466045660466604766048660496605066051660526605366054660556605666057660586605966060660616606266063660646606566066660676606866069660706607166072660736607466075660766607766078660796608066081660826608366084660856608666087660886608966090660916609266093660946609566096660976609866099661006610166102661036610466105661066610766108661096611066111661126611366114661156611666117661186611966120661216612266123661246612566126661276612866129661306613166132661336613466135661366613766138661396614066141661426614366144661456614666147661486614966150661516615266153661546615566156661576615866159661606616166162661636616466165661666616766168661696617066171661726617366174661756617666177661786617966180661816618266183661846618566186661876618866189661906619166192661936619466195661966619766198661996620066201662026620366204662056620666207662086620966210662116621266213662146621566216662176621866219662206622166222662236622466225662266622766228662296623066231662326623366234662356623666237662386623966240662416624266243662446624566246662476624866249662506625166252662536625466255662566625766258662596626066261662626626366264662656626666267662686626966270662716627266273662746627566276662776627866279662806628166282662836628466285662866628766288662896629066291662926629366294662956629666297662986629966300663016630266303663046630566306663076630866309663106631166312663136631466315663166631766318663196632066321663226632366324663256632666327663286632966330663316633266333663346633566336663376633866339663406634166342663436634466345663466634766348663496635066351663526635366354663556635666357663586635966360663616636266363663646636566366663676636866369663706637166372663736637466375663766637766378663796638066381663826638366384663856638666387663886638966390663916639266393663946639566396663976639866399664006640166402664036640466405664066640766408664096641066411664126641366414664156641666417664186641966420664216642266423664246642566426664276642866429664306643166432664336643466435664366643766438664396644066441664426644366444664456644666447664486644966450664516645266453664546645566456664576645866459664606646166462664636646466465664666646766468664696647066471664726647366474664756647666477664786647966480664816648266483664846648566486664876648866489664906649166492664936649466495664966649766498664996650066501665026650366504665056650666507665086650966510665116651266513665146651566516665176651866519665206652166522665236652466525665266652766528665296653066531665326653366534665356653666537665386653966540665416654266543665446654566546665476654866549665506655166552665536655466555665566655766558665596656066561665626656366564665656656666567665686656966570665716657266573665746657566576665776657866579665806658166582665836658466585665866658766588665896659066591665926659366594665956659666597665986659966600666016660266603666046660566606666076660866609666106661166612666136661466615666166661766618666196662066621666226662366624666256662666627666286662966630666316663266633666346663566636666376663866639666406664166642666436664466645666466664766648666496665066651666526665366654666556665666657666586665966660666616666266663666646666566666666676666866669666706667166672666736667466675666766667766678666796668066681666826668366684666856668666687666886668966690666916669266693666946669566696666976669866699667006670166702667036670466705667066670766708667096671066711667126671366714667156671666717667186671966720667216672266723667246672566726667276672866729667306673166732667336673466735667366673766738667396674066741667426674366744667456674666747667486674966750667516675266753667546675566756667576675866759667606676166762667636676466765667666676766768667696677066771667726677366774667756677666777667786677966780667816678266783667846678566786667876678866789667906679166792667936679466795667966679766798667996680066801668026680366804668056680666807668086680966810668116681266813668146681566816668176681866819668206682166822668236682466825668266682766828668296683066831668326683366834668356683666837668386683966840668416684266843668446684566846668476684866849668506685166852668536685466855668566685766858668596686066861668626686366864668656686666867668686686966870668716687266873668746687566876668776687866879668806688166882668836688466885668866688766888668896689066891668926689366894668956689666897668986689966900669016690266903669046690566906669076690866909669106691166912669136691466915669166691766918669196692066921669226692366924669256692666927669286692966930669316693266933669346693566936669376693866939669406694166942669436694466945669466694766948669496695066951669526695366954669556695666957669586695966960669616696266963669646696566966669676696866969669706697166972669736697466975669766697766978669796698066981669826698366984669856698666987669886698966990669916699266993669946699566996669976699866999670006700167002670036700467005670066700767008670096701067011670126701367014670156701667017670186701967020670216702267023670246702567026670276702867029670306703167032670336703467035670366703767038670396704067041670426704367044670456704667047670486704967050670516705267053670546705567056670576705867059670606706167062670636706467065670666706767068670696707067071670726707367074670756707667077670786707967080670816708267083670846708567086670876708867089670906709167092670936709467095670966709767098670996710067101671026710367104671056710667107671086710967110671116711267113671146711567116671176711867119671206712167122671236712467125671266712767128671296713067131671326713367134671356713667137671386713967140671416714267143671446714567146671476714867149671506715167152671536715467155671566715767158671596716067161671626716367164671656716667167671686716967170671716717267173671746717567176671776717867179671806718167182671836718467185671866718767188671896719067191671926719367194671956719667197671986719967200672016720267203672046720567206672076720867209672106721167212672136721467215672166721767218672196722067221672226722367224672256722667227672286722967230672316723267233672346723567236672376723867239672406724167242672436724467245672466724767248672496725067251672526725367254672556725667257672586725967260672616726267263672646726567266672676726867269672706727167272672736727467275672766727767278672796728067281672826728367284672856728667287672886728967290672916729267293672946729567296672976729867299673006730167302673036730467305673066730767308673096731067311673126731367314673156731667317673186731967320673216732267323673246732567326673276732867329673306733167332673336733467335673366733767338673396734067341673426734367344673456734667347673486734967350673516735267353673546735567356673576735867359673606736167362673636736467365673666736767368673696737067371673726737367374673756737667377673786737967380673816738267383673846738567386673876738867389673906739167392673936739467395673966739767398673996740067401674026740367404674056740667407674086740967410674116741267413674146741567416674176741867419674206742167422674236742467425674266742767428674296743067431674326743367434674356743667437674386743967440674416744267443674446744567446674476744867449674506745167452674536745467455674566745767458674596746067461674626746367464674656746667467674686746967470674716747267473674746747567476674776747867479674806748167482674836748467485674866748767488674896749067491674926749367494674956749667497674986749967500675016750267503675046750567506675076750867509675106751167512675136751467515675166751767518675196752067521675226752367524675256752667527675286752967530675316753267533675346753567536675376753867539675406754167542675436754467545675466754767548675496755067551675526755367554675556755667557675586755967560675616756267563675646756567566675676756867569675706757167572675736757467575675766757767578675796758067581675826758367584675856758667587675886758967590675916759267593675946759567596675976759867599676006760167602676036760467605676066760767608676096761067611676126761367614676156761667617676186761967620676216762267623676246762567626676276762867629676306763167632676336763467635676366763767638676396764067641676426764367644676456764667647676486764967650676516765267653676546765567656676576765867659676606766167662676636766467665676666766767668676696767067671676726767367674676756767667677676786767967680676816768267683676846768567686676876768867689676906769167692676936769467695676966769767698676996770067701677026770367704677056770667707677086770967710677116771267713677146771567716677176771867719677206772167722677236772467725677266772767728677296773067731677326773367734677356773667737677386773967740677416774267743677446774567746677476774867749677506775167752677536775467755677566775767758677596776067761677626776367764677656776667767677686776967770677716777267773677746777567776677776777867779677806778167782677836778467785677866778767788677896779067791677926779367794677956779667797677986779967800678016780267803678046780567806678076780867809678106781167812678136781467815678166781767818678196782067821678226782367824678256782667827678286782967830678316783267833678346783567836678376783867839678406784167842678436784467845678466784767848678496785067851678526785367854678556785667857678586785967860678616786267863678646786567866678676786867869678706787167872678736787467875678766787767878678796788067881678826788367884678856788667887678886788967890678916789267893678946789567896678976789867899679006790167902679036790467905679066790767908679096791067911679126791367914679156791667917679186791967920679216792267923679246792567926679276792867929679306793167932679336793467935679366793767938679396794067941679426794367944679456794667947679486794967950679516795267953679546795567956679576795867959679606796167962679636796467965679666796767968679696797067971679726797367974679756797667977679786797967980679816798267983679846798567986679876798867989679906799167992679936799467995679966799767998679996800068001680026800368004680056800668007680086800968010680116801268013680146801568016680176801868019680206802168022680236802468025680266802768028680296803068031680326803368034680356803668037680386803968040680416804268043680446804568046680476804868049680506805168052680536805468055680566805768058680596806068061680626806368064680656806668067680686806968070680716807268073680746807568076680776807868079680806808168082680836808468085680866808768088680896809068091680926809368094680956809668097680986809968100681016810268103681046810568106681076810868109681106811168112681136811468115681166811768118681196812068121681226812368124681256812668127681286812968130681316813268133681346813568136681376813868139681406814168142681436814468145681466814768148681496815068151681526815368154681556815668157681586815968160681616816268163681646816568166681676816868169681706817168172681736817468175681766817768178681796818068181681826818368184681856818668187681886818968190681916819268193681946819568196681976819868199682006820168202682036820468205682066820768208682096821068211682126821368214682156821668217682186821968220682216822268223682246822568226682276822868229682306823168232682336823468235682366823768238682396824068241682426824368244682456824668247682486824968250682516825268253682546825568256682576825868259682606826168262682636826468265682666826768268682696827068271682726827368274682756827668277682786827968280682816828268283682846828568286682876828868289682906829168292682936829468295682966829768298682996830068301683026830368304683056830668307683086830968310683116831268313683146831568316683176831868319683206832168322683236832468325683266832768328683296833068331683326833368334683356833668337683386833968340683416834268343683446834568346683476834868349683506835168352683536835468355683566835768358683596836068361683626836368364683656836668367683686836968370683716837268373683746837568376683776837868379683806838168382683836838468385683866838768388683896839068391683926839368394683956839668397683986839968400684016840268403684046840568406684076840868409684106841168412684136841468415684166841768418684196842068421684226842368424684256842668427684286842968430684316843268433684346843568436684376843868439684406844168442684436844468445684466844768448684496845068451684526845368454684556845668457684586845968460684616846268463684646846568466684676846868469684706847168472684736847468475684766847768478684796848068481684826848368484684856848668487684886848968490684916849268493684946849568496684976849868499685006850168502685036850468505685066850768508685096851068511685126851368514685156851668517685186851968520685216852268523685246852568526685276852868529685306853168532685336853468535685366853768538685396854068541685426854368544685456854668547685486854968550685516855268553685546855568556685576855868559685606856168562685636856468565685666856768568685696857068571685726857368574685756857668577685786857968580685816858268583685846858568586685876858868589685906859168592685936859468595685966859768598685996860068601686026860368604686056860668607686086860968610686116861268613686146861568616686176861868619686206862168622686236862468625686266862768628686296863068631686326863368634686356863668637686386863968640686416864268643686446864568646686476864868649686506865168652686536865468655686566865768658686596866068661686626866368664686656866668667686686866968670686716867268673686746867568676686776867868679686806868168682686836868468685686866868768688686896869068691686926869368694686956869668697686986869968700687016870268703687046870568706687076870868709687106871168712687136871468715687166871768718687196872068721687226872368724687256872668727687286872968730687316873268733687346873568736687376873868739687406874168742687436874468745687466874768748687496875068751687526875368754687556875668757687586875968760687616876268763687646876568766687676876868769687706877168772687736877468775687766877768778687796878068781687826878368784687856878668787687886878968790687916879268793687946879568796687976879868799688006880168802688036880468805688066880768808688096881068811688126881368814688156881668817688186881968820688216882268823688246882568826688276882868829688306883168832688336883468835688366883768838688396884068841688426884368844688456884668847688486884968850688516885268853688546885568856688576885868859688606886168862688636886468865688666886768868688696887068871688726887368874688756887668877688786887968880688816888268883688846888568886688876888868889688906889168892688936889468895688966889768898688996890068901689026890368904689056890668907689086890968910689116891268913689146891568916689176891868919689206892168922689236892468925689266892768928689296893068931689326893368934689356893668937689386893968940689416894268943689446894568946689476894868949689506895168952689536895468955689566895768958689596896068961689626896368964689656896668967689686896968970689716897268973689746897568976689776897868979689806898168982689836898468985689866898768988689896899068991689926899368994689956899668997689986899969000690016900269003690046900569006690076900869009690106901169012690136901469015690166901769018690196902069021690226902369024690256902669027690286902969030690316903269033690346903569036690376903869039690406904169042690436904469045690466904769048690496905069051690526905369054690556905669057690586905969060690616906269063690646906569066690676906869069690706907169072690736907469075690766907769078690796908069081690826908369084690856908669087690886908969090690916909269093690946909569096690976909869099691006910169102691036910469105691066910769108691096911069111691126911369114691156911669117691186911969120691216912269123691246912569126691276912869129691306913169132691336913469135691366913769138691396914069141691426914369144691456914669147691486914969150691516915269153691546915569156691576915869159691606916169162691636916469165691666916769168691696917069171691726917369174691756917669177691786917969180691816918269183691846918569186691876918869189691906919169192691936919469195691966919769198691996920069201692026920369204692056920669207692086920969210692116921269213692146921569216692176921869219692206922169222692236922469225692266922769228692296923069231692326923369234692356923669237692386923969240692416924269243692446924569246692476924869249692506925169252692536925469255692566925769258692596926069261692626926369264692656926669267692686926969270692716927269273692746927569276692776927869279692806928169282692836928469285692866928769288692896929069291692926929369294692956929669297692986929969300693016930269303693046930569306693076930869309693106931169312693136931469315693166931769318693196932069321693226932369324693256932669327693286932969330693316933269333693346933569336693376933869339693406934169342693436934469345693466934769348693496935069351693526935369354693556935669357693586935969360693616936269363693646936569366693676936869369693706937169372693736937469375693766937769378693796938069381693826938369384693856938669387693886938969390693916939269393693946939569396693976939869399694006940169402694036940469405694066940769408694096941069411694126941369414694156941669417694186941969420694216942269423694246942569426694276942869429694306943169432694336943469435694366943769438694396944069441694426944369444694456944669447694486944969450694516945269453694546945569456694576945869459694606946169462694636946469465694666946769468694696947069471694726947369474694756947669477694786947969480694816948269483694846948569486694876948869489694906949169492694936949469495694966949769498694996950069501695026950369504695056950669507695086950969510695116951269513695146951569516695176951869519695206952169522695236952469525695266952769528695296953069531695326953369534695356953669537695386953969540695416954269543695446954569546695476954869549695506955169552695536955469555695566955769558695596956069561695626956369564695656956669567695686956969570695716957269573695746957569576695776957869579695806958169582695836958469585695866958769588695896959069591695926959369594695956959669597695986959969600696016960269603696046960569606696076960869609696106961169612696136961469615696166961769618696196962069621696226962369624696256962669627696286962969630696316963269633696346963569636696376963869639696406964169642696436964469645696466964769648696496965069651696526965369654696556965669657696586965969660696616966269663696646966569666696676966869669696706967169672696736967469675696766967769678696796968069681696826968369684696856968669687696886968969690696916969269693696946969569696696976969869699697006970169702697036970469705697066970769708697096971069711697126971369714697156971669717697186971969720697216972269723697246972569726697276972869729697306973169732697336973469735697366973769738697396974069741697426974369744697456974669747697486974969750697516975269753697546975569756697576975869759697606976169762697636976469765697666976769768697696977069771697726977369774697756977669777697786977969780697816978269783697846978569786697876978869789697906979169792697936979469795697966979769798697996980069801698026980369804698056980669807698086980969810698116981269813698146981569816698176981869819698206982169822698236982469825698266982769828698296983069831698326983369834698356983669837698386983969840698416984269843698446984569846698476984869849698506985169852698536985469855698566985769858698596986069861698626986369864698656986669867698686986969870698716987269873698746987569876698776987869879698806988169882698836988469885698866988769888698896989069891698926989369894698956989669897698986989969900699016990269903699046990569906699076990869909699106991169912699136991469915699166991769918699196992069921699226992369924699256992669927699286992969930699316993269933699346993569936699376993869939699406994169942699436994469945699466994769948699496995069951699526995369954699556995669957699586995969960699616996269963699646996569966699676996869969699706997169972699736997469975699766997769978699796998069981699826998369984699856998669987699886998969990699916999269993699946999569996699976999869999700007000170002700037000470005700067000770008700097001070011700127001370014700157001670017700187001970020700217002270023700247002570026700277002870029700307003170032700337003470035700367003770038700397004070041700427004370044700457004670047700487004970050700517005270053700547005570056700577005870059700607006170062700637006470065700667006770068700697007070071700727007370074700757007670077700787007970080700817008270083700847008570086700877008870089700907009170092700937009470095700967009770098700997010070101701027010370104701057010670107701087010970110701117011270113701147011570116701177011870119701207012170122701237012470125701267012770128701297013070131701327013370134701357013670137701387013970140701417014270143701447014570146701477014870149701507015170152701537015470155701567015770158701597016070161701627016370164701657016670167701687016970170701717017270173701747017570176701777017870179701807018170182701837018470185701867018770188701897019070191701927019370194701957019670197701987019970200702017020270203702047020570206702077020870209702107021170212702137021470215702167021770218702197022070221702227022370224702257022670227702287022970230702317023270233702347023570236702377023870239702407024170242702437024470245702467024770248702497025070251702527025370254702557025670257702587025970260702617026270263702647026570266702677026870269702707027170272702737027470275702767027770278702797028070281702827028370284702857028670287702887028970290702917029270293702947029570296702977029870299703007030170302703037030470305703067030770308703097031070311703127031370314703157031670317703187031970320703217032270323703247032570326703277032870329703307033170332703337033470335703367033770338703397034070341703427034370344703457034670347703487034970350703517035270353703547035570356703577035870359703607036170362703637036470365703667036770368703697037070371703727037370374703757037670377703787037970380703817038270383703847038570386703877038870389703907039170392703937039470395703967039770398703997040070401704027040370404704057040670407704087040970410704117041270413704147041570416704177041870419704207042170422704237042470425704267042770428704297043070431704327043370434704357043670437704387043970440704417044270443704447044570446704477044870449704507045170452704537045470455704567045770458704597046070461704627046370464704657046670467704687046970470704717047270473704747047570476704777047870479704807048170482704837048470485704867048770488704897049070491704927049370494704957049670497704987049970500705017050270503705047050570506705077050870509705107051170512705137051470515705167051770518705197052070521705227052370524705257052670527705287052970530705317053270533705347053570536705377053870539705407054170542705437054470545705467054770548705497055070551705527055370554705557055670557705587055970560705617056270563705647056570566705677056870569705707057170572705737057470575705767057770578705797058070581705827058370584705857058670587705887058970590705917059270593705947059570596705977059870599706007060170602706037060470605706067060770608706097061070611706127061370614706157061670617706187061970620706217062270623706247062570626706277062870629706307063170632706337063470635706367063770638706397064070641706427064370644706457064670647706487064970650706517065270653706547065570656706577065870659706607066170662706637066470665706667066770668706697067070671706727067370674706757067670677706787067970680706817068270683706847068570686706877068870689
  1. "no use strict";
  2. !(function(window) {
  3. if (typeof window.window != "undefined" && window.document)
  4. return;
  5. if (window.require && window.define)
  6. return;
  7. if (!window.console) {
  8. window.console = function() {
  9. var msgs = Array.prototype.slice.call(arguments, 0);
  10. postMessage({type: "log", data: msgs});
  11. };
  12. window.console.error =
  13. window.console.warn =
  14. window.console.log =
  15. window.console.trace = window.console;
  16. }
  17. window.window = window;
  18. window.ace = window;
  19. window.onerror = function(message, file, line, col, err) {
  20. postMessage({type: "error", data: {
  21. message: message,
  22. data: err.data,
  23. file: file,
  24. line: line,
  25. col: col,
  26. stack: err.stack
  27. }});
  28. };
  29. window.normalizeModule = function(parentId, moduleName) {
  30. // normalize plugin requires
  31. if (moduleName.indexOf("!") !== -1) {
  32. var chunks = moduleName.split("!");
  33. return window.normalizeModule(parentId, chunks[0]) + "!" + window.normalizeModule(parentId, chunks[1]);
  34. }
  35. // normalize relative requires
  36. if (moduleName.charAt(0) == ".") {
  37. var base = parentId.split("/").slice(0, -1).join("/");
  38. moduleName = (base ? base + "/" : "") + moduleName;
  39. while (moduleName.indexOf(".") !== -1 && previous != moduleName) {
  40. var previous = moduleName;
  41. moduleName = moduleName.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, "");
  42. }
  43. }
  44. return moduleName;
  45. };
  46. window.require = function require(parentId, id) {
  47. if (!id) {
  48. id = parentId;
  49. parentId = null;
  50. }
  51. if (!id.charAt)
  52. throw new Error("worker.js require() accepts only (parentId, id) as arguments");
  53. id = window.normalizeModule(parentId, id);
  54. var module = window.require.modules[id];
  55. if (module) {
  56. if (!module.initialized) {
  57. module.initialized = true;
  58. module.exports = module.factory().exports;
  59. }
  60. return module.exports;
  61. }
  62. if (!window.require.tlns)
  63. return console.log("unable to load " + id);
  64. var path = resolveModuleId(id, window.require.tlns);
  65. if (path.slice(-3) != ".js") path += ".js";
  66. window.require.id = id;
  67. window.require.modules[id] = {}; // prevent infinite loop on broken modules
  68. importScripts(path);
  69. return window.require(parentId, id);
  70. };
  71. function resolveModuleId(id, paths) {
  72. var testPath = id, tail = "";
  73. while (testPath) {
  74. var alias = paths[testPath];
  75. if (typeof alias == "string") {
  76. return alias + tail;
  77. } else if (alias) {
  78. return alias.location.replace(/\/*$/, "/") + (tail || alias.main || alias.name);
  79. } else if (alias === false) {
  80. return "";
  81. }
  82. var i = testPath.lastIndexOf("/");
  83. if (i === -1) break;
  84. tail = testPath.substr(i) + tail;
  85. testPath = testPath.slice(0, i);
  86. }
  87. return id;
  88. }
  89. window.require.modules = {};
  90. window.require.tlns = {};
  91. window.define = function(id, deps, factory) {
  92. if (arguments.length == 2) {
  93. factory = deps;
  94. if (typeof id != "string") {
  95. deps = id;
  96. id = window.require.id;
  97. }
  98. } else if (arguments.length == 1) {
  99. factory = id;
  100. deps = [];
  101. id = window.require.id;
  102. }
  103. if (typeof factory != "function") {
  104. window.require.modules[id] = {
  105. exports: factory,
  106. initialized: true
  107. };
  108. return;
  109. }
  110. if (!deps.length)
  111. // If there is no dependencies, we inject "require", "exports" and
  112. // "module" as dependencies, to provide CommonJS compatibility.
  113. deps = ["require", "exports", "module"];
  114. var req = function(childId) {
  115. return window.require(id, childId);
  116. };
  117. window.require.modules[id] = {
  118. exports: {},
  119. factory: function() {
  120. var module = this;
  121. var returnExports = factory.apply(this, deps.map(function(dep) {
  122. switch (dep) {
  123. // Because "require", "exports" and "module" aren't actual
  124. // dependencies, we must handle them seperately.
  125. case "require": return req;
  126. case "exports": return module.exports;
  127. case "module": return module;
  128. // But for all other dependencies, we can just go ahead and
  129. // require them.
  130. default: return req(dep);
  131. }
  132. }));
  133. if (returnExports)
  134. module.exports = returnExports;
  135. return module;
  136. }
  137. };
  138. };
  139. window.define.amd = {};
  140. require.tlns = {};
  141. window.initBaseUrls = function initBaseUrls(topLevelNamespaces) {
  142. for (var i in topLevelNamespaces)
  143. require.tlns[i] = topLevelNamespaces[i];
  144. };
  145. window.initSender = function initSender() {
  146. var EventEmitter = window.require("ace/lib/event_emitter").EventEmitter;
  147. var oop = window.require("ace/lib/oop");
  148. var Sender = function() {};
  149. (function() {
  150. oop.implement(this, EventEmitter);
  151. this.callback = function(data, callbackId) {
  152. postMessage({
  153. type: "call",
  154. id: callbackId,
  155. data: data
  156. });
  157. };
  158. this.emit = function(name, data) {
  159. postMessage({
  160. type: "event",
  161. name: name,
  162. data: data
  163. });
  164. };
  165. }).call(Sender.prototype);
  166. return new Sender();
  167. };
  168. var main = window.main = null;
  169. var sender = window.sender = null;
  170. window.onmessage = function(e) {
  171. var msg = e.data;
  172. if (msg.event && sender) {
  173. sender._signal(msg.event, msg.data);
  174. }
  175. else if (msg.command) {
  176. if (main[msg.command])
  177. main[msg.command].apply(main, msg.args);
  178. else if (window[msg.command])
  179. window[msg.command].apply(window, msg.args);
  180. else
  181. throw new Error("Unknown command:" + msg.command);
  182. }
  183. else if (msg.init) {
  184. window.initBaseUrls(msg.tlns);
  185. require("ace/lib/es5-shim");
  186. sender = window.sender = window.initSender();
  187. var clazz = require(msg.module)[msg.classname];
  188. main = window.main = new clazz(sender);
  189. }
  190. };
  191. })(this);
  192. ace.define("ace/lib/oop",[], function(require, exports, module) {
  193. "use strict";
  194. exports.inherits = function(ctor, superCtor) {
  195. ctor.super_ = superCtor;
  196. ctor.prototype = Object.create(superCtor.prototype, {
  197. constructor: {
  198. value: ctor,
  199. enumerable: false,
  200. writable: true,
  201. configurable: true
  202. }
  203. });
  204. };
  205. exports.mixin = function(obj, mixin) {
  206. for (var key in mixin) {
  207. obj[key] = mixin[key];
  208. }
  209. return obj;
  210. };
  211. exports.implement = function(proto, mixin) {
  212. exports.mixin(proto, mixin);
  213. };
  214. });
  215. ace.define("ace/range",[], function(require, exports, module) {
  216. "use strict";
  217. var comparePoints = function(p1, p2) {
  218. return p1.row - p2.row || p1.column - p2.column;
  219. };
  220. var Range = function(startRow, startColumn, endRow, endColumn) {
  221. this.start = {
  222. row: startRow,
  223. column: startColumn
  224. };
  225. this.end = {
  226. row: endRow,
  227. column: endColumn
  228. };
  229. };
  230. (function() {
  231. this.isEqual = function(range) {
  232. return this.start.row === range.start.row &&
  233. this.end.row === range.end.row &&
  234. this.start.column === range.start.column &&
  235. this.end.column === range.end.column;
  236. };
  237. this.toString = function() {
  238. return ("Range: [" + this.start.row + "/" + this.start.column +
  239. "] -> [" + this.end.row + "/" + this.end.column + "]");
  240. };
  241. this.contains = function(row, column) {
  242. return this.compare(row, column) == 0;
  243. };
  244. this.compareRange = function(range) {
  245. var cmp,
  246. end = range.end,
  247. start = range.start;
  248. cmp = this.compare(end.row, end.column);
  249. if (cmp == 1) {
  250. cmp = this.compare(start.row, start.column);
  251. if (cmp == 1) {
  252. return 2;
  253. } else if (cmp == 0) {
  254. return 1;
  255. } else {
  256. return 0;
  257. }
  258. } else if (cmp == -1) {
  259. return -2;
  260. } else {
  261. cmp = this.compare(start.row, start.column);
  262. if (cmp == -1) {
  263. return -1;
  264. } else if (cmp == 1) {
  265. return 42;
  266. } else {
  267. return 0;
  268. }
  269. }
  270. };
  271. this.comparePoint = function(p) {
  272. return this.compare(p.row, p.column);
  273. };
  274. this.containsRange = function(range) {
  275. return this.comparePoint(range.start) == 0 && this.comparePoint(range.end) == 0;
  276. };
  277. this.intersects = function(range) {
  278. var cmp = this.compareRange(range);
  279. return (cmp == -1 || cmp == 0 || cmp == 1);
  280. };
  281. this.isEnd = function(row, column) {
  282. return this.end.row == row && this.end.column == column;
  283. };
  284. this.isStart = function(row, column) {
  285. return this.start.row == row && this.start.column == column;
  286. };
  287. this.setStart = function(row, column) {
  288. if (typeof row == "object") {
  289. this.start.column = row.column;
  290. this.start.row = row.row;
  291. } else {
  292. this.start.row = row;
  293. this.start.column = column;
  294. }
  295. };
  296. this.setEnd = function(row, column) {
  297. if (typeof row == "object") {
  298. this.end.column = row.column;
  299. this.end.row = row.row;
  300. } else {
  301. this.end.row = row;
  302. this.end.column = column;
  303. }
  304. };
  305. this.inside = function(row, column) {
  306. if (this.compare(row, column) == 0) {
  307. if (this.isEnd(row, column) || this.isStart(row, column)) {
  308. return false;
  309. } else {
  310. return true;
  311. }
  312. }
  313. return false;
  314. };
  315. this.insideStart = function(row, column) {
  316. if (this.compare(row, column) == 0) {
  317. if (this.isEnd(row, column)) {
  318. return false;
  319. } else {
  320. return true;
  321. }
  322. }
  323. return false;
  324. };
  325. this.insideEnd = function(row, column) {
  326. if (this.compare(row, column) == 0) {
  327. if (this.isStart(row, column)) {
  328. return false;
  329. } else {
  330. return true;
  331. }
  332. }
  333. return false;
  334. };
  335. this.compare = function(row, column) {
  336. if (!this.isMultiLine()) {
  337. if (row === this.start.row) {
  338. return column < this.start.column ? -1 : (column > this.end.column ? 1 : 0);
  339. }
  340. }
  341. if (row < this.start.row)
  342. return -1;
  343. if (row > this.end.row)
  344. return 1;
  345. if (this.start.row === row)
  346. return column >= this.start.column ? 0 : -1;
  347. if (this.end.row === row)
  348. return column <= this.end.column ? 0 : 1;
  349. return 0;
  350. };
  351. this.compareStart = function(row, column) {
  352. if (this.start.row == row && this.start.column == column) {
  353. return -1;
  354. } else {
  355. return this.compare(row, column);
  356. }
  357. };
  358. this.compareEnd = function(row, column) {
  359. if (this.end.row == row && this.end.column == column) {
  360. return 1;
  361. } else {
  362. return this.compare(row, column);
  363. }
  364. };
  365. this.compareInside = function(row, column) {
  366. if (this.end.row == row && this.end.column == column) {
  367. return 1;
  368. } else if (this.start.row == row && this.start.column == column) {
  369. return -1;
  370. } else {
  371. return this.compare(row, column);
  372. }
  373. };
  374. this.clipRows = function(firstRow, lastRow) {
  375. if (this.end.row > lastRow)
  376. var end = {row: lastRow + 1, column: 0};
  377. else if (this.end.row < firstRow)
  378. var end = {row: firstRow, column: 0};
  379. if (this.start.row > lastRow)
  380. var start = {row: lastRow + 1, column: 0};
  381. else if (this.start.row < firstRow)
  382. var start = {row: firstRow, column: 0};
  383. return Range.fromPoints(start || this.start, end || this.end);
  384. };
  385. this.extend = function(row, column) {
  386. var cmp = this.compare(row, column);
  387. if (cmp == 0)
  388. return this;
  389. else if (cmp == -1)
  390. var start = {row: row, column: column};
  391. else
  392. var end = {row: row, column: column};
  393. return Range.fromPoints(start || this.start, end || this.end);
  394. };
  395. this.isEmpty = function() {
  396. return (this.start.row === this.end.row && this.start.column === this.end.column);
  397. };
  398. this.isMultiLine = function() {
  399. return (this.start.row !== this.end.row);
  400. };
  401. this.clone = function() {
  402. return Range.fromPoints(this.start, this.end);
  403. };
  404. this.collapseRows = function() {
  405. if (this.end.column == 0)
  406. return new Range(this.start.row, 0, Math.max(this.start.row, this.end.row-1), 0);
  407. else
  408. return new Range(this.start.row, 0, this.end.row, 0);
  409. };
  410. this.toScreenRange = function(session) {
  411. var screenPosStart = session.documentToScreenPosition(this.start);
  412. var screenPosEnd = session.documentToScreenPosition(this.end);
  413. return new Range(
  414. screenPosStart.row, screenPosStart.column,
  415. screenPosEnd.row, screenPosEnd.column
  416. );
  417. };
  418. this.moveBy = function(row, column) {
  419. this.start.row += row;
  420. this.start.column += column;
  421. this.end.row += row;
  422. this.end.column += column;
  423. };
  424. }).call(Range.prototype);
  425. Range.fromPoints = function(start, end) {
  426. return new Range(start.row, start.column, end.row, end.column);
  427. };
  428. Range.comparePoints = comparePoints;
  429. Range.comparePoints = function(p1, p2) {
  430. return p1.row - p2.row || p1.column - p2.column;
  431. };
  432. exports.Range = Range;
  433. });
  434. ace.define("ace/apply_delta",[], function(require, exports, module) {
  435. "use strict";
  436. function throwDeltaError(delta, errorText){
  437. console.log("Invalid Delta:", delta);
  438. throw "Invalid Delta: " + errorText;
  439. }
  440. function positionInDocument(docLines, position) {
  441. return position.row >= 0 && position.row < docLines.length &&
  442. position.column >= 0 && position.column <= docLines[position.row].length;
  443. }
  444. function validateDelta(docLines, delta) {
  445. if (delta.action != "insert" && delta.action != "remove")
  446. throwDeltaError(delta, "delta.action must be 'insert' or 'remove'");
  447. if (!(delta.lines instanceof Array))
  448. throwDeltaError(delta, "delta.lines must be an Array");
  449. if (!delta.start || !delta.end)
  450. throwDeltaError(delta, "delta.start/end must be an present");
  451. var start = delta.start;
  452. if (!positionInDocument(docLines, delta.start))
  453. throwDeltaError(delta, "delta.start must be contained in document");
  454. var end = delta.end;
  455. if (delta.action == "remove" && !positionInDocument(docLines, end))
  456. throwDeltaError(delta, "delta.end must contained in document for 'remove' actions");
  457. var numRangeRows = end.row - start.row;
  458. var numRangeLastLineChars = (end.column - (numRangeRows == 0 ? start.column : 0));
  459. if (numRangeRows != delta.lines.length - 1 || delta.lines[numRangeRows].length != numRangeLastLineChars)
  460. throwDeltaError(delta, "delta.range must match delta lines");
  461. }
  462. exports.applyDelta = function(docLines, delta, doNotValidate) {
  463. var row = delta.start.row;
  464. var startColumn = delta.start.column;
  465. var line = docLines[row] || "";
  466. switch (delta.action) {
  467. case "insert":
  468. var lines = delta.lines;
  469. if (lines.length === 1) {
  470. docLines[row] = line.substring(0, startColumn) + delta.lines[0] + line.substring(startColumn);
  471. } else {
  472. var args = [row, 1].concat(delta.lines);
  473. docLines.splice.apply(docLines, args);
  474. docLines[row] = line.substring(0, startColumn) + docLines[row];
  475. docLines[row + delta.lines.length - 1] += line.substring(startColumn);
  476. }
  477. break;
  478. case "remove":
  479. var endColumn = delta.end.column;
  480. var endRow = delta.end.row;
  481. if (row === endRow) {
  482. docLines[row] = line.substring(0, startColumn) + line.substring(endColumn);
  483. } else {
  484. docLines.splice(
  485. row, endRow - row + 1,
  486. line.substring(0, startColumn) + docLines[endRow].substring(endColumn)
  487. );
  488. }
  489. break;
  490. }
  491. };
  492. });
  493. ace.define("ace/lib/event_emitter",[], function(require, exports, module) {
  494. "use strict";
  495. var EventEmitter = {};
  496. var stopPropagation = function() { this.propagationStopped = true; };
  497. var preventDefault = function() { this.defaultPrevented = true; };
  498. EventEmitter._emit =
  499. EventEmitter._dispatchEvent = function(eventName, e) {
  500. this._eventRegistry || (this._eventRegistry = {});
  501. this._defaultHandlers || (this._defaultHandlers = {});
  502. var listeners = this._eventRegistry[eventName] || [];
  503. var defaultHandler = this._defaultHandlers[eventName];
  504. if (!listeners.length && !defaultHandler)
  505. return;
  506. if (typeof e != "object" || !e)
  507. e = {};
  508. if (!e.type)
  509. e.type = eventName;
  510. if (!e.stopPropagation)
  511. e.stopPropagation = stopPropagation;
  512. if (!e.preventDefault)
  513. e.preventDefault = preventDefault;
  514. listeners = listeners.slice();
  515. for (var i=0; i<listeners.length; i++) {
  516. listeners[i](e, this);
  517. if (e.propagationStopped)
  518. break;
  519. }
  520. if (defaultHandler && !e.defaultPrevented)
  521. return defaultHandler(e, this);
  522. };
  523. EventEmitter._signal = function(eventName, e) {
  524. var listeners = (this._eventRegistry || {})[eventName];
  525. if (!listeners)
  526. return;
  527. listeners = listeners.slice();
  528. for (var i=0; i<listeners.length; i++)
  529. listeners[i](e, this);
  530. };
  531. EventEmitter.once = function(eventName, callback) {
  532. var _self = this;
  533. callback && this.addEventListener(eventName, function newCallback() {
  534. _self.removeEventListener(eventName, newCallback);
  535. callback.apply(null, arguments);
  536. });
  537. };
  538. EventEmitter.setDefaultHandler = function(eventName, callback) {
  539. var handlers = this._defaultHandlers;
  540. if (!handlers)
  541. handlers = this._defaultHandlers = {_disabled_: {}};
  542. if (handlers[eventName]) {
  543. var old = handlers[eventName];
  544. var disabled = handlers._disabled_[eventName];
  545. if (!disabled)
  546. handlers._disabled_[eventName] = disabled = [];
  547. disabled.push(old);
  548. var i = disabled.indexOf(callback);
  549. if (i != -1)
  550. disabled.splice(i, 1);
  551. }
  552. handlers[eventName] = callback;
  553. };
  554. EventEmitter.removeDefaultHandler = function(eventName, callback) {
  555. var handlers = this._defaultHandlers;
  556. if (!handlers)
  557. return;
  558. var disabled = handlers._disabled_[eventName];
  559. if (handlers[eventName] == callback) {
  560. var old = handlers[eventName];
  561. if (disabled)
  562. this.setDefaultHandler(eventName, disabled.pop());
  563. } else if (disabled) {
  564. var i = disabled.indexOf(callback);
  565. if (i != -1)
  566. disabled.splice(i, 1);
  567. }
  568. };
  569. EventEmitter.on =
  570. EventEmitter.addEventListener = function(eventName, callback, capturing) {
  571. this._eventRegistry = this._eventRegistry || {};
  572. var listeners = this._eventRegistry[eventName];
  573. if (!listeners)
  574. listeners = this._eventRegistry[eventName] = [];
  575. if (listeners.indexOf(callback) == -1)
  576. listeners[capturing ? "unshift" : "push"](callback);
  577. return callback;
  578. };
  579. EventEmitter.off =
  580. EventEmitter.removeListener =
  581. EventEmitter.removeEventListener = function(eventName, callback) {
  582. this._eventRegistry = this._eventRegistry || {};
  583. var listeners = this._eventRegistry[eventName];
  584. if (!listeners)
  585. return;
  586. var index = listeners.indexOf(callback);
  587. if (index !== -1)
  588. listeners.splice(index, 1);
  589. };
  590. EventEmitter.removeAllListeners = function(eventName) {
  591. if (this._eventRegistry) this._eventRegistry[eventName] = [];
  592. };
  593. exports.EventEmitter = EventEmitter;
  594. });
  595. ace.define("ace/anchor",[], function(require, exports, module) {
  596. "use strict";
  597. var oop = require("./lib/oop");
  598. var EventEmitter = require("./lib/event_emitter").EventEmitter;
  599. var Anchor = exports.Anchor = function(doc, row, column) {
  600. this.$onChange = this.onChange.bind(this);
  601. this.attach(doc);
  602. if (typeof column == "undefined")
  603. this.setPosition(row.row, row.column);
  604. else
  605. this.setPosition(row, column);
  606. };
  607. (function() {
  608. oop.implement(this, EventEmitter);
  609. this.getPosition = function() {
  610. return this.$clipPositionToDocument(this.row, this.column);
  611. };
  612. this.getDocument = function() {
  613. return this.document;
  614. };
  615. this.$insertRight = false;
  616. this.onChange = function(delta) {
  617. if (delta.start.row == delta.end.row && delta.start.row != this.row)
  618. return;
  619. if (delta.start.row > this.row)
  620. return;
  621. var point = $getTransformedPoint(delta, {row: this.row, column: this.column}, this.$insertRight);
  622. this.setPosition(point.row, point.column, true);
  623. };
  624. function $pointsInOrder(point1, point2, equalPointsInOrder) {
  625. var bColIsAfter = equalPointsInOrder ? point1.column <= point2.column : point1.column < point2.column;
  626. return (point1.row < point2.row) || (point1.row == point2.row && bColIsAfter);
  627. }
  628. function $getTransformedPoint(delta, point, moveIfEqual) {
  629. var deltaIsInsert = delta.action == "insert";
  630. var deltaRowShift = (deltaIsInsert ? 1 : -1) * (delta.end.row - delta.start.row);
  631. var deltaColShift = (deltaIsInsert ? 1 : -1) * (delta.end.column - delta.start.column);
  632. var deltaStart = delta.start;
  633. var deltaEnd = deltaIsInsert ? deltaStart : delta.end; // Collapse insert range.
  634. if ($pointsInOrder(point, deltaStart, moveIfEqual)) {
  635. return {
  636. row: point.row,
  637. column: point.column
  638. };
  639. }
  640. if ($pointsInOrder(deltaEnd, point, !moveIfEqual)) {
  641. return {
  642. row: point.row + deltaRowShift,
  643. column: point.column + (point.row == deltaEnd.row ? deltaColShift : 0)
  644. };
  645. }
  646. return {
  647. row: deltaStart.row,
  648. column: deltaStart.column
  649. };
  650. }
  651. this.setPosition = function(row, column, noClip) {
  652. var pos;
  653. if (noClip) {
  654. pos = {
  655. row: row,
  656. column: column
  657. };
  658. } else {
  659. pos = this.$clipPositionToDocument(row, column);
  660. }
  661. if (this.row == pos.row && this.column == pos.column)
  662. return;
  663. var old = {
  664. row: this.row,
  665. column: this.column
  666. };
  667. this.row = pos.row;
  668. this.column = pos.column;
  669. this._signal("change", {
  670. old: old,
  671. value: pos
  672. });
  673. };
  674. this.detach = function() {
  675. this.document.removeEventListener("change", this.$onChange);
  676. };
  677. this.attach = function(doc) {
  678. this.document = doc || this.document;
  679. this.document.on("change", this.$onChange);
  680. };
  681. this.$clipPositionToDocument = function(row, column) {
  682. var pos = {};
  683. if (row >= this.document.getLength()) {
  684. pos.row = Math.max(0, this.document.getLength() - 1);
  685. pos.column = this.document.getLine(pos.row).length;
  686. }
  687. else if (row < 0) {
  688. pos.row = 0;
  689. pos.column = 0;
  690. }
  691. else {
  692. pos.row = row;
  693. pos.column = Math.min(this.document.getLine(pos.row).length, Math.max(0, column));
  694. }
  695. if (column < 0)
  696. pos.column = 0;
  697. return pos;
  698. };
  699. }).call(Anchor.prototype);
  700. });
  701. ace.define("ace/document",[], function(require, exports, module) {
  702. "use strict";
  703. var oop = require("./lib/oop");
  704. var applyDelta = require("./apply_delta").applyDelta;
  705. var EventEmitter = require("./lib/event_emitter").EventEmitter;
  706. var Range = require("./range").Range;
  707. var Anchor = require("./anchor").Anchor;
  708. var Document = function(textOrLines) {
  709. this.$lines = [""];
  710. if (textOrLines.length === 0) {
  711. this.$lines = [""];
  712. } else if (Array.isArray(textOrLines)) {
  713. this.insertMergedLines({row: 0, column: 0}, textOrLines);
  714. } else {
  715. this.insert({row: 0, column:0}, textOrLines);
  716. }
  717. };
  718. (function() {
  719. oop.implement(this, EventEmitter);
  720. this.setValue = function(text) {
  721. var len = this.getLength() - 1;
  722. this.remove(new Range(0, 0, len, this.getLine(len).length));
  723. this.insert({row: 0, column: 0}, text);
  724. };
  725. this.getValue = function() {
  726. return this.getAllLines().join(this.getNewLineCharacter());
  727. };
  728. this.createAnchor = function(row, column) {
  729. return new Anchor(this, row, column);
  730. };
  731. if ("aaa".split(/a/).length === 0) {
  732. this.$split = function(text) {
  733. return text.replace(/\r\n|\r/g, "\n").split("\n");
  734. };
  735. } else {
  736. this.$split = function(text) {
  737. return text.split(/\r\n|\r|\n/);
  738. };
  739. }
  740. this.$detectNewLine = function(text) {
  741. var match = text.match(/^.*?(\r\n|\r|\n)/m);
  742. this.$autoNewLine = match ? match[1] : "\n";
  743. this._signal("changeNewLineMode");
  744. };
  745. this.getNewLineCharacter = function() {
  746. switch (this.$newLineMode) {
  747. case "windows":
  748. return "\r\n";
  749. case "unix":
  750. return "\n";
  751. default:
  752. return this.$autoNewLine || "\n";
  753. }
  754. };
  755. this.$autoNewLine = "";
  756. this.$newLineMode = "auto";
  757. this.setNewLineMode = function(newLineMode) {
  758. if (this.$newLineMode === newLineMode)
  759. return;
  760. this.$newLineMode = newLineMode;
  761. this._signal("changeNewLineMode");
  762. };
  763. this.getNewLineMode = function() {
  764. return this.$newLineMode;
  765. };
  766. this.isNewLine = function(text) {
  767. return (text == "\r\n" || text == "\r" || text == "\n");
  768. };
  769. this.getLine = function(row) {
  770. return this.$lines[row] || "";
  771. };
  772. this.getLines = function(firstRow, lastRow) {
  773. return this.$lines.slice(firstRow, lastRow + 1);
  774. };
  775. this.getAllLines = function() {
  776. return this.getLines(0, this.getLength());
  777. };
  778. this.getLength = function() {
  779. return this.$lines.length;
  780. };
  781. this.getTextRange = function(range) {
  782. return this.getLinesForRange(range).join(this.getNewLineCharacter());
  783. };
  784. this.getLinesForRange = function(range) {
  785. var lines;
  786. if (range.start.row === range.end.row) {
  787. lines = [this.getLine(range.start.row).substring(range.start.column, range.end.column)];
  788. } else {
  789. lines = this.getLines(range.start.row, range.end.row);
  790. lines[0] = (lines[0] || "").substring(range.start.column);
  791. var l = lines.length - 1;
  792. if (range.end.row - range.start.row == l)
  793. lines[l] = lines[l].substring(0, range.end.column);
  794. }
  795. return lines;
  796. };
  797. this.insertLines = function(row, lines) {
  798. console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead.");
  799. return this.insertFullLines(row, lines);
  800. };
  801. this.removeLines = function(firstRow, lastRow) {
  802. console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead.");
  803. return this.removeFullLines(firstRow, lastRow);
  804. };
  805. this.insertNewLine = function(position) {
  806. console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead.");
  807. return this.insertMergedLines(position, ["", ""]);
  808. };
  809. this.insert = function(position, text) {
  810. if (this.getLength() <= 1)
  811. this.$detectNewLine(text);
  812. return this.insertMergedLines(position, this.$split(text));
  813. };
  814. this.insertInLine = function(position, text) {
  815. var start = this.clippedPos(position.row, position.column);
  816. var end = this.pos(position.row, position.column + text.length);
  817. this.applyDelta({
  818. start: start,
  819. end: end,
  820. action: "insert",
  821. lines: [text]
  822. }, true);
  823. return this.clonePos(end);
  824. };
  825. this.clippedPos = function(row, column) {
  826. var length = this.getLength();
  827. if (row === undefined) {
  828. row = length;
  829. } else if (row < 0) {
  830. row = 0;
  831. } else if (row >= length) {
  832. row = length - 1;
  833. column = undefined;
  834. }
  835. var line = this.getLine(row);
  836. if (column == undefined)
  837. column = line.length;
  838. column = Math.min(Math.max(column, 0), line.length);
  839. return {row: row, column: column};
  840. };
  841. this.clonePos = function(pos) {
  842. return {row: pos.row, column: pos.column};
  843. };
  844. this.pos = function(row, column) {
  845. return {row: row, column: column};
  846. };
  847. this.$clipPosition = function(position) {
  848. var length = this.getLength();
  849. if (position.row >= length) {
  850. position.row = Math.max(0, length - 1);
  851. position.column = this.getLine(length - 1).length;
  852. } else {
  853. position.row = Math.max(0, position.row);
  854. position.column = Math.min(Math.max(position.column, 0), this.getLine(position.row).length);
  855. }
  856. return position;
  857. };
  858. this.insertFullLines = function(row, lines) {
  859. row = Math.min(Math.max(row, 0), this.getLength());
  860. var column = 0;
  861. if (row < this.getLength()) {
  862. lines = lines.concat([""]);
  863. column = 0;
  864. } else {
  865. lines = [""].concat(lines);
  866. row--;
  867. column = this.$lines[row].length;
  868. }
  869. this.insertMergedLines({row: row, column: column}, lines);
  870. };
  871. this.insertMergedLines = function(position, lines) {
  872. var start = this.clippedPos(position.row, position.column);
  873. var end = {
  874. row: start.row + lines.length - 1,
  875. column: (lines.length == 1 ? start.column : 0) + lines[lines.length - 1].length
  876. };
  877. this.applyDelta({
  878. start: start,
  879. end: end,
  880. action: "insert",
  881. lines: lines
  882. });
  883. return this.clonePos(end);
  884. };
  885. this.remove = function(range) {
  886. var start = this.clippedPos(range.start.row, range.start.column);
  887. var end = this.clippedPos(range.end.row, range.end.column);
  888. this.applyDelta({
  889. start: start,
  890. end: end,
  891. action: "remove",
  892. lines: this.getLinesForRange({start: start, end: end})
  893. });
  894. return this.clonePos(start);
  895. };
  896. this.removeInLine = function(row, startColumn, endColumn) {
  897. var start = this.clippedPos(row, startColumn);
  898. var end = this.clippedPos(row, endColumn);
  899. this.applyDelta({
  900. start: start,
  901. end: end,
  902. action: "remove",
  903. lines: this.getLinesForRange({start: start, end: end})
  904. }, true);
  905. return this.clonePos(start);
  906. };
  907. this.removeFullLines = function(firstRow, lastRow) {
  908. firstRow = Math.min(Math.max(0, firstRow), this.getLength() - 1);
  909. lastRow = Math.min(Math.max(0, lastRow ), this.getLength() - 1);
  910. var deleteFirstNewLine = lastRow == this.getLength() - 1 && firstRow > 0;
  911. var deleteLastNewLine = lastRow < this.getLength() - 1;
  912. var startRow = ( deleteFirstNewLine ? firstRow - 1 : firstRow );
  913. var startCol = ( deleteFirstNewLine ? this.getLine(startRow).length : 0 );
  914. var endRow = ( deleteLastNewLine ? lastRow + 1 : lastRow );
  915. var endCol = ( deleteLastNewLine ? 0 : this.getLine(endRow).length );
  916. var range = new Range(startRow, startCol, endRow, endCol);
  917. var deletedLines = this.$lines.slice(firstRow, lastRow + 1);
  918. this.applyDelta({
  919. start: range.start,
  920. end: range.end,
  921. action: "remove",
  922. lines: this.getLinesForRange(range)
  923. });
  924. return deletedLines;
  925. };
  926. this.removeNewLine = function(row) {
  927. if (row < this.getLength() - 1 && row >= 0) {
  928. this.applyDelta({
  929. start: this.pos(row, this.getLine(row).length),
  930. end: this.pos(row + 1, 0),
  931. action: "remove",
  932. lines: ["", ""]
  933. });
  934. }
  935. };
  936. this.replace = function(range, text) {
  937. if (!(range instanceof Range))
  938. range = Range.fromPoints(range.start, range.end);
  939. if (text.length === 0 && range.isEmpty())
  940. return range.start;
  941. if (text == this.getTextRange(range))
  942. return range.end;
  943. this.remove(range);
  944. var end;
  945. if (text) {
  946. end = this.insert(range.start, text);
  947. }
  948. else {
  949. end = range.start;
  950. }
  951. return end;
  952. };
  953. this.applyDeltas = function(deltas) {
  954. for (var i=0; i<deltas.length; i++) {
  955. this.applyDelta(deltas[i]);
  956. }
  957. };
  958. this.revertDeltas = function(deltas) {
  959. for (var i=deltas.length-1; i>=0; i--) {
  960. this.revertDelta(deltas[i]);
  961. }
  962. };
  963. this.applyDelta = function(delta, doNotValidate) {
  964. var isInsert = delta.action == "insert";
  965. if (isInsert ? delta.lines.length <= 1 && !delta.lines[0]
  966. : !Range.comparePoints(delta.start, delta.end)) {
  967. return;
  968. }
  969. if (isInsert && delta.lines.length > 20000) {
  970. this.$splitAndapplyLargeDelta(delta, 20000);
  971. }
  972. else {
  973. applyDelta(this.$lines, delta, doNotValidate);
  974. this._signal("change", delta);
  975. }
  976. };
  977. this.$splitAndapplyLargeDelta = function(delta, MAX) {
  978. var lines = delta.lines;
  979. var l = lines.length - MAX + 1;
  980. var row = delta.start.row;
  981. var column = delta.start.column;
  982. for (var from = 0, to = 0; from < l; from = to) {
  983. to += MAX - 1;
  984. var chunk = lines.slice(from, to);
  985. chunk.push("");
  986. this.applyDelta({
  987. start: this.pos(row + from, column),
  988. end: this.pos(row + to, column = 0),
  989. action: delta.action,
  990. lines: chunk
  991. }, true);
  992. }
  993. delta.lines = lines.slice(from);
  994. delta.start.row = row + from;
  995. delta.start.column = column;
  996. this.applyDelta(delta, true);
  997. };
  998. this.revertDelta = function(delta) {
  999. this.applyDelta({
  1000. start: this.clonePos(delta.start),
  1001. end: this.clonePos(delta.end),
  1002. action: (delta.action == "insert" ? "remove" : "insert"),
  1003. lines: delta.lines.slice()
  1004. });
  1005. };
  1006. this.indexToPosition = function(index, startRow) {
  1007. var lines = this.$lines || this.getAllLines();
  1008. var newlineLength = this.getNewLineCharacter().length;
  1009. for (var i = startRow || 0, l = lines.length; i < l; i++) {
  1010. index -= lines[i].length + newlineLength;
  1011. if (index < 0)
  1012. return {row: i, column: index + lines[i].length + newlineLength};
  1013. }
  1014. return {row: l-1, column: index + lines[l-1].length + newlineLength};
  1015. };
  1016. this.positionToIndex = function(pos, startRow) {
  1017. var lines = this.$lines || this.getAllLines();
  1018. var newlineLength = this.getNewLineCharacter().length;
  1019. var index = 0;
  1020. var row = Math.min(pos.row, lines.length);
  1021. for (var i = startRow || 0; i < row; ++i)
  1022. index += lines[i].length + newlineLength;
  1023. return index + pos.column;
  1024. };
  1025. }).call(Document.prototype);
  1026. exports.Document = Document;
  1027. });
  1028. ace.define("ace/lib/lang",[], function(require, exports, module) {
  1029. "use strict";
  1030. exports.last = function(a) {
  1031. return a[a.length - 1];
  1032. };
  1033. exports.stringReverse = function(string) {
  1034. return string.split("").reverse().join("");
  1035. };
  1036. exports.stringRepeat = function (string, count) {
  1037. var result = '';
  1038. while (count > 0) {
  1039. if (count & 1)
  1040. result += string;
  1041. if (count >>= 1)
  1042. string += string;
  1043. }
  1044. return result;
  1045. };
  1046. var trimBeginRegexp = /^\s\s*/;
  1047. var trimEndRegexp = /\s\s*$/;
  1048. exports.stringTrimLeft = function (string) {
  1049. return string.replace(trimBeginRegexp, '');
  1050. };
  1051. exports.stringTrimRight = function (string) {
  1052. return string.replace(trimEndRegexp, '');
  1053. };
  1054. exports.copyObject = function(obj) {
  1055. var copy = {};
  1056. for (var key in obj) {
  1057. copy[key] = obj[key];
  1058. }
  1059. return copy;
  1060. };
  1061. exports.copyArray = function(array){
  1062. var copy = [];
  1063. for (var i=0, l=array.length; i<l; i++) {
  1064. if (array[i] && typeof array[i] == "object")
  1065. copy[i] = this.copyObject(array[i]);
  1066. else
  1067. copy[i] = array[i];
  1068. }
  1069. return copy;
  1070. };
  1071. exports.deepCopy = function deepCopy(obj) {
  1072. if (typeof obj !== "object" || !obj)
  1073. return obj;
  1074. var copy;
  1075. if (Array.isArray(obj)) {
  1076. copy = [];
  1077. for (var key = 0; key < obj.length; key++) {
  1078. copy[key] = deepCopy(obj[key]);
  1079. }
  1080. return copy;
  1081. }
  1082. if (Object.prototype.toString.call(obj) !== "[object Object]")
  1083. return obj;
  1084. copy = {};
  1085. for (var key in obj)
  1086. copy[key] = deepCopy(obj[key]);
  1087. return copy;
  1088. };
  1089. exports.arrayToMap = function(arr) {
  1090. var map = {};
  1091. for (var i=0; i<arr.length; i++) {
  1092. map[arr[i]] = 1;
  1093. }
  1094. return map;
  1095. };
  1096. exports.createMap = function(props) {
  1097. var map = Object.create(null);
  1098. for (var i in props) {
  1099. map[i] = props[i];
  1100. }
  1101. return map;
  1102. };
  1103. exports.arrayRemove = function(array, value) {
  1104. for (var i = 0; i <= array.length; i++) {
  1105. if (value === array[i]) {
  1106. array.splice(i, 1);
  1107. }
  1108. }
  1109. };
  1110. exports.escapeRegExp = function(str) {
  1111. return str.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1');
  1112. };
  1113. exports.escapeHTML = function(str) {
  1114. return str.replace(/&/g, "&#38;").replace(/"/g, "&#34;").replace(/'/g, "&#39;").replace(/</g, "&#60;");
  1115. };
  1116. exports.getMatchOffsets = function(string, regExp) {
  1117. var matches = [];
  1118. string.replace(regExp, function(str) {
  1119. matches.push({
  1120. offset: arguments[arguments.length-2],
  1121. length: str.length
  1122. });
  1123. });
  1124. return matches;
  1125. };
  1126. exports.deferredCall = function(fcn) {
  1127. var timer = null;
  1128. var callback = function() {
  1129. timer = null;
  1130. fcn();
  1131. };
  1132. var deferred = function(timeout) {
  1133. deferred.cancel();
  1134. timer = setTimeout(callback, timeout || 0);
  1135. return deferred;
  1136. };
  1137. deferred.schedule = deferred;
  1138. deferred.call = function() {
  1139. this.cancel();
  1140. fcn();
  1141. return deferred;
  1142. };
  1143. deferred.cancel = function() {
  1144. clearTimeout(timer);
  1145. timer = null;
  1146. return deferred;
  1147. };
  1148. deferred.isPending = function() {
  1149. return timer;
  1150. };
  1151. return deferred;
  1152. };
  1153. exports.delayedCall = function(fcn, defaultTimeout) {
  1154. var timer = null;
  1155. var callback = function() {
  1156. timer = null;
  1157. fcn();
  1158. };
  1159. var _self = function(timeout) {
  1160. if (timer == null)
  1161. timer = setTimeout(callback, timeout || defaultTimeout);
  1162. };
  1163. _self.delay = function(timeout) {
  1164. timer && clearTimeout(timer);
  1165. timer = setTimeout(callback, timeout || defaultTimeout);
  1166. };
  1167. _self.schedule = _self;
  1168. _self.call = function() {
  1169. this.cancel();
  1170. fcn();
  1171. };
  1172. _self.cancel = function() {
  1173. timer && clearTimeout(timer);
  1174. timer = null;
  1175. };
  1176. _self.isPending = function() {
  1177. return timer;
  1178. };
  1179. return _self;
  1180. };
  1181. });
  1182. ace.define("ace/worker/mirror",[], function(require, exports, module) {
  1183. "use strict";
  1184. var Range = require("../range").Range;
  1185. var Document = require("../document").Document;
  1186. var lang = require("../lib/lang");
  1187. var Mirror = exports.Mirror = function(sender) {
  1188. this.sender = sender;
  1189. var doc = this.doc = new Document("");
  1190. var deferredUpdate = this.deferredUpdate = lang.delayedCall(this.onUpdate.bind(this));
  1191. var _self = this;
  1192. sender.on("change", function(e) {
  1193. var data = e.data;
  1194. if (data[0].start) {
  1195. doc.applyDeltas(data);
  1196. } else {
  1197. for (var i = 0; i < data.length; i += 2) {
  1198. if (Array.isArray(data[i+1])) {
  1199. var d = {action: "insert", start: data[i], lines: data[i+1]};
  1200. } else {
  1201. var d = {action: "remove", start: data[i], end: data[i+1]};
  1202. }
  1203. doc.applyDelta(d, true);
  1204. }
  1205. }
  1206. if (_self.$timeout)
  1207. return deferredUpdate.schedule(_self.$timeout);
  1208. _self.onUpdate();
  1209. });
  1210. };
  1211. (function() {
  1212. this.$timeout = 500;
  1213. this.setTimeout = function(timeout) {
  1214. this.$timeout = timeout;
  1215. };
  1216. this.setValue = function(value) {
  1217. this.doc.setValue(value);
  1218. this.deferredUpdate.schedule(this.$timeout);
  1219. };
  1220. this.getValue = function(callbackId) {
  1221. this.sender.callback(this.doc.getValue(), callbackId);
  1222. };
  1223. this.onUpdate = function() {
  1224. };
  1225. this.isPending = function() {
  1226. return this.deferredUpdate.isPending();
  1227. };
  1228. }).call(Mirror.prototype);
  1229. });
  1230. ace.define("ace/mode/xquery/xqlint",[], function(require, exports, module) {
  1231. module.exports = (function outer (modules, cache, entry) {
  1232. var previousRequire = typeof require == "function" && require;
  1233. function newRequire(name, jumped){
  1234. if(!cache[name]) {
  1235. if(!modules[name]) {
  1236. var currentRequire = typeof require == "function" && require;
  1237. if (!jumped && currentRequire) return currentRequire(name, true);
  1238. if (previousRequire) return previousRequire(name, true);
  1239. var err = new Error('Cannot find module \'' + name + '\'');
  1240. err.code = 'MODULE_NOT_FOUND';
  1241. throw err;
  1242. }
  1243. var m = cache[name] = {exports:{}};
  1244. modules[name][0].call(m.exports, function(x){
  1245. var id = modules[name][1][x];
  1246. return newRequire(id ? id : x);
  1247. },m,m.exports,outer,modules,cache,entry);
  1248. }
  1249. return cache[name].exports;
  1250. }
  1251. for(var i=0;i<entry.length;i++) newRequire(entry[i]);
  1252. return newRequire(entry[0]);
  1253. })
  1254. ({"/node_modules/xqlint/lib/compiler/errors.js":[function(_dereq_,module,exports){
  1255. 'use strict';
  1256. var init = function(that, code, message, pos, type){
  1257. if(!code) {
  1258. throw new Error(type + ' code is missing.');
  1259. }
  1260. if(!message) {
  1261. throw new Error(type + ' message is missing.');
  1262. }
  1263. if(!pos) {
  1264. throw new Error(type + ' position is missing.');
  1265. }
  1266. that.getCode = function(){
  1267. return code;
  1268. };
  1269. that.getMessage = function(){
  1270. return message;
  1271. };
  1272. that.getPos = function(){
  1273. return pos;
  1274. };
  1275. };
  1276. var StaticError = {};
  1277. var StaticWarning = {};
  1278. StaticError.prototype = new Error();
  1279. StaticWarning.prototype = new Error();
  1280. exports.StaticError = StaticError.prototype.constructor = function(code, message, pos) {
  1281. init(this, code, message, pos, 'Error');
  1282. };
  1283. exports.StaticWarning = StaticWarning.prototype.constructor = function(code, message, pos) {
  1284. init(this, code, message, pos, 'Warning');
  1285. };
  1286. },{}],"/node_modules/xqlint/lib/compiler/handlers.js":[function(_dereq_,module,exports){
  1287. 'use strict';
  1288. var TreeOps = _dereq_('../tree_ops').TreeOps;
  1289. var Errors = _dereq_('./errors');
  1290. var StaticWarning = Errors.StaticWarning;
  1291. //
  1292. //
  1293. exports.ModuleDecl = function(translator, rootSctx, node){
  1294. var prefix = '';
  1295. return {
  1296. NCName: function(ncname){
  1297. prefix = TreeOps.flatten(ncname);
  1298. },
  1299. URILiteral: function(uri) {
  1300. uri = TreeOps.flatten(uri);
  1301. uri = uri.substring(1, uri.length - 1);
  1302. translator.apply(function(){
  1303. rootSctx.moduleNamespace = uri;
  1304. rootSctx.addNamespace(uri, prefix, node.pos, 'moduleDecl');
  1305. });
  1306. }
  1307. };
  1308. };
  1309. exports.ModuleImport = function(translator, rootSctx, node) {
  1310. var prefix = '';
  1311. var moduleURI;
  1312. return {
  1313. NCName: function(ncname){
  1314. prefix = TreeOps.flatten(ncname);
  1315. },
  1316. URILiteral: function(uri) {
  1317. if(moduleURI !== undefined) {
  1318. return;
  1319. }
  1320. uri = TreeOps.flatten(uri);
  1321. uri = uri.substring(1, uri.length - 1);
  1322. moduleURI = uri;
  1323. translator.apply(function(){
  1324. rootSctx.importModule(uri, prefix, node.pos);
  1325. });
  1326. }
  1327. };
  1328. };
  1329. exports.SchemaImport = function(translator, rootSctx, node) {
  1330. var prefix = '';
  1331. var schemaURI;
  1332. return {
  1333. SchemaPrefix: function(schemaPrefix) {
  1334. var SchemaPrefixHandler = function () {
  1335. this.NCName = function (ncname) {
  1336. prefix = TreeOps.flatten(ncname);
  1337. };
  1338. };
  1339. translator.visitChildren(schemaPrefix, new SchemaPrefixHandler());
  1340. },
  1341. URILiteral: function(uri) {
  1342. if(schemaURI !== undefined) {
  1343. return;
  1344. }
  1345. uri = TreeOps.flatten(uri);
  1346. uri = uri.substring(1, uri.length - 1);
  1347. schemaURI = uri;
  1348. translator.apply(function(){
  1349. rootSctx.addNamespace(uri, prefix, node.pos, 'schema');
  1350. });
  1351. }
  1352. };
  1353. };
  1354. exports.DefaultNamespaceDecl = function(translator, rootSctx, node) {
  1355. var fn = false;
  1356. var ns = '';
  1357. return {
  1358. TOKEN: function(token){
  1359. fn = fn ? true : (token.value === 'function');
  1360. },
  1361. URILiteral: function(uri){
  1362. ns = TreeOps.flatten(uri);
  1363. ns = ns.substring(1, ns.length - 1);
  1364. if(!fn) {
  1365. translator.apply(function(){
  1366. throw new StaticWarning('W06', 'Avoid default element namespace declarations.', node.pos);
  1367. });
  1368. rootSctx.defaultElementNamespace = ns;
  1369. } else {
  1370. rootSctx.defaultFunctionNamespace = ns;
  1371. }
  1372. }
  1373. };
  1374. };
  1375. exports.NamespaceDecl = function(translator, rootSctx, node) {
  1376. var prefix = '';
  1377. return {
  1378. NCName: function(ncname) {
  1379. prefix = TreeOps.flatten(ncname);
  1380. },
  1381. URILiteral: function(uri) {
  1382. uri = TreeOps.flatten(uri);
  1383. uri = uri.substring(1, uri.length - 1);
  1384. translator.apply(function(){
  1385. rootSctx.addNamespace(uri, prefix, node.pos, 'declare');
  1386. });
  1387. }
  1388. };
  1389. };
  1390. //
  1391. //
  1392. //
  1393. exports.VarHandler = function(translator, sctx, node){
  1394. var EQNameHandler = function(eqname){
  1395. var value = TreeOps.flatten(eqname);
  1396. translator.apply(function(){
  1397. var qname = sctx.resolveQName(value, eqname.pos);
  1398. sctx.addVariable(qname, node.name, eqname.pos);
  1399. });
  1400. };
  1401. return {
  1402. ExprSingle: function(){ return true; },
  1403. VarValue: function(){ return true; },
  1404. VarDefaultValue: function(){ return true; },
  1405. VarName: EQNameHandler,
  1406. EQName: EQNameHandler
  1407. };
  1408. };
  1409. exports.VarRefHandler = function(translator, sctx, node){
  1410. return {
  1411. VarName: function(eqname){
  1412. var value = TreeOps.flatten(eqname);
  1413. translator.apply(function(){
  1414. var qname = sctx.resolveQName(value, node.pos);
  1415. if(qname.uri !== '') {
  1416. sctx.root.namespaces[qname.uri].used = true;
  1417. }
  1418. sctx.addVarRef(qname, eqname.pos);
  1419. });
  1420. }
  1421. };
  1422. };
  1423. },{"../tree_ops":"/node_modules/xqlint/lib/tree_ops.js","./errors":"/node_modules/xqlint/lib/compiler/errors.js"}],"/node_modules/xqlint/lib/compiler/schema_built-in_types.js":[function(_dereq_,module,exports){
  1424. 'use strict';
  1425. exports.getSchemaBuiltinTypes = function(){
  1426. var ns = 'http://www.w3.org/2001/XMLSchema';
  1427. var SchemaBuiltinTypes = {};
  1428. SchemaBuiltinTypes[ns] = {
  1429. variables: {},
  1430. functions: {}
  1431. };
  1432. SchemaBuiltinTypes[ns].functions[ns + '#string#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'string', arity: 1, eqname: { uri: ns, name: 'string' } };
  1433. SchemaBuiltinTypes[ns].functions[ns + '#boolean#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'boolean', arity: 1, eqname: { uri: ns, name: 'boolean' } };
  1434. SchemaBuiltinTypes[ns].functions[ns + '#decimal#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'decimal', arity: 1, eqname: { uri: ns, name: 'decimal' } };
  1435. SchemaBuiltinTypes[ns].functions[ns + '#float#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'float', arity: 1, eqname: { uri: ns, name: 'float' } };
  1436. SchemaBuiltinTypes[ns].functions[ns + '#double#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'double', arity: 1, eqname: { uri: ns, name: 'double' } };
  1437. SchemaBuiltinTypes[ns].functions[ns + '#duration#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'duration', arity: 1, eqname: { uri: ns, name: 'duration' } };
  1438. SchemaBuiltinTypes[ns].functions[ns + '#dateTime#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'dateTime', arity: 1, eqname: { uri: ns, name: 'dateTime' } };
  1439. SchemaBuiltinTypes[ns].functions[ns + '#time#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'time', arity: 1, eqname: { uri: ns, name: 'time' } };
  1440. SchemaBuiltinTypes[ns].functions[ns + '#date#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'date', arity: 1, eqname: { uri: ns, name: 'date' } };
  1441. SchemaBuiltinTypes[ns].functions[ns + '#gYearMonth#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'gYearMonth', arity: 1, eqname: { uri: ns, name: 'gYearMonth' } };
  1442. SchemaBuiltinTypes[ns].functions[ns + '#gYear#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'gYear', arity: 1, eqname: { uri: ns, name: 'gYear' } };
  1443. SchemaBuiltinTypes[ns].functions[ns + '#gMonthDay#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'gMonthDay', arity: 1, eqname: { uri: ns, name: 'gMonthDay' } };
  1444. SchemaBuiltinTypes[ns].functions[ns + '#gDay#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'gDay', arity: 1, eqname: { uri: ns, name: 'gDay' } };
  1445. SchemaBuiltinTypes[ns].functions[ns + '#gMonth#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'gMonth', arity: 1, eqname: { uri: ns, name: 'gMonth' } };
  1446. SchemaBuiltinTypes[ns].functions[ns + '#hexBinary#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'hexBinary', arity: 1, eqname: { uri: ns, name: 'hexBinary' } };
  1447. SchemaBuiltinTypes[ns].functions[ns + '#base64Binary#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'base64Binary', arity: 1, eqname: { uri: ns, name: 'base64Binary' } };
  1448. SchemaBuiltinTypes[ns].functions[ns + '#anyURI#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'anyURI', arity: 1, eqname: { uri: ns, name: 'anyURI' } };
  1449. SchemaBuiltinTypes[ns].functions[ns + '#QName#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'QName', arity: 1, eqname: { uri: ns, name: 'QName' } };
  1450. SchemaBuiltinTypes[ns].functions[ns + '#normalizedString#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'normalizedString', arity: 1, eqname: { uri: ns, name: 'normalizedString' } };
  1451. SchemaBuiltinTypes[ns].functions[ns + '#token#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'token', arity: 1, eqname: { uri: ns, name: 'token' } };
  1452. SchemaBuiltinTypes[ns].functions[ns + '#language#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'language', arity: 1, eqname: { uri: ns, name: 'language' } };
  1453. SchemaBuiltinTypes[ns].functions[ns + '#NMTOKEN#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'NMTOKEN', arity: 1, eqname: { uri: ns, name: 'NMTOKEN' } };
  1454. SchemaBuiltinTypes[ns].functions[ns + '#Name#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'Name', arity: 1, eqname: { uri: ns, name: 'Name' } };
  1455. SchemaBuiltinTypes[ns].functions[ns + '#NCName#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'NCName', arity: 1, eqname: { uri: ns, name: 'NCName' } };
  1456. SchemaBuiltinTypes[ns].functions[ns + '#ID#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'ID', arity: 1, eqname: { uri: ns, name: 'ID' } };
  1457. SchemaBuiltinTypes[ns].functions[ns + '#IDREF#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'IDREF', arity: 1, eqname: { uri: ns, name: 'IDREF' } };
  1458. SchemaBuiltinTypes[ns].functions[ns + '#ENTITY#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'ENTITY', arity: 1, eqname: { uri: ns, name: 'ENTITY' } };
  1459. SchemaBuiltinTypes[ns].functions[ns + '#integer#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'integer', arity: 1, eqname: { uri: ns, name: 'integer' } };
  1460. SchemaBuiltinTypes[ns].functions[ns + '#nonPositiveInteger#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'nonPositiveInteger', arity: 1, eqname: { uri: ns, name: 'nonPositiveInteger' } };
  1461. SchemaBuiltinTypes[ns].functions[ns + '#negativeInteger#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'negativeInteger', arity: 1, eqname: { uri: ns, name: 'negativeInteger' } };
  1462. SchemaBuiltinTypes[ns].functions[ns + '#long#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'long', arity: 1, eqname: { uri: ns, name: 'long' } };
  1463. SchemaBuiltinTypes[ns].functions[ns + '#int#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'int', arity: 1, eqname: { uri: ns, name: 'int' } };
  1464. SchemaBuiltinTypes[ns].functions[ns + '#short#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'short', arity: 1, eqname: { uri: ns, name: 'short' } };
  1465. SchemaBuiltinTypes[ns].functions[ns + '#byte#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'byte', arity: 1, eqname: { uri: ns, name: 'byte' } };
  1466. SchemaBuiltinTypes[ns].functions[ns + '#nonNegativeInteger#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'nonNegativeInteger', arity: 1, eqname: { uri: ns, name: 'nonNegativeInteger' } };
  1467. SchemaBuiltinTypes[ns].functions[ns + '#unsignedLong#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'unsignedLong', arity: 1, eqname: { uri: ns, name: 'unsignedLong' } };
  1468. SchemaBuiltinTypes[ns].functions[ns + '#unsignedInt#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'unsignedInt', arity: 1, eqname: { uri: ns, name: 'unsignedInt' } };
  1469. SchemaBuiltinTypes[ns].functions[ns + '#unsignedShort#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'unsignedShort', arity: 1, eqname: { uri: ns, name: 'unsignedShort' } };
  1470. SchemaBuiltinTypes[ns].functions[ns + '#unsignedByte#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'unsignedByte', arity: 1, eqname: { uri: ns, name: 'unsignedByte' } };
  1471. SchemaBuiltinTypes[ns].functions[ns + '#positiveInteger#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'positiveInteger', arity: 1, eqname: { uri: ns, name: 'positiveInteger' } };
  1472. SchemaBuiltinTypes[ns].functions[ns + '#yearMonthDuration#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'yearMonthDuration', arity: 1, eqname: { uri: ns, name: 'yearMonthDuration' } };
  1473. SchemaBuiltinTypes[ns].functions[ns + '#dayTimeDuration#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'dayTimeDuration', arity: 1, eqname: { uri: ns, name: 'dayTimeDuration' } };
  1474. SchemaBuiltinTypes[ns].functions[ns + '#untypedAtomic#1'] = { params: ['$arg as xs:anyAtomicType?'], annotations: [], name: 'untypedAtomic', arity: 1, eqname: { uri: ns, name: 'untypedAtomic' } };
  1475. return SchemaBuiltinTypes;
  1476. };
  1477. },{}],"/node_modules/xqlint/lib/compiler/static_context.js":[function(_dereq_,module,exports){
  1478. exports.StaticContext = function (parent, pos) {
  1479. 'use strict';
  1480. var TreeOps = _dereq_('../tree_ops').TreeOps;
  1481. var Errors = _dereq_('./errors');
  1482. var StaticError = Errors.StaticError;
  1483. var StaticWarning = Errors.StaticWarning;
  1484. var getSchemaBuiltinTypes = _dereq_('./schema_built-in_types').getSchemaBuiltinTypes;
  1485. var emptyPos = { sl:0, sc: 0, el: 0, ec: 0 };
  1486. var namespaces = {};
  1487. var getVarKey = function(qname) {
  1488. return qname.uri + '#' + qname.name;
  1489. };
  1490. var getFnKey = function(qname, arity) {
  1491. return getVarKey(qname) + '#' + arity;
  1492. };
  1493. if(!parent) {
  1494. namespaces['http://jsoniq.org/functions'] = {
  1495. prefixes: ['jn'],
  1496. pos: emptyPos,
  1497. type: 'module',
  1498. override: true
  1499. };
  1500. namespaces['http://www.28msec.com/modules/collections'] = {
  1501. prefixes: ['db'],
  1502. pos: emptyPos,
  1503. type: 'module',
  1504. override: true
  1505. };
  1506. namespaces['http://www.28msec.com/modules/store'] = {
  1507. prefixes: ['store'],
  1508. pos: emptyPos,
  1509. type: 'module',
  1510. override: true
  1511. };
  1512. namespaces['http://jsoniq.org/function-library'] = {
  1513. prefixes: ['libjn'],
  1514. pos: emptyPos,
  1515. type: 'module',
  1516. override: true
  1517. };
  1518. namespaces['http://www.w3.org/2005/xpath-functions'] = {
  1519. prefixes: ['fn'],
  1520. pos: emptyPos,
  1521. type: 'module',
  1522. override: true
  1523. };
  1524. namespaces['http://www.w3.org/2005/xquery-local-functions'] = {
  1525. prefixes: ['local'],
  1526. pos: emptyPos,
  1527. type: 'declare',
  1528. override: true
  1529. };
  1530. namespaces['http://www.w3.org/2001/XMLSchema-instance'] = {
  1531. prefixes: ['xsi'],
  1532. pos: emptyPos,
  1533. type: 'declare'
  1534. };
  1535. namespaces['http://www.w3.org/2001/XMLSchema'] = {
  1536. prefixes: ['xs'],
  1537. pos: emptyPos,
  1538. type: 'declare'
  1539. };
  1540. namespaces['http://www.w3.org/XML/1998/namespace'] = {
  1541. prefixes: ['xml'],
  1542. pos: emptyPos,
  1543. type: 'declare'
  1544. };
  1545. namespaces['http://zorba.io/annotations'] = {
  1546. prefixes: ['an'],
  1547. pos: emptyPos,
  1548. type: 'declare',
  1549. override: true
  1550. };
  1551. namespaces['http://www.28msec.com/annotations/rest'] = {
  1552. prefixes: ['rest'],
  1553. pos: emptyPos,
  1554. type: 'declare',
  1555. override: true
  1556. };
  1557. namespaces['http://www.w3.org/2005/xqt-errors'] = {
  1558. prefixes: ['err'],
  1559. pos: emptyPos,
  1560. type: 'declare',
  1561. override: true
  1562. };
  1563. namespaces['http://zorba.io/errors'] = {
  1564. prefixes: ['zerr'],
  1565. pos: emptyPos,
  1566. type: 'declare',
  1567. override: true
  1568. };
  1569. }
  1570. var s = {
  1571. parent: parent,
  1572. children: [],
  1573. pos: pos,
  1574. setModuleResolver: function(resolver){
  1575. this.root.moduleResolver = resolver;
  1576. return this;
  1577. },
  1578. setModules: function(index){
  1579. if(this !== this.root){
  1580. throw new Error('setModules() not invoked from the root static context.');
  1581. }
  1582. this.moduleResolver = function(uri){
  1583. return index[uri];
  1584. };
  1585. var that = this;
  1586. Object.keys(this.namespaces).forEach(function(uri){
  1587. var ns = that.namespaces[uri];
  1588. if(ns.type === 'module') {
  1589. var mod = that.moduleResolver(uri);
  1590. if(mod.variables) {
  1591. TreeOps.concat(that.variables, mod.variables);
  1592. }
  1593. if(mod.functions) {
  1594. TreeOps.concat(that.functions, mod.functions);
  1595. }
  1596. }
  1597. });
  1598. return this;
  1599. },
  1600. setModulesFromXQDoc: function(xqdoc){
  1601. if(this !== this.root){
  1602. throw new Error('setModulesFromXQDoc() not invoked from the root static context.');
  1603. }
  1604. var index = {};
  1605. Object.keys(xqdoc).forEach(function(uri) {
  1606. var mod = xqdoc[uri];
  1607. var variables = {};
  1608. var functions = {};
  1609. mod.functions.forEach(function(fn){
  1610. functions[uri + '#' + fn.name + '#' + fn.arity] = {
  1611. params: [],
  1612. annotations: [],
  1613. name: fn.name,
  1614. arity: fn.arity,
  1615. eqname: { uri: uri, name: fn.name }
  1616. };
  1617. fn.parameters.forEach(function(param){
  1618. functions[uri + '#' + fn.name + '#' + fn.arity].params.push('$' + param.name);
  1619. });
  1620. });
  1621. mod.variables.forEach(function(variable){
  1622. var name = variable.name.substring(variable.name.indexOf(':') + 1);
  1623. variables[uri + '#' + name] = { type: 'VarDecl', annotations: [], eqname: { uri: uri, name: name } };
  1624. });
  1625. index[uri] = {
  1626. variables: variables,
  1627. functions: functions
  1628. };
  1629. });
  1630. this.root.moduleResolver = function(uri){
  1631. return index[uri];
  1632. };
  1633. var that = this;
  1634. Object.keys(this.namespaces).forEach(function(uri){
  1635. var ns = that.namespaces[uri];
  1636. if(ns.type === 'module') {
  1637. var mod = that.moduleResolver(uri);
  1638. if(mod.variables) {
  1639. TreeOps.concat(that.variables, mod.variables);
  1640. }
  1641. if(mod.functions) {
  1642. TreeOps.concat(that.functions, mod.functions);
  1643. }
  1644. }
  1645. });
  1646. return this;
  1647. },
  1648. moduleNamespace: '',
  1649. description: '',
  1650. defaultFunctionNamespace: 'http://www.w3.org/2005/xpath-functions',
  1651. defaultFunctionNamespaces: [
  1652. 'http://www.28msec.com/modules/collections',
  1653. 'http://www.28msec.com/modules/store',
  1654. 'http://jsoniq.org/functions',
  1655. 'http://jsoniq.org/function-library',
  1656. 'http://www.w3.org/2001/XMLSchema' //Built-in type constructors
  1657. ],
  1658. defaultElementNamespace: '',
  1659. namespaces: namespaces,
  1660. availableModuleNamespaces: [],
  1661. importModule: function(uri, prefix, pos) {
  1662. if(this !== this.root){
  1663. throw new Error('Function not invoked from the root static context.');
  1664. }
  1665. this.addNamespace(uri, prefix, pos, 'module');
  1666. if(this.moduleResolver) {
  1667. try {
  1668. var mod = this.moduleResolver(uri, []);
  1669. if(mod.variables) {
  1670. TreeOps.concat(this.variables, mod.variables);
  1671. }
  1672. if(mod.functions) {
  1673. TreeOps.concat(this.functions, mod.functions);
  1674. }
  1675. } catch(e) {
  1676. throw new StaticError('XQST0059', 'module "' + uri + '" not found', pos);
  1677. }
  1678. }
  1679. return this;
  1680. },
  1681. getAvailableModuleNamespaces: function(){
  1682. return this.root.availableModuleNamespaces;
  1683. },
  1684. getPrefixesByNamespace: function(uri){
  1685. return this.root.namespaces[uri].prefixes;
  1686. },
  1687. addNamespace: function (uri, prefix, pos, type) {
  1688. if(prefix === '' && type === 'module') {
  1689. throw new StaticWarning('W01', 'Avoid this type of import. Use import module namespace instead', pos);
  1690. }
  1691. if (uri === '') {
  1692. throw new StaticError('XQST0088', 'empty target namespace in module import or module declaration', pos);
  1693. }
  1694. var namespace = this.getNamespace(uri);
  1695. if (namespace && namespace.type === type && type !== 'declare' && !namespace.override) {
  1696. throw new StaticError('XQST0047', '"' + uri + '": duplicate target namespace', pos);
  1697. }
  1698. namespace = this.getNamespaceByPrefix(prefix);
  1699. if (namespace && !namespace.override) {
  1700. throw new StaticError('XQST0033', '"' + prefix + '": namespace prefix already bound to "' + namespace.uri + '"', pos);
  1701. }
  1702. namespace = this.namespaces[uri];
  1703. var prefixes = [prefix];
  1704. if(namespace) {
  1705. prefixes = prefixes.concat(this.namespaces[uri].prefixes);
  1706. }
  1707. this.namespaces[uri] = {
  1708. prefixes: prefixes,
  1709. pos: pos,
  1710. type: type
  1711. };
  1712. if (namespace) {
  1713. throw new StaticWarning('W02', '"' + uri + '" already bound to the "' + namespace.prefixes.join(', ') + '" prefix', pos);
  1714. }
  1715. },
  1716. getNamespaces: function(){
  1717. return this.root.namespaces;
  1718. },
  1719. getNamespace: function (uri) {
  1720. var that = this;
  1721. while (that) {
  1722. var namespace = that.namespaces[uri];
  1723. if (namespace) {
  1724. return namespace;
  1725. }
  1726. that = that.parent;
  1727. }
  1728. },
  1729. getNamespaceByPrefix: function (prefix) {
  1730. var found = [];
  1731. var handler = function (uri) {
  1732. var namespace = that.namespaces[uri];
  1733. if (namespace.prefixes.indexOf(prefix) !== -1) {
  1734. namespace.uri = uri;
  1735. found.push(namespace);
  1736. }
  1737. };
  1738. var that = this;
  1739. while (that) {
  1740. Object.keys(that.namespaces).forEach(handler);
  1741. that = that.parent;
  1742. }
  1743. var result;
  1744. found.forEach(function(ns){
  1745. if(ns.type === 'moduleDecl') {
  1746. result = ns;
  1747. }
  1748. });
  1749. if(result) {
  1750. return result;
  1751. } else {
  1752. return found[0];
  1753. }
  1754. },
  1755. resolveQName: function(value, pos){
  1756. var qname = {
  1757. uri: '',
  1758. prefix: '',
  1759. name: ''
  1760. };
  1761. var idx;
  1762. if (value.substring(0, 2) === 'Q{') {
  1763. idx = value.indexOf('}');
  1764. qname.uri = value.substring(2, idx);
  1765. qname.name = value.substring(idx + 1);
  1766. } else {
  1767. idx = value.indexOf(':');
  1768. qname.prefix = value.substring(0, idx);
  1769. var namespace = this.getNamespaceByPrefix(qname.prefix);
  1770. if(!namespace && qname.prefix !== '' && ['fn', 'jn'].indexOf(qname.prefix) === -1) {
  1771. throw new StaticError('XPST0081', '"' + qname.prefix + '": can not expand prefix of lexical QName to namespace URI', pos);
  1772. }
  1773. if(namespace) {
  1774. qname.uri = namespace.uri;
  1775. }
  1776. qname.name = value.substring(idx + 1);
  1777. }
  1778. return qname;
  1779. },
  1780. variables: {},
  1781. varRefs: {},
  1782. functionCalls: {},
  1783. addVariable: function(qname, type, pos){
  1784. if(
  1785. type === 'VarDecl' && this.moduleNamespace !== '' &&
  1786. !(this.moduleNamespace === qname.uri || qname.uri === '')
  1787. ) {
  1788. throw new StaticError('XQST0048', '"' + qname.prefix + ':' + qname.name + '": Qname not library namespace', pos);
  1789. }
  1790. var key = getVarKey(qname);
  1791. if(type === 'VarDecl' && this.variables[key]) {
  1792. throw new StaticError('XQST0049', '"' + qname.name + '": duplicate variable declaration', pos);
  1793. }
  1794. this.variables[key] = {
  1795. type: type,
  1796. pos: pos,
  1797. qname: qname,
  1798. annotations: {}
  1799. };
  1800. return this;
  1801. },
  1802. getVariables: function(){
  1803. var variables = {};
  1804. var that = this;
  1805. var handler = function(key){
  1806. if(!variables[key]){
  1807. variables[key] = that.variables[key];
  1808. }
  1809. };
  1810. while(that){
  1811. Object.keys(that.variables).forEach(handler);
  1812. that = that.parent;
  1813. }
  1814. return variables;
  1815. },
  1816. getVariable: function(qname) {
  1817. var key = getVarKey(qname);
  1818. var that = this;
  1819. while(that) {
  1820. if(that.variables[key]) {
  1821. return that.variables[key];
  1822. }
  1823. that = that.parent;
  1824. }
  1825. },
  1826. addVarRef: function(qname, pos){
  1827. var varDecl = this.getVariable(qname);
  1828. if(!varDecl && (qname.uri === '' || this.root.moduleResolver)) {
  1829. throw new StaticError('XPST0008', '"' + qname.name + '": undeclared variable', pos);
  1830. }
  1831. var key = getVarKey(qname);
  1832. this.varRefs[key] = true;
  1833. },
  1834. addFunctionCall: function(qname, arity, pos){
  1835. var fn = this.getFunction(qname, arity);
  1836. if(!fn && (qname.uri === 'http://www.w3.org/2005/xquery-local-functions' || this.root.moduleResolver)){
  1837. if((qname.uri === 'http://www.w3.org/2005/xpath-functions' ||
  1838. (qname.uri === '' && this.root.defaultFunctionNamespaces.concat(this.root.defaultFunctionNamespace).indexOf('http://www.w3.org/2005/xpath-functions') !== -1)) && qname.name === 'concat') {
  1839. } else if(!fn){
  1840. throw new StaticError('XPST0008', '"' + qname.name + '#' + arity + '": undeclared function', pos);
  1841. }
  1842. }
  1843. var key = getFnKey(qname, arity);
  1844. this.functionCalls[key] = true;
  1845. },
  1846. functions: getSchemaBuiltinTypes()['http://www.w3.org/2001/XMLSchema'].functions,
  1847. getFunctions: function(){
  1848. return this.root.functions;
  1849. },
  1850. getFunction: function(qname, arity){
  1851. var key = getFnKey(qname, arity);
  1852. var fn;
  1853. if(qname.uri === '') {
  1854. var that = this;
  1855. this.root.defaultFunctionNamespaces.concat([this.root.defaultFunctionNamespace]).forEach(function(defaultFunctionNamespace){
  1856. if(!fn){
  1857. fn = that.getFunction({ uri: defaultFunctionNamespace, prefix: qname.prefix, name: qname.name }, arity);
  1858. } else {
  1859. return false;
  1860. }
  1861. });
  1862. return fn;
  1863. } else {
  1864. return this.root.functions[key];
  1865. }
  1866. },
  1867. addFunction: function(qname, pos, params) {
  1868. if(this !== this.root){
  1869. throw new Error('addFunction() not invoked from the root static context.');
  1870. }
  1871. var arity = params.length;
  1872. if(
  1873. this.moduleNamespace !== '' &&
  1874. !(this.moduleNamespace === qname.uri || (qname.uri === '' && this.defaultFunctionNamespace === this.moduleNamespace))
  1875. ) {
  1876. throw new StaticError('XQST0048', '"' + qname.prefix + ':' + qname.name + '": Qname not library namespace', pos);
  1877. }
  1878. var key = getFnKey(qname, arity);
  1879. if(this.functions[key]) {
  1880. throw new StaticError('XQST0034', '"' + qname.name + '": duplicate function declaration', pos);
  1881. }
  1882. this.functions[key] = {
  1883. pos: pos,
  1884. params: params
  1885. };
  1886. return this;
  1887. }
  1888. };
  1889. s.root = parent ? parent.root : s;
  1890. return s;
  1891. };
  1892. },{"../tree_ops":"/node_modules/xqlint/lib/tree_ops.js","./errors":"/node_modules/xqlint/lib/compiler/errors.js","./schema_built-in_types":"/node_modules/xqlint/lib/compiler/schema_built-in_types.js"}],"/node_modules/xqlint/lib/compiler/translator.js":[function(_dereq_,module,exports){
  1893. exports.Translator = function(rootStcx, ast){
  1894. 'use strict';
  1895. var Errors = _dereq_('./errors');
  1896. var StaticError = Errors.StaticError;
  1897. var StaticWarning = Errors.StaticWarning;
  1898. var TreeOps = _dereq_('../tree_ops').TreeOps;
  1899. var StaticContext = _dereq_('./static_context').StaticContext;
  1900. var Handlers = _dereq_('./handlers');
  1901. var get = function(node, path){
  1902. var result = [];
  1903. if(path.length === 0){
  1904. return node;
  1905. }
  1906. node.children.forEach(function(child){
  1907. if(child.name === path[0] && path.length > 1) {
  1908. result = get(child, path.slice(1));
  1909. } else if(child.name === path[0]) {
  1910. result.push(child);
  1911. }
  1912. });
  1913. return result;
  1914. };
  1915. var markers = [];
  1916. this.apply = function(fn) {
  1917. try {
  1918. fn();
  1919. } catch(e) {
  1920. if(e instanceof StaticError) {
  1921. addStaticError(e);
  1922. } else if(e instanceof StaticWarning) {
  1923. addWarning(e.getCode(), e.getMessage(), e.getPos());
  1924. } else {
  1925. throw e;
  1926. }
  1927. }
  1928. };
  1929. var addStaticError = function(e){
  1930. markers.push({
  1931. pos: e.getPos(),
  1932. type: 'error',
  1933. level: 'error',
  1934. message: '[' + e.getCode() + '] ' + e.getMessage()
  1935. });
  1936. };
  1937. var addWarning = function(code, message, pos) {
  1938. markers.push({
  1939. pos: pos,
  1940. type: 'warning',
  1941. level: 'warning',
  1942. message: '[' + code + '] ' + message
  1943. });
  1944. };
  1945. this.getMarkers = function(){
  1946. return markers;
  1947. };
  1948. var translator = this;
  1949. rootStcx.pos = ast.pos;
  1950. var sctx = rootStcx;
  1951. var pushSctx = function(pos){
  1952. sctx = new StaticContext(sctx, pos);
  1953. sctx.parent.children.push(sctx);
  1954. };
  1955. var popSctx = function(pos){
  1956. if (pos !== undefined) {
  1957. sctx.pos.el = pos.el;
  1958. sctx.pos.ec = pos.ec;
  1959. }
  1960. Object.keys(sctx.varRefs).forEach(function(key){
  1961. if(!sctx.variables[key]) {
  1962. sctx.parent.varRefs[key] = true;
  1963. }
  1964. });
  1965. Object.keys(sctx.variables).forEach(function(key){
  1966. if(!sctx.varRefs[key] && sctx.variables[key].type !== 'GroupingVariable' && sctx.variables[key].type !== 'CatchVar') {
  1967. addWarning('W03', 'Unused variable "$' + sctx.variables[key].qname.name + '"', sctx.variables[key].pos);
  1968. }
  1969. });
  1970. sctx = sctx.parent;
  1971. };
  1972. this.visitOnly = function(node, names) {
  1973. node.children.forEach(function(child){
  1974. if (names.indexOf(child.name) !== -1){
  1975. translator.visit(child);
  1976. }
  1977. });
  1978. };
  1979. this.getFirstChild = function(node, name) {
  1980. var result;
  1981. node.children.forEach(function(child){
  1982. if(child.name === name && result === undefined){
  1983. result = child;
  1984. }
  1985. });
  1986. return result;
  1987. };
  1988. this.XQuery = function(node) {
  1989. rootStcx.description = node.comment ? node.comment.description : undefined;
  1990. };
  1991. this.ModuleDecl = function(node){
  1992. this.visitChildren(node, Handlers.ModuleDecl(translator, rootStcx, node));
  1993. return true;
  1994. };
  1995. this.Prolog = function(node){
  1996. this.visitOnly(node, ['DefaultNamespaceDecl', 'Setter', 'NamespaceDecl', 'Import']);
  1997. ast.index.forEach(function(node){
  1998. if(node.name === 'VarDecl') {
  1999. node.children.forEach(function(child){
  2000. if(child.name === 'VarName') {
  2001. translator.apply(function(){
  2002. var value = TreeOps.flatten(child);
  2003. var qname = rootStcx.resolveQName(value, child.pos);
  2004. rootStcx.addVariable(qname, node.name, child.pos);
  2005. });
  2006. }
  2007. });
  2008. } else if(node.name === 'FunctionDecl') {
  2009. var qname, pos, params = [];
  2010. node.children.forEach(function(child){
  2011. if(child.name === 'EQName') {
  2012. qname = child;
  2013. pos = child.pos;
  2014. } else if(child.name === 'ParamList'){
  2015. child.children.forEach(function(c){
  2016. if(c.name === 'Param') {
  2017. params.push(TreeOps.flatten(c));
  2018. }
  2019. });
  2020. }
  2021. });
  2022. translator.apply(function(){
  2023. qname = TreeOps.flatten(qname);
  2024. qname = rootStcx.resolveQName(qname, pos);
  2025. rootStcx.addFunction(qname, pos, params);
  2026. });
  2027. }
  2028. });
  2029. this.visitOnly(node, ['ContextItemDecl', 'AnnotatedDecl', 'OptionDecl']);
  2030. return true;
  2031. };
  2032. this.ModuleImport = function (node) {
  2033. this.visitChildren(node, Handlers.ModuleImport(translator, rootStcx, node));
  2034. return true;
  2035. };
  2036. this.SchemaImport = function (node) {
  2037. this.visitChildren(node, Handlers.SchemaImport(translator, rootStcx, node));
  2038. return true;
  2039. };
  2040. this.DefaultNamespaceDecl = function(node){
  2041. this.visitChildren(node, Handlers.DefaultNamespaceDecl(translator, rootStcx, node));
  2042. return true;
  2043. };
  2044. this.NamespaceDecl = function (node) {
  2045. this.visitChildren(node, Handlers.NamespaceDecl(translator, rootStcx, node));
  2046. return true;
  2047. };
  2048. var annotations = {};
  2049. this.AnnotatedDecl = function(node) {
  2050. annotations = {};
  2051. this.visitChildren(node, Handlers.NamespaceDecl(translator, rootStcx, node));
  2052. return true;
  2053. };
  2054. this.CompatibilityAnnotation = function(){
  2055. annotations['http://www.w3.org/2012/xquery#updating'] = [];
  2056. return true;
  2057. };
  2058. this.Annotation = function(node){
  2059. this.visitChildren(node, {
  2060. EQName: function(eqname){
  2061. var value = TreeOps.flatten(eqname);
  2062. translator.apply(function(){
  2063. var qname = sctx.resolveQName(value, eqname.pos);
  2064. annotations[qname.uri + '#' + qname.name] = [];
  2065. });
  2066. }
  2067. });
  2068. return true;
  2069. };
  2070. this.VarDecl = function(node){
  2071. try {
  2072. var varname = translator.getFirstChild(node, 'VarName');
  2073. var value = TreeOps.flatten(varname);
  2074. var qname = sctx.resolveQName(value, varname.pos);
  2075. var variable = rootStcx.getVariable(qname);
  2076. if(variable) {
  2077. variable.annotations = annotations;
  2078. variable.description = node.getParent.comment ? node.getParent.comment.description : undefined;
  2079. variable.type = TreeOps.flatten(get(node, ['TypeDeclaration'])[0]).substring(2).trim();
  2080. var last = variable.type.substring(variable.type.length - 1);
  2081. if(last === '?') {
  2082. variable.occurrence = 0;
  2083. variable.type = variable.type.substring(0, variable.type.length - 1);
  2084. } else if(last === '*') {
  2085. variable.occurrence = -1;
  2086. variable.type = variable.type.substring(0, variable.type.length - 1);
  2087. } else if(last === '+') {
  2088. variable.occurrence = 2;
  2089. variable.type = variable.type.substring(0, variable.type.length - 1);
  2090. } else {
  2091. variable.occurrence = 1;
  2092. }
  2093. }
  2094. } catch(e) {
  2095. }
  2096. this.visitOnly(node, ['ExprSingle', 'VarValue', 'VarDefaultValue']);
  2097. return true;
  2098. };
  2099. this.FunctionDecl = function(node) {
  2100. var isUpdating = annotations['http://www.w3.org/2012/xquery#updating'] !== undefined;
  2101. var typeDecl = get(node, ['ReturnType'])[0];
  2102. var name = get(node, ['EQName'])[0];
  2103. if(!typeDecl && !isUpdating){
  2104. addWarning('W05', 'Untyped return value', name.pos);
  2105. }
  2106. var isExternal = false;
  2107. node.children.forEach(function(child){
  2108. if(child.name === 'TOKEN' && child.value === 'external') {
  2109. isExternal = true;
  2110. return false;
  2111. }
  2112. });
  2113. if(!isExternal) {
  2114. pushSctx(node.pos);
  2115. this.visitChildren(node);
  2116. popSctx();
  2117. }
  2118. return true;
  2119. };
  2120. this.VarRef = function(node) {
  2121. this.visitChildren(node, Handlers.VarRefHandler(translator, sctx, node));
  2122. return true;
  2123. };
  2124. this.Param = function(node){
  2125. var typeDecl = get(node, ['TypeDeclaration'])[0];
  2126. if(!typeDecl){
  2127. addWarning('W05', 'Untyped function parameter', node.pos);
  2128. }
  2129. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2130. return true;
  2131. };
  2132. this.InlineFunctionExpr = function(node) {
  2133. pushSctx(node.pos);
  2134. this.visitChildren(node);
  2135. popSctx();
  2136. return true;
  2137. };
  2138. var statementCount = [];
  2139. var handleStatements = function(node) {
  2140. pushSctx(node.pos);
  2141. statementCount.push(0);
  2142. translator.visitChildren(node);
  2143. for (var i = 1; i <= statementCount[statementCount.length - 1]; i++) {
  2144. popSctx(node.pos);
  2145. }
  2146. statementCount.pop();
  2147. popSctx();
  2148. };
  2149. this.StatementsAndOptionalExpr = function (node) {
  2150. handleStatements(node);
  2151. return true;
  2152. };
  2153. this.StatementsAndExpr = function (node) {
  2154. handleStatements(node);
  2155. return true;
  2156. };
  2157. this.BlockStatement = function (node) {
  2158. handleStatements(node);
  2159. return true;
  2160. };
  2161. this.VarDeclStatement = function(node){
  2162. pushSctx(node.pos);
  2163. statementCount[statementCount.length - 1]++;
  2164. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2165. };
  2166. var clauses = [];
  2167. this.FLWORExpr = this.FLWORStatement = function (node) {
  2168. pushSctx(node.pos);
  2169. clauses.push(0);
  2170. this.visitChildren(node);
  2171. for(var i=1; i <= clauses[clauses.length - 1]; i++) {
  2172. popSctx(node.pos);
  2173. }
  2174. clauses.pop();
  2175. popSctx();
  2176. return true;
  2177. };
  2178. this.ForBinding = function (node) {
  2179. this.visitOnly(node, ['ExprSingle', 'VarValue', 'VarDefaultValue']);
  2180. pushSctx(node.pos);
  2181. clauses[clauses.length - 1]++;
  2182. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2183. return true;
  2184. };
  2185. this.LetBinding = function(node){
  2186. this.visitOnly(node, ['ExprSingle', 'VarValue', 'VarDefaultValue']);
  2187. pushSctx(node.pos);
  2188. clauses[clauses.length - 1]++;
  2189. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2190. return true;
  2191. };
  2192. this.GroupingSpec = function(node){
  2193. var isVarDecl = false;
  2194. node.children.forEach(function(child){
  2195. if(child.value === ':=') {
  2196. isVarDecl = true;
  2197. return false;
  2198. }
  2199. });
  2200. if(isVarDecl) {
  2201. var groupingVariable = node.children[0];
  2202. this.visitOnly(node, ['ExprSingle', 'VarValue', 'VarDefaultValue']);
  2203. pushSctx(node.pos);
  2204. clauses[clauses.length - 1]++;
  2205. this.visitChildren(groupingVariable, Handlers.VarHandler(translator, sctx, groupingVariable));
  2206. return true;
  2207. } else {
  2208. }
  2209. };
  2210. this.TumblingWindowClause = function (node) {
  2211. this.visitOnly(node, ['ExprSingle']);
  2212. pushSctx(node.pos);
  2213. clauses[clauses.length - 1]++;
  2214. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2215. this.visitOnly(node, ['WindowStartCondition', 'WindowEndCondition']);
  2216. return true;
  2217. };
  2218. this.WindowVars = function (node) {
  2219. pushSctx(node.pos);
  2220. clauses[clauses.length - 1]++;
  2221. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2222. return true;
  2223. };
  2224. this.SlidingWindowClause = function (node) {
  2225. this.visitOnly(node, ['ExprSingle', 'VarValue', 'VarDefaultValue']);
  2226. pushSctx(node.pos);
  2227. clauses[clauses.length - 1]++;
  2228. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2229. this.visitOnly(node, ['WindowStartCondition', 'WindowEndCondition']);
  2230. return true;
  2231. };
  2232. this.PositionalVar = function (node) {
  2233. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2234. return true;
  2235. };
  2236. this.PositionalVar = function (node) {
  2237. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2238. return true;
  2239. };
  2240. this.CurrentItem = function (node) {
  2241. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2242. return true;
  2243. };
  2244. this.PreviousItem = function (node) {
  2245. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2246. return true;
  2247. };
  2248. this.NextItem = function (node) {
  2249. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2250. return true;
  2251. };
  2252. this.CountClause = function (node) {
  2253. pushSctx(node.pos);
  2254. clauses[clauses.length - 1]++;
  2255. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2256. return true;
  2257. };
  2258. this.CaseClause = function(node) {
  2259. pushSctx(node.pos);
  2260. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2261. this.visitOnly(node, ['ExprSingle']);
  2262. popSctx();
  2263. return true;
  2264. };
  2265. var copies = [];
  2266. this.TransformExpr = function (node) {
  2267. pushSctx(node.pos);
  2268. copies.push(0);
  2269. this.visitChildren(node);
  2270. for(var i=1; i <= copies[copies.length - 1]; i++) {
  2271. popSctx(node.pos);
  2272. }
  2273. copies.pop();
  2274. popSctx();
  2275. return true;
  2276. };
  2277. this.TransformSpec = function(node) {
  2278. this.visitOnly(node, ['ExprSingle']);
  2279. pushSctx(node.pos);
  2280. copies[copies.length-1] += 1;
  2281. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2282. return true;
  2283. };
  2284. var quantifiedDecls = [];
  2285. this.QuantifiedExpr = function (node) {
  2286. pushSctx(node.pos);
  2287. quantifiedDecls.push(0);
  2288. this.visitChildren(node);
  2289. for(var i=1; i <= quantifiedDecls[quantifiedDecls.length - 1]; i++) {
  2290. popSctx(node.pos);
  2291. }
  2292. quantifiedDecls.pop();
  2293. popSctx();
  2294. return true;
  2295. };
  2296. this.QuantifiedVarDecl = function(node) {
  2297. this.visitOnly(node, ['ExprSingle']);
  2298. pushSctx(node.pos);
  2299. quantifiedDecls[quantifiedDecls.length - 1]++;
  2300. this.visitChildren(node, Handlers.VarHandler(translator, sctx, node));
  2301. return true;
  2302. };
  2303. this.FunctionCall = function(node){
  2304. this.visitOnly(node, ['ArgumentList']);
  2305. var name = translator.getFirstChild(node, 'EQName');
  2306. var eqname = TreeOps.flatten(name);
  2307. var arity = get(node, ['ArgumentList', 'Argument']).length;
  2308. translator.apply(function(){
  2309. var qname = sctx.resolveQName(eqname, node.pos);
  2310. try {
  2311. if(qname.uri !== '') {
  2312. sctx.root.namespaces[qname.uri].used = true;
  2313. }
  2314. } catch(e){
  2315. }
  2316. sctx.addFunctionCall(qname, arity, name.pos);
  2317. });
  2318. return true;
  2319. };
  2320. this.TryClause = function(node){
  2321. pushSctx(node.pos);
  2322. this.visitChildren(node);
  2323. popSctx();
  2324. return true;
  2325. };
  2326. this.CatchClause = function(node){
  2327. pushSctx(node.pos);
  2328. var prefix = 'err';
  2329. var uri = 'http://www.w3.org/2005/xqt-errors';
  2330. var emptyPos = { sl: 0, sc: 0, el: 0, ec: 0 };
  2331. sctx.addVariable({ prefix: prefix, uri: uri, name: 'code' }, 'CatchVar', emptyPos);
  2332. sctx.addVariable({ prefix: prefix, uri: uri, name: 'description' }, 'CatchVar', emptyPos);
  2333. sctx.addVariable({ prefix: prefix, uri: uri, name: 'value' }, 'CatchVar', emptyPos);
  2334. sctx.addVariable({ prefix: prefix, uri: uri, name: 'module' }, 'CatchVar', emptyPos);
  2335. sctx.addVariable({ prefix: prefix, uri: uri, name: 'line-number' }, 'CatchVar', emptyPos);
  2336. sctx.addVariable({ prefix: prefix, uri: uri, name: 'column-number' }, 'CatchVar', emptyPos);
  2337. sctx.addVariable({ prefix: prefix, uri: uri, name: 'additional' }, 'CatchVar', emptyPos);
  2338. this.visitChildren(node);
  2339. popSctx();
  2340. return true;
  2341. };
  2342. this.Pragma = function(node){
  2343. var qname = TreeOps.flatten(get(node, ['EQName'])[0]);
  2344. qname = rootStcx.resolveQName(qname, node);
  2345. var value = TreeOps.flatten(get(node, ['PragmaContents'])[0]);
  2346. if (qname.name === 'xqlint' && qname.uri === 'http://xqlint.io') {
  2347. pushSctx(node.pos);
  2348. var commands = value.match(/[a-zA-Z]+\(([^)]+)\)/g);
  2349. commands.forEach(function (command) {
  2350. var name = command.substring(0, command.indexOf('('));
  2351. var args = command.substring(0, command.length - 1).substring(command.indexOf('(') + 1).split(',').map(function (val) {
  2352. return val.trim();
  2353. });
  2354. if (name === 'varrefs') {
  2355. args.forEach(function (arg) {
  2356. var qname = sctx.resolveQName(arg.substring(1), node.pos);
  2357. if (qname.uri !== '') {
  2358. sctx.root.namespaces[qname.uri].used = true;
  2359. }
  2360. sctx.addVarRef(qname, node.pos);
  2361. });
  2362. }
  2363. });
  2364. this.visitChildren(node);
  2365. popSctx();
  2366. return true;
  2367. }
  2368. };
  2369. this.visit = function (node) {
  2370. var name = node.name;
  2371. var skip = false;
  2372. if (typeof this[name] === 'function') {
  2373. skip = this[name](node) === true;
  2374. }
  2375. if (!skip) {
  2376. this.visitChildren(node);
  2377. }
  2378. };
  2379. this.visitChildren = function (node, handler) {
  2380. for (var i = 0; i < node.children.length; i++) {
  2381. var child = node.children[i];
  2382. if (handler !== undefined && typeof handler[child.name] === 'function') {
  2383. handler[child.name](child);
  2384. } else {
  2385. this.visit(child);
  2386. }
  2387. }
  2388. };
  2389. this.visit(ast);
  2390. Object.keys(rootStcx.variables).forEach(function(key){
  2391. if(!rootStcx.varRefs[key] && (rootStcx.variables[key].annotations['http://www.w3.org/2005/xpath-functions#private'] || rootStcx.moduleNamespace === '') && rootStcx.variables[key].pos) {
  2392. addWarning('W03', 'Unused variable "' + rootStcx.variables[key].qname.name + '"', rootStcx.variables[key].pos);
  2393. }
  2394. });
  2395. Object.keys(rootStcx.namespaces).forEach(function(uri){
  2396. var namespace = rootStcx.namespaces[uri];
  2397. if(namespace.used === undefined && !namespace.override && namespace.type === 'module') {
  2398. addWarning('W04', 'Unused module "' + uri + '"', namespace.pos);
  2399. }
  2400. });
  2401. };
  2402. },{"../tree_ops":"/node_modules/xqlint/lib/tree_ops.js","./errors":"/node_modules/xqlint/lib/compiler/errors.js","./handlers":"/node_modules/xqlint/lib/compiler/handlers.js","./static_context":"/node_modules/xqlint/lib/compiler/static_context.js"}],"/node_modules/xqlint/lib/completion/completer.js":[function(_dereq_,module,exports){
  2403. 'use strict';
  2404. var TreeOps = _dereq_('../tree_ops').TreeOps;
  2405. var ID_REGEX = /[a-zA-Z_0-9\$]/;
  2406. function retrievePrecedingIdentifier(text, pos, regex) {
  2407. regex = regex || ID_REGEX;
  2408. var buf = [];
  2409. for (var i = pos-1; i >= 0; i--) {
  2410. if (regex.test(text[i])) {
  2411. buf.push(text[i]);
  2412. } else {
  2413. break;
  2414. }
  2415. }
  2416. return buf.reverse().join('');
  2417. }
  2418. function prefixBinarySearch(items, prefix) {
  2419. var startIndex = 0;
  2420. var stopIndex = items.length - 1;
  2421. var middle = Math.floor((stopIndex + startIndex) / 2);
  2422. while (stopIndex > startIndex && middle >= 0 && items[middle].indexOf(prefix) !== 0) {
  2423. if (prefix < items[middle]) {
  2424. stopIndex = middle - 1;
  2425. } else if (prefix > items[middle]) {
  2426. startIndex = middle + 1;
  2427. }
  2428. middle = Math.floor((stopIndex + startIndex) / 2);
  2429. }
  2430. while (middle > 0 && items[middle-1].indexOf(prefix) === 0) {
  2431. middle--;
  2432. }
  2433. return middle >= 0 ? middle : 0; // ensure we're not returning a negative index
  2434. }
  2435. var uriRegex = /[a-zA-Z_0-9\/\.:\-#]/;
  2436. var char = '-._A-Za-z0-9:\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02ff\u0300-\u037D\u037F-\u1FFF\u200C\u200D\u203f\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD';
  2437. var nameChar = '[' + char + ']';
  2438. var varChar = '[' + char + '\\$]';
  2439. var nameCharRegExp = new RegExp(nameChar);
  2440. var varCharRegExp = new RegExp(varChar);
  2441. var varDeclLabels = {
  2442. 'LetBinding': 'Let binding',
  2443. 'Param': 'Function parameter',
  2444. 'QuantifiedExpr': 'Quantified expression binding',
  2445. 'VarDeclStatement': 'Local variable',
  2446. 'ForBinding': 'For binding',
  2447. 'TumblingWindowClause': 'Tumbling window binding',
  2448. 'WindowVars': 'Window variable',
  2449. 'SlidingWindowClause': 'Sliding window binding',
  2450. 'PositionalVar': 'Positional variable',
  2451. 'CurrentItem': 'Current item',
  2452. 'PreviousItem': 'Previous item',
  2453. 'NextItem': 'Next item',
  2454. 'CountClause': 'Count binding',
  2455. 'GroupingVariable': 'Grouping variable',
  2456. 'VarDecl': 'Module variable'
  2457. };
  2458. var findCompletions = function(prefix, allIdentifiers) {
  2459. allIdentifiers.sort();
  2460. var startIdx = prefixBinarySearch(allIdentifiers, prefix);
  2461. var matches = [];
  2462. for (var i = startIdx; i < allIdentifiers.length && allIdentifiers[i].indexOf(prefix) === 0; i++) {
  2463. matches.push(allIdentifiers[i]);
  2464. }
  2465. return matches;
  2466. };
  2467. var completePrefix = function(identifier, pos, sctx){
  2468. var idx = identifier.indexOf(':');
  2469. if(idx === -1) {
  2470. var prefixes = [];
  2471. var namespaces = sctx.getNamespaces();
  2472. Object.keys(namespaces).forEach(function(key){
  2473. if(namespaces[key].type === 'module' || key === 'http://www.w3.org/2005/xquery-local-functions') {
  2474. prefixes.push(namespaces[key].prefixes[0]);
  2475. }
  2476. });
  2477. var matches = findCompletions(identifier, prefixes);
  2478. var match = function(name) {
  2479. return {
  2480. name: name + ':',
  2481. value: name + ':',
  2482. meta: 'prefix'
  2483. };
  2484. };
  2485. return matches.map(match);
  2486. } else {
  2487. return [];
  2488. }
  2489. };
  2490. var completeFunction = function(identifier, pos, sctx){
  2491. var names = [];
  2492. var snippets = {};
  2493. var functions = sctx.getFunctions();
  2494. var uri = '';
  2495. var prefix = '';
  2496. var name = identifier;
  2497. var idx = identifier.indexOf(':');
  2498. var defaultNamespace = false;
  2499. if(idx !== -1){
  2500. prefix = identifier.substring(0, idx);
  2501. name = identifier.substring(idx + 1);
  2502. var ns = sctx.getNamespaceByPrefix(prefix);
  2503. if(ns){
  2504. uri = sctx.getNamespaceByPrefix(prefix).uri;
  2505. }
  2506. } else {
  2507. defaultNamespace = true;
  2508. uri = sctx.root.defaultFunctionNamespace;
  2509. }
  2510. Object.keys(functions).forEach(function(key){
  2511. var fn = functions[key];
  2512. var ns = key.substring(0, key.indexOf('#'));
  2513. var name = key.substring(key.indexOf('#') + 1);
  2514. name = name.substring(0, name.indexOf('#'));
  2515. if(ns !== uri) {
  2516. return;
  2517. }
  2518. if(!defaultNamespace){
  2519. name = sctx.getNamespaces()[ns].prefixes[0] + ':' + name;
  2520. }
  2521. name += '(';
  2522. var snippet = name;
  2523. snippet += fn.params.map(function(param, index){
  2524. return '${' + (index + 1) + ':\\' + param.split(' ')[0] + '}';
  2525. }).join(', ');
  2526. name += fn.params.join(', ');
  2527. name += ')';
  2528. snippet += ')';
  2529. names.push(name);
  2530. snippets[name] = snippet;
  2531. });
  2532. var matches = findCompletions(identifier, names);
  2533. var match = function(name) {
  2534. return {
  2535. name: name,
  2536. value: name,
  2537. meta: 'function',
  2538. priority: 4,
  2539. identifierRegex: nameCharRegExp,
  2540. snippet: snippets[name]
  2541. };
  2542. };
  2543. return matches.map(match);
  2544. };
  2545. var completeVariable = function(identifier, pos, sctx){
  2546. var uri = '';
  2547. var prefix = '';
  2548. var idx = identifier.indexOf(':');
  2549. if(idx !== -1){
  2550. prefix = identifier.substring(0, idx);
  2551. uri = sctx.getNamespaceByPrefix(prefix).uri;
  2552. }
  2553. var decls = sctx.getVariables();
  2554. var names = [];
  2555. var types = {};
  2556. Object.keys(decls).forEach(function(key){
  2557. var i = key.indexOf('#');
  2558. var ns = key.substring(0, i);
  2559. var name = key.substring(i+1);
  2560. if(ns !== ''){
  2561. names.push(sctx.getPrefixesByNamespace(ns)[0] + ':' + name);
  2562. types[sctx.getPrefixesByNamespace(ns)[0] + ':' + name] = decls[key].type;
  2563. } else {
  2564. names.push(name);
  2565. types[name] = decls[key].type;
  2566. }
  2567. });
  2568. var matches = findCompletions(identifier, names);
  2569. var match = function(name) {
  2570. return {
  2571. name: '$' + name,
  2572. value: '$' + name,
  2573. meta: varDeclLabels[types[name]],
  2574. priority: 4,
  2575. identifierRegex: varCharRegExp
  2576. };
  2577. };
  2578. return matches.map(match);
  2579. };
  2580. var completeExpr = function(line, pos, sctx){
  2581. var identifier = retrievePrecedingIdentifier(line, pos.col, nameCharRegExp);
  2582. var before = line.substring(0, pos.col - (identifier.length === 0 ? 0 : identifier.length));
  2583. var isVar = before[before.length - 1] === '$';
  2584. if(isVar) {
  2585. return completeVariable(identifier, pos, sctx);
  2586. } else if(identifier !== '') {
  2587. return completeFunction(identifier, pos, sctx).concat(completePrefix(identifier, pos, sctx));
  2588. } else {
  2589. return completeVariable(identifier, pos, sctx).concat(completeFunction(identifier, pos, sctx)).concat(completePrefix(identifier, pos, sctx));
  2590. }
  2591. };
  2592. var completeModuleUri = function(line, pos, sctx){
  2593. var identifier = retrievePrecedingIdentifier(line, pos.col, uriRegex);
  2594. var matches = findCompletions(identifier, sctx.getAvailableModuleNamespaces());
  2595. var match = function(uri) {
  2596. return {
  2597. name: uri,
  2598. value: uri,
  2599. meta: 'module',
  2600. priority: 4,
  2601. identifierRegex: uriRegex
  2602. };
  2603. };
  2604. return matches.map(match);
  2605. };
  2606. exports.complete = function(source, ast, rootSctx, pos){
  2607. var line = source.split('\n')[pos.line];
  2608. var node = TreeOps.findNode(ast, pos);
  2609. var sctx = TreeOps.findNode(rootSctx, pos);
  2610. sctx = sctx ? sctx : rootSctx;
  2611. if(node && node.name === 'URILiteral' && node.getParent && node.getParent.name === 'ModuleImport'){
  2612. return completeModuleUri(line, pos, sctx);
  2613. } else {
  2614. return completeExpr(line, pos, sctx);
  2615. }
  2616. };
  2617. },{"../tree_ops":"/node_modules/xqlint/lib/tree_ops.js"}],"/node_modules/xqlint/lib/formatter/style_checker.js":[function(_dereq_,module,exports){
  2618. exports.StyleChecker = function (ast, source) {
  2619. 'use strict';
  2620. var tab = ' ';
  2621. var markers = [];
  2622. this.getMarkers = function(){
  2623. return markers;
  2624. };
  2625. this.WS = function(node) {
  2626. var lines = node.value.split('\n');
  2627. lines.forEach(function(line, index){
  2628. var isFirst = index === 0;
  2629. var isLast = index === (lines.length - 1);
  2630. if(/\r$/.test(line)) {
  2631. markers.push({
  2632. pos: {
  2633. sl: node.pos.sl + index,
  2634. el: node.pos.sl + index,
  2635. sc: line.length - 1,
  2636. ec: line.length
  2637. },
  2638. type: 'warning',
  2639. level: 'warning',
  2640. message: '[SW01] Detected CRLF'
  2641. });
  2642. }
  2643. var match = line.match(/\t+/);
  2644. if(match !== null){
  2645. markers.push({
  2646. pos: {
  2647. sl: node.pos.sl + index,
  2648. el: node.pos.sl + index,
  2649. sc: match.index,
  2650. ec: match.index + match[0].length
  2651. },
  2652. type: 'warning',
  2653. level: 'warning',
  2654. message: '[SW02] Tabs detected'
  2655. });
  2656. }
  2657. if((!isFirst) && isLast){
  2658. match = line.match(/^\ +/);
  2659. if(match !== null) {
  2660. var mod = match[0].length % tab.length;
  2661. if(mod !== 0) {
  2662. markers.push({
  2663. pos: {
  2664. sl: node.pos.sl + index,
  2665. el: node.pos.sl + index,
  2666. sc: match.index,
  2667. ec: match.index + match[0].length
  2668. },
  2669. type: 'warning',
  2670. level: 'warning',
  2671. message: '[SW03] Unexcepted indentation of ' + match[0].length
  2672. });
  2673. }
  2674. }
  2675. }
  2676. });
  2677. return true;
  2678. };
  2679. this.visit = function (node, index) {
  2680. var name = node.name;
  2681. var skip = false;
  2682. if (typeof this[name] === 'function') {
  2683. skip = this[name](node, index) === true;
  2684. }
  2685. if (!skip) {
  2686. this.visitChildren(node);
  2687. }
  2688. };
  2689. this.visitChildren = function (node, handler) {
  2690. for (var i = 0; i < node.children.length; i++) {
  2691. var child = node.children[i];
  2692. if (handler !== undefined && typeof handler[child.name] === 'function') {
  2693. handler[child.name](child);
  2694. } else {
  2695. this.visit(child);
  2696. }
  2697. }
  2698. };
  2699. source.split('\n').forEach(function(line, index){
  2700. var match = line.match(/\ +$/);
  2701. if(match){
  2702. markers.push({
  2703. pos: {
  2704. sl: index,
  2705. el: index,
  2706. sc: match.index,
  2707. ec: match.index + match[0].length
  2708. },
  2709. type: 'warning',
  2710. level: 'warning',
  2711. message: '[SW04] Trailing whitespace'
  2712. });
  2713. }
  2714. });
  2715. this.visit(ast);
  2716. };
  2717. },{}],"/node_modules/xqlint/lib/lexers/JSONiqTokenizer.js":[function(_dereq_,module,exports){
  2718. var JSONiqTokenizer = exports.JSONiqTokenizer = function JSONiqTokenizer(string, parsingEventHandler)
  2719. {
  2720. init(string, parsingEventHandler);
  2721. var self = this;
  2722. this.ParseException = function(b, e, s, o, x)
  2723. {
  2724. var
  2725. begin = b,
  2726. end = e,
  2727. state = s,
  2728. offending = o,
  2729. expected = x;
  2730. this.getBegin = function() {return begin;};
  2731. this.getEnd = function() {return end;};
  2732. this.getState = function() {return state;};
  2733. this.getExpected = function() {return expected;};
  2734. this.getOffending = function() {return offending;};
  2735. this.getMessage = function()
  2736. {
  2737. return offending < 0 ? "lexical analysis failed" : "syntax error";
  2738. };
  2739. };
  2740. function init(string, parsingEventHandler)
  2741. {
  2742. eventHandler = parsingEventHandler;
  2743. input = string;
  2744. size = string.length;
  2745. reset(0, 0, 0);
  2746. }
  2747. this.getInput = function()
  2748. {
  2749. return input;
  2750. };
  2751. function reset(l, b, e)
  2752. {
  2753. b0 = b; e0 = b;
  2754. l1 = l; b1 = b; e1 = e;
  2755. end = e;
  2756. eventHandler.reset(input);
  2757. }
  2758. this.getOffendingToken = function(e)
  2759. {
  2760. var o = e.getOffending();
  2761. return o >= 0 ? JSONiqTokenizer.TOKEN[o] : null;
  2762. };
  2763. this.getExpectedTokenSet = function(e)
  2764. {
  2765. var expected;
  2766. if (e.getExpected() < 0)
  2767. {
  2768. expected = JSONiqTokenizer.getTokenSet(- e.getState());
  2769. }
  2770. else
  2771. {
  2772. expected = [JSONiqTokenizer.TOKEN[e.getExpected()]];
  2773. }
  2774. return expected;
  2775. };
  2776. this.getErrorMessage = function(e)
  2777. {
  2778. var tokenSet = this.getExpectedTokenSet(e);
  2779. var found = this.getOffendingToken(e);
  2780. var prefix = input.substring(0, e.getBegin());
  2781. var lines = prefix.split("\n");
  2782. var line = lines.length;
  2783. var column = lines[line - 1].length + 1;
  2784. var size = e.getEnd() - e.getBegin();
  2785. return e.getMessage()
  2786. + (found == null ? "" : ", found " + found)
  2787. + "\nwhile expecting "
  2788. + (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
  2789. + "\n"
  2790. + (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
  2791. + "at line " + line + ", column " + column + ":\n..."
  2792. + input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
  2793. + "...";
  2794. };
  2795. this.parse_start = function()
  2796. {
  2797. eventHandler.startNonterminal("start", e0);
  2798. lookahead1W(14); // ModuleDecl | Annotation | OptionDecl | Operator | Variable | Tag | AttrTest |
  2799. switch (l1)
  2800. {
  2801. case 58: // '<![CDATA['
  2802. shift(58); // '<![CDATA['
  2803. break;
  2804. case 57: // '<!--'
  2805. shift(57); // '<!--'
  2806. break;
  2807. case 59: // '<?'
  2808. shift(59); // '<?'
  2809. break;
  2810. case 43: // '(#'
  2811. shift(43); // '(#'
  2812. break;
  2813. case 45: // '(:~'
  2814. shift(45); // '(:~'
  2815. break;
  2816. case 44: // '(:'
  2817. shift(44); // '(:'
  2818. break;
  2819. case 37: // '"'
  2820. shift(37); // '"'
  2821. break;
  2822. case 41: // "'"
  2823. shift(41); // "'"
  2824. break;
  2825. case 277: // '}'
  2826. shift(277); // '}'
  2827. break;
  2828. case 274: // '{'
  2829. shift(274); // '{'
  2830. break;
  2831. case 42: // '('
  2832. shift(42); // '('
  2833. break;
  2834. case 46: // ')'
  2835. shift(46); // ')'
  2836. break;
  2837. case 52: // '/'
  2838. shift(52); // '/'
  2839. break;
  2840. case 65: // '['
  2841. shift(65); // '['
  2842. break;
  2843. case 66: // ']'
  2844. shift(66); // ']'
  2845. break;
  2846. case 49: // ','
  2847. shift(49); // ','
  2848. break;
  2849. case 51: // '.'
  2850. shift(51); // '.'
  2851. break;
  2852. case 56: // ';'
  2853. shift(56); // ';'
  2854. break;
  2855. case 54: // ':'
  2856. shift(54); // ':'
  2857. break;
  2858. case 36: // '!'
  2859. shift(36); // '!'
  2860. break;
  2861. case 276: // '|'
  2862. shift(276); // '|'
  2863. break;
  2864. case 40: // '$$'
  2865. shift(40); // '$$'
  2866. break;
  2867. case 5: // Annotation
  2868. shift(5); // Annotation
  2869. break;
  2870. case 4: // ModuleDecl
  2871. shift(4); // ModuleDecl
  2872. break;
  2873. case 6: // OptionDecl
  2874. shift(6); // OptionDecl
  2875. break;
  2876. case 15: // AttrTest
  2877. shift(15); // AttrTest
  2878. break;
  2879. case 16: // Wildcard
  2880. shift(16); // Wildcard
  2881. break;
  2882. case 18: // IntegerLiteral
  2883. shift(18); // IntegerLiteral
  2884. break;
  2885. case 19: // DecimalLiteral
  2886. shift(19); // DecimalLiteral
  2887. break;
  2888. case 20: // DoubleLiteral
  2889. shift(20); // DoubleLiteral
  2890. break;
  2891. case 8: // Variable
  2892. shift(8); // Variable
  2893. break;
  2894. case 9: // Tag
  2895. shift(9); // Tag
  2896. break;
  2897. case 7: // Operator
  2898. shift(7); // Operator
  2899. break;
  2900. case 35: // EOF
  2901. shift(35); // EOF
  2902. break;
  2903. default:
  2904. parse_EQName();
  2905. }
  2906. eventHandler.endNonterminal("start", e0);
  2907. };
  2908. this.parse_StartTag = function()
  2909. {
  2910. eventHandler.startNonterminal("StartTag", e0);
  2911. lookahead1W(8); // QName | S^WS | EOF | '"' | "'" | '/>' | '=' | '>'
  2912. switch (l1)
  2913. {
  2914. case 61: // '>'
  2915. shift(61); // '>'
  2916. break;
  2917. case 53: // '/>'
  2918. shift(53); // '/>'
  2919. break;
  2920. case 29: // QName
  2921. shift(29); // QName
  2922. break;
  2923. case 60: // '='
  2924. shift(60); // '='
  2925. break;
  2926. case 37: // '"'
  2927. shift(37); // '"'
  2928. break;
  2929. case 41: // "'"
  2930. shift(41); // "'"
  2931. break;
  2932. default:
  2933. shift(35); // EOF
  2934. }
  2935. eventHandler.endNonterminal("StartTag", e0);
  2936. };
  2937. this.parse_TagContent = function()
  2938. {
  2939. eventHandler.startNonterminal("TagContent", e0);
  2940. lookahead1(11); // Tag | EndTag | PredefinedEntityRef | ElementContentChar | CharRef | EOF |
  2941. switch (l1)
  2942. {
  2943. case 25: // ElementContentChar
  2944. shift(25); // ElementContentChar
  2945. break;
  2946. case 9: // Tag
  2947. shift(9); // Tag
  2948. break;
  2949. case 10: // EndTag
  2950. shift(10); // EndTag
  2951. break;
  2952. case 58: // '<![CDATA['
  2953. shift(58); // '<![CDATA['
  2954. break;
  2955. case 57: // '<!--'
  2956. shift(57); // '<!--'
  2957. break;
  2958. case 21: // PredefinedEntityRef
  2959. shift(21); // PredefinedEntityRef
  2960. break;
  2961. case 31: // CharRef
  2962. shift(31); // CharRef
  2963. break;
  2964. case 275: // '{{'
  2965. shift(275); // '{{'
  2966. break;
  2967. case 278: // '}}'
  2968. shift(278); // '}}'
  2969. break;
  2970. case 274: // '{'
  2971. shift(274); // '{'
  2972. break;
  2973. default:
  2974. shift(35); // EOF
  2975. }
  2976. eventHandler.endNonterminal("TagContent", e0);
  2977. };
  2978. this.parse_AposAttr = function()
  2979. {
  2980. eventHandler.startNonterminal("AposAttr", e0);
  2981. lookahead1(10); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | EOF | "'" |
  2982. switch (l1)
  2983. {
  2984. case 23: // EscapeApos
  2985. shift(23); // EscapeApos
  2986. break;
  2987. case 27: // AposAttrContentChar
  2988. shift(27); // AposAttrContentChar
  2989. break;
  2990. case 21: // PredefinedEntityRef
  2991. shift(21); // PredefinedEntityRef
  2992. break;
  2993. case 31: // CharRef
  2994. shift(31); // CharRef
  2995. break;
  2996. case 275: // '{{'
  2997. shift(275); // '{{'
  2998. break;
  2999. case 278: // '}}'
  3000. shift(278); // '}}'
  3001. break;
  3002. case 274: // '{'
  3003. shift(274); // '{'
  3004. break;
  3005. case 41: // "'"
  3006. shift(41); // "'"
  3007. break;
  3008. default:
  3009. shift(35); // EOF
  3010. }
  3011. eventHandler.endNonterminal("AposAttr", e0);
  3012. };
  3013. this.parse_QuotAttr = function()
  3014. {
  3015. eventHandler.startNonterminal("QuotAttr", e0);
  3016. lookahead1(9); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | EOF | '"' |
  3017. switch (l1)
  3018. {
  3019. case 22: // EscapeQuot
  3020. shift(22); // EscapeQuot
  3021. break;
  3022. case 26: // QuotAttrContentChar
  3023. shift(26); // QuotAttrContentChar
  3024. break;
  3025. case 21: // PredefinedEntityRef
  3026. shift(21); // PredefinedEntityRef
  3027. break;
  3028. case 31: // CharRef
  3029. shift(31); // CharRef
  3030. break;
  3031. case 275: // '{{'
  3032. shift(275); // '{{'
  3033. break;
  3034. case 278: // '}}'
  3035. shift(278); // '}}'
  3036. break;
  3037. case 274: // '{'
  3038. shift(274); // '{'
  3039. break;
  3040. case 37: // '"'
  3041. shift(37); // '"'
  3042. break;
  3043. default:
  3044. shift(35); // EOF
  3045. }
  3046. eventHandler.endNonterminal("QuotAttr", e0);
  3047. };
  3048. this.parse_CData = function()
  3049. {
  3050. eventHandler.startNonterminal("CData", e0);
  3051. lookahead1(1); // CDataSectionContents | EOF | ']]>'
  3052. switch (l1)
  3053. {
  3054. case 14: // CDataSectionContents
  3055. shift(14); // CDataSectionContents
  3056. break;
  3057. case 67: // ']]>'
  3058. shift(67); // ']]>'
  3059. break;
  3060. default:
  3061. shift(35); // EOF
  3062. }
  3063. eventHandler.endNonterminal("CData", e0);
  3064. };
  3065. this.parse_XMLComment = function()
  3066. {
  3067. eventHandler.startNonterminal("XMLComment", e0);
  3068. lookahead1(0); // DirCommentContents | EOF | '-->'
  3069. switch (l1)
  3070. {
  3071. case 12: // DirCommentContents
  3072. shift(12); // DirCommentContents
  3073. break;
  3074. case 50: // '-->'
  3075. shift(50); // '-->'
  3076. break;
  3077. default:
  3078. shift(35); // EOF
  3079. }
  3080. eventHandler.endNonterminal("XMLComment", e0);
  3081. };
  3082. this.parse_PI = function()
  3083. {
  3084. eventHandler.startNonterminal("PI", e0);
  3085. lookahead1(3); // DirPIContents | EOF | '?' | '?>'
  3086. switch (l1)
  3087. {
  3088. case 13: // DirPIContents
  3089. shift(13); // DirPIContents
  3090. break;
  3091. case 62: // '?'
  3092. shift(62); // '?'
  3093. break;
  3094. case 63: // '?>'
  3095. shift(63); // '?>'
  3096. break;
  3097. default:
  3098. shift(35); // EOF
  3099. }
  3100. eventHandler.endNonterminal("PI", e0);
  3101. };
  3102. this.parse_Pragma = function()
  3103. {
  3104. eventHandler.startNonterminal("Pragma", e0);
  3105. lookahead1(2); // PragmaContents | EOF | '#' | '#)'
  3106. switch (l1)
  3107. {
  3108. case 11: // PragmaContents
  3109. shift(11); // PragmaContents
  3110. break;
  3111. case 38: // '#'
  3112. shift(38); // '#'
  3113. break;
  3114. case 39: // '#)'
  3115. shift(39); // '#)'
  3116. break;
  3117. default:
  3118. shift(35); // EOF
  3119. }
  3120. eventHandler.endNonterminal("Pragma", e0);
  3121. };
  3122. this.parse_Comment = function()
  3123. {
  3124. eventHandler.startNonterminal("Comment", e0);
  3125. lookahead1(4); // CommentContents | EOF | '(:' | ':)'
  3126. switch (l1)
  3127. {
  3128. case 55: // ':)'
  3129. shift(55); // ':)'
  3130. break;
  3131. case 44: // '(:'
  3132. shift(44); // '(:'
  3133. break;
  3134. case 32: // CommentContents
  3135. shift(32); // CommentContents
  3136. break;
  3137. default:
  3138. shift(35); // EOF
  3139. }
  3140. eventHandler.endNonterminal("Comment", e0);
  3141. };
  3142. this.parse_CommentDoc = function()
  3143. {
  3144. eventHandler.startNonterminal("CommentDoc", e0);
  3145. lookahead1(6); // DocTag | DocCommentContents | EOF | '(:' | ':)'
  3146. switch (l1)
  3147. {
  3148. case 33: // DocTag
  3149. shift(33); // DocTag
  3150. break;
  3151. case 34: // DocCommentContents
  3152. shift(34); // DocCommentContents
  3153. break;
  3154. case 55: // ':)'
  3155. shift(55); // ':)'
  3156. break;
  3157. case 44: // '(:'
  3158. shift(44); // '(:'
  3159. break;
  3160. default:
  3161. shift(35); // EOF
  3162. }
  3163. eventHandler.endNonterminal("CommentDoc", e0);
  3164. };
  3165. this.parse_QuotString = function()
  3166. {
  3167. eventHandler.startNonterminal("QuotString", e0);
  3168. lookahead1(5); // JSONChar | JSONCharRef | JSONPredefinedCharRef | EOF | '"'
  3169. switch (l1)
  3170. {
  3171. case 3: // JSONPredefinedCharRef
  3172. shift(3); // JSONPredefinedCharRef
  3173. break;
  3174. case 2: // JSONCharRef
  3175. shift(2); // JSONCharRef
  3176. break;
  3177. case 1: // JSONChar
  3178. shift(1); // JSONChar
  3179. break;
  3180. case 37: // '"'
  3181. shift(37); // '"'
  3182. break;
  3183. default:
  3184. shift(35); // EOF
  3185. }
  3186. eventHandler.endNonterminal("QuotString", e0);
  3187. };
  3188. this.parse_AposString = function()
  3189. {
  3190. eventHandler.startNonterminal("AposString", e0);
  3191. lookahead1(7); // PredefinedEntityRef | EscapeApos | AposChar | CharRef | EOF | "'"
  3192. switch (l1)
  3193. {
  3194. case 21: // PredefinedEntityRef
  3195. shift(21); // PredefinedEntityRef
  3196. break;
  3197. case 31: // CharRef
  3198. shift(31); // CharRef
  3199. break;
  3200. case 23: // EscapeApos
  3201. shift(23); // EscapeApos
  3202. break;
  3203. case 24: // AposChar
  3204. shift(24); // AposChar
  3205. break;
  3206. case 41: // "'"
  3207. shift(41); // "'"
  3208. break;
  3209. default:
  3210. shift(35); // EOF
  3211. }
  3212. eventHandler.endNonterminal("AposString", e0);
  3213. };
  3214. this.parse_Prefix = function()
  3215. {
  3216. eventHandler.startNonterminal("Prefix", e0);
  3217. lookahead1W(13); // NCName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  3218. whitespace();
  3219. parse_NCName();
  3220. eventHandler.endNonterminal("Prefix", e0);
  3221. };
  3222. this.parse__EQName = function()
  3223. {
  3224. eventHandler.startNonterminal("_EQName", e0);
  3225. lookahead1W(12); // EQName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  3226. whitespace();
  3227. parse_EQName();
  3228. eventHandler.endNonterminal("_EQName", e0);
  3229. };
  3230. function parse_EQName()
  3231. {
  3232. eventHandler.startNonterminal("EQName", e0);
  3233. switch (l1)
  3234. {
  3235. case 80: // 'attribute'
  3236. shift(80); // 'attribute'
  3237. break;
  3238. case 94: // 'comment'
  3239. shift(94); // 'comment'
  3240. break;
  3241. case 118: // 'document-node'
  3242. shift(118); // 'document-node'
  3243. break;
  3244. case 119: // 'element'
  3245. shift(119); // 'element'
  3246. break;
  3247. case 122: // 'empty-sequence'
  3248. shift(122); // 'empty-sequence'
  3249. break;
  3250. case 143: // 'function'
  3251. shift(143); // 'function'
  3252. break;
  3253. case 150: // 'if'
  3254. shift(150); // 'if'
  3255. break;
  3256. case 163: // 'item'
  3257. shift(163); // 'item'
  3258. break;
  3259. case 183: // 'namespace-node'
  3260. shift(183); // 'namespace-node'
  3261. break;
  3262. case 189: // 'node'
  3263. shift(189); // 'node'
  3264. break;
  3265. case 214: // 'processing-instruction'
  3266. shift(214); // 'processing-instruction'
  3267. break;
  3268. case 224: // 'schema-attribute'
  3269. shift(224); // 'schema-attribute'
  3270. break;
  3271. case 225: // 'schema-element'
  3272. shift(225); // 'schema-element'
  3273. break;
  3274. case 241: // 'switch'
  3275. shift(241); // 'switch'
  3276. break;
  3277. case 242: // 'text'
  3278. shift(242); // 'text'
  3279. break;
  3280. case 251: // 'typeswitch'
  3281. shift(251); // 'typeswitch'
  3282. break;
  3283. default:
  3284. parse_FunctionName();
  3285. }
  3286. eventHandler.endNonterminal("EQName", e0);
  3287. }
  3288. function parse_FunctionName()
  3289. {
  3290. eventHandler.startNonterminal("FunctionName", e0);
  3291. switch (l1)
  3292. {
  3293. case 17: // EQName^Token
  3294. shift(17); // EQName^Token
  3295. break;
  3296. case 68: // 'after'
  3297. shift(68); // 'after'
  3298. break;
  3299. case 71: // 'ancestor'
  3300. shift(71); // 'ancestor'
  3301. break;
  3302. case 72: // 'ancestor-or-self'
  3303. shift(72); // 'ancestor-or-self'
  3304. break;
  3305. case 73: // 'and'
  3306. shift(73); // 'and'
  3307. break;
  3308. case 77: // 'as'
  3309. shift(77); // 'as'
  3310. break;
  3311. case 78: // 'ascending'
  3312. shift(78); // 'ascending'
  3313. break;
  3314. case 82: // 'before'
  3315. shift(82); // 'before'
  3316. break;
  3317. case 86: // 'case'
  3318. shift(86); // 'case'
  3319. break;
  3320. case 87: // 'cast'
  3321. shift(87); // 'cast'
  3322. break;
  3323. case 88: // 'castable'
  3324. shift(88); // 'castable'
  3325. break;
  3326. case 91: // 'child'
  3327. shift(91); // 'child'
  3328. break;
  3329. case 92: // 'collation'
  3330. shift(92); // 'collation'
  3331. break;
  3332. case 101: // 'copy'
  3333. shift(101); // 'copy'
  3334. break;
  3335. case 103: // 'count'
  3336. shift(103); // 'count'
  3337. break;
  3338. case 106: // 'declare'
  3339. shift(106); // 'declare'
  3340. break;
  3341. case 107: // 'default'
  3342. shift(107); // 'default'
  3343. break;
  3344. case 108: // 'delete'
  3345. shift(108); // 'delete'
  3346. break;
  3347. case 109: // 'descendant'
  3348. shift(109); // 'descendant'
  3349. break;
  3350. case 110: // 'descendant-or-self'
  3351. shift(110); // 'descendant-or-self'
  3352. break;
  3353. case 111: // 'descending'
  3354. shift(111); // 'descending'
  3355. break;
  3356. case 116: // 'div'
  3357. shift(116); // 'div'
  3358. break;
  3359. case 117: // 'document'
  3360. shift(117); // 'document'
  3361. break;
  3362. case 120: // 'else'
  3363. shift(120); // 'else'
  3364. break;
  3365. case 121: // 'empty'
  3366. shift(121); // 'empty'
  3367. break;
  3368. case 124: // 'end'
  3369. shift(124); // 'end'
  3370. break;
  3371. case 126: // 'eq'
  3372. shift(126); // 'eq'
  3373. break;
  3374. case 127: // 'every'
  3375. shift(127); // 'every'
  3376. break;
  3377. case 129: // 'except'
  3378. shift(129); // 'except'
  3379. break;
  3380. case 132: // 'first'
  3381. shift(132); // 'first'
  3382. break;
  3383. case 133: // 'following'
  3384. shift(133); // 'following'
  3385. break;
  3386. case 134: // 'following-sibling'
  3387. shift(134); // 'following-sibling'
  3388. break;
  3389. case 135: // 'for'
  3390. shift(135); // 'for'
  3391. break;
  3392. case 144: // 'ge'
  3393. shift(144); // 'ge'
  3394. break;
  3395. case 146: // 'group'
  3396. shift(146); // 'group'
  3397. break;
  3398. case 148: // 'gt'
  3399. shift(148); // 'gt'
  3400. break;
  3401. case 149: // 'idiv'
  3402. shift(149); // 'idiv'
  3403. break;
  3404. case 151: // 'import'
  3405. shift(151); // 'import'
  3406. break;
  3407. case 157: // 'insert'
  3408. shift(157); // 'insert'
  3409. break;
  3410. case 158: // 'instance'
  3411. shift(158); // 'instance'
  3412. break;
  3413. case 160: // 'intersect'
  3414. shift(160); // 'intersect'
  3415. break;
  3416. case 161: // 'into'
  3417. shift(161); // 'into'
  3418. break;
  3419. case 162: // 'is'
  3420. shift(162); // 'is'
  3421. break;
  3422. case 168: // 'last'
  3423. shift(168); // 'last'
  3424. break;
  3425. case 170: // 'le'
  3426. shift(170); // 'le'
  3427. break;
  3428. case 172: // 'let'
  3429. shift(172); // 'let'
  3430. break;
  3431. case 176: // 'lt'
  3432. shift(176); // 'lt'
  3433. break;
  3434. case 178: // 'mod'
  3435. shift(178); // 'mod'
  3436. break;
  3437. case 179: // 'modify'
  3438. shift(179); // 'modify'
  3439. break;
  3440. case 180: // 'module'
  3441. shift(180); // 'module'
  3442. break;
  3443. case 182: // 'namespace'
  3444. shift(182); // 'namespace'
  3445. break;
  3446. case 184: // 'ne'
  3447. shift(184); // 'ne'
  3448. break;
  3449. case 196: // 'only'
  3450. shift(196); // 'only'
  3451. break;
  3452. case 198: // 'or'
  3453. shift(198); // 'or'
  3454. break;
  3455. case 199: // 'order'
  3456. shift(199); // 'order'
  3457. break;
  3458. case 200: // 'ordered'
  3459. shift(200); // 'ordered'
  3460. break;
  3461. case 204: // 'parent'
  3462. shift(204); // 'parent'
  3463. break;
  3464. case 210: // 'preceding'
  3465. shift(210); // 'preceding'
  3466. break;
  3467. case 211: // 'preceding-sibling'
  3468. shift(211); // 'preceding-sibling'
  3469. break;
  3470. case 216: // 'rename'
  3471. shift(216); // 'rename'
  3472. break;
  3473. case 217: // 'replace'
  3474. shift(217); // 'replace'
  3475. break;
  3476. case 218: // 'return'
  3477. shift(218); // 'return'
  3478. break;
  3479. case 222: // 'satisfies'
  3480. shift(222); // 'satisfies'
  3481. break;
  3482. case 227: // 'self'
  3483. shift(227); // 'self'
  3484. break;
  3485. case 233: // 'some'
  3486. shift(233); // 'some'
  3487. break;
  3488. case 234: // 'stable'
  3489. shift(234); // 'stable'
  3490. break;
  3491. case 235: // 'start'
  3492. shift(235); // 'start'
  3493. break;
  3494. case 246: // 'to'
  3495. shift(246); // 'to'
  3496. break;
  3497. case 247: // 'treat'
  3498. shift(247); // 'treat'
  3499. break;
  3500. case 248: // 'try'
  3501. shift(248); // 'try'
  3502. break;
  3503. case 252: // 'union'
  3504. shift(252); // 'union'
  3505. break;
  3506. case 254: // 'unordered'
  3507. shift(254); // 'unordered'
  3508. break;
  3509. case 258: // 'validate'
  3510. shift(258); // 'validate'
  3511. break;
  3512. case 264: // 'where'
  3513. shift(264); // 'where'
  3514. break;
  3515. case 268: // 'with'
  3516. shift(268); // 'with'
  3517. break;
  3518. case 272: // 'xquery'
  3519. shift(272); // 'xquery'
  3520. break;
  3521. case 70: // 'allowing'
  3522. shift(70); // 'allowing'
  3523. break;
  3524. case 79: // 'at'
  3525. shift(79); // 'at'
  3526. break;
  3527. case 81: // 'base-uri'
  3528. shift(81); // 'base-uri'
  3529. break;
  3530. case 83: // 'boundary-space'
  3531. shift(83); // 'boundary-space'
  3532. break;
  3533. case 84: // 'break'
  3534. shift(84); // 'break'
  3535. break;
  3536. case 89: // 'catch'
  3537. shift(89); // 'catch'
  3538. break;
  3539. case 96: // 'construction'
  3540. shift(96); // 'construction'
  3541. break;
  3542. case 99: // 'context'
  3543. shift(99); // 'context'
  3544. break;
  3545. case 100: // 'continue'
  3546. shift(100); // 'continue'
  3547. break;
  3548. case 102: // 'copy-namespaces'
  3549. shift(102); // 'copy-namespaces'
  3550. break;
  3551. case 104: // 'decimal-format'
  3552. shift(104); // 'decimal-format'
  3553. break;
  3554. case 123: // 'encoding'
  3555. shift(123); // 'encoding'
  3556. break;
  3557. case 130: // 'exit'
  3558. shift(130); // 'exit'
  3559. break;
  3560. case 131: // 'external'
  3561. shift(131); // 'external'
  3562. break;
  3563. case 139: // 'ft-option'
  3564. shift(139); // 'ft-option'
  3565. break;
  3566. case 152: // 'in'
  3567. shift(152); // 'in'
  3568. break;
  3569. case 153: // 'index'
  3570. shift(153); // 'index'
  3571. break;
  3572. case 159: // 'integrity'
  3573. shift(159); // 'integrity'
  3574. break;
  3575. case 169: // 'lax'
  3576. shift(169); // 'lax'
  3577. break;
  3578. case 190: // 'nodes'
  3579. shift(190); // 'nodes'
  3580. break;
  3581. case 197: // 'option'
  3582. shift(197); // 'option'
  3583. break;
  3584. case 201: // 'ordering'
  3585. shift(201); // 'ordering'
  3586. break;
  3587. case 220: // 'revalidation'
  3588. shift(220); // 'revalidation'
  3589. break;
  3590. case 223: // 'schema'
  3591. shift(223); // 'schema'
  3592. break;
  3593. case 226: // 'score'
  3594. shift(226); // 'score'
  3595. break;
  3596. case 232: // 'sliding'
  3597. shift(232); // 'sliding'
  3598. break;
  3599. case 238: // 'strict'
  3600. shift(238); // 'strict'
  3601. break;
  3602. case 249: // 'tumbling'
  3603. shift(249); // 'tumbling'
  3604. break;
  3605. case 250: // 'type'
  3606. shift(250); // 'type'
  3607. break;
  3608. case 255: // 'updating'
  3609. shift(255); // 'updating'
  3610. break;
  3611. case 259: // 'value'
  3612. shift(259); // 'value'
  3613. break;
  3614. case 260: // 'variable'
  3615. shift(260); // 'variable'
  3616. break;
  3617. case 261: // 'version'
  3618. shift(261); // 'version'
  3619. break;
  3620. case 265: // 'while'
  3621. shift(265); // 'while'
  3622. break;
  3623. case 95: // 'constraint'
  3624. shift(95); // 'constraint'
  3625. break;
  3626. case 174: // 'loop'
  3627. shift(174); // 'loop'
  3628. break;
  3629. default:
  3630. shift(219); // 'returning'
  3631. }
  3632. eventHandler.endNonterminal("FunctionName", e0);
  3633. }
  3634. function parse_NCName()
  3635. {
  3636. eventHandler.startNonterminal("NCName", e0);
  3637. switch (l1)
  3638. {
  3639. case 28: // NCName^Token
  3640. shift(28); // NCName^Token
  3641. break;
  3642. case 68: // 'after'
  3643. shift(68); // 'after'
  3644. break;
  3645. case 73: // 'and'
  3646. shift(73); // 'and'
  3647. break;
  3648. case 77: // 'as'
  3649. shift(77); // 'as'
  3650. break;
  3651. case 78: // 'ascending'
  3652. shift(78); // 'ascending'
  3653. break;
  3654. case 82: // 'before'
  3655. shift(82); // 'before'
  3656. break;
  3657. case 86: // 'case'
  3658. shift(86); // 'case'
  3659. break;
  3660. case 87: // 'cast'
  3661. shift(87); // 'cast'
  3662. break;
  3663. case 88: // 'castable'
  3664. shift(88); // 'castable'
  3665. break;
  3666. case 92: // 'collation'
  3667. shift(92); // 'collation'
  3668. break;
  3669. case 103: // 'count'
  3670. shift(103); // 'count'
  3671. break;
  3672. case 107: // 'default'
  3673. shift(107); // 'default'
  3674. break;
  3675. case 111: // 'descending'
  3676. shift(111); // 'descending'
  3677. break;
  3678. case 116: // 'div'
  3679. shift(116); // 'div'
  3680. break;
  3681. case 120: // 'else'
  3682. shift(120); // 'else'
  3683. break;
  3684. case 121: // 'empty'
  3685. shift(121); // 'empty'
  3686. break;
  3687. case 124: // 'end'
  3688. shift(124); // 'end'
  3689. break;
  3690. case 126: // 'eq'
  3691. shift(126); // 'eq'
  3692. break;
  3693. case 129: // 'except'
  3694. shift(129); // 'except'
  3695. break;
  3696. case 135: // 'for'
  3697. shift(135); // 'for'
  3698. break;
  3699. case 144: // 'ge'
  3700. shift(144); // 'ge'
  3701. break;
  3702. case 146: // 'group'
  3703. shift(146); // 'group'
  3704. break;
  3705. case 148: // 'gt'
  3706. shift(148); // 'gt'
  3707. break;
  3708. case 149: // 'idiv'
  3709. shift(149); // 'idiv'
  3710. break;
  3711. case 158: // 'instance'
  3712. shift(158); // 'instance'
  3713. break;
  3714. case 160: // 'intersect'
  3715. shift(160); // 'intersect'
  3716. break;
  3717. case 161: // 'into'
  3718. shift(161); // 'into'
  3719. break;
  3720. case 162: // 'is'
  3721. shift(162); // 'is'
  3722. break;
  3723. case 170: // 'le'
  3724. shift(170); // 'le'
  3725. break;
  3726. case 172: // 'let'
  3727. shift(172); // 'let'
  3728. break;
  3729. case 176: // 'lt'
  3730. shift(176); // 'lt'
  3731. break;
  3732. case 178: // 'mod'
  3733. shift(178); // 'mod'
  3734. break;
  3735. case 179: // 'modify'
  3736. shift(179); // 'modify'
  3737. break;
  3738. case 184: // 'ne'
  3739. shift(184); // 'ne'
  3740. break;
  3741. case 196: // 'only'
  3742. shift(196); // 'only'
  3743. break;
  3744. case 198: // 'or'
  3745. shift(198); // 'or'
  3746. break;
  3747. case 199: // 'order'
  3748. shift(199); // 'order'
  3749. break;
  3750. case 218: // 'return'
  3751. shift(218); // 'return'
  3752. break;
  3753. case 222: // 'satisfies'
  3754. shift(222); // 'satisfies'
  3755. break;
  3756. case 234: // 'stable'
  3757. shift(234); // 'stable'
  3758. break;
  3759. case 235: // 'start'
  3760. shift(235); // 'start'
  3761. break;
  3762. case 246: // 'to'
  3763. shift(246); // 'to'
  3764. break;
  3765. case 247: // 'treat'
  3766. shift(247); // 'treat'
  3767. break;
  3768. case 252: // 'union'
  3769. shift(252); // 'union'
  3770. break;
  3771. case 264: // 'where'
  3772. shift(264); // 'where'
  3773. break;
  3774. case 268: // 'with'
  3775. shift(268); // 'with'
  3776. break;
  3777. case 71: // 'ancestor'
  3778. shift(71); // 'ancestor'
  3779. break;
  3780. case 72: // 'ancestor-or-self'
  3781. shift(72); // 'ancestor-or-self'
  3782. break;
  3783. case 80: // 'attribute'
  3784. shift(80); // 'attribute'
  3785. break;
  3786. case 91: // 'child'
  3787. shift(91); // 'child'
  3788. break;
  3789. case 94: // 'comment'
  3790. shift(94); // 'comment'
  3791. break;
  3792. case 101: // 'copy'
  3793. shift(101); // 'copy'
  3794. break;
  3795. case 106: // 'declare'
  3796. shift(106); // 'declare'
  3797. break;
  3798. case 108: // 'delete'
  3799. shift(108); // 'delete'
  3800. break;
  3801. case 109: // 'descendant'
  3802. shift(109); // 'descendant'
  3803. break;
  3804. case 110: // 'descendant-or-self'
  3805. shift(110); // 'descendant-or-self'
  3806. break;
  3807. case 117: // 'document'
  3808. shift(117); // 'document'
  3809. break;
  3810. case 118: // 'document-node'
  3811. shift(118); // 'document-node'
  3812. break;
  3813. case 119: // 'element'
  3814. shift(119); // 'element'
  3815. break;
  3816. case 122: // 'empty-sequence'
  3817. shift(122); // 'empty-sequence'
  3818. break;
  3819. case 127: // 'every'
  3820. shift(127); // 'every'
  3821. break;
  3822. case 132: // 'first'
  3823. shift(132); // 'first'
  3824. break;
  3825. case 133: // 'following'
  3826. shift(133); // 'following'
  3827. break;
  3828. case 134: // 'following-sibling'
  3829. shift(134); // 'following-sibling'
  3830. break;
  3831. case 143: // 'function'
  3832. shift(143); // 'function'
  3833. break;
  3834. case 150: // 'if'
  3835. shift(150); // 'if'
  3836. break;
  3837. case 151: // 'import'
  3838. shift(151); // 'import'
  3839. break;
  3840. case 157: // 'insert'
  3841. shift(157); // 'insert'
  3842. break;
  3843. case 163: // 'item'
  3844. shift(163); // 'item'
  3845. break;
  3846. case 168: // 'last'
  3847. shift(168); // 'last'
  3848. break;
  3849. case 180: // 'module'
  3850. shift(180); // 'module'
  3851. break;
  3852. case 182: // 'namespace'
  3853. shift(182); // 'namespace'
  3854. break;
  3855. case 183: // 'namespace-node'
  3856. shift(183); // 'namespace-node'
  3857. break;
  3858. case 189: // 'node'
  3859. shift(189); // 'node'
  3860. break;
  3861. case 200: // 'ordered'
  3862. shift(200); // 'ordered'
  3863. break;
  3864. case 204: // 'parent'
  3865. shift(204); // 'parent'
  3866. break;
  3867. case 210: // 'preceding'
  3868. shift(210); // 'preceding'
  3869. break;
  3870. case 211: // 'preceding-sibling'
  3871. shift(211); // 'preceding-sibling'
  3872. break;
  3873. case 214: // 'processing-instruction'
  3874. shift(214); // 'processing-instruction'
  3875. break;
  3876. case 216: // 'rename'
  3877. shift(216); // 'rename'
  3878. break;
  3879. case 217: // 'replace'
  3880. shift(217); // 'replace'
  3881. break;
  3882. case 224: // 'schema-attribute'
  3883. shift(224); // 'schema-attribute'
  3884. break;
  3885. case 225: // 'schema-element'
  3886. shift(225); // 'schema-element'
  3887. break;
  3888. case 227: // 'self'
  3889. shift(227); // 'self'
  3890. break;
  3891. case 233: // 'some'
  3892. shift(233); // 'some'
  3893. break;
  3894. case 241: // 'switch'
  3895. shift(241); // 'switch'
  3896. break;
  3897. case 242: // 'text'
  3898. shift(242); // 'text'
  3899. break;
  3900. case 248: // 'try'
  3901. shift(248); // 'try'
  3902. break;
  3903. case 251: // 'typeswitch'
  3904. shift(251); // 'typeswitch'
  3905. break;
  3906. case 254: // 'unordered'
  3907. shift(254); // 'unordered'
  3908. break;
  3909. case 258: // 'validate'
  3910. shift(258); // 'validate'
  3911. break;
  3912. case 260: // 'variable'
  3913. shift(260); // 'variable'
  3914. break;
  3915. case 272: // 'xquery'
  3916. shift(272); // 'xquery'
  3917. break;
  3918. case 70: // 'allowing'
  3919. shift(70); // 'allowing'
  3920. break;
  3921. case 79: // 'at'
  3922. shift(79); // 'at'
  3923. break;
  3924. case 81: // 'base-uri'
  3925. shift(81); // 'base-uri'
  3926. break;
  3927. case 83: // 'boundary-space'
  3928. shift(83); // 'boundary-space'
  3929. break;
  3930. case 84: // 'break'
  3931. shift(84); // 'break'
  3932. break;
  3933. case 89: // 'catch'
  3934. shift(89); // 'catch'
  3935. break;
  3936. case 96: // 'construction'
  3937. shift(96); // 'construction'
  3938. break;
  3939. case 99: // 'context'
  3940. shift(99); // 'context'
  3941. break;
  3942. case 100: // 'continue'
  3943. shift(100); // 'continue'
  3944. break;
  3945. case 102: // 'copy-namespaces'
  3946. shift(102); // 'copy-namespaces'
  3947. break;
  3948. case 104: // 'decimal-format'
  3949. shift(104); // 'decimal-format'
  3950. break;
  3951. case 123: // 'encoding'
  3952. shift(123); // 'encoding'
  3953. break;
  3954. case 130: // 'exit'
  3955. shift(130); // 'exit'
  3956. break;
  3957. case 131: // 'external'
  3958. shift(131); // 'external'
  3959. break;
  3960. case 139: // 'ft-option'
  3961. shift(139); // 'ft-option'
  3962. break;
  3963. case 152: // 'in'
  3964. shift(152); // 'in'
  3965. break;
  3966. case 153: // 'index'
  3967. shift(153); // 'index'
  3968. break;
  3969. case 159: // 'integrity'
  3970. shift(159); // 'integrity'
  3971. break;
  3972. case 169: // 'lax'
  3973. shift(169); // 'lax'
  3974. break;
  3975. case 190: // 'nodes'
  3976. shift(190); // 'nodes'
  3977. break;
  3978. case 197: // 'option'
  3979. shift(197); // 'option'
  3980. break;
  3981. case 201: // 'ordering'
  3982. shift(201); // 'ordering'
  3983. break;
  3984. case 220: // 'revalidation'
  3985. shift(220); // 'revalidation'
  3986. break;
  3987. case 223: // 'schema'
  3988. shift(223); // 'schema'
  3989. break;
  3990. case 226: // 'score'
  3991. shift(226); // 'score'
  3992. break;
  3993. case 232: // 'sliding'
  3994. shift(232); // 'sliding'
  3995. break;
  3996. case 238: // 'strict'
  3997. shift(238); // 'strict'
  3998. break;
  3999. case 249: // 'tumbling'
  4000. shift(249); // 'tumbling'
  4001. break;
  4002. case 250: // 'type'
  4003. shift(250); // 'type'
  4004. break;
  4005. case 255: // 'updating'
  4006. shift(255); // 'updating'
  4007. break;
  4008. case 259: // 'value'
  4009. shift(259); // 'value'
  4010. break;
  4011. case 261: // 'version'
  4012. shift(261); // 'version'
  4013. break;
  4014. case 265: // 'while'
  4015. shift(265); // 'while'
  4016. break;
  4017. case 95: // 'constraint'
  4018. shift(95); // 'constraint'
  4019. break;
  4020. case 174: // 'loop'
  4021. shift(174); // 'loop'
  4022. break;
  4023. default:
  4024. shift(219); // 'returning'
  4025. }
  4026. eventHandler.endNonterminal("NCName", e0);
  4027. }
  4028. function shift(t)
  4029. {
  4030. if (l1 == t)
  4031. {
  4032. whitespace();
  4033. eventHandler.terminal(JSONiqTokenizer.TOKEN[l1], b1, e1 > size ? size : e1);
  4034. b0 = b1; e0 = e1; l1 = 0;
  4035. }
  4036. else
  4037. {
  4038. error(b1, e1, 0, l1, t);
  4039. }
  4040. }
  4041. function whitespace()
  4042. {
  4043. if (e0 != b1)
  4044. {
  4045. b0 = e0;
  4046. e0 = b1;
  4047. eventHandler.whitespace(b0, e0);
  4048. }
  4049. }
  4050. function matchW(set)
  4051. {
  4052. var code;
  4053. for (;;)
  4054. {
  4055. code = match(set);
  4056. if (code != 30) // S^WS
  4057. {
  4058. break;
  4059. }
  4060. }
  4061. return code;
  4062. }
  4063. function lookahead1W(set)
  4064. {
  4065. if (l1 == 0)
  4066. {
  4067. l1 = matchW(set);
  4068. b1 = begin;
  4069. e1 = end;
  4070. }
  4071. }
  4072. function lookahead1(set)
  4073. {
  4074. if (l1 == 0)
  4075. {
  4076. l1 = match(set);
  4077. b1 = begin;
  4078. e1 = end;
  4079. }
  4080. }
  4081. function error(b, e, s, l, t)
  4082. {
  4083. throw new self.ParseException(b, e, s, l, t);
  4084. }
  4085. var lk, b0, e0;
  4086. var l1, b1, e1;
  4087. var eventHandler;
  4088. var input;
  4089. var size;
  4090. var begin;
  4091. var end;
  4092. function match(tokenSetId)
  4093. {
  4094. var nonbmp = false;
  4095. begin = end;
  4096. var current = end;
  4097. var result = JSONiqTokenizer.INITIAL[tokenSetId];
  4098. var state = 0;
  4099. for (var code = result & 4095; code != 0; )
  4100. {
  4101. var charclass;
  4102. var c0 = current < size ? input.charCodeAt(current) : 0;
  4103. ++current;
  4104. if (c0 < 0x80)
  4105. {
  4106. charclass = JSONiqTokenizer.MAP0[c0];
  4107. }
  4108. else if (c0 < 0xd800)
  4109. {
  4110. var c1 = c0 >> 4;
  4111. charclass = JSONiqTokenizer.MAP1[(c0 & 15) + JSONiqTokenizer.MAP1[(c1 & 31) + JSONiqTokenizer.MAP1[c1 >> 5]]];
  4112. }
  4113. else
  4114. {
  4115. if (c0 < 0xdc00)
  4116. {
  4117. var c1 = current < size ? input.charCodeAt(current) : 0;
  4118. if (c1 >= 0xdc00 && c1 < 0xe000)
  4119. {
  4120. ++current;
  4121. c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
  4122. nonbmp = true;
  4123. }
  4124. }
  4125. var lo = 0, hi = 5;
  4126. for (var m = 3; ; m = (hi + lo) >> 1)
  4127. {
  4128. if (JSONiqTokenizer.MAP2[m] > c0) hi = m - 1;
  4129. else if (JSONiqTokenizer.MAP2[6 + m] < c0) lo = m + 1;
  4130. else {charclass = JSONiqTokenizer.MAP2[12 + m]; break;}
  4131. if (lo > hi) {charclass = 0; break;}
  4132. }
  4133. }
  4134. state = code;
  4135. var i0 = (charclass << 12) + code - 1;
  4136. code = JSONiqTokenizer.TRANSITION[(i0 & 15) + JSONiqTokenizer.TRANSITION[i0 >> 4]];
  4137. if (code > 4095)
  4138. {
  4139. result = code;
  4140. code &= 4095;
  4141. end = current;
  4142. }
  4143. }
  4144. result >>= 12;
  4145. if (result == 0)
  4146. {
  4147. end = current - 1;
  4148. var c1 = end < size ? input.charCodeAt(end) : 0;
  4149. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  4150. return error(begin, end, state, -1, -1);
  4151. }
  4152. if (nonbmp)
  4153. {
  4154. for (var i = result >> 9; i > 0; --i)
  4155. {
  4156. --end;
  4157. var c1 = end < size ? input.charCodeAt(end) : 0;
  4158. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  4159. }
  4160. }
  4161. else
  4162. {
  4163. end -= result >> 9;
  4164. }
  4165. return (result & 511) - 1;
  4166. }
  4167. }
  4168. JSONiqTokenizer.getTokenSet = function(tokenSetId)
  4169. {
  4170. var set = [];
  4171. var s = tokenSetId < 0 ? - tokenSetId : INITIAL[tokenSetId] & 4095;
  4172. for (var i = 0; i < 279; i += 32)
  4173. {
  4174. var j = i;
  4175. var i0 = (i >> 5) * 2066 + s - 1;
  4176. var i1 = i0 >> 2;
  4177. var i2 = i1 >> 2;
  4178. var f = JSONiqTokenizer.EXPECTED[(i0 & 3) + JSONiqTokenizer.EXPECTED[(i1 & 3) + JSONiqTokenizer.EXPECTED[(i2 & 3) + JSONiqTokenizer.EXPECTED[i2 >> 2]]]];
  4179. for ( ; f != 0; f >>>= 1, ++j)
  4180. {
  4181. if ((f & 1) != 0)
  4182. {
  4183. set.push(JSONiqTokenizer.TOKEN[j]);
  4184. }
  4185. }
  4186. }
  4187. return set;
  4188. };
  4189. JSONiqTokenizer.MAP0 =
  4190. [
  4191. 67, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5,
  4192. 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 20, 21, 22, 23, 24,
  4193. 25, 26, 27, 28, 29, 30, 27, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 32, 31, 31, 33, 31, 31, 31, 31, 31, 31,
  4194. 34, 35, 36, 37, 31, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 31, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
  4195. 58, 59, 60, 61, 31, 62, 63, 64, 65, 37
  4196. ];
  4197. JSONiqTokenizer.MAP1 =
  4198. [
  4199. 108, 124, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 156, 181, 181, 181, 181,
  4200. 181, 214, 215, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  4201. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  4202. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  4203. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  4204. 214, 214, 214, 247, 261, 277, 293, 309, 347, 363, 379, 416, 416, 416, 408, 331, 323, 331, 323, 331, 331,
  4205. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 433, 433, 433, 433, 433, 433, 433,
  4206. 316, 331, 331, 331, 331, 331, 331, 331, 331, 394, 416, 416, 417, 415, 416, 416, 331, 331, 331, 331, 331,
  4207. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 416, 416, 416, 416, 416, 416, 416, 416,
  4208. 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
  4209. 416, 416, 416, 330, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331,
  4210. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 416, 67, 0, 0, 0, 0, 0, 0, 0, 0,
  4211. 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
  4212. 15, 16, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 27, 31,
  4213. 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 37, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
  4214. 31, 31, 31, 31, 32, 31, 31, 33, 31, 31, 31, 31, 31, 31, 34, 35, 36, 37, 31, 37, 38, 39, 40, 41, 42, 43, 44,
  4215. 45, 46, 31, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 31, 62, 63, 64, 65, 37, 37, 37, 37,
  4216. 37, 37, 37, 37, 37, 37, 37, 37, 31, 31, 37, 37, 37, 37, 37, 37, 37, 66, 37, 37, 37, 37, 37, 37, 37, 37, 37,
  4217. 37, 37, 37, 37, 37, 37, 37, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66, 66
  4218. ];
  4219. JSONiqTokenizer.MAP2 =
  4220. [
  4221. 57344, 63744, 64976, 65008, 65536, 983040, 63743, 64975, 65007, 65533, 983039, 1114111, 37, 31, 37, 31, 31,
  4222. 37
  4223. ];
  4224. JSONiqTokenizer.INITIAL =
  4225. [
  4226. 1, 2, 49155, 57348, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
  4227. ];
  4228. JSONiqTokenizer.TRANSITION =
  4229. [
  4230. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4231. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4232. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4233. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4234. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4235. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4236. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4237. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4238. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4239. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4240. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4241. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4242. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4243. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4244. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4245. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4246. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4247. 19058, 17408, 19288, 17439, 36866, 17466, 36890, 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486,
  4248. 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 22126, 17990, 18622, 19411, 20306, 17996, 17689,
  4249. 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17672, 18921, 19514, 17705,
  4250. 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 19469, 17878,
  4251. 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102,
  4252. 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 36919, 18234, 18262, 18278, 18294,
  4253. 18320, 18336, 18361, 18397, 18419, 18432, 18304, 18448, 18485, 18523, 18553, 18583, 18599, 18638, 18497,
  4254. 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450,
  4255. 22022, 18765, 18825, 18841, 18871, 18906, 18944, 18960, 18976, 19041, 19056, 19058, 19058, 19058, 19058,
  4256. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4257. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4258. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4259. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4260. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4261. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4262. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4263. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4264. 19058, 19058, 19074, 36169, 17439, 36866, 17466, 36890, 36866, 22314, 19105, 22987, 17556, 17575, 22288,
  4265. 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 22126, 17990, 18622, 19411, 20306, 17996,
  4266. 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17672, 18921, 19514,
  4267. 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 19469,
  4268. 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928,
  4269. 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 36919, 18234, 18262, 18278,
  4270. 18294, 18320, 18336, 18361, 18397, 18419, 18432, 18304, 18448, 18485, 18523, 18553, 18583, 18599, 18638,
  4271. 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838,
  4272. 17450, 22022, 18765, 18825, 18841, 18871, 18906, 18944, 18960, 18976, 19041, 19056, 19058, 19058, 19058,
  4273. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4274. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4275. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4276. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4277. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4278. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4279. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4280. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4281. 19058, 19058, 19058, 22182, 19288, 19121, 36866, 17466, 18345, 36866, 21991, 22971, 22987, 17556, 17575,
  4282. 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306,
  4283. 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921,
  4284. 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008,
  4285. 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906,
  4286. 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262,
  4287. 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149,
  4288. 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054,
  4289. 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058,
  4290. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4291. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4292. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4293. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4294. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4295. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4296. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4297. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4298. 19058, 19058, 19058, 19058, 19273, 19552, 19304, 36866, 17466, 36890, 36866, 21991, 22971, 22987, 17556,
  4299. 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411,
  4300. 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862,
  4301. 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712,
  4302. 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890,
  4303. 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935,
  4304. 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583,
  4305. 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915,
  4306. 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058,
  4307. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4308. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4309. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4310. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4311. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4312. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4313. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4314. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4315. 19058, 19058, 19058, 19058, 19058, 19332, 17423, 19363, 36866, 17466, 17537, 36866, 21991, 22971, 22987,
  4316. 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 18614, 18622,
  4317. 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 19391, 36867, 19404, 20299, 36866, 17647,
  4318. 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 19427, 18403, 18928, 19521,
  4319. 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884,
  4320. 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134,
  4321. 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553,
  4322. 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906,
  4323. 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056,
  4324. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4325. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4326. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4327. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4328. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4329. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4330. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4331. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4332. 19058, 19058, 19058, 19058, 19058, 19058, 36154, 19288, 19457, 36866, 17466, 17740, 36866, 21991, 22971,
  4333. 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990,
  4334. 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866,
  4335. 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928,
  4336. 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218,
  4337. 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026,
  4338. 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523,
  4339. 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026,
  4340. 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041,
  4341. 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4342. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4343. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4344. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4345. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4346. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4347. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4348. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4349. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22780, 19288, 19457, 36866, 17466, 36890, 36866, 21991,
  4350. 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462,
  4351. 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299,
  4352. 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403,
  4353. 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064,
  4354. 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010,
  4355. 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485,
  4356. 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681,
  4357. 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976,
  4358. 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4359. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4360. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4361. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4362. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4363. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4364. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4365. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4366. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22375, 22197, 18469, 36866, 17466, 36890, 36866,
  4367. 21991, 24018, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 21331, 22984, 17553, 17572, 22285,
  4368. 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 19485, 19501, 36867, 19404,
  4369. 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854,
  4370. 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381,
  4371. 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214,
  4372. 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448,
  4373. 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737,
  4374. 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257,
  4375. 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4376. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4377. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4378. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4379. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4380. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4381. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4382. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4383. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19537, 22390, 19568, 36866, 17466, 36890,
  4384. 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572,
  4385. 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867,
  4386. 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825,
  4387. 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012,
  4388. 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166,
  4389. 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304,
  4390. 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712,
  4391. 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241,
  4392. 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4393. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4394. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4395. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4396. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4397. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4398. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4399. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4400. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19596, 19611, 19457, 36866, 17466,
  4401. 36890, 36866, 18246, 19627, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553,
  4402. 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083,
  4403. 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800,
  4404. 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960,
  4405. 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150,
  4406. 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096,
  4407. 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164,
  4408. 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906,
  4409. 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4410. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4411. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4412. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4413. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4414. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4415. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4416. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4417. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22242, 20553, 19457, 36866,
  4418. 17466, 36890, 36866, 18648, 30477, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984,
  4419. 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619,
  4420. 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784,
  4421. 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178,
  4422. 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493,
  4423. 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274,
  4424. 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696,
  4425. 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871,
  4426. 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4427. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4428. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4429. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4430. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4431. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4432. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4433. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4434. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36472, 19288, 19457,
  4435. 36866, 17466, 17809, 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 21770,
  4436. 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468,
  4437. 17619, 19643, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756,
  4438. 17784, 17800, 17825, 19672, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944,
  4439. 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963,
  4440. 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397,
  4441. 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507,
  4442. 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841,
  4443. 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4444. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4445. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4446. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4447. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4448. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4449. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4450. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4451. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 20538, 19288,
  4452. 19457, 36866, 17466, 36890, 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373,
  4453. 17975, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896,
  4454. 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728,
  4455. 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922,
  4456. 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931,
  4457. 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361,
  4458. 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680,
  4459. 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225,
  4460. 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4461. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4462. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4463. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4464. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4465. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4466. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4467. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4468. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22345,
  4469. 19288, 19457, 36866, 17466, 36890, 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525,
  4470. 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591,
  4471. 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017,
  4472. 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900,
  4473. 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130,
  4474. 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336,
  4475. 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664,
  4476. 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765,
  4477. 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058,
  4478. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4479. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4480. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4481. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4482. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4483. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4484. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4485. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4486. 19726, 19742, 21529, 24035, 23112, 26225, 23511, 27749, 27397, 24035, 34360, 24035, 24036, 23114, 35166,
  4487. 23114, 23114, 19758, 23511, 35247, 23511, 23511, 28447, 19803, 24035, 24035, 24035, 24035, 26576, 23114,
  4488. 23114, 23114, 23114, 24254, 19821, 23511, 23511, 23511, 23511, 23512, 19441, 36539, 24035, 24035, 24035,
  4489. 24035, 19846, 19869, 23114, 23114, 23114, 28618, 32187, 19892, 23511, 23511, 23511, 34585, 20402, 36647,
  4490. 24035, 24035, 24036, 23114, 33757, 23114, 23114, 23029, 20271, 23511, 27070, 23511, 23511, 30562, 24035,
  4491. 24035, 29274, 26576, 23114, 23114, 31118, 23036, 29695, 23511, 23511, 32431, 23634, 30821, 24035, 23110,
  4492. 19913, 23114, 23467, 31261, 23261, 34299, 19932, 24035, 32609, 19965, 35389, 19984, 27689, 19830, 29391,
  4493. 29337, 20041, 22643, 35619, 33728, 20062, 20121, 20166, 35100, 26145, 20211, 23008, 19876, 20208, 20227,
  4494. 25670, 20132, 26578, 27685, 20141, 20243, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058,
  4495. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4496. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4497. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4498. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4499. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4500. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4501. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4502. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4503. 19058, 36094, 19288, 19457, 36866, 17466, 21724, 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486,
  4504. 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689,
  4505. 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705,
  4506. 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878,
  4507. 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102,
  4508. 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294,
  4509. 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497,
  4510. 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450,
  4511. 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058,
  4512. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4513. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4514. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4515. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4516. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4517. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4518. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4519. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4520. 19058, 19058, 22735, 19552, 20287, 36866, 17466, 36890, 36866, 21991, 22971, 22987, 17556, 17575, 22288,
  4521. 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996,
  4522. 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514,
  4523. 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024,
  4524. 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928,
  4525. 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278,
  4526. 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638,
  4527. 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838,
  4528. 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058,
  4529. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4530. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4531. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4532. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4533. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4534. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4535. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4536. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4537. 19058, 19058, 19058, 22750, 19288, 21529, 24035, 23112, 28056, 23511, 29483, 28756, 24035, 24035, 24035,
  4538. 24036, 23114, 23114, 23114, 23114, 20327, 23511, 23511, 23511, 23511, 31156, 19803, 24035, 24035, 24035,
  4539. 24035, 26576, 23114, 23114, 23114, 23114, 24254, 20371, 23511, 23511, 23511, 23511, 27443, 20395, 24035,
  4540. 24035, 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114, 29457, 29700, 23511, 23511, 23511, 23511,
  4541. 33444, 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 28350, 20421, 23511, 23511, 23511,
  4542. 23511, 25645, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 20447, 20475, 23511, 23511, 23511, 23634,
  4543. 24035, 24035, 23110, 23114, 23114, 20499, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078,
  4544. 27689, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008,
  4545. 19876, 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058,
  4546. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4547. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4548. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4549. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4550. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4551. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4552. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4553. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4554. 19058, 19058, 19058, 19058, 20523, 22257, 20569, 20783, 21715, 17603, 20699, 20837, 20614, 20630, 21149,
  4555. 20670, 21405, 17486, 17509, 17525, 18373, 19179, 20695, 20716, 20732, 20755, 19194, 18042, 21641, 20592,
  4556. 20779, 20598, 21412, 17470, 17591, 20896, 17468, 17619, 20799, 20700, 21031, 20744, 20699, 20828, 18075,
  4557. 21259, 20581, 20853, 18048, 20868, 20884, 17756, 17784, 17800, 17825, 17854, 21171, 21200, 20931, 20947,
  4558. 21378, 20955, 20971, 18086, 20645, 21002, 20986, 18178, 17960, 18012, 18381, 18064, 29176, 21044, 21438,
  4559. 21018, 21122, 21393, 21060, 21844, 21094, 20654, 17493, 18150, 18166, 18214, 25967, 20763, 21799, 21110,
  4560. 21830, 21138, 21246, 21301, 18336, 18361, 21165, 21187, 20812, 21216, 21232, 21287, 21317, 18553, 21347,
  4561. 21363, 21428, 21454, 21271, 21483, 21499, 21515, 21575, 21467, 18712, 21591, 21633, 21078, 18189, 18198,
  4562. 20679, 21657, 21701, 21074, 21687, 21740, 21756, 21786, 21815, 21860, 21876, 21892, 21946, 21962, 19058,
  4563. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4564. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4565. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4566. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4567. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4568. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4569. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4570. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4571. 19058, 19058, 19058, 19058, 19058, 36457, 19288, 19457, 36866, 17466, 36890, 36866, 21991, 22971, 22987,
  4572. 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 36813, 17990, 18622,
  4573. 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647,
  4574. 21981, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521,
  4575. 17712, 37008, 22151, 22007, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 27898, 17884,
  4576. 18890, 17906, 17928, 22042, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 22070, 22112, 25026, 18134,
  4577. 36935, 18262, 18278, 18294, 18320, 18336, 18361, 22142, 18274, 22096, 18304, 18448, 18485, 18523, 18553,
  4578. 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906,
  4579. 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056,
  4580. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4581. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4582. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4583. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4584. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4585. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4586. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4587. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4588. 19058, 19058, 19058, 19058, 19058, 19058, 36109, 19288, 18469, 36866, 17466, 36890, 36866, 21991, 22971,
  4589. 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990,
  4590. 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866,
  4591. 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928,
  4592. 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218,
  4593. 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026,
  4594. 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523,
  4595. 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026,
  4596. 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041,
  4597. 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4598. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4599. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4600. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4601. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4602. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4603. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4604. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4605. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22167, 19288, 19457, 36866, 17466, 17768, 36866, 21991,
  4606. 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462,
  4607. 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299,
  4608. 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403,
  4609. 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064,
  4610. 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010,
  4611. 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485,
  4612. 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681,
  4613. 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976,
  4614. 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4615. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4616. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4617. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4618. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4619. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4620. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4621. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4622. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22227, 36487, 22273, 36866, 17466, 36890, 36866,
  4623. 19316, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285,
  4624. 18749, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404,
  4625. 20299, 36866, 17647, 22304, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854,
  4626. 18403, 18928, 19521, 17712, 37008, 19580, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381,
  4627. 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214,
  4628. 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448,
  4629. 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737,
  4630. 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257,
  4631. 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4632. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4633. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4634. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4635. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4636. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4637. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4638. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4639. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22330, 19089, 19457, 36866, 17466, 18721,
  4640. 36866, 21991, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572,
  4641. 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867,
  4642. 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825,
  4643. 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012,
  4644. 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166,
  4645. 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304,
  4646. 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712,
  4647. 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241,
  4648. 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4649. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4650. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4651. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4652. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4653. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4654. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4655. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4656. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 22765, 19347, 19457, 36866, 17466,
  4657. 36890, 36866, 18114, 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553,
  4658. 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083,
  4659. 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800,
  4660. 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960,
  4661. 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150,
  4662. 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096,
  4663. 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164,
  4664. 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906,
  4665. 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4666. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4667. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4668. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4669. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4670. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4671. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4672. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4673. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36079, 19288, 21605, 24035,
  4674. 23112, 32618, 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 22420, 23511,
  4675. 23511, 23511, 23511, 29116, 19803, 24035, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23114, 33811,
  4676. 22468, 23511, 23511, 23511, 23511, 27443, 22493, 24035, 24035, 24035, 24035, 24035, 23113, 23114, 23114,
  4677. 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34541, 20402, 24035, 24035, 24035, 24036, 23114,
  4678. 23114, 23114, 23114, 23029, 22839, 23511, 23511, 23511, 23511, 25645, 24035, 24035, 24035, 26576, 23114,
  4679. 23114, 23114, 32683, 22516, 23511, 23511, 23511, 22540, 24035, 24035, 23110, 23114, 23114, 20499, 23511,
  4680. 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 27741, 23266,
  4681. 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132, 26578, 27685,
  4682. 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4683. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4684. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4685. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4686. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4687. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4688. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4689. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4690. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36079, 19288, 21605,
  4691. 24035, 23112, 32618, 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 22420,
  4692. 23511, 23511, 23511, 23511, 29116, 19803, 24035, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23114,
  4693. 33811, 22468, 23511, 23511, 23511, 23511, 27443, 22493, 24035, 24035, 24035, 24035, 24035, 23113, 23114,
  4694. 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34564, 20402, 24035, 24035, 24035, 24036,
  4695. 23114, 23114, 23114, 23114, 23029, 22839, 23511, 23511, 23511, 23511, 25645, 24035, 24035, 24035, 26576,
  4696. 23114, 23114, 23114, 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 20499,
  4697. 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 27741,
  4698. 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132, 26578,
  4699. 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4700. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4701. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4702. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4703. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4704. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4705. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4706. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4707. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36079, 19288,
  4708. 21605, 24035, 23112, 32618, 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114,
  4709. 22420, 23511, 23511, 23511, 23511, 29908, 19803, 24035, 24035, 24035, 24035, 26576, 23114, 23114, 23114,
  4710. 23114, 33811, 22468, 23511, 23511, 23511, 23511, 27443, 22493, 24035, 24035, 24035, 24035, 24035, 23113,
  4711. 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34564, 20402, 24035, 24035, 24035,
  4712. 24036, 23114, 23114, 23114, 23114, 23029, 22839, 23511, 23511, 23511, 23511, 25645, 24035, 24035, 24035,
  4713. 26576, 23114, 23114, 23114, 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114,
  4714. 20499, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872,
  4715. 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132,
  4716. 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4717. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4718. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4719. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4720. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4721. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4722. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4723. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4724. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36079,
  4725. 19288, 21605, 24035, 23112, 32618, 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114,
  4726. 23114, 22420, 23511, 23511, 23511, 23511, 29116, 19803, 24035, 24035, 24035, 24035, 26576, 23114, 23114,
  4727. 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 27443, 22561, 24035, 24035, 24035, 24035, 24035,
  4728. 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34564, 20402, 24035, 24035,
  4729. 24035, 24036, 23114, 23114, 23114, 23114, 23029, 22839, 23511, 23511, 23511, 23511, 25645, 24035, 24035,
  4730. 24035, 26576, 23114, 23114, 23114, 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114,
  4731. 23114, 20499, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112,
  4732. 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046,
  4733. 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058,
  4734. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4735. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4736. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4737. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4738. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4739. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4740. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4741. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4742. 36079, 19288, 21605, 24035, 23112, 23837, 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114,
  4743. 23114, 23114, 22584, 23511, 23511, 23511, 23511, 29116, 19803, 24035, 24035, 24035, 24035, 26576, 23114,
  4744. 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 27443, 22493, 24035, 24035, 24035, 24035,
  4745. 24035, 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34564, 20402, 24035,
  4746. 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 22839, 23511, 23511, 23511, 23511, 25645, 24035,
  4747. 24035, 24035, 26576, 23114, 23114, 23114, 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110,
  4748. 23114, 23114, 20499, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035,
  4749. 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007,
  4750. 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058,
  4751. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4752. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4753. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4754. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4755. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4756. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4757. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4758. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4759. 19058, 36079, 19288, 21605, 24035, 23112, 32618, 23511, 31507, 29939, 24035, 24035, 24035, 24036, 23114,
  4760. 23114, 23114, 23114, 22420, 23511, 23511, 23511, 23511, 28306, 19803, 24035, 24035, 24035, 24035, 26576,
  4761. 23114, 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 24694, 24035, 24035, 24035,
  4762. 24035, 24035, 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34585, 20402,
  4763. 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511, 23511, 30562,
  4764. 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035, 24035,
  4765. 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830,
  4766. 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208,
  4767. 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058,
  4768. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4769. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4770. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4771. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4772. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4773. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4774. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4775. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4776. 19058, 19058, 36442, 19288, 21605, 24035, 23112, 28137, 23511, 31507, 29939, 24035, 24035, 24035, 24036,
  4777. 23114, 23114, 23114, 23114, 22420, 23511, 23511, 23511, 23511, 28306, 19803, 24035, 24035, 24035, 24035,
  4778. 26576, 23114, 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 24694, 24035, 24035,
  4779. 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34585,
  4780. 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511, 23511,
  4781. 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035,
  4782. 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689,
  4783. 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876,
  4784. 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058,
  4785. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4786. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4787. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4788. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4789. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4790. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4791. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4792. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4793. 19058, 19058, 19058, 36079, 19288, 21605, 24035, 23112, 32618, 23511, 31507, 29939, 24035, 24035, 24035,
  4794. 24036, 23114, 23114, 23114, 23114, 22420, 23511, 23511, 23511, 23511, 28306, 19803, 24035, 24035, 24035,
  4795. 24035, 26576, 23114, 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 24694, 24035,
  4796. 24035, 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511,
  4797. 34585, 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511,
  4798. 23511, 31568, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634,
  4799. 24035, 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078,
  4800. 27689, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008,
  4801. 19876, 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058,
  4802. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4803. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4804. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4805. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4806. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4807. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4808. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4809. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4810. 19058, 19058, 19058, 19058, 22690, 19288, 19457, 36866, 17466, 36890, 36866, 21991, 27584, 22987, 17556,
  4811. 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411,
  4812. 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862,
  4813. 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712,
  4814. 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890,
  4815. 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935,
  4816. 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 22659, 18448, 18485, 18523, 18553, 18583,
  4817. 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915,
  4818. 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058,
  4819. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4820. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4821. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4822. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4823. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4824. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4825. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4826. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4827. 19058, 19058, 19058, 19058, 19058, 22360, 19552, 19457, 36866, 17466, 36890, 36866, 21991, 22971, 22987,
  4828. 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622,
  4829. 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647,
  4830. 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521,
  4831. 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884,
  4832. 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134,
  4833. 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553,
  4834. 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906,
  4835. 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056,
  4836. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4837. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4838. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4839. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4840. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4841. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4842. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4843. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4844. 19058, 19058, 19058, 19058, 19058, 19058, 22675, 22811, 19457, 36866, 17466, 36890, 36866, 19133, 22971,
  4845. 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 22827, 17990,
  4846. 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866,
  4847. 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928,
  4848. 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218,
  4849. 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026,
  4850. 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523,
  4851. 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026,
  4852. 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041,
  4853. 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4854. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4855. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4856. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4857. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4858. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4859. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4860. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4861. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36139, 19288, 19457, 36866, 17466, 36890, 36866, 21991,
  4862. 22971, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462,
  4863. 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299,
  4864. 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403,
  4865. 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064,
  4866. 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010,
  4867. 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485,
  4868. 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681,
  4869. 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976,
  4870. 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4871. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4872. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4873. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4874. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4875. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4876. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4877. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4878. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36064, 19288, 22865, 22881, 32031, 22897, 22913,
  4879. 22956, 29939, 24035, 24035, 24035, 23003, 23114, 23114, 23114, 23024, 22420, 23511, 23511, 23511, 23052,
  4880. 29116, 23073, 29268, 24035, 25563, 26915, 23106, 23131, 23114, 23114, 23159, 23181, 23197, 23248, 23511,
  4881. 23511, 23282, 23305, 22493, 32364, 24035, 33472, 30138, 26325, 31770, 33508, 27345, 33667, 23114, 23321,
  4882. 23473, 23351, 35793, 36576, 23511, 23375, 22500, 24145, 24035, 29197, 20192, 24533, 23440, 23114, 19017,
  4883. 23459, 22839, 23489, 23510, 23511, 33563, 23528, 32076, 25389, 24035, 26576, 23561, 23583, 23114, 32683,
  4884. 22516, 23622, 23655, 23511, 23634, 35456, 37144, 23110, 23683, 34153, 20499, 32513, 25824, 23705, 24035,
  4885. 24035, 23111, 23114, 19874, 27078, 33263, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243,
  4886. 20507, 32241, 20150, 31862, 27464, 35108, 23727, 23007, 35895, 34953, 26578, 27685, 20141, 24569, 31691,
  4887. 19787, 33967, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4888. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4889. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4890. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4891. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4892. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4893. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4894. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4895. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36427, 19552, 21605, 24035, 23112, 32618,
  4896. 23511, 29483, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 22420, 23511, 23511, 23511,
  4897. 23511, 29116, 19803, 24035, 24035, 24035, 27027, 26576, 23114, 23114, 23114, 31471, 23756, 22468, 23511,
  4898. 23511, 23511, 34687, 23772, 22493, 24035, 24035, 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114,
  4899. 28618, 29700, 23511, 23511, 23511, 23511, 34564, 23788, 24035, 24035, 24035, 21559, 23828, 23114, 23114,
  4900. 23114, 25086, 22839, 23853, 23511, 23511, 23511, 23876, 24035, 24035, 24035, 26576, 23114, 23114, 23114,
  4901. 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 20499, 23511, 23261, 23628,
  4902. 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114,
  4903. 30243, 19829, 26577, 26597, 20211, 31761, 23909, 23953, 23007, 20046, 20132, 26578, 27685, 20141, 24569,
  4904. 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4905. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4906. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4907. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4908. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4909. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4910. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4911. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4912. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36049, 19288, 21605, 30825, 23112,
  4913. 23987, 23511, 24003, 31001, 27617, 24034, 24035, 24036, 24052, 24089, 23114, 23114, 22420, 24109, 24168,
  4914. 23511, 23511, 29116, 24188, 27609, 20017, 29516, 24035, 26576, 24222, 19968, 23114, 24252, 33811, 22468,
  4915. 24270, 33587, 23511, 24320, 27443, 22493, 24035, 24035, 24035, 24035, 24339, 23113, 23114, 23114, 23114,
  4916. 28128, 28618, 29700, 23511, 23511, 23511, 28276, 34564, 20402, 24035, 24035, 32929, 24036, 23114, 23114,
  4917. 23114, 24357, 23029, 22839, 23511, 23511, 23511, 24377, 25645, 24035, 34112, 24035, 26576, 23114, 26643,
  4918. 23114, 32683, 22516, 23511, 25638, 23511, 23711, 24035, 24395, 27809, 23114, 24414, 20499, 24432, 30917,
  4919. 23628, 24035, 30680, 23111, 23114, 30233, 27078, 25748, 24452, 24035, 23112, 19872, 27741, 23266, 24036,
  4920. 23114, 24475, 19829, 26577, 26597, 26154, 24519, 24556, 24596, 23007, 20046, 20132, 26578, 24634, 20141,
  4921. 24569, 31691, 24679, 24727, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4922. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4923. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4924. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4925. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4926. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4927. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4928. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4929. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36412, 19288, 21605, 19943,
  4930. 34861, 32618, 26027, 29483, 32016, 32050, 36233, 24776, 35574, 24801, 24819, 32671, 31289, 22420, 24868,
  4931. 24886, 20087, 26849, 29116, 19803, 24035, 24035, 24035, 36228, 26576, 23114, 23114, 23114, 24981, 33811,
  4932. 22468, 23511, 23511, 23511, 29028, 27443, 22493, 24923, 27965, 24035, 24035, 32797, 24946, 23443, 23114,
  4933. 23114, 29636, 24997, 22849, 28252, 23511, 23511, 23511, 25042, 25110, 24035, 24035, 34085, 24036, 25133,
  4934. 23114, 23114, 25152, 23029, 22839, 25169, 23511, 36764, 23511, 25645, 30403, 24035, 25186, 26576, 31806,
  4935. 24093, 25212, 32683, 22516, 32713, 26245, 34293, 23634, 24035, 24035, 23110, 23114, 23114, 20499, 23511,
  4936. 23261, 23628, 24035, 32406, 23111, 23114, 28676, 30944, 27689, 25234, 24035, 23112, 19872, 37063, 23266,
  4937. 24036, 23114, 30243, 20379, 26100, 29218, 20211, 30105, 25257, 25284, 23007, 20046, 20132, 26578, 27685,
  4938. 20141, 24569, 24834, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4939. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4940. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4941. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4942. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4943. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4944. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4945. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4946. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36034, 19288, 21671,
  4947. 25314, 25072, 25330, 25346, 25362, 29939, 29951, 35288, 29984, 23812, 27216, 25405, 25424, 30456, 22584,
  4948. 26292, 25461, 25480, 31592, 29116, 25516, 34963, 25545, 27007, 25579, 33937, 25614, 25661, 25686, 34872,
  4949. 25702, 25718, 25734, 25769, 25795, 25811, 25840, 22493, 26533, 25856, 24035, 25876, 30763, 27481, 25909,
  4950. 23114, 28987, 25936, 25954, 29700, 25983, 23511, 31412, 26043, 26063, 22568, 29241, 29592, 26116, 31216,
  4951. 35383, 26170, 34783, 26194, 26221, 22839, 26241, 26261, 22477, 26283, 26308, 27306, 31035, 24655, 26576,
  4952. 29854, 33386, 26341, 32683, 22516, 32153, 30926, 26361, 19996, 26381, 35463, 26397, 26424, 34646, 26478,
  4953. 35605, 31386, 26494, 35567, 31964, 22940, 23689, 25218, 30309, 32289, 19830, 33605, 23112, 32109, 27733,
  4954. 27084, 24496, 35886, 35221, 26525, 36602, 26549, 26558, 26574, 26594, 26613, 26629, 26666, 26700, 26578,
  4955. 27685, 23740, 24285, 31691, 26733, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4956. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4957. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4958. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4959. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4960. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4961. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4962. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4963. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36397, 19552,
  4964. 18991, 25887, 28117, 32618, 26776, 29483, 29939, 26802, 24035, 24035, 24036, 28664, 23114, 23114, 23114,
  4965. 22420, 30297, 23511, 23511, 23511, 29116, 19803, 24035, 24035, 24035, 25559, 26576, 23114, 23114, 23114,
  4966. 30525, 33811, 22468, 23511, 23511, 23511, 28725, 27443, 22493, 24035, 24035, 27249, 24035, 24035, 23113,
  4967. 23114, 23114, 26827, 23114, 28618, 29700, 23511, 23511, 26845, 23511, 34564, 20402, 24035, 24035, 26979,
  4968. 24036, 23114, 23114, 23114, 24974, 23029, 22839, 23511, 23511, 23511, 26865, 25645, 24035, 24035, 24035,
  4969. 26576, 23114, 23114, 23114, 32683, 22516, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114,
  4970. 20499, 23511, 23261, 23628, 33305, 24035, 25598, 23114, 19874, 34253, 27689, 19830, 24035, 23112, 19872,
  4971. 27741, 23266, 24036, 23114, 26886, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132,
  4972. 26578, 27685, 26931, 24569, 26439, 26947, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4973. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4974. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4975. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4976. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4977. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4978. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4979. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4980. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36019,
  4981. 19288, 26995, 24035, 23112, 32618, 23511, 31507, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114,
  4982. 23114, 22420, 23511, 23511, 23511, 23511, 28306, 27043, 24035, 24035, 24035, 24035, 26576, 23114, 23114,
  4983. 23114, 23114, 33811, 27061, 23511, 23511, 23511, 23511, 23512, 24694, 24035, 24035, 29978, 24035, 24035,
  4984. 23113, 23114, 33114, 23114, 23114, 30010, 29700, 23511, 35913, 23511, 23511, 34585, 20402, 24035, 24035,
  4985. 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511, 23511, 30562, 24035, 24035,
  4986. 27155, 26576, 23114, 23114, 30447, 23036, 29695, 23511, 23511, 30935, 20099, 24152, 25529, 27100, 34461,
  4987. 27121, 22625, 29156, 26009, 27137, 30422, 31903, 31655, 28870, 27171, 32439, 31731, 19830, 27232, 22612,
  4988. 27265, 26786, 25494, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046,
  4989. 20132, 26578, 27685, 20141, 20342, 27288, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058,
  4990. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4991. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4992. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4993. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4994. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4995. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4996. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4997. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  4998. 36079, 19288, 21605, 27322, 27339, 28020, 27361, 27382, 29939, 24035, 24035, 32581, 24036, 23114, 23114,
  4999. 23114, 27425, 22420, 23511, 23511, 23511, 27442, 28306, 19803, 24035, 24035, 24035, 24035, 26710, 23114,
  5000. 23114, 23114, 23114, 32261, 22468, 23511, 23511, 23511, 23511, 35719, 24694, 29510, 24035, 24035, 24035,
  5001. 24035, 26717, 23114, 23114, 23114, 23114, 28618, 32217, 23511, 23511, 23511, 23511, 34585, 20402, 24035,
  5002. 24035, 24035, 27459, 23114, 23114, 23114, 36252, 23029, 20271, 23511, 23511, 23511, 28840, 30562, 24035,
  5003. 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035, 24035, 23110,
  5004. 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035,
  5005. 27480, 34483, 28401, 29761, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007,
  5006. 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058,
  5007. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5008. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5009. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5010. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5011. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5012. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5013. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5014. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5015. 19058, 36382, 19288, 21605, 27497, 27517, 28504, 28898, 27569, 29939, 29401, 27600, 27323, 27633, 19025,
  5016. 27662, 23114, 27705, 22420, 20483, 27721, 23511, 27765, 28306, 19803, 23540, 24035, 24610, 27781, 27805,
  5017. 26650, 23114, 28573, 32990, 25920, 22468, 26870, 23511, 26684, 34262, 34737, 25057, 34622, 24035, 24035,
  5018. 23971, 24206, 27825, 27847, 23114, 23114, 27865, 27885, 35766, 27914, 23511, 23511, 32766, 32844, 27934,
  5019. 28795, 26909, 27955, 26092, 27988, 25445, 28005, 28036, 28052, 21965, 23511, 32196, 19897, 28072, 28102,
  5020. 36534, 21541, 23801, 28153, 28180, 28197, 28221, 23036, 32695, 28251, 28268, 28292, 23667, 34825, 23930,
  5021. 24580, 28322, 28344, 31627, 28366, 25996, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 35625,
  5022. 33477, 33359, 27674, 28393, 33992, 24036, 23114, 30243, 19829, 28417, 28433, 28463, 23008, 19876, 20208,
  5023. 23007, 20046, 20132, 28489, 28520, 20141, 24569, 31691, 19787, 28550, 20268, 19058, 19058, 19058, 19058,
  5024. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5025. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5026. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5027. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5028. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5029. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5030. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5031. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5032. 19058, 19058, 36079, 19288, 21605, 24035, 23112, 32618, 23511, 31507, 29939, 24035, 24035, 24035, 24036,
  5033. 23114, 23114, 23114, 23114, 22420, 23511, 23511, 23511, 23511, 28306, 19803, 24035, 24035, 24035, 24035,
  5034. 26576, 23114, 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 24694, 28589, 24035,
  5035. 24035, 24035, 24035, 28608, 23114, 23114, 23114, 23114, 28618, 20431, 23511, 23511, 23511, 23511, 34585,
  5036. 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511, 23511,
  5037. 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035,
  5038. 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689,
  5039. 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876,
  5040. 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058,
  5041. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5042. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5043. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5044. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5045. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5046. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5047. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5048. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5049. 19058, 19058, 19058, 36004, 19288, 28634, 31951, 28565, 28702, 28718, 28741, 32544, 20175, 28792, 32086,
  5050. 20105, 28811, 29059, 29862, 28856, 22420, 28886, 30354, 23359, 28922, 28306, 28952, 23888, 26320, 36506,
  5051. 24035, 29331, 28968, 36609, 23114, 29003, 31661, 27061, 30649, 27366, 23511, 29023, 27918, 24694, 24035,
  5052. 24035, 23893, 33094, 30867, 23113, 23114, 23114, 29044, 34184, 30010, 29700, 23511, 23511, 29081, 29102,
  5053. 34585, 20402, 27789, 24035, 24035, 24036, 23114, 29132, 23114, 23114, 23029, 20271, 23511, 29153, 23511,
  5054. 23511, 30562, 30174, 24035, 24035, 27409, 25438, 23114, 23114, 29172, 36668, 31332, 23511, 23511, 29192,
  5055. 30144, 24035, 23110, 30203, 23114, 23467, 31544, 23261, 23628, 24035, 22545, 23111, 23114, 29213, 27078,
  5056. 27689, 29234, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 29257, 23008,
  5057. 19876, 20208, 28768, 29290, 29320, 34776, 29353, 20141, 22435, 29378, 19787, 29304, 20268, 19058, 19058,
  5058. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5059. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5060. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5061. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5062. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5063. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5064. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5065. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5066. 19058, 19058, 19058, 19058, 36367, 19288, 21605, 34616, 19006, 32618, 31497, 31507, 36216, 20184, 24035,
  5067. 34393, 29424, 34668, 23114, 34900, 29447, 22420, 30360, 23511, 37089, 29473, 28306, 19803, 29499, 24398,
  5068. 24035, 24035, 26576, 31799, 29532, 29550, 23114, 33811, 22468, 32298, 29571, 31184, 23511, 23512, 37127,
  5069. 36628, 29589, 24035, 24135, 24035, 23113, 29608, 23114, 27831, 29634, 28618, 29652, 30037, 23511, 24172,
  5070. 29671, 34585, 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 29555, 29690, 23511, 23511,
  5071. 23511, 23511, 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511,
  5072. 23634, 29719, 24035, 23110, 29738, 23114, 23467, 34035, 29756, 23628, 24035, 24035, 23111, 23114, 19874,
  5073. 27078, 27689, 19830, 24035, 23112, 19872, 27741, 29777, 34364, 28181, 30243, 29799, 31920, 27272, 27185,
  5074. 23008, 31126, 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29828, 20268, 19058,
  5075. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5076. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5077. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5078. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5079. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5080. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5081. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5082. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5083. 19058, 19058, 19058, 19058, 19058, 35989, 19552, 19687, 35139, 28649, 29878, 29894, 29924, 29939, 23224,
  5084. 23085, 31969, 24036, 35173, 24752, 24803, 23114, 22420, 31190, 30318, 24870, 23511, 28306, 29967, 23967,
  5085. 24035, 24035, 24035, 26576, 30000, 23114, 23114, 23114, 33811, 22468, 30026, 23511, 23511, 23511, 23512,
  5086. 26078, 24035, 24035, 24035, 30053, 37137, 30071, 23114, 23114, 33368, 25136, 28618, 30723, 23511, 23511,
  5087. 37096, 31356, 34585, 20402, 30092, 30127, 30160, 24036, 35740, 30219, 24960, 30259, 23029, 20271, 34042,
  5088. 30285, 30342, 30376, 23289, 30055, 30400, 30419, 30438, 32640, 33532, 33514, 30472, 18792, 26267, 24323,
  5089. 23057, 30493, 23639, 20008, 30196, 33188, 30517, 20075, 23511, 30541, 23628, 30578, 33928, 28776, 30594,
  5090. 19874, 30610, 30637, 19830, 30677, 27646, 19872, 25779, 23266, 23232, 35016, 30243, 30696, 29812, 30712,
  5091. 30746, 27206, 30779, 30807, 23007, 33395, 20132, 26578, 27685, 31703, 22928, 31691, 19787, 31079, 20268,
  5092. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5093. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5094. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5095. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5096. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5097. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5098. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5099. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5100. 19058, 19058, 19058, 19058, 19058, 19058, 36352, 19288, 23335, 30841, 26131, 30888, 30904, 30986, 29939,
  5101. 24035, 24704, 31017, 20025, 23114, 26178, 31051, 31095, 22420, 23511, 22524, 31142, 31172, 28534, 31206,
  5102. 35497, 25196, 24035, 28592, 24503, 23114, 31239, 31285, 23114, 31305, 31321, 31355, 31372, 31407, 23511,
  5103. 30556, 24694, 24035, 27501, 19805, 24035, 24035, 23113, 23114, 31428, 24066, 23114, 28618, 29700, 23511,
  5104. 31837, 18809, 23511, 34585, 31448, 24035, 24035, 24035, 23090, 23114, 23114, 23114, 23114, 31619, 35038,
  5105. 23511, 23511, 23511, 23511, 33714, 24035, 33085, 24035, 29431, 23114, 31467, 23114, 23143, 31487, 23511,
  5106. 31523, 23511, 35195, 36783, 24035, 30111, 23567, 23114, 23467, 31543, 31560, 23628, 24035, 24035, 23111,
  5107. 23114, 19874, 30953, 31584, 34508, 24035, 31608, 26345, 37055, 23266, 31643, 31677, 31719, 31747, 31786,
  5108. 31822, 26898, 23008, 19876, 31859, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 31878, 31936,
  5109. 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5110. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5111. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5112. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5113. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5114. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5115. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5116. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5117. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 35974, 19288, 21605, 27972, 35663, 31985, 29655, 32001,
  5118. 36715, 24785, 25893, 23545, 31912, 19853, 19916, 25938, 24540, 22420, 31843, 29674, 29573, 32735, 28936,
  5119. 19803, 24035, 24035, 32047, 24035, 26576, 23114, 23114, 27544, 23114, 33811, 22468, 23511, 23511, 32161,
  5120. 23511, 23512, 32066, 24035, 33313, 24035, 24035, 24035, 23113, 27426, 32102, 23114, 23114, 28618, 32125,
  5121. 23511, 32144, 23511, 23511, 33569, 20402, 24035, 27045, 24035, 24036, 23114, 23114, 28328, 23114, 30076,
  5122. 32177, 23511, 23511, 30384, 23511, 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23595, 32212,
  5123. 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035,
  5124. 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 22635, 25753, 32233, 32257, 32277, 19829,
  5125. 26577, 26597, 20211, 23008, 19876, 32322, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787,
  5126. 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5127. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5128. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5129. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5130. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5131. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5132. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5133. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5134. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36079, 19288, 32352, 35285, 32380, 34196, 33016,
  5135. 30661, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 22420, 23511, 23511, 23511, 23511,
  5136. 28306, 32404, 24035, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23114, 33811, 32422, 23511, 23511,
  5137. 23511, 23511, 23512, 24694, 24035, 24035, 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114, 30269,
  5138. 29700, 23511, 23511, 23511, 23511, 34585, 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114,
  5139. 23029, 20271, 23511, 23511, 23511, 23511, 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036,
  5140. 29695, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 19949,
  5141. 24035, 23111, 32455, 19874, 31269, 27689, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243,
  5142. 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691,
  5143. 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5144. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5145. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5146. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5147. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5148. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5149. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5150. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5151. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36337, 19552, 19209, 21617, 26509, 32475,
  5152. 32491, 32529, 29939, 24035, 32578, 25241, 32597, 23114, 32634, 29007, 32656, 22420, 23511, 32729, 26365,
  5153. 32751, 28306, 32788, 32882, 24035, 24035, 32813, 36727, 23114, 33182, 23114, 27553, 33235, 32829, 23511,
  5154. 32706, 23511, 28906, 28377, 26962, 32881, 32904, 32898, 32920, 24035, 32953, 23114, 32977, 26408, 23114,
  5155. 28164, 33006, 23511, 33039, 35774, 23511, 32306, 20402, 33076, 30872, 24035, 24036, 25408, 33110, 28979,
  5156. 23114, 23029, 20271, 35835, 33130, 33054, 23511, 30562, 33148, 24035, 24035, 33167, 23114, 23114, 33775,
  5157. 23036, 20459, 23511, 23511, 25464, 24646, 24035, 24035, 22446, 23114, 23114, 25627, 23511, 23261, 23628,
  5158. 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 27741, 31391, 33204, 33220,
  5159. 33251, 33287, 26577, 26597, 20211, 33329, 19876, 33345, 23007, 20046, 20132, 26578, 27685, 28473, 22599,
  5160. 31691, 33411, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5161. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5162. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5163. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5164. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5165. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5166. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5167. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5168. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 35959, 19288, 21907, 27243, 29843,
  5169. 32618, 33427, 31507, 29939, 33460, 34090, 24035, 24036, 33493, 24416, 33530, 23114, 22420, 33548, 24379,
  5170. 33585, 23511, 28306, 19803, 33603, 24202, 24035, 24035, 25593, 33749, 28205, 23114, 23114, 32388, 22468,
  5171. 33853, 33060, 23511, 23511, 31339, 33621, 24035, 24035, 34397, 24618, 30757, 33663, 23114, 23114, 33683,
  5172. 35684, 28618, 26678, 23511, 23511, 32506, 33699, 34585, 20402, 24035, 32562, 26973, 24036, 23114, 23114,
  5173. 33377, 33773, 23029, 20271, 23511, 23511, 30621, 23511, 23860, 24035, 33791, 21553, 26576, 36558, 23114,
  5174. 33809, 23036, 32857, 26047, 23511, 33827, 23634, 24035, 24035, 23110, 23114, 23114, 31252, 23511, 33845,
  5175. 23628, 24035, 24459, 23111, 23114, 33869, 27078, 30791, 29783, 24035, 24742, 19872, 33895, 23266, 26462,
  5176. 19710, 33879, 33919, 26577, 26597, 24123, 24930, 21930, 20208, 30501, 33953, 25268, 20252, 33983, 20141,
  5177. 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5178. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5179. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5180. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5181. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5182. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5183. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5184. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5185. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36322, 19552, 23390, 33634,
  5186. 35154, 34008, 34024, 34058, 35544, 34106, 34128, 26811, 33151, 34144, 34169, 34212, 23114, 34228, 34244,
  5187. 34278, 34315, 23511, 34331, 34347, 34380, 34413, 24035, 24663, 26576, 34429, 34453, 34477, 29534, 33811,
  5188. 22468, 34499, 34524, 34557, 25170, 34580, 35436, 23937, 34601, 24035, 24341, 26453, 23113, 34638, 34662,
  5189. 23114, 24236, 28618, 34684, 34703, 34729, 23511, 35352, 34753, 34799, 24035, 34815, 32558, 34848, 34888,
  5190. 35814, 34923, 23165, 29137, 23606, 30326, 30730, 34939, 33023, 30562, 36848, 34979, 24035, 24847, 34996,
  5191. 23114, 23114, 35032, 29695, 35054, 23511, 23511, 35091, 33296, 35124, 24296, 28235, 24361, 36276, 32772,
  5192. 35067, 35189, 27301, 30855, 24852, 22452, 35211, 35237, 35316, 25500, 35270, 23405, 24304, 35304, 29362,
  5193. 24036, 23114, 35332, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 35368, 28823, 23920, 32336, 35405,
  5194. 20141, 24569, 31691, 35421, 35479, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5195. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5196. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5197. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5198. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5199. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5200. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5201. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5202. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 35944, 22795, 21605,
  5203. 33647, 35877, 35513, 30962, 35529, 34073, 35557, 24035, 24035, 20405, 31107, 23114, 23114, 23114, 35590,
  5204. 34713, 23511, 23511, 23511, 35641, 19803, 29408, 32937, 25298, 24035, 35657, 23115, 27849, 24760, 35679,
  5205. 26205, 22468, 23511, 35700, 24907, 24901, 35075, 31893, 34980, 24035, 24035, 24035, 24035, 23113, 35009,
  5206. 23114, 23114, 23114, 28618, 35716, 30970, 23511, 23511, 23511, 34585, 23215, 24035, 24035, 24035, 24036,
  5207. 35735, 23114, 23114, 23114, 27105, 35756, 35790, 23511, 23511, 23511, 35254, 35446, 24035, 24035, 31223,
  5208. 35809, 23114, 23114, 23036, 36825, 35830, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 23467,
  5209. 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 31031, 20355, 19872, 33903,
  5210. 23266, 24036, 23114, 28686, 19829, 26577, 26597, 20211, 23008, 23424, 20208, 24711, 31065, 24486, 26578,
  5211. 27685, 20141, 19773, 35851, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5212. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5213. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5214. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5215. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5216. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5217. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5218. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5219. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 36307, 19288,
  5220. 21605, 35494, 19702, 32618, 33437, 31507, 29939, 25117, 24035, 27939, 24036, 27869, 23114, 26829, 23114,
  5221. 22420, 23494, 23511, 33132, 23511, 28306, 19803, 24035, 34832, 24035, 24035, 26576, 23114, 25153, 23114,
  5222. 23114, 33811, 22468, 23511, 23511, 35911, 23511, 23512, 24694, 24035, 24035, 24035, 24035, 24035, 23113,
  5223. 23114, 23114, 23114, 23114, 28618, 29700, 23511, 23511, 23511, 23511, 34585, 20402, 24035, 24035, 24035,
  5224. 24036, 23114, 23114, 23114, 23114, 23029, 20271, 23511, 23511, 23511, 23511, 30562, 24035, 24035, 24035,
  5225. 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114,
  5226. 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872,
  5227. 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132,
  5228. 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5229. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5230. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5231. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5232. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5233. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5234. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5235. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5236. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 35929,
  5237. 19288, 21605, 25860, 23112, 36185, 23511, 36201, 29939, 24035, 24035, 24035, 24036, 23114, 23114, 23114,
  5238. 23114, 22420, 23511, 23511, 23511, 23511, 28306, 19803, 24035, 24035, 24035, 24035, 26576, 23114, 23114,
  5239. 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 26748, 24035, 24035, 24035, 24035, 24035,
  5240. 36249, 23114, 23114, 23114, 23114, 28618, 28835, 23511, 23511, 23511, 23511, 34585, 20402, 24035, 27151,
  5241. 24035, 26760, 23114, 27989, 23114, 23114, 36268, 20271, 23511, 24436, 23511, 29703, 30562, 24035, 24035,
  5242. 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035, 24035, 23110, 23114,
  5243. 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035, 23112,
  5244. 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007, 20046,
  5245. 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058, 19058,
  5246. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5247. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5248. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5249. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5250. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5251. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5252. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5253. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5254. 36292, 19288, 21605, 36503, 21922, 32618, 34534, 31507, 36522, 24035, 33793, 24035, 35864, 23114, 23114,
  5255. 36555, 23417, 22420, 23511, 23511, 36574, 26020, 28306, 19803, 24035, 24035, 24035, 24035, 26576, 23114,
  5256. 23114, 23114, 23114, 33811, 22468, 23511, 23511, 23511, 23511, 23512, 36592, 24035, 24035, 36625, 24035,
  5257. 24035, 23113, 23114, 32961, 23114, 23114, 29618, 29700, 23511, 29086, 23511, 23511, 34585, 20402, 36644,
  5258. 24035, 24035, 24036, 29740, 23114, 23114, 23114, 29065, 36663, 31527, 23511, 23511, 23511, 30562, 24035,
  5259. 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 23634, 24035, 24035, 23110,
  5260. 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111, 23114, 19874, 27078, 27689, 19830, 24035,
  5261. 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208, 23007,
  5262. 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058, 19058,
  5263. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5264. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5265. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5266. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5267. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5268. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5269. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5270. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5271. 19058, 36079, 19288, 21605, 31451, 23112, 36684, 23511, 36700, 29939, 24035, 24035, 24035, 30185, 23114,
  5272. 23114, 23114, 27526, 22420, 23511, 23511, 23511, 32865, 28306, 19803, 36743, 24035, 27017, 24035, 26576,
  5273. 27535, 23114, 31432, 23114, 33811, 22468, 33271, 23511, 32128, 23511, 23512, 24694, 24035, 27196, 24035,
  5274. 24035, 24035, 23113, 32459, 23114, 23114, 23114, 28618, 29700, 33829, 36762, 23511, 23511, 34585, 20402,
  5275. 24035, 36746, 24035, 29722, 23114, 23114, 34437, 23114, 34907, 20271, 23511, 23511, 18801, 23511, 23206,
  5276. 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511, 23511, 23511, 36837, 24035, 24035,
  5277. 33739, 23114, 23114, 25094, 23511, 23261, 23628, 24035, 36780, 23111, 24073, 19874, 27078, 35344, 19830,
  5278. 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577, 26597, 20211, 23008, 19876, 20208,
  5279. 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304, 20268, 19058, 19058, 19058, 19058,
  5280. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5281. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5282. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5283. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5284. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5285. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5286. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5287. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5288. 19058, 19058, 22720, 19288, 36799, 36866, 17466, 36890, 36864, 21991, 22211, 22987, 17556, 17575, 22288,
  5289. 17486, 17509, 17525, 18373, 17631, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306, 17996,
  5290. 17689, 17470, 17591, 20896, 17468, 36883, 36906, 36867, 19404, 20299, 36866, 17647, 17862, 18921, 19514,
  5291. 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008, 37024,
  5292. 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906, 17928,
  5293. 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262, 18278,
  5294. 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149, 18638,
  5295. 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054, 17838,
  5296. 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058, 19058,
  5297. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5298. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5299. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5300. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5301. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5302. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5303. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5304. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5305. 19058, 19058, 19058, 22705, 19288, 19457, 36866, 17466, 36890, 36866, 19375, 22971, 22987, 17556, 17575,
  5306. 22288, 17486, 17509, 17525, 18373, 18855, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411, 20306,
  5307. 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647, 17862, 18921,
  5308. 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712, 37008,
  5309. 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890, 17906,
  5310. 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935, 18262,
  5311. 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583, 19149,
  5312. 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915, 22054,
  5313. 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058, 19058,
  5314. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5315. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5316. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5317. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5318. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5319. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5320. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5321. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5322. 19058, 19058, 19058, 19058, 36124, 19288, 36951, 36866, 17466, 36890, 36866, 21991, 22404, 22987, 17556,
  5323. 17575, 22288, 17486, 17509, 17525, 18373, 18567, 22984, 17553, 17572, 22285, 18462, 17990, 18622, 19411,
  5324. 20306, 17996, 17689, 17470, 17591, 20896, 17468, 36979, 36995, 36867, 19404, 20299, 36866, 17647, 17862,
  5325. 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521, 17712,
  5326. 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884, 18890,
  5327. 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134, 36935,
  5328. 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553, 18583,
  5329. 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906, 20915,
  5330. 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056, 19058,
  5331. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5332. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5333. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5334. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5335. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5336. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5337. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5338. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5339. 19058, 19058, 19058, 19058, 19058, 36139, 19288, 19457, 36866, 17466, 36890, 36866, 21991, 22971, 22987,
  5340. 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18027, 22984, 17553, 17572, 22285, 18462, 17990, 18622,
  5341. 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 17619, 22083, 36867, 19404, 20299, 36866, 17647,
  5342. 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403, 18928, 19521,
  5343. 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064, 18218, 17884,
  5344. 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010, 25026, 18134,
  5345. 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485, 18523, 18553,
  5346. 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681, 22026, 20906,
  5347. 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976, 19041, 19056,
  5348. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5349. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5350. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5351. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5352. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5353. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5354. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5355. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5356. 19058, 19058, 19058, 19058, 19058, 19058, 36139, 19288, 21529, 24035, 23112, 23033, 23511, 31507, 25377,
  5357. 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 37040, 23511, 23511, 23511, 23511, 28086, 19803,
  5358. 24035, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23114, 24254, 37079, 23511, 23511, 23511, 23511,
  5359. 23512, 34766, 24035, 24035, 24035, 24035, 24035, 23113, 23114, 23114, 23114, 23114, 28618, 29700, 23511,
  5360. 23511, 23511, 23511, 34585, 20402, 24035, 24035, 24035, 24036, 23114, 23114, 23114, 23114, 23029, 20271,
  5361. 23511, 23511, 23511, 23511, 30562, 24035, 24035, 24035, 26576, 23114, 23114, 23114, 23036, 29695, 23511,
  5362. 23511, 23511, 23634, 24035, 24035, 23110, 23114, 23114, 23467, 23511, 23261, 23628, 24035, 24035, 23111,
  5363. 23114, 19874, 27078, 27689, 19830, 24035, 23112, 19872, 27741, 23266, 24036, 23114, 30243, 19829, 26577,
  5364. 26597, 20211, 23008, 19876, 20208, 23007, 20046, 20132, 26578, 27685, 20141, 24569, 31691, 19787, 29304,
  5365. 20268, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5366. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5367. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5368. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5369. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5370. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5371. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5372. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5373. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 37112, 37160, 18469, 36866, 17466, 36890, 36866, 17656,
  5374. 37174, 22987, 17556, 17575, 22288, 17486, 17509, 17525, 18373, 18537, 22984, 17553, 17572, 22285, 18780,
  5375. 17990, 18622, 19411, 20306, 17996, 17689, 17470, 17591, 20896, 17468, 36883, 36906, 36867, 19404, 20299,
  5376. 36866, 17647, 17862, 18921, 19514, 17705, 20311, 37017, 17728, 17756, 17784, 17800, 17825, 17854, 18403,
  5377. 18928, 19521, 17712, 37008, 37024, 17878, 18884, 17900, 17922, 17944, 18178, 17960, 18012, 18381, 18064,
  5378. 18218, 17884, 18890, 17906, 17928, 18102, 25022, 18130, 36931, 36963, 17493, 18150, 18166, 18214, 25010,
  5379. 25026, 18134, 36935, 18262, 18278, 18294, 18320, 18336, 18361, 18397, 18274, 22096, 18304, 18448, 18485,
  5380. 18523, 18553, 18583, 19149, 18638, 18497, 19656, 18664, 18680, 18507, 18696, 19164, 18712, 18737, 17681,
  5381. 22026, 20906, 20915, 22054, 17838, 17450, 22022, 18765, 19225, 18841, 18871, 18906, 19241, 19257, 18976,
  5382. 19041, 19056, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5383. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5384. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5385. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5386. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5387. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5388. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5389. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058,
  5390. 19058, 19058, 19058, 19058, 19058, 19058, 19058, 19058, 53264, 18, 49172, 57366, 24, 8192, 28, 102432,
  5391. 127011, 110630, 114730, 106539, 127011, 127011, 127011, 53264, 18, 18, 0, 0, 57366, 0, 24, 24, 24, 0, 28,
  5392. 28, 28, 28, 102432, 0, 0, 127011, 0, 2220032, 110630, 0, 0, 0, 114730, 106539, 0, 2170880, 2170880,
  5393. 2170880, 2170880, 0, 0, 0, 2170880, 2170880, 2170880, 3002368, 2170880, 2170880, 2170880, 2170880,
  5394. 2170880, 2170880, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5395. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2576384, 2215936, 2215936, 2215936,
  5396. 2416640, 2424832, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5397. 2215936, 2215936, 2215936, 2543616, 2215936, 2215936, 2215936, 2215936, 2215936, 2629632, 2215936,
  5398. 2617344, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2691072, 2215936, 2707456, 2215936,
  5399. 2715648, 2215936, 2723840, 2764800, 2215936, 2215936, 2797568, 2215936, 2822144, 2215936, 2215936,
  5400. 2854912, 2215936, 2215936, 2215936, 2912256, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5401. 2215936, 0, 0, 0, 180224, 0, 0, 2174976, 0, 0, 2170880, 2617344, 2170880, 2170880, 2170880, 2170880,
  5402. 2170880, 2170880, 2691072, 2170880, 2707456, 2170880, 2715648, 2170880, 2723840, 2764800, 2170880,
  5403. 2170880, 2797568, 2170880, 2170880, 2797568, 2170880, 2822144, 2170880, 2170880, 2854912, 2170880,
  5404. 2170880, 2170880, 2912256, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2215936,
  5405. 2215936, 2215936, 2215936, 2609152, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2654208,
  5406. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0, 0, 0, 184599, 280, 0, 2174976, 0, 0,
  5407. 2215936, 3117056, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5408. 2215936, 2215936, 2215936, 0, 544, 0, 546, 0, 0, 2179072, 0, 0, 0, 552, 0, 0, 2170880, 2170880, 2170880,
  5409. 3117056, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5410. 2170880, 2170880, 0, 0, 0, 2158592, 2158592, 2232320, 2232320, 0, 2240512, 2240512, 0, 0, 0, 644, 0, 0, 0,
  5411. 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3129344, 2170880, 2170880, 2170880,
  5412. 2170880, 2170880, 2170880, 2170880, 2170880, 2215936, 2215936, 2215936, 2400256, 2215936, 2215936,
  5413. 2215936, 2215936, 2711552, 2170880, 2170880, 2170880, 2170880, 2170880, 2760704, 2768896, 2789376,
  5414. 2813952, 2170880, 2170880, 2170880, 2875392, 2904064, 2170880, 2170880, 2170880, 2170880, 2170880,
  5415. 2170880, 2170880, 2170880, 2170880, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5416. 2215936, 2215936, 2453504, 2457600, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0,
  5417. 167936, 0, 0, 0, 0, 2174976, 0, 0, 2215936, 2215936, 2514944, 2215936, 2215936, 2215936, 2215936, 2215936,
  5418. 2215936, 2215936, 2215936, 2592768, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 32768,
  5419. 0, 0, 0, 0, 0, 2174976, 32768, 0, 2633728, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2711552,
  5420. 2215936, 2215936, 2215936, 2215936, 2215936, 2760704, 2768896, 2789376, 2813952, 2215936, 2215936,
  5421. 2215936, 2875392, 2904064, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5422. 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2174976, 0, 65819, 2215936, 2215936, 3031040, 2215936, 3055616,
  5423. 2215936, 2215936, 2215936, 2215936, 3092480, 2215936, 2215936, 3125248, 2215936, 2215936, 2215936,
  5424. 2215936, 2215936, 2215936, 3002368, 2215936, 2215936, 2170880, 2170880, 2494464, 2170880, 2170880, 0, 0,
  5425. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3198976, 2215936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5426. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 0, 0, 0, 2379776, 2170880, 2170880, 2170880,
  5427. 2170880, 2170880, 2170880, 2170880, 2445312, 2170880, 2465792, 2473984, 2170880, 2170880, 2170880,
  5428. 2170880, 2170880, 2170880, 2523136, 2170880, 2170880, 2641920, 2170880, 2170880, 2170880, 2699264,
  5429. 2170880, 2727936, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2879488, 2170880,
  5430. 2916352, 2170880, 2170880, 2170880, 2879488, 2170880, 2916352, 2170880, 2170880, 2170880, 2170880,
  5431. 2170880, 2170880, 2170880, 2170880, 2170880, 3026944, 2170880, 2170880, 3063808, 2170880, 2170880,
  5432. 3112960, 2170880, 2170880, 3133440, 2170880, 2170880, 3112960, 2170880, 2170880, 3133440, 2170880,
  5433. 2170880, 2170880, 3162112, 2170880, 2170880, 3182592, 3186688, 2170880, 2379776, 2215936, 2523136,
  5434. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2596864, 2215936, 2621440, 2215936,
  5435. 2215936, 2641920, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2179072, 548, 0, 0, 0, 0, 287, 2170880, 0, 2170880,
  5436. 2170880, 2170880, 2400256, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5437. 2170880, 2170880, 2170880, 3117056, 2170880, 2170880, 2170880, 2170880, 2215936, 2215936, 2699264,
  5438. 2215936, 2727936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2879488, 2215936,
  5439. 2916352, 2215936, 2215936, 0, 0, 0, 0, 188416, 0, 2179072, 0, 0, 0, 0, 0, 287, 2170880, 0, 2171019,
  5440. 2171019, 2171019, 2400395, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5441. 2171019, 2171019, 2171019, 3031179, 2171019, 3055755, 2171019, 2171019, 2215936, 3133440, 2215936,
  5442. 2215936, 2215936, 3162112, 2215936, 2215936, 3182592, 3186688, 2215936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5443. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2523275, 2171019, 2171019, 2171019, 2171019,
  5444. 2171019, 2171019, 2171019, 2597003, 2171019, 2621579, 2170880, 2170880, 2170880, 3162112, 2170880,
  5445. 2170880, 3182592, 3186688, 2170880, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 0,
  5446. 53264, 0, 18, 18, 24, 24, 0, 4337664, 28, 2170880, 2170880, 2170880, 2629632, 2170880, 2170880, 2170880,
  5447. 2170880, 2719744, 2744320, 2170880, 2170880, 2170880, 2834432, 2838528, 2170880, 2908160, 2170880,
  5448. 2170880, 2936832, 2215936, 2215936, 2215936, 2215936, 2719744, 2744320, 2215936, 2215936, 2215936,
  5449. 2834432, 2838528, 2215936, 2908160, 2215936, 2215936, 2936832, 2215936, 2215936, 2985984, 2215936,
  5450. 2994176, 2215936, 2215936, 3014656, 2215936, 3059712, 3076096, 3088384, 2215936, 2215936, 2215936,
  5451. 2215936, 2215936, 2215936, 2215936, 2445312, 2215936, 2465792, 2473984, 2215936, 2215936, 2215936,
  5452. 2215936, 2215936, 2215936, 2171166, 2171166, 2171166, 2171166, 2171166, 0, 0, 0, 2171166, 2171166,
  5453. 2171166, 2171166, 2171166, 2171166, 2171019, 2171019, 2494603, 2171019, 2171019, 2215936, 2215936,
  5454. 2215936, 3215360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2379776, 2170880, 2170880, 2170880, 2170880,
  5455. 2985984, 2170880, 2994176, 2170880, 2170880, 3016168, 2170880, 3059712, 3076096, 3088384, 2170880,
  5456. 2170880, 2170880, 2170880, 2170880, 2170880, 0, 53264, 0, 18, 18, 124, 124, 0, 128, 128, 2170880, 2170880,
  5457. 2170880, 3215360, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2486272,
  5458. 2170880, 2170880, 2506752, 2170880, 2170880, 2170880, 2535424, 2539520, 2170880, 2170880, 2588672,
  5459. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2920448,
  5460. 2170880, 2170880, 2170880, 2990080, 2170880, 2170880, 2170880, 2170880, 3051520, 2170880, 2170880,
  5461. 2170880, 2170880, 2170880, 2170880, 3170304, 0, 2387968, 2392064, 2170880, 2170880, 2433024, 2170880,
  5462. 2170880, 2170880, 3170304, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5463. 2486272, 2215936, 2215936, 2506752, 2215936, 2215936, 2215936, 2535424, 2539520, 2215936, 2215936,
  5464. 2588672, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0, 0, 0, 0, 0, 0,
  5465. 2174976, 136, 0, 2215936, 2215936, 2920448, 2215936, 2215936, 2215936, 2990080, 2215936, 2215936, 2215936,
  5466. 2215936, 3051520, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3108864, 2215936,
  5467. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3026944, 2215936, 2215936, 3063808,
  5468. 2215936, 2215936, 3112960, 2215936, 2215936, 2215936, 3170304, 0, 0, 0, 0, 0, 0, 2170880, 2170880,
  5469. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2453504, 2457600, 2170880, 2170880,
  5470. 2170880, 2486272, 2170880, 2170880, 2506752, 2170880, 2170880, 2170880, 2537049, 2539520, 2170880,
  5471. 2170880, 2588672, 2170880, 2170880, 2170880, 1508, 2170880, 2170880, 2170880, 1512, 2170880, 2920448,
  5472. 2170880, 2170880, 2170880, 2990080, 2170880, 2170880, 2170880, 2461696, 2170880, 2170880, 2170880,
  5473. 2510848, 2170880, 2170880, 2170880, 2170880, 2580480, 2170880, 2605056, 2637824, 2170880, 2170880, 18, 0,
  5474. 0, 0, 0, 0, 0, 0, 0, 2220032, 0, 0, 0, 0, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2686976, 2748416,
  5475. 2170880, 2170880, 2170880, 2924544, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5476. 3121152, 2170880, 2170880, 3145728, 3158016, 3166208, 2170880, 2420736, 2428928, 2170880, 2478080,
  5477. 2170880, 2170880, 2170880, 2170880, 0, 0, 2170880, 2170880, 2170880, 2170880, 2646016, 2670592, 0, 0,
  5478. 3145728, 3158016, 3166208, 2387968, 2392064, 2215936, 2215936, 2433024, 2215936, 2461696, 2215936,
  5479. 2215936, 2215936, 2510848, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2179072, 0, 0, 0, 0, 0, 0, 2170880,
  5480. 2215936, 2215936, 2580480, 2215936, 2605056, 2637824, 2215936, 2215936, 2686976, 2748416, 2215936,
  5481. 2215936, 2215936, 2924544, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2179072, 0, 0, 0, 0, 0, 286, 2170880,
  5482. 2215936, 2215936, 2215936, 2215936, 2215936, 3121152, 2215936, 2215936, 3145728, 3158016, 3166208,
  5483. 2387968, 2392064, 2170880, 2170880, 2433024, 2170880, 2461696, 2170880, 2170880, 2170880, 2510848,
  5484. 2170880, 2170880, 1625, 2170880, 2170880, 2580480, 2170880, 2605056, 2637824, 2170880, 647, 2170880,
  5485. 2170880, 2170880, 2400256, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5486. 2170880, 2170880, 2576384, 2170880, 2170880, 2170880, 2170880, 2170880, 2609152, 2170880, 2170880,
  5487. 2686976, 0, 0, 2748416, 2170880, 2170880, 0, 2170880, 2924544, 2170880, 2170880, 2170880, 2170880,
  5488. 2170880, 2170880, 0, 53264, 0, 18, 18, 24, 0, 0, 28, 28, 2170880, 3141632, 2215936, 2420736, 2428928,
  5489. 2215936, 2478080, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2646016,
  5490. 2670592, 2752512, 2756608, 2846720, 2961408, 2215936, 2998272, 2215936, 3010560, 2215936, 2215936,
  5491. 2215936, 3141632, 2170880, 2420736, 2428928, 2752512, 2756608, 0, 2846720, 2961408, 2170880, 2998272,
  5492. 2170880, 3010560, 2170880, 2170880, 2170880, 3141632, 2170880, 2170880, 2490368, 2215936, 2490368,
  5493. 2215936, 2215936, 2215936, 2547712, 2555904, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5494. 2215936, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2174976, 245760, 0, 3129344, 2170880, 2170880, 2490368,
  5495. 2170880, 2170880, 2170880, 0, 0, 2547712, 2555904, 2170880, 2170880, 2170880, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5496. 2220032, 0, 0, 45056, 0, 2584576, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2170880,
  5497. 2170880, 2170880, 2170880, 0, 0, 0, 2170880, 2170880, 2158592, 0, 0, 0, 0, 0, 0, 0, 0, 2220032, 0, 0, 0,
  5498. 0, 0, 0, 0, 0, 1482, 97, 97, 97, 97, 97, 97, 97, 1354, 97, 97, 97, 97, 97, 97, 97, 97, 1148, 97, 97, 97,
  5499. 97, 97, 97, 97, 2584576, 2170880, 2170880, 1512, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5500. 2441216, 2170880, 2527232, 2170880, 2600960, 2170880, 2850816, 2170880, 2170880, 2170880, 3022848,
  5501. 2215936, 2441216, 2215936, 2527232, 2215936, 2600960, 2215936, 2850816, 2215936, 2215936, 0, 0, 0, 0, 0,
  5502. 0, 2179072, 0, 0, 0, 0, 0, 287, 2170880, 2215936, 3022848, 2170880, 2441216, 2170880, 2527232, 0, 0,
  5503. 2170880, 2600960, 2170880, 0, 2850816, 2170880, 2170880, 2170880, 2170880, 2170880, 2523136, 2170880,
  5504. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2596864, 2170880, 2621440, 2170880, 2170880,
  5505. 2641920, 2170880, 2170880, 2170880, 3022848, 2170880, 2519040, 2170880, 2170880, 2170880, 2170880,
  5506. 2170880, 2215936, 2519040, 2215936, 2215936, 2215936, 2215936, 2215936, 2170880, 2170880, 2170880,
  5507. 2453504, 2457600, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2514944, 2170880, 2170880,
  5508. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2592768, 2170880, 2170880, 2519040, 0, 2024,
  5509. 2170880, 2170880, 0, 2170880, 2170880, 2170880, 2396160, 2170880, 2170880, 2170880, 2170880, 3018752,
  5510. 2396160, 2215936, 2215936, 2215936, 2215936, 3018752, 2396160, 0, 2024, 2170880, 2170880, 2170880,
  5511. 2170880, 3018752, 2170880, 2650112, 2965504, 2170880, 2215936, 2650112, 2965504, 2215936, 0, 0, 2170880,
  5512. 2650112, 2965504, 2170880, 2551808, 2170880, 2551808, 2215936, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730,
  5513. 106539, 41098, 45, 45, 141, 45, 45, 67, 67, 67, 67, 67, 224, 67, 67, 238, 67, 67, 67, 67, 67, 67, 67,
  5514. 1288, 67, 67, 67, 67, 67, 67, 67, 67, 67, 469, 67, 67, 67, 67, 67, 67, 0, 2551808, 2170880, 2170880,
  5515. 2215936, 0, 2170880, 2170880, 2215936, 0, 2170880, 2170880, 2215936, 0, 2170880, 2977792, 2977792, 0, 0,
  5516. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53264, 18, 49172, 57366, 24, 8192, 29, 102432, 127011, 110630,
  5517. 114730, 106539, 127011, 127011, 127011, 53264, 18, 18, 49172, 0, 0, 0, 24, 24, 24, 0, 28, 28, 28, 28,
  5518. 102432, 127, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 2170880, 2170880, 2170880, 2416640, 0, 0, 0, 0, 2220032,
  5519. 110630, 0, 0, 0, 114730, 106539, 136, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 0, 53264, 0,
  5520. 4256099, 4256099, 24, 24, 0, 28, 28, 2170880, 2461696, 2170880, 2170880, 2170880, 2510848, 2170880,
  5521. 2170880, 0, 2170880, 2170880, 2580480, 2170880, 2605056, 2637824, 2170880, 2170880, 2170880, 2547712,
  5522. 2555904, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3129344,
  5523. 2215936, 2215936, 543, 543, 545, 545, 0, 0, 2179072, 0, 550, 551, 551, 0, 287, 2171166, 2171166, 18, 0, 0,
  5524. 0, 0, 0, 0, 0, 0, 2220032, 0, 0, 645, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 45,
  5525. 149, 2584576, 2170880, 2170880, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2441216,
  5526. 2170880, 2527232, 2170880, 2600960, 2519040, 0, 0, 2170880, 2170880, 0, 2170880, 2170880, 2170880,
  5527. 2396160, 2170880, 2170880, 2170880, 2170880, 3018752, 2396160, 2215936, 2215936, 2215936, 2215936,
  5528. 3018752, 2396160, 0, 0, 2170880, 2170880, 2170880, 2170880, 3018752, 2170880, 2650112, 2965504, 53264, 18,
  5529. 49172, 57366, 24, 155648, 28, 102432, 155648, 155687, 114730, 106539, 0, 0, 155648, 53264, 18, 18, 49172,
  5530. 0, 57366, 0, 24, 24, 24, 0, 28, 28, 28, 28, 102432, 0, 0, 0, 0, 2220032, 0, 94208, 0, 0, 114730, 106539,
  5531. 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 0, 53264, 208896, 18, 278528, 24, 24, 0, 28, 28,
  5532. 53264, 18, 159765, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 0, 53264, 18, 18, 49172,
  5533. 0, 57366, 0, 24, 24, 24, 0, 28, 139394, 28, 28, 102432, 131, 0, 0, 0, 2220032, 110630, 0, 0, 0, 114730,
  5534. 106539, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 32768, 53264, 0, 18, 18, 24, 24, 0, 28,
  5535. 28, 0, 546, 0, 0, 2183168, 0, 0, 552, 832, 2170880, 2170880, 2170880, 2400256, 2170880, 2170880, 2170880,
  5536. 2170880, 2170880, 2609152, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2654208, 2170880,
  5537. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2215936, 2215936,
  5538. 2215936, 2215936, 2215936, 2215936, 3198976, 2215936, 0, 1084, 0, 1088, 0, 1092, 0, 0, 0, 0, 0, 41606, 0,
  5539. 0, 0, 0, 45, 45, 45, 45, 45, 937, 0, 0, 0, 0, 2220032, 110630, 0, 0, 0, 114730, 106539, 0, 2170880,
  5540. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3198976, 2170880, 0, 0, 644, 0, 0, 0,
  5541. 2215936, 3117056, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5542. 2215936, 2215936, 2215936, 0, 826, 0, 828, 0, 0, 2183168, 0, 0, 830, 0, 2170880, 2170880, 2170880,
  5543. 2400256, 2170880, 2170880, 2170880, 2170880, 2592768, 2170880, 2170880, 2170880, 2170880, 2633728,
  5544. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2711552, 2170880, 2170880, 2170880, 2170880,
  5545. 2170880, 2760704, 53264, 18, 49172, 57366, 24, 8192, 28, 172066, 172032, 110630, 172066, 106539, 0, 0,
  5546. 172032, 53264, 18, 18, 49172, 0, 57366, 0, 24, 24, 24, 16384, 28, 28, 28, 28, 102432, 0, 98304, 0, 0,
  5547. 2220032, 110630, 0, 0, 0, 0, 106539, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5548. 2170880, 3198976, 2170880, 0, 0, 45056, 0, 0, 0, 53264, 18, 49172, 57366, 25, 8192, 30, 102432, 0, 110630,
  5549. 114730, 106539, 0, 0, 176219, 53264, 18, 18, 49172, 0, 57366, 0, 124, 124, 124, 0, 128, 128, 128, 128,
  5550. 102432, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 2170880, 2170880, 2170880, 2416640, 0, 546, 0, 0, 2183168,
  5551. 0, 65536, 552, 0, 2170880, 2170880, 2170880, 2400256, 2170880, 2170880, 2170880, 2170880, 2646016,
  5552. 2670592, 2752512, 2756608, 2846720, 2961408, 2170880, 2998272, 2170880, 3010560, 2170880, 2170880,
  5553. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3198976, 2215936, 0, 0, 0, 0, 0, 0, 65536, 0, 0, 0,
  5554. 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 143, 45, 45, 67, 67, 67, 67, 67, 227, 67, 67, 67,
  5555. 67, 67, 67, 67, 67, 67, 1824, 67, 1826, 67, 67, 67, 67, 17, 18, 49172, 57366, 24, 8192, 28, 102432, 0,
  5556. 110630, 114730, 106539, 0, 0, 32768, 120, 121, 18, 18, 49172, 0, 57366, 0, 24, 24, 24, 0, 28, 28, 28, 28,
  5557. 102432, 67, 67, 37139, 37139, 24853, 24853, 0, 0, 2179072, 548, 0, 65820, 65820, 0, 287, 97, 0, 0, 97, 97,
  5558. 0, 97, 97, 97, 45, 45, 45, 45, 2033, 45, 67, 67, 67, 67, 0, 0, 97, 97, 97, 97, 45, 45, 67, 67, 0, 369, 0,
  5559. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 978, 0, 546, 70179, 0, 2183168, 0, 0, 552, 0,
  5560. 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1013, 67, 67, 67,
  5561. 67, 67, 67, 67, 67, 67, 67, 473, 67, 67, 67, 67, 483, 67, 67, 1025, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5562. 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 1119, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5563. 97, 97, 1359, 97, 97, 97, 67, 67, 1584, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 497, 67, 67,
  5564. 1659, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1667, 45, 45, 45, 45, 45, 169, 45, 45, 45, 45, 45, 45, 45, 45,
  5565. 45, 45, 45, 1668, 45, 45, 45, 45, 67, 67, 1694, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 774,
  5566. 67, 67, 1713, 97, 97, 97, 97, 97, 97, 97, 0, 97, 97, 1723, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45,
  5567. 1538, 45, 45, 45, 45, 45, 1559, 45, 45, 1561, 45, 45, 45, 45, 45, 45, 45, 687, 45, 45, 45, 45, 45, 45, 45,
  5568. 45, 448, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 1771, 1772, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97,
  5569. 97, 0, 0, 0, 97, 67, 67, 67, 67, 67, 1821, 67, 67, 67, 67, 67, 67, 1827, 67, 67, 67, 0, 0, 0, 0, 0, 0, 97,
  5570. 97, 1614, 97, 97, 97, 97, 97, 603, 97, 97, 605, 97, 97, 608, 97, 97, 97, 97, 0, 1532, 45, 45, 45, 45, 45,
  5571. 45, 45, 45, 45, 45, 450, 45, 45, 45, 45, 67, 67, 97, 97, 97, 97, 97, 97, 0, 0, 1839, 97, 97, 97, 97, 0, 0,
  5572. 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 97, 1883, 97, 1885, 97, 0,
  5573. 1888, 0, 97, 97, 0, 97, 97, 1848, 97, 97, 97, 97, 1852, 45, 45, 45, 45, 45, 45, 45, 384, 391, 45, 45, 45,
  5574. 45, 45, 45, 45, 385, 45, 45, 45, 45, 45, 45, 45, 45, 1237, 45, 45, 45, 45, 45, 45, 67, 0, 97, 97, 97, 97,
  5575. 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 1951, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67,
  5576. 67, 67, 1963, 97, 2023, 0, 97, 97, 0, 97, 97, 97, 45, 45, 45, 45, 45, 45, 67, 67, 1994, 67, 1995, 67, 67,
  5577. 67, 67, 67, 67, 97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 0, 0, 0, 0, 2220032, 110630, 0,
  5578. 0, 0, 114730, 106539, 137, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2793472,
  5579. 2805760, 2170880, 2830336, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5580. 2170880, 2170880, 2170880, 2170880, 3031040, 2170880, 3055616, 2170880, 2170880, 67, 67, 37139, 37139,
  5581. 24853, 24853, 0, 0, 281, 549, 0, 65820, 65820, 0, 287, 97, 0, 0, 97, 97, 0, 97, 97, 97, 45, 45, 2031,
  5582. 2032, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1769, 67, 0, 546, 70179, 549, 549, 0, 0,
  5583. 552, 0, 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 1858, 45, 641, 0, 0, 0, 0, 41606, 926, 0, 0,
  5584. 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 456, 67, 0, 0, 0, 1313, 0, 0, 0, 1096, 1319, 0,
  5585. 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 97, 1110, 97, 97, 97, 97, 67, 67, 67, 67, 1301, 1476, 0, 0, 0, 0,
  5586. 1307, 1478, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 1486, 97, 1487, 97, 1313, 1480, 0, 0, 0, 0, 1319, 0,
  5587. 97, 97, 97, 97, 97, 97, 97, 97, 97, 566, 97, 97, 97, 97, 97, 97, 67, 67, 67, 1476, 0, 1478, 0, 1480, 0,
  5588. 97, 97, 97, 97, 97, 97, 97, 45, 1853, 45, 1855, 45, 45, 45, 45, 53264, 18, 49172, 57366, 26, 8192, 31,
  5589. 102432, 0, 110630, 114730, 106539, 0, 0, 225368, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630,
  5590. 114730, 106539, 0, 0, 32768, 53264, 18, 18, 49172, 163840, 57366, 0, 24, 24, 229376, 0, 28, 28, 28,
  5591. 229376, 102432, 0, 0, 0, 0, 2220167, 110630, 0, 0, 0, 114730, 106539, 0, 2171019, 2171019, 2171019,
  5592. 2171019, 2592907, 2171019, 2171019, 2171019, 2171019, 2633867, 2171019, 2171019, 2171019, 2171019,
  5593. 2171019, 2171019, 2654347, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5594. 2171019, 2171019, 2171019, 3117195, 2171019, 2171019, 2171019, 2171019, 2240641, 0, 0, 0, 0, 0, 0, 0, 0,
  5595. 368, 0, 140, 2171019, 2171019, 2171019, 2416779, 2424971, 2171019, 2171019, 2171019, 2171019, 2171019,
  5596. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2617483, 2171019, 2171019,
  5597. 2642059, 2171019, 2171019, 2171019, 2699403, 2171019, 2728075, 2171019, 2171019, 2171019, 2171019,
  5598. 2171019, 2171019, 2171019, 3215499, 2215936, 2215936, 2215936, 2215936, 2215936, 2437120, 2215936,
  5599. 2215936, 2171019, 2822283, 2171019, 2171019, 2855051, 2171019, 2171019, 2171019, 2912395, 2171019,
  5600. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 3002507, 2171019, 2171019, 2215936, 2215936,
  5601. 2494464, 2215936, 2215936, 2215936, 2171166, 2171166, 2416926, 2425118, 2171166, 2171166, 2171166,
  5602. 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166,
  5603. 2171166, 2171166, 2576670, 2171166, 2617630, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166,
  5604. 2691358, 2171166, 2707742, 2171166, 2715934, 2171166, 2724126, 2765086, 2171166, 2171166, 2797854,
  5605. 2171166, 2822430, 2171166, 2171166, 2855198, 2171166, 2171166, 2171166, 2912542, 2171166, 2171166,
  5606. 2171166, 2171166, 2171166, 2171166, 2171166, 2793758, 2806046, 2171166, 2830622, 2171166, 2171166,
  5607. 2171166, 2171166, 2171166, 2171166, 2171166, 3109150, 2171166, 2171166, 2171166, 2171166, 2171166,
  5608. 2171166, 2171166, 2171166, 2171166, 2543902, 2171166, 2171166, 2171166, 2171166, 2171166, 2629918,
  5609. 2793611, 2805899, 2171019, 2830475, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5610. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 0, 546, 0, 0, 2183168, 0,
  5611. 0, 552, 0, 2171166, 2171166, 2171166, 2400542, 2171166, 2171166, 2171166, 0, 2171166, 2171166, 2171166, 0,
  5612. 2171166, 2920734, 2171166, 2171166, 2171166, 2990366, 2171166, 2171166, 2171166, 2171166, 3117342,
  5613. 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166,
  5614. 2171166, 0, 53264, 0, 18, 18, 4329472, 2232445, 0, 2240641, 4337664, 2711691, 2171019, 2171019, 2171019,
  5615. 2171019, 2171019, 2760843, 2769035, 2789515, 2814091, 2171019, 2171019, 2171019, 2875531, 2904203,
  5616. 2171019, 2171019, 3092619, 2171019, 2171019, 3125387, 2171019, 2171019, 2171019, 2171019, 2171019,
  5617. 2171019, 2171019, 2171019, 2171019, 3199115, 2171019, 2215936, 2215936, 2215936, 2215936, 2215936,
  5618. 2215936, 2215936, 2215936, 2215936, 2453504, 2457600, 2215936, 2215936, 2215936, 2215936, 2215936,
  5619. 2215936, 2793472, 2805760, 2215936, 2830336, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5620. 2170880, 2170880, 2170880, 2170880, 2170880, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880,
  5621. 2170880, 2170880, 2170880, 2494464, 2170880, 2170880, 2171166, 2171166, 2634014, 2171166, 2171166,
  5622. 2171166, 2171166, 2171166, 2171166, 2711838, 2171166, 2171166, 2171166, 2171166, 2171166, 2760990,
  5623. 2769182, 2789662, 2814238, 2171166, 2171166, 2171166, 2875678, 2904350, 2171166, 2171166, 2171166,
  5624. 2171166, 2171166, 2171166, 2171166, 2171166, 3199262, 2171166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2379915,
  5625. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2445451, 2171019, 2465931, 2474123,
  5626. 2171019, 2171019, 3113099, 2171019, 2171019, 3133579, 2171019, 2171019, 2171019, 3162251, 2171019,
  5627. 2171019, 3182731, 3186827, 2171019, 2379776, 2879627, 2171019, 2916491, 2171019, 2171019, 2171019,
  5628. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 3027083, 2171019, 2171019, 3063947, 2699550,
  5629. 2171166, 2728222, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2879774, 2171166,
  5630. 2916638, 2171166, 2171166, 2171166, 2171166, 2171166, 2609438, 2171166, 2171166, 2171166, 2171166,
  5631. 2171166, 2171166, 2654494, 2171166, 2171166, 2171166, 2171166, 2171166, 2445598, 2171166, 2466078,
  5632. 2474270, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2523422, 2171019, 2437259, 2171019,
  5633. 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2543755,
  5634. 2171019, 2171019, 2171019, 2584715, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5635. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2908299, 2171019,
  5636. 2171019, 2936971, 2171019, 2171019, 2986123, 2171019, 2994315, 2171019, 2171019, 3014795, 2171019,
  5637. 3059851, 3076235, 3088523, 2171166, 2171166, 2986270, 2171166, 2994462, 2171166, 2171166, 3014942,
  5638. 2171166, 3059998, 3076382, 3088670, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 3027230,
  5639. 2171166, 2171166, 3064094, 2171166, 2171166, 3113246, 2171166, 2171166, 3133726, 2506891, 2171019,
  5640. 2171019, 2171019, 2535563, 2539659, 2171019, 2171019, 2588811, 2171019, 2171019, 2171019, 2171019,
  5641. 2171019, 2171019, 2171019, 2691211, 2171019, 2707595, 2171019, 2715787, 2171019, 2723979, 2764939,
  5642. 2171019, 2171019, 2797707, 2215936, 2215936, 3170304, 0, 0, 0, 0, 0, 0, 2171166, 2171166, 2171166,
  5643. 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2453790, 2457886, 2171166, 2171166, 2171166,
  5644. 2486558, 2171166, 2171166, 2507038, 2171166, 2171166, 2171166, 2535710, 2539806, 2171166, 2171166,
  5645. 2588958, 2171166, 2171166, 2171166, 2171166, 2515230, 2171166, 2171166, 2171166, 2171166, 2171166,
  5646. 2171166, 2171166, 2171166, 2593054, 2171166, 2171166, 2171166, 2171166, 3051806, 2171166, 2171166,
  5647. 2171166, 2171166, 2171166, 2171166, 3170590, 0, 2388107, 2392203, 2171019, 2171019, 2433163, 2171019,
  5648. 2461835, 2171019, 2171019, 2171019, 2510987, 2171019, 2171019, 2171019, 2171019, 2580619, 2171019,
  5649. 2605195, 2637963, 2171019, 2171019, 2171019, 2920587, 2171019, 2171019, 2171019, 2990219, 2171019,
  5650. 2171019, 2171019, 2171019, 3051659, 2171019, 2171019, 2171019, 2453643, 2457739, 2171019, 2171019,
  5651. 2171019, 2171019, 2171019, 2171019, 2515083, 2171019, 2171019, 2171019, 2171019, 2646155, 2670731,
  5652. 2752651, 2756747, 2846859, 2961547, 2171019, 2998411, 2171019, 3010699, 2171019, 2171019, 2687115,
  5653. 2748555, 2171019, 2171019, 2171019, 2924683, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5654. 2171019, 3121291, 2171019, 2171019, 2171019, 3170443, 2215936, 2215936, 2215936, 2215936, 2215936,
  5655. 2215936, 2215936, 2215936, 2486272, 2215936, 2215936, 2506752, 3145867, 3158155, 3166347, 2387968,
  5656. 2392064, 2215936, 2215936, 2433024, 2215936, 2461696, 2215936, 2215936, 2215936, 2510848, 2215936,
  5657. 2215936, 0, 0, 0, 0, 0, 0, 2179072, 0, 0, 0, 0, 0, 553, 2170880, 2215936, 2215936, 2215936, 2215936,
  5658. 2215936, 3121152, 2215936, 2215936, 3145728, 3158016, 3166208, 2388254, 2392350, 2171166, 2171166,
  5659. 2433310, 2171166, 2461982, 2171166, 2171166, 2171166, 2511134, 2171166, 2171166, 0, 2171166, 2171166,
  5660. 2580766, 2171166, 2605342, 2638110, 2171166, 2171166, 2171166, 2171166, 3031326, 2171166, 3055902,
  5661. 2171166, 2171166, 2171166, 2171166, 3092766, 2171166, 2171166, 3125534, 2171166, 2171166, 2171166,
  5662. 3162398, 2171166, 2171166, 3182878, 3186974, 2171166, 0, 0, 0, 2171019, 2171019, 2171019, 2171019,
  5663. 3109003, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5664. 2215936, 2215936, 2215936, 2400256, 2215936, 2215936, 2215936, 2215936, 2171166, 2687262, 0, 0, 2748702,
  5665. 2171166, 2171166, 0, 2171166, 2924830, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166,
  5666. 2597150, 2171166, 2621726, 2171166, 2171166, 2642206, 2171166, 2171166, 2171166, 2171166, 3121438,
  5667. 2171166, 2171166, 3146014, 3158302, 3166494, 2171019, 2420875, 2429067, 2171019, 2478219, 2171019,
  5668. 2171019, 2171019, 2171019, 2547851, 2556043, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5669. 2171019, 2171019, 2171019, 3129483, 2215936, 2171019, 3141771, 2215936, 2420736, 2428928, 2215936,
  5670. 2478080, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2646016, 2670592,
  5671. 2752512, 2756608, 2846720, 2961408, 2215936, 2998272, 2215936, 3010560, 2215936, 2215936, 2215936,
  5672. 3141632, 2171166, 2421022, 2429214, 2171166, 2478366, 2171166, 2171166, 2171166, 2171166, 0, 0, 2171166,
  5673. 2171166, 2171166, 2171166, 2646302, 2670878, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 0, 45, 45,
  5674. 45, 45, 45, 1405, 1406, 45, 45, 45, 45, 1409, 45, 45, 45, 45, 45, 1415, 45, 45, 45, 45, 45, 45, 45, 45,
  5675. 45, 45, 1238, 45, 45, 45, 45, 67, 2752798, 2756894, 0, 2847006, 2961694, 2171166, 2998558, 2171166,
  5676. 3010846, 2171166, 2171166, 2171166, 3141918, 2171019, 2171019, 2490507, 3129344, 2171166, 2171166,
  5677. 2490654, 2171166, 2171166, 2171166, 0, 0, 2547998, 2556190, 2171166, 2171166, 2171166, 0, 0, 0, 0, 37,
  5678. 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 45, 45, 167, 45, 45, 45, 45, 185, 187, 45, 45, 198, 45,
  5679. 45, 0, 2171166, 2171166, 2171166, 2171166, 2171166, 2171166, 3129630, 2171019, 2171019, 2171019, 2171019,
  5680. 2171019, 2171019, 2171019, 2171019, 2576523, 2171019, 2171019, 2171019, 2171019, 2171019, 2609291,
  5681. 2171019, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3002368, 2215936, 2215936, 2171166,
  5682. 2171166, 2494750, 2171166, 2171166, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 45,
  5683. 147, 2584576, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2171166, 2171166, 2171166,
  5684. 2171166, 0, 0, 0, 2171166, 2171166, 2171166, 2171166, 0, 0, 0, 2171166, 2171166, 2171166, 3002654,
  5685. 2171166, 2171166, 2171019, 2171019, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5686. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2175257, 0, 0, 2584862,
  5687. 2171166, 2171166, 0, 0, 2171166, 2171166, 2171166, 2171166, 2171166, 2171019, 2441355, 2171019, 2527371,
  5688. 2171019, 2601099, 2171019, 2850955, 2171019, 2171019, 2171019, 3022987, 2215936, 2441216, 2215936,
  5689. 2527232, 2215936, 2600960, 2215936, 2850816, 2215936, 2215936, 0, 0, 0, 0, 0, 0, 2179072, 0, 0, 0, 0,
  5690. 69632, 287, 2170880, 2215936, 3022848, 2171166, 2441502, 2171166, 2527518, 0, 0, 2171166, 2601246,
  5691. 2171166, 0, 2851102, 2171166, 2171166, 2171166, 2171166, 2720030, 2744606, 2171166, 2171166, 2171166,
  5692. 2834718, 2838814, 2171166, 2908446, 2171166, 2171166, 2937118, 3023134, 2171019, 2519179, 2171019,
  5693. 2171019, 2171019, 2171019, 2171019, 2215936, 2519040, 2215936, 2215936, 2215936, 2215936, 2215936,
  5694. 2171166, 2171166, 2171166, 3215646, 0, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019, 2171019,
  5695. 2171019, 2486411, 2171019, 2171019, 2171019, 2629771, 2171019, 2171019, 2171019, 2171019, 2719883,
  5696. 2744459, 2171019, 2171019, 2171019, 2834571, 2838667, 2171019, 2519326, 0, 0, 2171166, 2171166, 0,
  5697. 2171166, 2171166, 2171166, 2396299, 2171019, 2171019, 2171019, 2171019, 3018891, 2396160, 2215936,
  5698. 2215936, 2215936, 2215936, 3018752, 2396446, 0, 0, 2171166, 2171166, 2171166, 2171166, 3019038, 2171019,
  5699. 2650251, 2965643, 2171019, 2215936, 2650112, 2965504, 2215936, 0, 0, 2171166, 2650398, 2965790, 2171166,
  5700. 2551947, 2171019, 2551808, 2215936, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 144,
  5701. 45, 45, 67, 67, 67, 67, 67, 228, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1929, 97, 97, 97, 97, 0, 0, 0,
  5702. 2552094, 2171166, 2171019, 2215936, 0, 2171166, 2171019, 2215936, 0, 2171166, 2171019, 2215936, 0,
  5703. 2171166, 2977931, 2977792, 2978078, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 1321, 97, 131072, 0, 0,
  5704. 0, 0, 0, 0, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 0, 53264, 0, 18, 18, 24, 24, 0,
  5705. 28, 28, 0, 140, 0, 2379776, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2445312,
  5706. 2170880, 2465792, 2473984, 2170880, 2170880, 2170880, 2584576, 2170880, 2170880, 2170880, 2170880,
  5707. 2170880, 2170880, 2170880, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936,
  5708. 2215936, 2170880, 2170880, 2170880, 3162112, 2170880, 2170880, 3182592, 3186688, 2170880, 0, 140, 0,
  5709. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3002368, 2170880, 2170880, 2215936,
  5710. 2215936, 2494464, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 3215360, 544, 0, 0, 0, 544, 0,
  5711. 546, 0, 0, 0, 546, 0, 0, 2183168, 0, 0, 552, 0, 2170880, 2170880, 2170880, 2400256, 2170880, 2170880,
  5712. 2170880, 0, 2170880, 2170880, 2170880, 0, 2170880, 2920448, 2170880, 2170880, 2170880, 2990080, 2170880,
  5713. 2170880, 552, 0, 0, 0, 552, 0, 287, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2437120, 2170880,
  5714. 2170880, 18, 0, 0, 0, 0, 0, 0, 0, 0, 2220032, 0, 0, 644, 0, 2215936, 2215936, 3170304, 544, 0, 546, 0,
  5715. 552, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3198976, 2170880, 0, 0, 0,
  5716. 140, 0, 0, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 249856, 110630, 114730, 106539, 0, 0, 32768,
  5717. 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 151640, 53264, 18, 18,
  5718. 49172, 0, 57366, 0, 24, 24, 24, 0, 28, 28, 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2170880, 2170880,
  5719. 2170880, 2416640, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 253952, 110630, 114730, 106539, 0, 0,
  5720. 32856, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 192512, 53264, 18,
  5721. 18, 49172, 0, 57366, 0, 2232445, 184320, 2232445, 0, 2240641, 2240641, 184320, 2240641, 102432, 0, 0, 0,
  5722. 221184, 2220032, 110630, 0, 0, 0, 114730, 106539, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5723. 2170880, 3108864, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5724. 2170880, 2215936, 0, 0, 0, 45056, 0, 0, 0, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5725. 0, 53264, 0, 18, 18, 24, 24, 0, 127, 127, 53264, 18, 49172, 258071, 24, 8192, 28, 102432, 0, 110630,
  5726. 114730, 106539, 0, 0, 32768, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0,
  5727. 0, 204800, 53264, 18, 49172, 57366, 24, 27, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 0, 53264, 18,
  5728. 49172, 57366, 24, 8192, 28, 33, 0, 33, 33, 33, 0, 0, 0, 53264, 18, 18, 49172, 0, 57366, 0, 24, 24, 24,
  5729. 16384, 28, 28, 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 2170880, 2170880, 2170880, 2416640, 67, 67,
  5730. 37139, 37139, 24853, 24853, 0, 70179, 0, 0, 0, 65820, 65820, 369, 287, 97, 0, 0, 97, 97, 0, 97, 97, 97,
  5731. 45, 2030, 45, 45, 45, 45, 67, 1573, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1699, 67, 67, 67, 67,
  5732. 25403, 546, 70179, 0, 0, 66365, 66365, 552, 0, 97, 97, 97, 97, 97, 97, 97, 97, 1355, 97, 97, 97, 1358, 97,
  5733. 97, 97, 641, 0, 0, 0, 925, 41606, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 1187, 45, 45, 45, 45, 45, 0,
  5734. 1480, 0, 0, 0, 0, 1319, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 592, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5735. 97, 1531, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1680, 45, 45, 45, 641, 0, 924, 0, 925, 41606, 0,
  5736. 0, 0, 0, 45, 45, 45, 45, 45, 45, 1186, 45, 45, 45, 45, 45, 45, 67, 67, 37139, 37139, 24853, 24853, 0,
  5737. 70179, 282, 0, 0, 65820, 65820, 369, 287, 97, 0, 0, 97, 97, 0, 97, 2028, 97, 45, 45, 45, 45, 45, 45, 67,
  5738. 67, 67, 67, 67, 67, 67, 67, 67, 67, 1767, 67, 67, 67, 0, 0, 0, 0, 0, 0, 1612, 97, 97, 97, 97, 97, 97, 0,
  5739. 1785, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 1790, 97, 0, 0, 2170880, 2170880, 3051520, 2170880,
  5740. 2170880, 2170880, 2170880, 2170880, 2170880, 3170304, 241664, 2387968, 2392064, 2170880, 2170880, 2433024,
  5741. 53264, 19, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 274432, 53264, 18, 49172,
  5742. 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 270336, 53264, 18, 49172, 57366, 24, 8192,
  5743. 28, 102432, 0, 110630, 114730, 106539, 0, 0, 1134711, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0,
  5744. 1126440, 1126440, 1126440, 0, 0, 1126400, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 36, 110630,
  5745. 114730, 106539, 0, 0, 217088, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0,
  5746. 0, 94, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 96, 53264, 18,
  5747. 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 24666, 53264, 18, 18, 49172, 0,
  5748. 57366, 0, 24, 24, 24, 126, 28, 28, 28, 28, 102432, 53264, 122, 123, 49172, 0, 57366, 0, 24, 24, 24, 0, 28,
  5749. 28, 28, 28, 102432, 2170880, 2170880, 4256099, 0, 0, 0, 0, 0, 0, 0, 0, 2220032, 0, 0, 0, 0, 0, 0, 0, 0,
  5750. 1319, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 1109, 97, 97, 97, 97, 1113, 132, 0, 0, 0, 37, 110630, 0, 0,
  5751. 0, 114730, 106539, 41098, 45, 45, 45, 146, 150, 45, 45, 45, 45, 45, 175, 45, 180, 45, 186, 45, 189, 45,
  5752. 45, 203, 67, 256, 67, 67, 270, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 97, 97, 293, 297,
  5753. 97, 97, 97, 97, 97, 322, 97, 327, 97, 333, 97, 0, 0, 97, 2026, 0, 2027, 97, 97, 45, 45, 45, 45, 45, 45,
  5754. 67, 67, 67, 1685, 67, 67, 67, 67, 67, 67, 67, 1690, 67, 336, 97, 97, 350, 97, 97, 0, 53264, 0, 18, 18, 24,
  5755. 24, 356, 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 140, 2170880, 2170880, 2170880, 2416640, 2424832, 2170880,
  5756. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  5757. 2170880, 2617344, 2170880, 45, 439, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67,
  5758. 67, 67, 67, 67, 67, 67, 525, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  5759. 0, 97, 97, 97, 97, 622, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1524, 97, 97, 1527, 369, 648, 45,
  5760. 45, 45, 45, 45, 45, 45, 45, 45, 659, 45, 45, 45, 45, 408, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5761. 1239, 45, 45, 45, 67, 729, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5762. 67, 67, 67, 762, 67, 746, 67, 67, 67, 67, 67, 67, 67, 67, 67, 759, 67, 67, 67, 67, 0, 0, 0, 1477, 0, 1086,
  5763. 0, 0, 0, 1479, 0, 1090, 67, 67, 796, 67, 67, 799, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1291,
  5764. 67, 67, 67, 811, 67, 67, 67, 67, 67, 816, 67, 67, 67, 67, 67, 67, 67, 37689, 544, 25403, 546, 70179, 0, 0,
  5765. 66365, 66365, 552, 833, 97, 97, 97, 97, 97, 97, 97, 97, 1380, 0, 0, 0, 45, 45, 45, 45, 45, 1185, 45, 45,
  5766. 45, 45, 45, 45, 45, 386, 45, 45, 45, 45, 45, 45, 45, 45, 1810, 45, 45, 45, 45, 45, 45, 67, 97, 97, 844,
  5767. 97, 97, 97, 97, 97, 97, 97, 97, 97, 857, 97, 97, 97, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5768. 97, 45, 45, 45, 97, 97, 97, 894, 97, 97, 897, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 0, 1382, 45, 45,
  5769. 45, 97, 909, 97, 97, 97, 97, 97, 914, 97, 97, 97, 97, 97, 97, 97, 923, 67, 67, 1079, 67, 67, 67, 67, 67,
  5770. 37689, 1085, 25403, 1089, 66365, 1093, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 45,
  5771. 148, 1114, 97, 97, 97, 97, 97, 97, 1122, 97, 97, 97, 97, 97, 97, 97, 97, 97, 606, 97, 97, 97, 97, 97, 97,
  5772. 97, 97, 97, 97, 1173, 97, 97, 97, 97, 97, 12288, 0, 925, 0, 1179, 0, 0, 0, 0, 37, 110630, 0, 0, 0, 114730,
  5773. 106539, 41098, 45, 45, 145, 45, 45, 67, 67, 67, 67, 67, 1762, 67, 67, 67, 1766, 67, 67, 67, 67, 67, 67,
  5774. 528, 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 1934, 67, 67, 1255, 67, 67, 67, 67, 67,
  5775. 67, 67, 67, 67, 67, 67, 67, 67, 1035, 67, 67, 67, 67, 67, 67, 1297, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0,
  5776. 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1111, 97, 97, 97, 97, 97, 97, 1327, 97, 97, 97, 97, 97, 97, 97,
  5777. 97, 97, 97, 97, 97, 33344, 97, 97, 97, 1335, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5778. 97, 0, 97, 97, 1377, 97, 97, 97, 97, 97, 97, 0, 1179, 0, 45, 45, 45, 45, 670, 45, 45, 45, 45, 45, 45, 45,
  5779. 45, 45, 45, 45, 430, 45, 45, 45, 45, 67, 67, 1438, 67, 67, 1442, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5780. 67, 67, 1592, 67, 67, 67, 1451, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1458, 67, 67, 67, 67, 0, 0, 1305,
  5781. 0, 0, 0, 0, 0, 1311, 0, 0, 0, 1317, 0, 0, 0, 0, 0, 0, 0, 97, 97, 1322, 97, 97, 1491, 97, 97, 1495, 97, 97,
  5782. 97, 97, 97, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1551, 45, 1553, 45,
  5783. 1504, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1513, 97, 97, 97, 97, 0, 45, 45, 45, 45, 1536, 45, 45, 45,
  5784. 45, 1540, 45, 67, 67, 67, 67, 67, 1585, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1700, 67, 67, 67,
  5785. 97, 1648, 97, 97, 97, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1541, 0, 97, 97, 97,
  5786. 97, 0, 1940, 0, 97, 97, 97, 97, 97, 97, 45, 45, 2011, 45, 45, 45, 2015, 67, 67, 2017, 67, 67, 67, 2021,
  5787. 97, 67, 67, 812, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 37689, 544, 97, 97, 97, 910, 97, 97, 97, 97,
  5788. 97, 97, 97, 97, 97, 97, 97, 923, 0, 0, 0, 45, 45, 45, 45, 1184, 45, 45, 45, 45, 1188, 45, 45, 45, 45,
  5789. 1414, 45, 45, 45, 1417, 45, 1419, 45, 45, 45, 45, 45, 443, 45, 45, 45, 45, 45, 45, 453, 45, 45, 67, 67,
  5790. 67, 67, 1244, 67, 67, 67, 67, 1248, 67, 67, 67, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 282, 41098,
  5791. 65820, 97, 1324, 97, 97, 97, 97, 1328, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 930, 45, 45, 45, 45, 97,
  5792. 97, 97, 97, 1378, 97, 97, 97, 97, 0, 1179, 0, 45, 45, 45, 45, 671, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5793. 45, 975, 45, 45, 45, 45, 67, 67, 1923, 67, 1925, 67, 67, 1927, 67, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97,
  5794. 97, 1985, 45, 45, 45, 45, 45, 45, 1560, 45, 45, 45, 45, 45, 45, 45, 45, 45, 946, 45, 45, 950, 45, 45, 45,
  5795. 0, 97, 97, 97, 1939, 0, 0, 0, 97, 1943, 97, 97, 1945, 97, 45, 45, 45, 669, 45, 45, 45, 45, 45, 45, 45, 45,
  5796. 45, 45, 45, 45, 990, 45, 45, 45, 67, 257, 67, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820,
  5797. 337, 97, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 356, 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 370,
  5798. 2170880, 2170880, 2170880, 2416640, 401, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5799. 67, 67, 459, 461, 67, 67, 67, 67, 67, 67, 67, 67, 475, 67, 480, 67, 67, 67, 67, 67, 67, 1054, 67, 67, 67,
  5800. 67, 67, 67, 67, 67, 67, 67, 1698, 67, 67, 67, 67, 67, 484, 67, 67, 487, 67, 67, 67, 67, 67, 67, 67, 67,
  5801. 67, 67, 67, 67, 67, 1459, 67, 67, 97, 556, 558, 97, 97, 97, 97, 97, 97, 97, 97, 572, 97, 577, 97, 97, 0,
  5802. 0, 1896, 97, 97, 97, 97, 97, 97, 1903, 45, 45, 45, 45, 983, 45, 45, 45, 45, 988, 45, 45, 45, 45, 45, 45,
  5803. 1195, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1549, 45, 45, 45, 45, 45, 581, 97, 97, 584, 97, 97, 97, 97,
  5804. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1153, 97, 97, 369, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 662,
  5805. 45, 45, 45, 684, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1004, 45, 45, 45, 67, 67, 67, 749, 67,
  5806. 67, 67, 67, 67, 67, 67, 67, 67, 761, 67, 67, 67, 67, 67, 67, 1068, 67, 67, 67, 1071, 67, 67, 67, 67, 1076,
  5807. 794, 795, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, 544, 97, 97, 97, 97, 847, 97, 97, 97,
  5808. 97, 97, 97, 97, 97, 97, 859, 97, 0, 0, 2025, 97, 20480, 97, 97, 2029, 45, 45, 45, 45, 45, 45, 67, 67, 67,
  5809. 1575, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1775, 67, 67, 67, 97, 97, 97, 97, 892, 893, 97, 97, 97, 97, 97,
  5810. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1515, 97, 993, 994, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5811. 45, 45, 45, 992, 67, 67, 67, 1284, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1607, 67, 67, 97,
  5812. 1364, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 596, 97, 45, 1556, 1557, 45, 45, 45, 45, 45,
  5813. 45, 45, 45, 45, 45, 45, 45, 45, 45, 696, 45, 1596, 1597, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5814. 67, 67, 499, 67, 97, 97, 97, 1621, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1346, 97, 97, 97,
  5815. 97, 1740, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1678, 45, 45, 45, 45, 45, 67, 97, 97,
  5816. 97, 97, 97, 97, 1836, 0, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 1984, 97, 45, 45, 45, 45, 45, 45, 1808, 45,
  5817. 45, 45, 45, 45, 45, 45, 45, 67, 739, 67, 67, 67, 67, 67, 744, 45, 45, 1909, 45, 45, 45, 45, 45, 45, 45,
  5818. 67, 1917, 67, 1918, 67, 67, 67, 67, 67, 67, 1247, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 532, 67, 67, 67,
  5819. 67, 67, 67, 1922, 67, 67, 67, 67, 67, 67, 67, 97, 1930, 97, 1931, 97, 0, 0, 97, 97, 0, 97, 97, 97, 45, 45,
  5820. 45, 45, 45, 45, 67, 67, 67, 67, 1576, 67, 67, 67, 67, 1580, 67, 67, 0, 97, 97, 1938, 97, 0, 0, 0, 97, 97,
  5821. 97, 97, 97, 97, 45, 45, 45, 699, 45, 45, 45, 704, 45, 45, 45, 45, 45, 45, 45, 45, 987, 45, 45, 45, 45, 45,
  5822. 45, 45, 67, 67, 97, 97, 97, 97, 0, 0, 97, 97, 97, 2006, 97, 97, 97, 97, 0, 45, 1533, 45, 45, 45, 45, 45,
  5823. 45, 45, 45, 45, 1416, 45, 45, 45, 45, 45, 45, 45, 45, 722, 723, 45, 45, 45, 45, 45, 45, 2045, 67, 67, 67,
  5824. 2047, 0, 0, 97, 97, 97, 2051, 45, 45, 67, 67, 0, 0, 0, 0, 925, 41606, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45,
  5825. 409, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1957, 45, 67, 67, 67, 67, 67, 1836, 97, 97, 45, 67, 0, 97, 45,
  5826. 67, 0, 97, 45, 67, 0, 97, 45, 45, 67, 67, 67, 1761, 67, 67, 67, 1764, 67, 67, 67, 67, 67, 67, 67, 494, 67,
  5827. 67, 67, 67, 67, 67, 67, 67, 67, 787, 67, 67, 67, 67, 67, 67, 45, 45, 420, 45, 45, 422, 45, 45, 425, 45,
  5828. 45, 45, 45, 45, 45, 45, 387, 45, 45, 45, 45, 397, 45, 45, 45, 67, 460, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5829. 67, 67, 67, 67, 67, 515, 67, 485, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 498, 67, 67, 67, 67,
  5830. 67, 97, 0, 2039, 97, 97, 97, 97, 97, 45, 45, 45, 45, 1426, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5831. 1689, 67, 67, 67, 97, 557, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 612, 97, 582, 97, 97,
  5832. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 595, 97, 97, 97, 97, 97, 896, 97, 97, 97, 97, 97, 97, 97, 97,
  5833. 97, 97, 885, 97, 97, 97, 97, 97, 45, 939, 45, 45, 45, 45, 943, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5834. 1916, 67, 67, 67, 67, 67, 45, 67, 67, 67, 67, 67, 67, 67, 1015, 67, 67, 67, 67, 1019, 67, 67, 67, 67, 67,
  5835. 67, 1271, 67, 67, 67, 67, 67, 67, 1277, 67, 67, 67, 67, 67, 67, 1287, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5836. 67, 804, 67, 67, 67, 67, 67, 1077, 67, 67, 67, 67, 67, 67, 67, 37689, 0, 25403, 0, 66365, 0, 0, 0, 0, 0,
  5837. 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2437120, 2170880, 2170880, 2170880, 2170880,
  5838. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2543616, 2170880, 2170880, 2170880,
  5839. 2170880, 2170880, 2629632, 1169, 97, 1171, 97, 97, 97, 97, 97, 97, 97, 12288, 0, 925, 0, 1179, 0, 0, 0, 0,
  5840. 925, 41606, 0, 0, 0, 0, 45, 45, 45, 45, 936, 45, 45, 67, 67, 214, 67, 220, 67, 67, 233, 67, 243, 67, 248,
  5841. 67, 67, 67, 67, 67, 67, 1298, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 1617, 97, 0, 0, 0, 45,
  5842. 45, 45, 1183, 45, 45, 45, 45, 45, 45, 45, 45, 45, 393, 45, 45, 45, 45, 45, 45, 67, 67, 1243, 67, 67, 67,
  5843. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1074, 67, 67, 1281, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5844. 67, 67, 67, 67, 776, 1323, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 907, 45, 1412, 45,
  5845. 45, 45, 45, 45, 45, 45, 1418, 45, 45, 45, 45, 45, 45, 686, 45, 45, 45, 690, 45, 45, 695, 45, 45, 67, 67,
  5846. 67, 67, 67, 1465, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 1712, 97, 97, 97, 97, 1741, 97,
  5847. 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 426, 45, 45, 45, 45, 45, 45, 67, 67, 67, 1924, 67, 67, 67, 67,
  5848. 67, 97, 97, 97, 97, 97, 0, 0, 97, 97, 1983, 97, 97, 45, 45, 1987, 45, 1988, 45, 0, 97, 97, 97, 97, 0, 0,
  5849. 0, 1942, 97, 97, 97, 97, 97, 45, 45, 45, 700, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 711, 45, 45, 153,
  5850. 45, 45, 166, 45, 176, 45, 181, 45, 45, 188, 191, 196, 45, 204, 255, 258, 263, 67, 271, 67, 67, 0, 37139,
  5851. 24853, 0, 0, 0, 282, 41098, 65820, 97, 97, 97, 294, 97, 300, 97, 97, 313, 97, 323, 97, 328, 97, 97, 335,
  5852. 338, 343, 97, 351, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 356, 28, 28, 0, 0, 0, 0, 0, 0, 0, 0, 41098, 0,
  5853. 140, 45, 45, 45, 45, 1404, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1411, 67, 67, 486, 67, 67, 67, 67, 67,
  5854. 67, 67, 67, 67, 67, 67, 67, 67, 1251, 67, 67, 501, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 513,
  5855. 67, 67, 67, 67, 67, 67, 1443, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1263, 67, 67, 67, 67, 67, 97, 97,
  5856. 583, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1526, 97, 598, 97, 97, 97, 97, 97, 97, 97,
  5857. 97, 97, 97, 97, 97, 610, 97, 97, 0, 97, 97, 1796, 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 1744,
  5858. 45, 45, 45, 369, 0, 651, 45, 653, 45, 654, 45, 656, 45, 45, 45, 660, 45, 45, 45, 45, 1558, 45, 45, 45, 45,
  5859. 45, 45, 45, 45, 1566, 45, 45, 681, 45, 683, 45, 45, 45, 45, 45, 45, 45, 45, 691, 692, 694, 45, 45, 45,
  5860. 716, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 709, 45, 45, 712, 45, 714, 45, 45, 45, 718, 45, 45,
  5861. 45, 45, 45, 45, 45, 726, 45, 45, 45, 733, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5862. 1691, 67, 67, 747, 67, 67, 67, 67, 67, 67, 67, 67, 67, 760, 67, 67, 67, 0, 0, 0, 0, 0, 0, 97, 1613, 97,
  5863. 97, 97, 97, 97, 97, 1509, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 1179, 0, 45, 45, 45, 45, 67, 764, 67, 67,
  5864. 67, 67, 768, 67, 770, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 0, 0, 0, 1977, 67, 778, 779, 781,
  5865. 67, 67, 67, 67, 67, 67, 788, 789, 67, 67, 792, 793, 67, 67, 67, 813, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5866. 824, 37689, 544, 25403, 546, 70179, 0, 0, 66365, 66365, 552, 0, 836, 97, 838, 97, 839, 97, 841, 97, 97,
  5867. 97, 845, 97, 97, 97, 97, 97, 97, 97, 97, 97, 858, 97, 97, 0, 1728, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97,
  5868. 97, 97, 97, 97, 45, 1802, 45, 97, 97, 862, 97, 97, 97, 97, 866, 97, 868, 97, 97, 97, 97, 97, 97, 0, 0, 97,
  5869. 97, 1788, 97, 97, 97, 0, 0, 97, 97, 876, 877, 879, 97, 97, 97, 97, 97, 97, 886, 887, 97, 97, 890, 891, 97,
  5870. 97, 97, 97, 97, 97, 97, 899, 97, 97, 97, 903, 97, 97, 97, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97,
  5871. 1646, 97, 97, 97, 97, 911, 97, 97, 97, 97, 97, 97, 97, 97, 97, 922, 923, 45, 955, 45, 957, 45, 45, 45, 45,
  5872. 45, 45, 45, 45, 45, 45, 45, 45, 195, 45, 45, 45, 45, 45, 981, 982, 45, 45, 45, 45, 45, 45, 989, 45, 45,
  5873. 45, 45, 45, 170, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 411, 45, 45, 45, 45, 45, 67, 1023, 67, 67, 67,
  5874. 67, 67, 67, 1031, 67, 1033, 67, 67, 67, 67, 67, 67, 67, 817, 819, 67, 67, 67, 67, 67, 37689, 544, 67,
  5875. 1065, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 516, 67, 67, 1078, 67, 67, 1081, 1082, 67,
  5876. 67, 37689, 0, 25403, 0, 66365, 0, 0, 0, 0, 0, 0, 0, 0, 2171166, 2171166, 2171166, 2171166, 2171166,
  5877. 2437406, 2171166, 2171166, 97, 1115, 97, 1117, 97, 97, 97, 97, 97, 97, 1125, 97, 1127, 97, 97, 97, 0, 97,
  5878. 97, 97, 0, 97, 97, 97, 97, 1644, 97, 97, 97, 0, 97, 97, 97, 0, 97, 97, 1642, 97, 97, 97, 97, 97, 97, 625,
  5879. 97, 97, 97, 97, 97, 97, 97, 97, 97, 316, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1159, 97, 97, 97, 97, 97, 97,
  5880. 97, 97, 97, 97, 97, 97, 97, 1502, 97, 97, 97, 97, 97, 1172, 97, 97, 1175, 1176, 97, 97, 12288, 0, 925, 0,
  5881. 1179, 0, 0, 0, 0, 925, 41606, 0, 0, 0, 0, 45, 45, 45, 935, 45, 45, 45, 1233, 45, 45, 45, 1236, 45, 45, 45,
  5882. 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 1873, 67, 67, 45, 45, 1218, 45, 45, 45, 1223, 45, 45, 45, 45, 45,
  5883. 45, 45, 1230, 45, 45, 67, 67, 215, 219, 222, 67, 230, 67, 67, 244, 246, 249, 67, 67, 67, 67, 67, 67, 1882,
  5884. 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 1904, 45, 1905, 45, 67, 67, 67, 67, 67, 1258, 67,
  5885. 1260, 67, 67, 67, 67, 67, 67, 67, 67, 67, 495, 67, 67, 67, 67, 67, 67, 67, 67, 1283, 67, 67, 67, 67, 67,
  5886. 67, 67, 1290, 67, 67, 67, 67, 67, 67, 67, 818, 67, 67, 67, 67, 67, 67, 37689, 544, 67, 67, 1295, 67, 67,
  5887. 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 2174976, 0, 0, 97, 97, 97, 1326, 97, 97, 97, 97, 97, 97, 97, 97,
  5888. 97, 97, 97, 97, 97, 1514, 97, 97, 97, 97, 97, 1338, 97, 1340, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5889. 1500, 97, 97, 1503, 97, 1363, 97, 97, 97, 97, 97, 97, 97, 1370, 97, 97, 97, 97, 97, 97, 97, 563, 97, 97,
  5890. 97, 97, 97, 97, 578, 97, 1375, 97, 97, 97, 97, 97, 97, 97, 97, 0, 1179, 0, 45, 45, 45, 45, 685, 45, 45,
  5891. 45, 45, 45, 45, 45, 45, 45, 45, 45, 1003, 45, 45, 45, 45, 67, 67, 67, 1463, 67, 67, 67, 67, 67, 67, 67,
  5892. 67, 67, 67, 67, 67, 67, 1778, 97, 97, 97, 97, 97, 1518, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5893. 609, 97, 97, 97, 45, 1542, 45, 45, 45, 45, 45, 45, 45, 1548, 45, 45, 45, 45, 45, 1554, 45, 1570, 1571, 45,
  5894. 67, 67, 67, 67, 67, 67, 1578, 67, 67, 67, 67, 67, 67, 67, 1055, 67, 67, 67, 67, 67, 1061, 67, 67, 1582,
  5895. 67, 67, 67, 67, 67, 67, 67, 1588, 67, 67, 67, 67, 67, 1594, 67, 67, 67, 67, 67, 97, 2038, 0, 97, 97, 97,
  5896. 97, 97, 2044, 45, 45, 45, 995, 45, 45, 45, 45, 1000, 45, 45, 45, 45, 45, 45, 45, 1809, 45, 1811, 45, 45,
  5897. 45, 45, 45, 67, 1610, 1611, 67, 1476, 0, 1478, 0, 1480, 0, 97, 97, 97, 97, 97, 97, 1618, 1647, 1649, 97,
  5898. 97, 97, 1652, 97, 1654, 1655, 97, 0, 45, 45, 45, 1658, 45, 45, 67, 67, 216, 67, 67, 67, 67, 234, 67, 67,
  5899. 67, 67, 252, 254, 1845, 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 945, 45, 947, 45, 45,
  5900. 45, 45, 45, 67, 67, 67, 67, 67, 1881, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 1902, 45, 45, 45,
  5901. 45, 45, 45, 1908, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1921, 67, 67,
  5902. 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 0, 97, 1937, 97, 97, 1940, 0, 0, 97, 97, 97,
  5903. 97, 97, 97, 1947, 1948, 1949, 45, 45, 45, 1952, 45, 1954, 45, 45, 45, 45, 1959, 1960, 1961, 67, 67, 67,
  5904. 67, 67, 67, 1455, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 757, 67, 67, 67, 67, 67, 67, 1964, 67, 1966, 67,
  5905. 67, 67, 67, 1971, 1972, 1973, 97, 0, 0, 0, 97, 97, 1104, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 884, 97,
  5906. 97, 97, 889, 97, 97, 1978, 97, 0, 0, 1981, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 736, 45, 67, 67, 67,
  5907. 67, 67, 67, 67, 67, 67, 67, 67, 1018, 67, 67, 67, 45, 67, 67, 67, 67, 0, 2049, 97, 97, 97, 97, 45, 45, 67,
  5908. 67, 0, 0, 0, 0, 925, 41606, 0, 0, 0, 0, 45, 933, 45, 45, 45, 45, 1234, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5909. 45, 67, 97, 97, 288, 97, 97, 97, 97, 97, 97, 317, 97, 97, 97, 97, 97, 97, 0, 0, 97, 1787, 97, 97, 97, 97,
  5910. 0, 0, 45, 45, 378, 45, 45, 45, 45, 45, 390, 45, 45, 45, 45, 45, 45, 45, 424, 45, 45, 45, 431, 433, 45, 45,
  5911. 45, 67, 1050, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 518, 67, 97, 97, 97, 1144, 97, 97,
  5912. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 632, 97, 97, 97, 97, 97, 97, 97, 1367, 97, 97, 97, 97, 97, 97, 97,
  5913. 97, 97, 97, 97, 855, 97, 97, 97, 97, 67, 97, 97, 97, 97, 97, 97, 1837, 0, 97, 97, 97, 97, 97, 0, 0, 0,
  5914. 1897, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 1208, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 724, 45, 45,
  5915. 45, 45, 45, 97, 2010, 45, 45, 45, 45, 45, 45, 2016, 67, 67, 67, 67, 67, 67, 2022, 45, 2046, 67, 67, 67, 0,
  5916. 0, 2050, 97, 97, 97, 45, 45, 67, 67, 0, 0, 0, 0, 925, 41606, 0, 0, 0, 0, 932, 45, 45, 45, 45, 45, 1222,
  5917. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1227, 45, 45, 45, 45, 45, 133, 0, 0, 0, 37, 110630, 0, 0, 0,
  5918. 114730, 106539, 41098, 45, 45, 45, 45, 701, 702, 45, 45, 705, 706, 45, 45, 45, 45, 45, 45, 703, 45, 45,
  5919. 45, 45, 45, 45, 45, 45, 45, 719, 45, 45, 45, 45, 45, 725, 45, 45, 45, 369, 649, 45, 45, 45, 45, 45, 45,
  5920. 45, 45, 45, 45, 45, 45, 45, 45, 45, 1216, 25403, 546, 70179, 0, 0, 66365, 66365, 552, 834, 97, 97, 97, 97,
  5921. 97, 97, 97, 1342, 97, 97, 97, 97, 97, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 1799, 97, 97, 45, 45, 45,
  5922. 1569, 45, 45, 45, 1572, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 1306, 0, 67, 67, 67, 1598,
  5923. 67, 67, 67, 67, 67, 67, 67, 67, 1606, 67, 67, 1609, 97, 97, 97, 1650, 97, 97, 1653, 97, 97, 97, 0, 45, 45,
  5924. 1657, 45, 45, 45, 1206, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1421, 45, 45, 45, 1703, 67, 67,
  5925. 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 1711, 97, 97, 0, 1895, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45,
  5926. 45, 958, 45, 960, 45, 45, 45, 45, 45, 45, 45, 45, 1913, 45, 45, 1915, 67, 67, 67, 67, 67, 67, 67, 466, 67,
  5927. 67, 67, 67, 67, 67, 481, 67, 45, 1749, 45, 45, 45, 45, 45, 45, 45, 45, 1755, 45, 45, 45, 45, 45, 173, 45,
  5928. 45, 45, 45, 45, 45, 45, 45, 45, 45, 974, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1773, 67, 67, 67, 67, 67,
  5929. 67, 67, 97, 97, 97, 97, 1886, 0, 0, 0, 97, 97, 67, 2035, 2036, 67, 67, 97, 0, 0, 97, 2041, 2042, 97, 97,
  5930. 45, 45, 45, 45, 1662, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1397, 45, 45, 45, 45, 151, 45, 45, 45,
  5931. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 437, 205, 45, 67, 67, 67, 218, 67, 67, 67, 67, 67, 67, 67,
  5932. 67, 67, 67, 67, 1047, 67, 67, 67, 67, 97, 97, 97, 97, 298, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5933. 870, 97, 97, 97, 97, 97, 97, 97, 97, 352, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 0, 0, 0, 0, 0, 0,
  5934. 365, 0, 41098, 0, 140, 45, 45, 45, 45, 45, 1427, 45, 45, 67, 67, 67, 67, 67, 67, 67, 1435, 520, 67, 67,
  5935. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1037, 617, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  5936. 97, 97, 97, 97, 923, 45, 1232, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 1919,
  5937. 67, 1759, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1021, 45, 154, 45, 162, 45, 45, 45,
  5938. 45, 45, 45, 45, 45, 45, 45, 45, 45, 964, 45, 45, 45, 206, 45, 67, 67, 67, 67, 221, 67, 229, 67, 67, 67,
  5939. 67, 67, 67, 67, 67, 530, 67, 67, 67, 67, 67, 67, 67, 67, 755, 67, 67, 67, 67, 67, 67, 67, 67, 785, 67, 67,
  5940. 67, 67, 67, 67, 67, 67, 802, 67, 67, 67, 807, 67, 67, 67, 97, 97, 97, 97, 353, 97, 0, 53264, 0, 18, 18,
  5941. 24, 24, 0, 28, 28, 0, 0, 0, 0, 0, 0, 366, 0, 0, 0, 140, 2170880, 2170880, 2170880, 2416640, 402, 45, 45,
  5942. 45, 45, 45, 45, 45, 410, 45, 45, 45, 45, 45, 45, 45, 674, 45, 45, 45, 45, 45, 45, 45, 45, 389, 45, 394,
  5943. 45, 45, 398, 45, 45, 45, 45, 441, 45, 45, 45, 45, 45, 447, 45, 45, 45, 454, 45, 45, 67, 67, 67, 67, 67,
  5944. 67, 67, 67, 67, 67, 67, 1768, 67, 67, 67, 67, 67, 488, 67, 67, 67, 67, 67, 67, 67, 496, 67, 67, 67, 67,
  5945. 67, 67, 67, 1774, 67, 67, 67, 67, 67, 97, 97, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97,
  5946. 67, 67, 523, 67, 67, 527, 67, 67, 67, 67, 67, 533, 67, 67, 67, 540, 97, 97, 97, 585, 97, 97, 97, 97, 97,
  5947. 97, 97, 593, 97, 97, 97, 97, 97, 97, 1784, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0,
  5948. 0, 18, 18, 24, 24, 0, 28, 28, 97, 97, 620, 97, 97, 624, 97, 97, 97, 97, 97, 630, 97, 97, 97, 637, 713, 45,
  5949. 45, 45, 45, 45, 45, 721, 45, 45, 45, 45, 45, 45, 45, 45, 1197, 45, 45, 45, 45, 45, 45, 45, 45, 730, 732,
  5950. 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1581, 67, 45, 67, 67, 67, 67, 1012, 67, 67,
  5951. 67, 67, 67, 67, 67, 67, 67, 67, 67, 1059, 67, 67, 67, 67, 67, 1024, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  5952. 67, 67, 67, 67, 67, 775, 67, 67, 67, 67, 1066, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 479, 67,
  5953. 67, 67, 67, 67, 67, 1080, 67, 67, 67, 67, 37689, 0, 25403, 0, 66365, 0, 0, 0, 0, 0, 0, 0, 287, 0, 0, 0,
  5954. 287, 0, 2379776, 2170880, 2170880, 97, 97, 97, 1118, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 920,
  5955. 97, 97, 0, 0, 0, 0, 45, 1181, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 432, 45, 45, 45, 45, 45, 45,
  5956. 1219, 45, 45, 45, 45, 45, 45, 1226, 45, 45, 45, 45, 45, 45, 959, 45, 45, 45, 45, 45, 45, 45, 45, 45, 184,
  5957. 45, 45, 45, 45, 202, 45, 1241, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1266, 67, 1268,
  5958. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1279, 67, 67, 67, 67, 67, 272, 67, 0, 37139, 24853, 0, 0,
  5959. 0, 0, 41098, 65820, 67, 67, 67, 67, 67, 1286, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1293, 67, 67, 67, 1296,
  5960. 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 281, 94, 0, 0, 97, 97, 97, 1366, 97, 97, 97, 97, 97, 97, 97,
  5961. 97, 97, 1373, 97, 97, 18, 0, 139621, 0, 0, 0, 0, 0, 0, 364, 0, 0, 367, 0, 97, 1376, 97, 97, 97, 97, 97,
  5962. 97, 97, 0, 0, 0, 45, 45, 1384, 45, 45, 67, 208, 67, 67, 67, 67, 67, 67, 237, 67, 67, 67, 67, 67, 67, 67,
  5963. 1069, 1070, 67, 67, 67, 67, 67, 67, 67, 0, 37140, 24854, 0, 0, 0, 0, 41098, 65821, 45, 1423, 45, 45, 45,
  5964. 45, 45, 45, 67, 67, 1431, 67, 67, 67, 67, 67, 67, 67, 1083, 37689, 0, 25403, 0, 66365, 0, 0, 0, 1436, 67,
  5965. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1830, 67, 1452, 1453, 67, 67, 67, 67, 1456, 67,
  5966. 67, 67, 67, 67, 67, 67, 67, 67, 771, 67, 67, 67, 67, 67, 67, 1461, 67, 67, 67, 1464, 67, 1466, 67, 67, 67,
  5967. 67, 67, 67, 1470, 67, 67, 67, 67, 67, 67, 1587, 67, 67, 67, 67, 67, 67, 67, 67, 1595, 1489, 97, 97, 97,
  5968. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1129, 97, 1505, 1506, 97, 97, 97, 97, 1510, 97, 97, 97,
  5969. 97, 97, 97, 97, 97, 97, 1163, 1164, 97, 97, 97, 97, 97, 1516, 97, 97, 97, 1519, 97, 1521, 97, 97, 97, 97,
  5970. 97, 97, 1525, 97, 97, 18, 0, 139621, 0, 0, 0, 0, 0, 0, 364, 0, 0, 367, 41606, 67, 67, 67, 67, 67, 1586,
  5971. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1276, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1600, 67, 67, 67,
  5972. 67, 67, 67, 67, 67, 67, 67, 67, 1301, 0, 0, 0, 1307, 97, 97, 1620, 97, 97, 97, 97, 97, 97, 97, 1627, 97,
  5973. 97, 97, 97, 97, 97, 913, 97, 97, 97, 97, 919, 97, 97, 97, 0, 97, 97, 97, 1781, 97, 97, 0, 0, 97, 97, 97,
  5974. 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0, 1792, 1860, 45, 1862, 1863, 45, 1865, 45, 67, 67, 67, 67, 67,
  5975. 67, 67, 67, 1875, 67, 1877, 1878, 67, 1880, 67, 97, 97, 97, 97, 97, 1887, 0, 1889, 97, 97, 18, 0, 139621,
  5976. 0, 0, 0, 0, 0, 0, 364, 237568, 0, 367, 0, 97, 1893, 0, 0, 0, 97, 1898, 1899, 97, 1901, 97, 45, 45, 45, 45,
  5977. 45, 2014, 45, 67, 67, 67, 67, 67, 2020, 67, 97, 1989, 45, 1990, 45, 45, 45, 67, 67, 67, 67, 67, 67, 1996,
  5978. 67, 1997, 67, 67, 67, 67, 67, 273, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 67, 67, 97, 97, 97, 97,
  5979. 0, 0, 97, 97, 2005, 0, 97, 2007, 97, 97, 18, 0, 139621, 0, 0, 0, 642, 0, 133, 364, 0, 0, 367, 41606, 0,
  5980. 97, 97, 2056, 2057, 0, 2059, 45, 67, 0, 97, 45, 67, 0, 97, 45, 45, 67, 209, 67, 67, 67, 223, 67, 67, 67,
  5981. 67, 67, 67, 67, 67, 67, 786, 67, 67, 67, 791, 67, 67, 45, 45, 940, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  5982. 45, 45, 45, 45, 727, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 1016, 67, 67, 67, 67, 67, 67, 67, 67, 37689,
  5983. 0, 25403, 0, 66365, 0, 0, 0, 133, 0, 0, 0, 37, 110630, 0, 0, 0, 114730, 106539, 41098, 45, 45, 142, 45,
  5984. 45, 67, 210, 67, 67, 67, 225, 67, 67, 239, 67, 67, 67, 250, 67, 67, 67, 67, 67, 464, 67, 67, 67, 67, 67,
  5985. 476, 67, 67, 67, 67, 67, 67, 67, 1709, 67, 67, 67, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 1843,
  5986. 0, 67, 259, 67, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 97, 289, 97, 97, 97, 303,
  5987. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 901, 97, 97, 97, 97, 97, 339, 97, 97, 97, 97, 97, 0, 53264, 0, 18,
  5988. 18, 24, 24, 0, 28, 28, 0, 358, 0, 0, 0, 0, 0, 0, 41098, 0, 140, 45, 45, 45, 45, 45, 1953, 45, 1955, 45,
  5989. 45, 45, 67, 67, 67, 67, 67, 67, 67, 1687, 1688, 67, 67, 67, 67, 45, 45, 405, 45, 45, 45, 45, 45, 45, 45,
  5990. 45, 45, 45, 45, 45, 45, 45, 1203, 45, 458, 67, 67, 67, 67, 67, 67, 67, 67, 67, 470, 477, 67, 67, 67, 67,
  5991. 67, 67, 67, 1970, 97, 97, 97, 1974, 0, 0, 0, 97, 1103, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1372,
  5992. 97, 97, 97, 97, 67, 522, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 536, 67, 67, 67, 67, 67, 67, 1696,
  5993. 67, 67, 67, 67, 67, 67, 67, 1701, 67, 555, 97, 97, 97, 97, 97, 97, 97, 97, 97, 567, 574, 97, 97, 97, 97,
  5994. 97, 301, 97, 309, 97, 97, 97, 97, 97, 97, 97, 97, 97, 900, 97, 97, 97, 905, 97, 97, 97, 619, 97, 97, 97,
  5995. 97, 97, 97, 97, 97, 97, 97, 97, 633, 97, 97, 18, 0, 139621, 0, 0, 362, 0, 0, 0, 364, 0, 0, 367, 41606,
  5996. 369, 649, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 663, 664, 67, 67, 67, 67, 750, 751, 67, 67, 67,
  5997. 67, 758, 67, 67, 67, 67, 67, 67, 67, 1272, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1057, 1058, 67, 67, 67, 67,
  5998. 67, 67, 67, 67, 797, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 512, 67, 67, 67, 97, 97, 97, 97, 895,
  5999. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 902, 97, 97, 97, 97, 67, 67, 1051, 67, 67, 67, 67, 67, 67, 67,
  6000. 67, 67, 67, 67, 1062, 67, 67, 67, 67, 67, 491, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1302, 0, 0, 0,
  6001. 1308, 97, 97, 97, 97, 1145, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1139, 97, 97, 97, 97, 1156, 97,
  6002. 97, 97, 97, 97, 97, 1161, 97, 97, 97, 97, 97, 1166, 97, 97, 18, 640, 139621, 0, 641, 0, 0, 0, 0, 364, 0,
  6003. 0, 367, 41606, 67, 67, 67, 67, 1257, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, 0, 1305, 0, 0, 97, 97,
  6004. 1337, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1630, 97, 67, 1474, 67, 67, 0, 0, 0, 0, 0,
  6005. 0, 0, 0, 0, 0, 0, 0, 0, 2380062, 2171166, 2171166, 97, 1529, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 45,
  6006. 45, 45, 45, 1228, 45, 45, 45, 45, 67, 67, 67, 67, 1707, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0,
  6007. 0, 97, 1891, 1739, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1198, 45, 1200, 45, 45, 45,
  6008. 45, 97, 97, 1894, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 672, 45, 45, 45, 45, 45, 45, 45, 45,
  6009. 45, 45, 45, 1420, 45, 45, 45, 45, 67, 67, 1965, 67, 1967, 67, 67, 67, 97, 97, 97, 97, 0, 1976, 0, 97, 97,
  6010. 45, 67, 0, 97, 45, 67, 0, 97, 45, 67, 0, 97, 45, 97, 97, 1979, 0, 0, 97, 1982, 97, 97, 97, 1986, 45, 45,
  6011. 45, 45, 45, 735, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1770, 67, 67, 2000, 97, 97,
  6012. 97, 2002, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 1798, 97, 97, 97, 45, 45, 45, 2034, 67, 67, 67, 67,
  6013. 97, 0, 0, 2040, 97, 97, 97, 97, 45, 45, 45, 45, 1752, 45, 45, 45, 1753, 1754, 45, 45, 45, 45, 45, 45, 383,
  6014. 45, 45, 45, 45, 45, 45, 45, 45, 45, 675, 45, 45, 45, 45, 45, 45, 438, 45, 45, 45, 45, 45, 445, 45, 45, 45,
  6015. 45, 45, 45, 45, 45, 67, 1430, 67, 67, 67, 67, 67, 67, 67, 67, 67, 524, 67, 67, 67, 67, 67, 531, 67, 67,
  6016. 67, 67, 67, 67, 67, 67, 37689, 0, 25403, 0, 66365, 0, 0, 1096, 97, 97, 97, 621, 97, 97, 97, 97, 97, 628,
  6017. 97, 97, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 356, 28, 28, 665, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6018. 676, 45, 45, 45, 45, 45, 942, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 707, 708, 45, 45, 45, 45, 763, 67,
  6019. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 809, 810, 67, 67, 67, 67, 783, 67, 67, 67, 67, 67,
  6020. 67, 67, 67, 67, 67, 67, 0, 1303, 0, 0, 0, 97, 861, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6021. 613, 97, 45, 45, 956, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1215, 45, 67, 67, 67, 67,
  6022. 1027, 67, 67, 67, 67, 1032, 67, 67, 67, 67, 67, 67, 67, 67, 37689, 0, 25403, 0, 66365, 0, 0, 1097, 1064,
  6023. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1075, 67, 1098, 0, 0, 97, 97, 97, 97, 97, 97,
  6024. 97, 97, 97, 97, 97, 97, 97, 331, 97, 97, 97, 97, 1158, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6025. 594, 97, 97, 1309, 0, 0, 0, 1315, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6026. 97, 97, 1374, 97, 45, 45, 1543, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1240, 67, 67,
  6027. 1583, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1252, 67, 97, 97, 97, 1635, 97, 97, 97, 0,
  6028. 97, 97, 97, 97, 97, 97, 97, 97, 1800, 97, 45, 45, 45, 97, 97, 1793, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6029. 97, 45, 45, 45, 1743, 45, 45, 45, 1746, 45, 0, 97, 97, 97, 97, 97, 1851, 97, 45, 45, 45, 45, 1856, 45, 45,
  6030. 45, 45, 1864, 45, 45, 67, 67, 1869, 67, 67, 67, 67, 1874, 67, 0, 97, 97, 45, 67, 2058, 97, 45, 67, 0, 97,
  6031. 45, 67, 0, 97, 45, 45, 67, 211, 67, 67, 67, 67, 67, 67, 240, 67, 67, 67, 67, 67, 67, 67, 1444, 67, 67, 67,
  6032. 67, 67, 67, 67, 67, 67, 509, 67, 67, 67, 67, 67, 67, 67, 67, 67, 268, 67, 67, 67, 0, 37139, 24853, 0, 0,
  6033. 0, 0, 41098, 65820, 97, 97, 290, 97, 97, 97, 305, 97, 97, 319, 97, 97, 97, 330, 97, 97, 18, 640, 139621,
  6034. 0, 641, 0, 0, 0, 0, 364, 0, 643, 367, 41606, 97, 97, 348, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28,
  6035. 28, 139621, 0, 0, 0, 0, 364, 0, 367, 41098, 369, 140, 45, 45, 45, 45, 380, 45, 45, 45, 45, 45, 45, 395,
  6036. 45, 45, 45, 400, 369, 0, 45, 45, 45, 45, 45, 45, 45, 45, 658, 45, 45, 45, 45, 45, 972, 45, 45, 45, 45, 45,
  6037. 45, 45, 45, 45, 45, 427, 45, 45, 45, 45, 45, 745, 67, 67, 67, 67, 67, 67, 67, 67, 756, 67, 67, 67, 67, 67,
  6038. 67, 67, 67, 37689, 1086, 25403, 1090, 66365, 1094, 0, 0, 97, 843, 97, 97, 97, 97, 97, 97, 97, 97, 854, 97,
  6039. 97, 97, 97, 97, 97, 1121, 97, 97, 97, 97, 1126, 97, 97, 97, 97, 45, 980, 45, 45, 45, 45, 45, 45, 45, 45,
  6040. 45, 45, 45, 45, 45, 45, 45, 1400, 45, 67, 67, 67, 1011, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0,
  6041. 1304, 0, 0, 0, 1190, 45, 45, 1193, 1194, 45, 45, 45, 45, 45, 1199, 45, 1201, 45, 45, 45, 45, 1911, 45, 45,
  6042. 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 1579, 67, 67, 67, 67, 45, 1205, 45, 45, 45, 45, 45, 45, 45, 45,
  6043. 1211, 45, 45, 45, 45, 45, 984, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1550, 45, 45, 45, 45, 45, 1217,
  6044. 45, 45, 45, 45, 45, 45, 1225, 45, 45, 45, 45, 1229, 45, 45, 45, 1388, 45, 45, 45, 45, 45, 45, 1396, 45,
  6045. 45, 45, 45, 45, 444, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 1574, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  6046. 67, 1590, 67, 67, 67, 67, 67, 1254, 67, 67, 67, 67, 67, 1259, 67, 1261, 67, 67, 67, 67, 1265, 67, 67, 67,
  6047. 67, 67, 67, 1708, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 0, 0, 67, 67, 67, 67,
  6048. 1285, 67, 67, 67, 67, 1289, 67, 67, 67, 67, 67, 67, 67, 67, 37689, 1087, 25403, 1091, 66365, 1095, 0, 0,
  6049. 97, 97, 97, 97, 1339, 97, 1341, 97, 97, 97, 97, 1345, 97, 97, 97, 97, 97, 561, 97, 97, 97, 97, 97, 573,
  6050. 97, 97, 97, 97, 97, 97, 1717, 97, 0, 97, 97, 97, 97, 97, 97, 97, 591, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6051. 1329, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1351, 97, 97, 97, 97, 97, 97, 1357, 97, 97, 97, 97, 97, 588,
  6052. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 568, 97, 97, 97, 97, 97, 97, 97, 1365, 97, 97, 97, 97, 1369, 97,
  6053. 97, 97, 97, 97, 97, 97, 97, 97, 1356, 97, 97, 97, 97, 97, 97, 45, 45, 1403, 45, 45, 45, 45, 45, 45, 45,
  6054. 45, 45, 45, 45, 45, 45, 45, 1399, 45, 45, 45, 1413, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6055. 45, 1669, 45, 1422, 45, 45, 1425, 45, 45, 1428, 45, 1429, 67, 67, 67, 67, 67, 67, 67, 67, 1468, 67, 67,
  6056. 67, 67, 67, 67, 67, 67, 529, 67, 67, 67, 67, 67, 67, 539, 67, 67, 1475, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  6057. 0, 0, 140, 2170880, 2170880, 2170880, 2416640, 97, 97, 1530, 97, 0, 45, 45, 1534, 45, 45, 45, 45, 45, 45,
  6058. 45, 45, 1956, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1599, 67, 67, 1601, 67, 67, 67, 67, 67, 67, 67,
  6059. 67, 67, 803, 67, 67, 67, 67, 67, 67, 1632, 97, 1634, 0, 97, 97, 97, 1640, 97, 97, 97, 1643, 97, 97, 1645,
  6060. 97, 97, 97, 97, 97, 912, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 0, 45, 45, 45, 45, 45, 45, 1660, 1661,
  6061. 45, 45, 45, 45, 1665, 1666, 45, 45, 45, 45, 45, 1670, 1692, 1693, 67, 67, 67, 67, 67, 1697, 67, 67, 67,
  6062. 67, 67, 67, 67, 1702, 97, 97, 1714, 1715, 97, 97, 97, 97, 0, 1721, 1722, 97, 97, 97, 97, 97, 97, 1353, 97,
  6063. 97, 97, 97, 97, 97, 97, 97, 1362, 1726, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 1734, 97, 97, 97, 97, 97,
  6064. 848, 849, 97, 97, 97, 97, 856, 97, 97, 97, 97, 97, 354, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 45, 45,
  6065. 1750, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1681, 45, 0, 1846, 97, 97, 97, 97, 97, 97,
  6066. 45, 45, 1854, 45, 45, 45, 45, 1859, 67, 67, 67, 1879, 67, 67, 97, 97, 1884, 97, 97, 0, 0, 0, 97, 97, 97,
  6067. 1105, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1344, 97, 97, 97, 1347, 97, 1892, 97, 0, 0, 0, 97, 97, 97,
  6068. 1900, 97, 97, 45, 45, 45, 45, 45, 997, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1002, 45, 45, 1005, 1006,
  6069. 45, 67, 67, 67, 67, 67, 1926, 67, 67, 1928, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97,
  6070. 97, 1737, 97, 0, 97, 97, 97, 97, 0, 0, 0, 97, 97, 1944, 97, 97, 1946, 45, 45, 45, 1544, 45, 45, 45, 45,
  6071. 45, 45, 45, 45, 45, 45, 45, 45, 190, 45, 45, 45, 152, 155, 45, 163, 45, 45, 177, 179, 182, 45, 45, 45,
  6072. 193, 197, 45, 45, 45, 1672, 45, 45, 45, 45, 45, 1677, 45, 1679, 45, 45, 45, 45, 996, 45, 45, 45, 45, 45,
  6073. 45, 45, 45, 45, 45, 45, 1212, 45, 45, 45, 45, 67, 260, 264, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0,
  6074. 41098, 65820, 97, 97, 97, 295, 299, 302, 97, 310, 97, 97, 324, 326, 329, 97, 97, 97, 0, 97, 97, 1639, 0,
  6075. 1641, 97, 97, 97, 97, 97, 97, 97, 97, 1511, 97, 97, 97, 97, 97, 97, 97, 97, 1523, 97, 97, 97, 97, 97, 97,
  6076. 97, 97, 1719, 97, 97, 97, 97, 97, 97, 97, 97, 1720, 97, 97, 97, 97, 97, 97, 97, 312, 97, 97, 97, 97, 97,
  6077. 97, 97, 97, 1123, 97, 97, 97, 97, 97, 97, 97, 340, 344, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0,
  6078. 28, 28, 139621, 0, 0, 0, 0, 364, 0, 367, 41098, 369, 140, 45, 45, 373, 375, 419, 45, 45, 45, 45, 45, 45,
  6079. 45, 45, 45, 428, 45, 45, 435, 45, 45, 45, 1751, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1410, 45,
  6080. 45, 45, 67, 67, 67, 505, 67, 67, 67, 67, 67, 67, 67, 67, 67, 514, 67, 67, 67, 67, 67, 67, 1969, 67, 97,
  6081. 97, 97, 97, 0, 0, 0, 97, 97, 45, 67, 0, 97, 45, 67, 0, 97, 2064, 2065, 0, 2066, 45, 521, 67, 67, 67, 67,
  6082. 67, 67, 67, 67, 67, 67, 534, 67, 67, 67, 67, 67, 67, 465, 67, 67, 67, 474, 67, 67, 67, 67, 67, 67, 67,
  6083. 1467, 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 1933, 0, 97, 97, 97, 602, 97, 97, 97, 97,
  6084. 97, 97, 97, 97, 97, 611, 97, 97, 18, 640, 139621, 358, 641, 0, 0, 0, 0, 364, 0, 0, 367, 0, 618, 97, 97,
  6085. 97, 97, 97, 97, 97, 97, 97, 97, 631, 97, 97, 97, 97, 97, 881, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 569,
  6086. 97, 97, 97, 97, 97, 369, 0, 45, 652, 45, 45, 45, 45, 45, 657, 45, 45, 45, 45, 45, 45, 1235, 45, 45, 45,
  6087. 45, 45, 45, 45, 45, 67, 67, 67, 1432, 67, 67, 67, 67, 67, 67, 67, 766, 67, 67, 67, 67, 67, 67, 67, 67,
  6088. 773, 67, 67, 67, 0, 1305, 0, 1311, 0, 1317, 97, 97, 97, 97, 97, 97, 97, 1624, 97, 97, 97, 97, 97, 97, 97,
  6089. 97, 0, 97, 97, 97, 1724, 97, 97, 97, 777, 67, 67, 782, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  6090. 535, 67, 67, 67, 67, 67, 67, 67, 814, 67, 67, 67, 67, 67, 67, 67, 67, 67, 37689, 544, 25403, 546, 70179,
  6091. 0, 0, 66365, 66365, 552, 0, 97, 837, 97, 97, 97, 97, 97, 97, 1496, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6092. 918, 97, 97, 97, 97, 0, 842, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1168, 97, 97, 97,
  6093. 97, 864, 97, 97, 97, 97, 97, 97, 97, 97, 871, 97, 97, 97, 0, 1637, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97,
  6094. 97, 97, 97, 1801, 45, 45, 97, 875, 97, 97, 880, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1151, 1152,
  6095. 97, 97, 97, 67, 67, 67, 1040, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 790, 67, 67, 67, 1180, 0,
  6096. 649, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 200, 45, 45, 67, 67, 67, 1454, 67, 67, 67, 67,
  6097. 67, 67, 67, 67, 67, 67, 67, 67, 806, 67, 67, 67, 0, 0, 0, 1481, 0, 1094, 0, 0, 97, 1483, 97, 97, 97, 97,
  6098. 97, 97, 304, 97, 97, 318, 97, 97, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 97, 97, 97,
  6099. 1507, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1332, 97, 97, 97, 1619, 97, 97, 97, 97, 97, 97, 97,
  6100. 97, 97, 97, 97, 97, 97, 97, 97, 1631, 97, 1633, 97, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6101. 1381, 0, 0, 45, 45, 45, 45, 97, 97, 1727, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 626, 97, 97,
  6102. 97, 97, 97, 97, 636, 45, 45, 1760, 67, 67, 67, 67, 67, 67, 67, 1765, 67, 67, 67, 67, 67, 67, 67, 1299, 67,
  6103. 67, 67, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 1616, 97, 97, 1803, 45, 45, 45, 45, 1807, 45, 45, 45, 45, 45,
  6104. 1813, 45, 45, 45, 67, 67, 1684, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 822, 67, 67, 37689, 544, 67,
  6105. 67, 1818, 67, 67, 67, 67, 1822, 67, 67, 67, 67, 67, 1828, 67, 67, 67, 67, 67, 97, 0, 0, 97, 97, 97, 97,
  6106. 97, 45, 45, 45, 2012, 2013, 45, 45, 67, 67, 67, 2018, 2019, 67, 67, 97, 67, 97, 97, 97, 1833, 97, 97, 0,
  6107. 0, 97, 97, 1840, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 1733, 97, 1735, 97, 97, 97, 0, 97, 97, 97, 1849, 97,
  6108. 97, 97, 45, 45, 45, 45, 45, 1857, 45, 45, 45, 1910, 45, 1912, 45, 45, 1914, 45, 67, 67, 67, 67, 67, 67,
  6109. 67, 67, 67, 67, 1017, 67, 67, 1020, 67, 45, 1861, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1872, 67, 67,
  6110. 67, 67, 67, 67, 752, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1446, 67, 67, 67, 67, 67, 1876, 67, 67, 67,
  6111. 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 1890, 97, 97, 97, 97, 97, 1134, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6112. 97, 570, 97, 97, 97, 97, 580, 1935, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 1906,
  6113. 45, 67, 67, 67, 67, 2048, 0, 97, 97, 97, 97, 45, 45, 67, 67, 0, 0, 0, 0, 925, 41606, 0, 0, 0, 931, 45, 45,
  6114. 45, 45, 45, 45, 1674, 45, 1676, 45, 45, 45, 45, 45, 45, 45, 446, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67,
  6115. 67, 1871, 67, 67, 67, 67, 0, 97, 97, 45, 67, 0, 97, 2060, 2061, 0, 2063, 45, 67, 0, 97, 45, 45, 156, 45,
  6116. 45, 45, 45, 45, 45, 45, 45, 45, 192, 45, 45, 45, 45, 1673, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6117. 429, 45, 45, 45, 45, 67, 67, 67, 269, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 97, 349,
  6118. 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 139621, 0, 0, 0, 0, 364, 0, 367, 41098, 369, 140, 45,
  6119. 45, 374, 45, 45, 67, 67, 213, 217, 67, 67, 67, 67, 67, 242, 67, 247, 67, 253, 45, 45, 698, 45, 45, 45, 45,
  6120. 45, 45, 45, 45, 45, 45, 45, 45, 45, 399, 45, 45, 0, 0, 0, 0, 925, 41606, 0, 929, 0, 0, 45, 45, 45, 45, 45,
  6121. 45, 1391, 45, 45, 1395, 45, 45, 45, 45, 45, 45, 423, 45, 45, 45, 45, 45, 45, 45, 436, 45, 67, 67, 67, 67,
  6122. 1041, 67, 1043, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1776, 67, 67, 97, 97, 97, 1099, 0, 0, 97, 97, 97,
  6123. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 888, 97, 97, 97, 1131, 97, 97, 97, 97, 1135, 97, 1137, 97, 97, 97,
  6124. 97, 97, 97, 97, 1497, 97, 97, 97, 97, 97, 97, 97, 97, 97, 883, 97, 97, 97, 97, 97, 97, 1310, 0, 0, 0,
  6125. 1316, 0, 0, 0, 0, 1100, 0, 0, 0, 97, 97, 97, 97, 97, 1107, 97, 97, 97, 97, 97, 97, 97, 97, 1343, 97, 97,
  6126. 97, 97, 97, 97, 1348, 0, 0, 1317, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1112, 97, 45,
  6127. 1804, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 1868, 67, 1870, 67, 67, 67, 67, 67, 1817,
  6128. 67, 67, 1819, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 823, 67, 37689, 544, 67, 97, 1832, 97, 97,
  6129. 1834, 97, 0, 0, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 0, 1732, 97, 97, 97, 97, 97, 97, 97, 850, 97, 97,
  6130. 97, 97, 97, 97, 97, 97, 97, 1177, 0, 0, 925, 0, 0, 0, 0, 97, 97, 97, 97, 0, 0, 1941, 97, 97, 97, 97, 97,
  6131. 97, 45, 45, 45, 1991, 1992, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1998, 134, 0, 0, 0, 37, 110630, 0, 0,
  6132. 0, 114730, 106539, 41098, 45, 45, 45, 45, 941, 45, 45, 944, 45, 45, 45, 45, 45, 45, 952, 45, 45, 207, 67,
  6133. 67, 67, 67, 67, 226, 67, 67, 67, 67, 67, 67, 67, 67, 67, 820, 67, 67, 67, 67, 37689, 544, 369, 650, 45,
  6134. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1682, 25403, 546, 70179, 0, 0, 66365, 66365, 552,
  6135. 835, 97, 97, 97, 97, 97, 97, 97, 1522, 97, 97, 97, 97, 97, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 1725,
  6136. 67, 67, 67, 1695, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1034, 67, 1036, 67, 67, 67, 265, 67, 67,
  6137. 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 97, 97, 296, 97, 97, 97, 97, 314, 97, 97, 97, 97,
  6138. 332, 334, 97, 97, 97, 97, 97, 1146, 1147, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1626, 97, 97, 97, 97,
  6139. 97, 97, 345, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 139621, 0, 0, 0, 0, 364, 0, 367,
  6140. 41098, 369, 140, 45, 372, 45, 45, 45, 1220, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1213, 45, 45,
  6141. 45, 45, 404, 406, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 434, 45, 45, 45, 440, 45, 45, 45,
  6142. 45, 45, 45, 45, 45, 451, 452, 45, 45, 45, 67, 1683, 67, 67, 67, 1686, 67, 67, 67, 67, 67, 67, 67, 0,
  6143. 37139, 24853, 0, 0, 0, 0, 41098, 65820, 67, 67, 67, 67, 490, 492, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  6144. 67, 1447, 67, 67, 1450, 67, 67, 67, 67, 67, 526, 67, 67, 67, 67, 67, 67, 67, 67, 537, 538, 67, 67, 67, 67,
  6145. 67, 506, 67, 67, 508, 67, 67, 511, 67, 67, 67, 67, 0, 1476, 0, 0, 0, 0, 0, 1478, 0, 0, 0, 0, 0, 0, 0, 0,
  6146. 97, 97, 1484, 97, 97, 97, 97, 97, 97, 865, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1499, 97, 97, 97, 97,
  6147. 97, 97, 97, 97, 97, 587, 589, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 629, 97, 97, 97, 97, 97, 97, 97, 97,
  6148. 97, 623, 97, 97, 97, 97, 97, 97, 97, 97, 634, 635, 97, 97, 97, 97, 97, 1160, 97, 97, 97, 97, 97, 97, 97,
  6149. 97, 97, 97, 97, 1628, 97, 97, 97, 97, 369, 0, 45, 45, 45, 45, 45, 655, 45, 45, 45, 45, 45, 45, 45, 45,
  6150. 999, 45, 1001, 45, 45, 45, 45, 45, 45, 45, 45, 715, 45, 45, 45, 720, 45, 45, 45, 45, 45, 45, 45, 45, 728,
  6151. 25403, 546, 70179, 0, 0, 66365, 66365, 552, 0, 97, 97, 97, 97, 97, 840, 97, 97, 97, 97, 97, 1174, 97, 97,
  6152. 97, 97, 0, 0, 925, 0, 0, 0, 0, 0, 0, 0, 1100, 97, 97, 97, 97, 97, 97, 97, 97, 627, 97, 97, 97, 97, 97, 97,
  6153. 97, 938, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 680, 45, 968, 45, 970, 45, 973, 45,
  6154. 45, 45, 45, 45, 45, 45, 45, 45, 45, 962, 45, 45, 45, 45, 45, 979, 45, 45, 45, 45, 45, 985, 45, 45, 45, 45,
  6155. 45, 45, 45, 45, 45, 1224, 45, 45, 45, 45, 45, 45, 45, 45, 688, 45, 45, 45, 45, 45, 45, 45, 1007, 1008, 67,
  6156. 67, 67, 67, 67, 1014, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1045, 67, 67, 67, 67, 67, 67, 67, 1038, 67, 67,
  6157. 67, 67, 67, 67, 1044, 67, 1046, 67, 1049, 67, 67, 67, 67, 67, 67, 800, 67, 67, 67, 67, 67, 67, 808, 67,
  6158. 67, 0, 0, 0, 1102, 97, 97, 97, 97, 97, 1108, 97, 97, 97, 97, 97, 97, 306, 97, 97, 97, 97, 97, 97, 97, 97,
  6159. 97, 97, 1371, 97, 97, 97, 97, 97, 97, 97, 97, 1132, 97, 97, 97, 97, 97, 97, 1138, 97, 1140, 97, 1143, 97,
  6160. 97, 97, 97, 97, 1352, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 869, 97, 97, 97, 97, 97, 45, 1191, 45, 45,
  6161. 45, 45, 45, 1196, 45, 45, 45, 45, 45, 45, 45, 45, 1407, 45, 45, 45, 45, 45, 45, 45, 45, 986, 45, 45, 45,
  6162. 45, 45, 45, 991, 45, 67, 67, 67, 1256, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1048, 67, 67, 67,
  6163. 97, 1336, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 615, 97, 1386, 45, 1387, 45, 45, 45, 45,
  6164. 45, 45, 45, 45, 45, 45, 45, 45, 45, 455, 45, 457, 45, 45, 1424, 45, 45, 45, 45, 45, 67, 67, 67, 67, 1433,
  6165. 67, 1434, 67, 67, 67, 67, 67, 767, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1591, 67, 1593, 67, 67, 45,
  6166. 45, 1805, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1814, 45, 45, 1816, 67, 67, 67, 67, 1820, 67, 67, 67, 67,
  6167. 67, 67, 67, 67, 67, 1829, 67, 67, 67, 67, 67, 815, 67, 67, 67, 67, 821, 67, 67, 67, 37689, 544, 67, 1831,
  6168. 97, 97, 97, 97, 1835, 0, 0, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 1731, 97, 97, 97, 97, 97, 97, 97, 97,
  6169. 97, 853, 97, 97, 97, 97, 97, 97, 0, 97, 97, 97, 97, 1850, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 1547,
  6170. 45, 45, 45, 45, 45, 45, 45, 45, 1664, 45, 45, 45, 45, 45, 45, 45, 45, 961, 45, 45, 45, 45, 965, 45, 967,
  6171. 1907, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1920, 0, 1936, 97, 97, 97, 0, 0, 0, 97, 97,
  6172. 97, 97, 97, 97, 45, 45, 67, 67, 67, 67, 67, 67, 1763, 67, 67, 67, 67, 67, 67, 67, 67, 1056, 67, 67, 67,
  6173. 67, 67, 67, 67, 67, 1273, 67, 67, 67, 67, 67, 67, 67, 67, 1457, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97,
  6174. 97, 97, 0, 0, 28672, 97, 45, 67, 67, 67, 67, 0, 0, 97, 97, 97, 97, 45, 45, 67, 67, 2054, 97, 97, 291, 97,
  6175. 97, 97, 97, 97, 97, 320, 97, 97, 97, 97, 97, 97, 307, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 12288, 0,
  6176. 925, 926, 1179, 0, 45, 377, 45, 45, 45, 381, 45, 45, 392, 45, 45, 396, 45, 45, 45, 45, 971, 45, 45, 45,
  6177. 45, 45, 45, 45, 45, 45, 45, 45, 45, 1756, 45, 45, 45, 67, 67, 67, 67, 463, 67, 67, 67, 467, 67, 67, 478,
  6178. 67, 67, 482, 67, 67, 67, 67, 67, 1028, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1469, 67, 67, 1472,
  6179. 67, 502, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1460, 67, 97, 97, 97, 97, 560, 97, 97,
  6180. 97, 564, 97, 97, 575, 97, 97, 579, 97, 97, 97, 97, 97, 1368, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0,
  6181. 925, 0, 0, 930, 97, 599, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 872, 97, 45, 666, 45, 45,
  6182. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1758, 0, 362, 0, 0, 925, 41606, 0, 0, 0, 0, 45, 45,
  6183. 934, 45, 45, 45, 164, 168, 174, 178, 45, 45, 45, 45, 45, 194, 45, 45, 45, 165, 45, 45, 45, 45, 45, 45, 45,
  6184. 45, 45, 199, 45, 45, 45, 67, 67, 1010, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1060, 67, 67, 67,
  6185. 67, 67, 67, 1052, 1053, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1063, 97, 1157, 97, 97, 97, 97, 97, 97,
  6186. 97, 97, 97, 97, 97, 97, 1167, 97, 97, 97, 97, 97, 1379, 97, 97, 97, 0, 0, 0, 45, 1383, 45, 45, 45, 1806,
  6187. 45, 45, 45, 45, 45, 45, 1812, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1577, 67, 67, 67, 67, 67, 67, 67, 753,
  6188. 67, 67, 67, 67, 67, 67, 67, 67, 67, 1262, 67, 67, 67, 67, 67, 67, 67, 1282, 67, 67, 67, 67, 67, 67, 67,
  6189. 67, 67, 67, 67, 67, 67, 67, 1471, 67, 45, 1402, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6190. 417, 45, 67, 1462, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 37689, 544, 97, 1517, 97, 97,
  6191. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1128, 97, 97, 97, 97, 1636, 97, 97, 97, 0, 97, 97, 97, 97,
  6192. 97, 97, 97, 97, 851, 97, 97, 97, 97, 97, 97, 97, 67, 67, 1705, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97,
  6193. 97, 97, 97, 0, 0, 97, 97, 97, 97, 1842, 0, 0, 1779, 97, 97, 97, 1782, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0,
  6194. 0, 97, 97, 97, 1789, 97, 97, 0, 0, 0, 97, 1847, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 1675,
  6195. 45, 45, 45, 45, 45, 45, 45, 45, 737, 738, 67, 740, 67, 741, 67, 743, 67, 67, 67, 67, 67, 67, 1968, 67, 67,
  6196. 97, 97, 97, 97, 0, 0, 0, 97, 97, 45, 67, 0, 97, 45, 67, 2062, 97, 45, 67, 0, 97, 45, 67, 67, 97, 97, 2001,
  6197. 97, 0, 0, 2004, 97, 97, 0, 97, 97, 97, 97, 1797, 97, 97, 97, 97, 97, 45, 45, 45, 67, 261, 67, 67, 67, 67,
  6198. 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 97, 292, 97, 97, 97, 97, 311, 315, 321, 325, 97, 97,
  6199. 97, 97, 97, 97, 1623, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1330, 97, 97, 1333, 1334, 97, 341, 97, 97,
  6200. 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 139621, 0, 0, 0, 363, 364, 0, 367, 41098, 369, 140,
  6201. 45, 45, 45, 45, 1221, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 413, 45, 45, 416, 45, 376, 45, 45, 45,
  6202. 45, 382, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1408, 45, 45, 45, 45, 45, 403, 45, 45, 45, 45, 45, 45,
  6203. 45, 45, 45, 45, 414, 45, 45, 45, 418, 67, 67, 67, 462, 67, 67, 67, 67, 468, 67, 67, 67, 67, 67, 67, 67,
  6204. 67, 1602, 67, 1604, 67, 67, 67, 67, 67, 67, 67, 67, 489, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 500, 67,
  6205. 67, 67, 67, 67, 1067, 67, 67, 67, 67, 67, 1072, 67, 67, 67, 67, 67, 67, 274, 0, 37139, 24853, 0, 0, 0, 0,
  6206. 41098, 65820, 67, 67, 504, 67, 67, 67, 67, 67, 67, 67, 510, 67, 67, 67, 517, 519, 541, 67, 37139, 37139,
  6207. 24853, 24853, 0, 70179, 0, 0, 0, 65820, 65820, 369, 287, 554, 97, 97, 97, 559, 97, 97, 97, 97, 565, 97,
  6208. 97, 97, 97, 97, 97, 97, 1718, 0, 97, 97, 97, 97, 97, 97, 97, 898, 97, 97, 97, 97, 97, 97, 906, 97, 97, 97,
  6209. 97, 586, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 597, 97, 97, 97, 97, 97, 1520, 97, 97, 97, 97, 97, 97,
  6210. 97, 97, 97, 97, 0, 45, 1656, 45, 45, 45, 97, 97, 601, 97, 97, 97, 97, 97, 97, 97, 607, 97, 97, 97, 614,
  6211. 616, 638, 97, 18, 0, 139621, 0, 0, 0, 0, 0, 0, 364, 0, 0, 367, 41606, 369, 0, 45, 45, 45, 45, 45, 45, 45,
  6212. 45, 45, 45, 661, 45, 45, 45, 407, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1815, 45, 67, 45,
  6213. 667, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 678, 45, 45, 45, 421, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6214. 45, 45, 976, 977, 45, 45, 45, 682, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 693, 45, 45, 697, 67, 67, 748,
  6215. 67, 67, 67, 67, 754, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1274, 67, 67, 67, 67, 67, 67, 67, 67, 765, 67,
  6216. 67, 67, 67, 769, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1589, 67, 67, 67, 67, 67, 67, 67, 67, 780, 67, 67,
  6217. 784, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1777, 67, 97, 97, 97, 97, 97, 97, 846, 97, 97, 97, 97,
  6218. 852, 97, 97, 97, 97, 97, 97, 97, 1742, 45, 45, 45, 45, 45, 45, 45, 1747, 97, 97, 97, 863, 97, 97, 97, 97,
  6219. 867, 97, 97, 97, 97, 97, 97, 97, 308, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 12288, 1178, 925, 0, 1179,
  6220. 0, 97, 97, 97, 878, 97, 97, 882, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 12288, 0, 925, 0, 1179, 0, 908,
  6221. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 925, 0, 0, 0, 954, 45, 45, 45, 45, 45, 45,
  6222. 45, 45, 45, 45, 963, 45, 45, 966, 45, 45, 157, 45, 45, 171, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 948,
  6223. 45, 45, 45, 45, 45, 1022, 67, 67, 1026, 67, 67, 67, 1030, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1603, 1605,
  6224. 67, 67, 67, 1608, 67, 67, 67, 1039, 67, 67, 1042, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 471, 67, 67, 67,
  6225. 67, 67, 0, 1100, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 904, 97, 97, 97, 97, 1116, 97, 97,
  6226. 1120, 97, 97, 97, 1124, 97, 97, 97, 97, 97, 97, 562, 97, 97, 97, 571, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6227. 1133, 97, 97, 1136, 97, 97, 97, 97, 97, 97, 97, 97, 915, 917, 97, 97, 97, 97, 97, 0, 97, 1170, 97, 97, 97,
  6228. 97, 97, 97, 97, 97, 0, 0, 925, 0, 0, 0, 0, 0, 41606, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45, 1993, 67, 67, 67,
  6229. 67, 67, 67, 67, 67, 67, 67, 1275, 67, 67, 67, 1278, 67, 0, 0, 0, 45, 45, 1182, 45, 45, 45, 45, 45, 45, 45,
  6230. 45, 45, 1189, 1204, 45, 45, 45, 1207, 45, 45, 1209, 45, 1210, 45, 45, 45, 45, 45, 45, 1546, 45, 45, 45,
  6231. 45, 45, 45, 45, 45, 45, 689, 45, 45, 45, 45, 45, 45, 1231, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6232. 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 236, 67, 67, 67, 67, 67, 67, 67, 801, 67, 67, 67, 805, 67, 67, 67,
  6233. 67, 67, 1242, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1249, 67, 67, 67, 67, 67, 67, 507, 67, 67, 67, 67, 67,
  6234. 67, 67, 67, 67, 67, 1300, 0, 0, 0, 0, 0, 1267, 67, 67, 1269, 67, 1270, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  6235. 1280, 97, 1349, 97, 1350, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1360, 97, 97, 97, 0, 1980, 97, 97, 97, 97,
  6236. 97, 45, 45, 45, 45, 45, 45, 673, 45, 45, 45, 45, 677, 45, 45, 45, 45, 1401, 45, 45, 45, 45, 45, 45, 45,
  6237. 45, 45, 45, 45, 45, 45, 45, 45, 953, 67, 1437, 67, 1440, 67, 67, 67, 67, 1445, 67, 67, 67, 1448, 67, 67,
  6238. 67, 67, 67, 67, 1029, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1825, 67, 67, 67, 67, 67, 1473, 67, 67, 67,
  6239. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, 0, 834, 97, 97, 97, 97, 1490, 97, 1493, 97, 97, 97, 97, 1498,
  6240. 97, 97, 97, 1501, 97, 97, 97, 0, 97, 1638, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 916, 97, 97, 97, 97, 97,
  6241. 97, 0, 1528, 97, 97, 97, 0, 45, 45, 45, 1535, 45, 45, 45, 45, 45, 45, 45, 1867, 67, 67, 67, 67, 67, 67,
  6242. 67, 67, 67, 97, 97, 97, 97, 1932, 0, 0, 1555, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1567,
  6243. 45, 45, 158, 45, 45, 172, 45, 45, 45, 183, 45, 45, 45, 45, 201, 45, 45, 67, 212, 67, 67, 67, 67, 231, 235,
  6244. 241, 245, 67, 67, 67, 67, 67, 67, 493, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 472, 67, 67, 67, 67, 67,
  6245. 97, 97, 97, 97, 1651, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 1539, 45, 45, 45, 67, 1704, 67,
  6246. 1706, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 1841, 97, 0, 1844, 97, 97, 97,
  6247. 97, 1716, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 590, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 0, 45,
  6248. 45, 45, 1385, 1748, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1757, 45, 45, 159, 45, 45, 45, 45,
  6249. 45, 45, 45, 45, 45, 45, 45, 45, 45, 415, 45, 45, 97, 97, 1780, 97, 97, 97, 0, 0, 1786, 97, 97, 97, 97, 97,
  6250. 0, 0, 97, 97, 1730, 0, 97, 97, 97, 97, 97, 1736, 97, 1738, 67, 97, 97, 97, 97, 97, 97, 0, 1838, 97, 97,
  6251. 97, 97, 97, 0, 0, 97, 1729, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 1162, 97, 97, 97, 1165, 97, 97, 97, 45,
  6252. 1950, 45, 45, 45, 45, 45, 45, 45, 45, 1958, 67, 67, 67, 1962, 67, 67, 67, 67, 67, 1246, 67, 67, 67, 67,
  6253. 67, 67, 67, 67, 67, 67, 67, 97, 1710, 97, 97, 97, 1999, 67, 97, 97, 97, 97, 0, 2003, 97, 97, 97, 0, 97,
  6254. 97, 2008, 2009, 45, 67, 67, 67, 67, 0, 0, 97, 97, 97, 97, 45, 2052, 67, 2053, 0, 0, 0, 0, 925, 41606, 0,
  6255. 0, 930, 0, 45, 45, 45, 45, 45, 45, 1392, 45, 1394, 45, 45, 45, 45, 45, 45, 45, 1545, 45, 45, 45, 45, 45,
  6256. 45, 45, 45, 45, 45, 1563, 1565, 45, 45, 45, 1568, 0, 97, 2055, 45, 67, 0, 97, 45, 67, 0, 97, 45, 67,
  6257. 28672, 97, 45, 45, 160, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 679, 45, 45, 67, 67, 266, 67,
  6258. 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098, 65820, 97, 346, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24,
  6259. 24, 0, 28, 28, 139621, 0, 0, 362, 0, 364, 0, 367, 41098, 369, 140, 371, 45, 45, 45, 379, 45, 45, 45, 388,
  6260. 45, 45, 45, 45, 45, 45, 45, 45, 1663, 45, 45, 45, 45, 45, 45, 45, 45, 45, 449, 45, 45, 45, 45, 45, 67, 67,
  6261. 542, 37139, 37139, 24853, 24853, 0, 70179, 0, 0, 0, 65820, 65820, 369, 287, 97, 97, 97, 97, 97, 1622, 97,
  6262. 97, 97, 97, 97, 97, 97, 1629, 97, 97, 0, 1794, 1795, 97, 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45,
  6263. 45, 1745, 45, 45, 97, 639, 18, 0, 139621, 0, 0, 0, 0, 0, 0, 364, 0, 0, 367, 41606, 45, 731, 45, 45, 45,
  6264. 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 251, 67, 67, 67, 67, 67, 798, 67, 67, 67, 67,
  6265. 67, 67, 67, 67, 67, 67, 67, 67, 1073, 67, 67, 67, 860, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  6266. 97, 873, 0, 0, 1101, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 921, 97, 0, 67, 67, 67, 67, 1245,
  6267. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1250, 67, 67, 1253, 0, 0, 1312, 0, 0, 0, 1318, 0, 0, 0, 0,
  6268. 0, 0, 97, 97, 97, 97, 1106, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1149, 97, 97, 97, 97, 97, 1155, 97, 97,
  6269. 1325, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1141, 97, 97, 67, 67, 1439, 67, 1441, 67, 67,
  6270. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1264, 67, 67, 67, 97, 97, 1492, 97, 1494, 97, 97, 97, 97, 97, 97,
  6271. 97, 97, 97, 97, 97, 1331, 97, 97, 97, 97, 67, 67, 67, 2037, 67, 97, 0, 0, 97, 97, 97, 2043, 97, 45, 45,
  6272. 45, 442, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 232, 67, 67, 67, 67, 67, 67,
  6273. 67, 67, 1823, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 1975, 0, 0, 97, 874, 97, 97, 97, 97, 97, 97,
  6274. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1142, 97, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630,
  6275. 114730, 106539, 65, 86, 117, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539,
  6276. 63, 84, 115, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 61, 82, 113,
  6277. 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 59, 80, 111, 53264, 18, 49172,
  6278. 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 57, 78, 109, 53264, 18, 49172, 57366, 24, 8192,
  6279. 28, 102432, 37, 110630, 114730, 106539, 55, 76, 107, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37,
  6280. 110630, 114730, 106539, 53, 74, 105, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730,
  6281. 106539, 51, 72, 103, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 49, 70,
  6282. 101, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 47, 68, 99, 53264, 18,
  6283. 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 45, 67, 97, 53264, 18, 49172, 57366, 24,
  6284. 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 213085, 53264, 18, 49172, 57366, 24, 8192, 28, 102432,
  6285. 0, 0, 0, 44, 0, 0, 32863, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 41, 41, 41, 0, 0, 1138688,
  6286. 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 0, 53264, 18, 49172,
  6287. 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 89, 53264, 18, 18, 49172, 0, 57366, 0, 24,
  6288. 24, 24, 0, 127, 127, 127, 127, 102432, 67, 262, 67, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0, 41098,
  6289. 65820, 342, 97, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 139621, 0, 360, 0, 0, 364, 0, 367,
  6290. 41098, 369, 140, 45, 45, 45, 45, 717, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 412, 45, 45, 45, 45, 45,
  6291. 67, 1009, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1292, 67, 67, 1294, 67, 67, 67, 67, 67, 67,
  6292. 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 97, 97, 97, 1615, 97, 97, 97, 53264, 18, 49172, 57366, 24, 8192, 28,
  6293. 102432, 37, 110630, 114730, 106539, 66, 87, 118, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37,
  6294. 110630, 114730, 106539, 64, 85, 116, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730,
  6295. 106539, 62, 83, 114, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 60, 81,
  6296. 112, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 58, 79, 110, 53264, 18,
  6297. 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 56, 77, 108, 53264, 18, 49172, 57366, 24,
  6298. 8192, 28, 102432, 37, 110630, 114730, 106539, 54, 75, 106, 53264, 18, 49172, 57366, 24, 8192, 28, 102432,
  6299. 37, 110630, 114730, 106539, 52, 73, 104, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630,
  6300. 114730, 106539, 50, 71, 102, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539,
  6301. 48, 69, 100, 53264, 18, 49172, 57366, 24, 8192, 28, 102432, 37, 110630, 114730, 106539, 46, 67, 98, 53264,
  6302. 18, 49172, 57366, 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 233472, 53264, 18, 49172, 57366,
  6303. 24, 8192, 28, 102432, 0, 110630, 114730, 106539, 0, 0, 69724, 53264, 18, 18, 49172, 0, 57366, 262144, 24,
  6304. 24, 24, 0, 28, 28, 28, 28, 102432, 45, 45, 161, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 710,
  6305. 45, 45, 28, 139621, 359, 0, 0, 0, 364, 0, 367, 41098, 369, 140, 45, 45, 45, 45, 1389, 45, 45, 45, 45, 45,
  6306. 45, 45, 45, 45, 45, 45, 949, 45, 45, 45, 45, 67, 503, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  6307. 67, 1449, 67, 67, 97, 600, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1154, 97, 0, 0, 0, 0,
  6308. 925, 41606, 927, 0, 0, 0, 45, 45, 45, 45, 45, 45, 1866, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 772, 67,
  6309. 67, 67, 67, 67, 45, 45, 969, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 951, 45, 45, 45, 45,
  6310. 1192, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1202, 45, 45, 0, 0, 0, 1314, 0, 0, 0, 0, 0, 0,
  6311. 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 1488, 67, 67, 267, 67, 67, 67, 67, 0, 37139, 24853, 0, 0, 0, 0,
  6312. 41098, 65820, 97, 347, 97, 97, 97, 97, 0, 53264, 0, 18, 18, 24, 24, 0, 28, 28, 139621, 0, 361, 0, 0, 364,
  6313. 0, 367, 41098, 369, 140, 45, 45, 45, 45, 734, 45, 45, 45, 67, 67, 67, 67, 67, 742, 67, 67, 45, 45, 668,
  6314. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1214, 45, 45, 1130, 97, 97, 97, 97, 97, 97, 97, 97,
  6315. 97, 97, 97, 97, 97, 97, 97, 1361, 97, 45, 45, 1671, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  6316. 1552, 45, 45, 0, 0, 0, 0, 2220032, 0, 0, 1130496, 0, 0, 0, 0, 2170880, 2171020, 2170880, 2170880, 18, 0,
  6317. 0, 131072, 0, 0, 0, 90112, 0, 2220032, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 1485, 97, 97, 97, 97, 0, 45,
  6318. 45, 45, 45, 45, 1537, 45, 45, 45, 45, 45, 1390, 45, 1393, 45, 45, 45, 45, 1398, 45, 45, 45, 2170880,
  6319. 2171167, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880,
  6320. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2576384, 2215936, 3117056, 2215936, 2215936,
  6321. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0, 0, 0, 0, 0,
  6322. 0, 2174976, 0, 0, 0, 0, 0, 0, 2183168, 0, 0, 0, 0, 2170880, 2170880, 2170880, 2400256, 2170880, 2170880,
  6323. 2170880, 2170880, 2721252, 2744320, 2170880, 2170880, 2170880, 2834432, 2840040, 2170880, 2908160,
  6324. 2170880, 2170880, 2936832, 2170880, 2170880, 2985984, 2170880, 2994176, 2170880, 2170880, 3014656,
  6325. 2170880, 3059712, 3076096, 3088384, 2170880, 2170880, 2170880, 2170880, 0, 0, 0, 0, 2220032, 0, 0, 0,
  6326. 1142784, 0, 0, 0, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3215360, 2215936,
  6327. 2215936, 2215936, 2215936, 2215936, 2437120, 2215936, 2215936, 2215936, 3117056, 2215936, 2215936,
  6328. 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 2215936, 0, 543, 0, 545,
  6329. 0, 0, 2183168, 0, 0, 831, 0, 2170880, 2170880, 2170880, 2400256, 2170880, 2170880, 2170880, 2170880,
  6330. 3031040, 2170880, 3055616, 2170880, 2170880, 2170880, 2170880, 3092480, 2170880, 2170880, 3125248,
  6331. 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 2170880, 3198976, 2170880, 0, 0,
  6332. 0, 0, 0, 0, 67, 67, 37139, 37139, 24853, 24853, 0, 0, 0, 0, 0, 65820, 65820, 0, 287, 97, 97, 97, 97, 97,
  6333. 1783, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 1791, 0, 0, 546, 70179, 0, 0, 0, 0, 552,
  6334. 0, 97, 97, 97, 97, 97, 97, 97, 604, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1150, 97, 97, 97, 97, 97,
  6335. 147456, 147456, 147456, 147456, 147456, 147456, 147456, 147456, 147456, 147456, 147456, 147456, 0, 0,
  6336. 147456, 0, 0, 0, 0, 925, 41606, 0, 928, 0, 0, 45, 45, 45, 45, 45, 45, 998, 45, 45, 45, 45, 45, 45, 45, 45,
  6337. 45, 1562, 45, 1564, 45, 45, 45, 45, 0, 2158592, 2158592, 0, 0, 0, 0, 2232320, 2232320, 2232320, 0,
  6338. 2240512, 2240512, 2240512, 2240512, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2170880, 2170880, 2170880, 2416640
  6339. ];
  6340. JSONiqTokenizer.EXPECTED =
  6341. [
  6342. 291, 300, 304, 341, 315, 309, 305, 295, 319, 323, 327, 329, 296, 333, 337, 339, 342, 346, 350, 294, 356,
  6343. 360, 312, 367, 352, 371, 363, 375, 379, 383, 387, 391, 395, 726, 399, 405, 518, 684, 405, 405, 405, 405,
  6344. 808, 405, 405, 405, 512, 405, 405, 405, 431, 405, 405, 406, 405, 405, 404, 405, 405, 405, 405, 405, 405,
  6345. 405, 908, 631, 410, 415, 405, 414, 419, 608, 405, 429, 602, 405, 435, 443, 405, 441, 641, 478, 405, 447,
  6346. 451, 450, 456, 643, 461, 460, 762, 679, 465, 469, 741, 473, 477, 482, 486, 492, 932, 931, 523, 498, 504,
  6347. 720, 405, 510, 596, 405, 516, 941, 580, 522, 929, 527, 590, 589, 897, 939, 534, 538, 547, 551, 555, 559,
  6348. 563, 567, 571, 969, 575, 708, 690, 689, 579, 584, 634, 405, 594, 731, 405, 600, 882, 405, 606, 895, 786,
  6349. 452, 612, 405, 615, 620, 876, 624, 628, 638, 647, 651, 655, 659, 663, 667, 676, 683, 688, 695, 694, 791,
  6350. 405, 699, 437, 405, 706, 714, 405, 712, 825, 870, 405, 718, 724, 769, 768, 823, 730, 735, 745, 751, 422,
  6351. 755, 759, 425, 766, 902, 810, 587, 775, 888, 887, 405, 773, 992, 405, 779, 962, 405, 785, 781, 986, 790,
  6352. 795, 797, 506, 500, 499, 801, 805, 814, 820, 829, 833, 837, 841, 845, 849, 853, 857, 861, 616, 865, 869,
  6353. 868, 488, 405, 874, 816, 405, 880, 738, 405, 886, 892, 543, 405, 901, 906, 913, 912, 918, 494, 541, 922,
  6354. 926, 936, 945, 949, 953, 957, 530, 966, 973, 960, 702, 701, 405, 979, 981, 405, 985, 747, 405, 990, 998,
  6355. 914, 405, 996, 1004, 672, 975, 974, 1014, 1002, 1008, 670, 1012, 405, 405, 405, 405, 405, 401, 1018, 1022,
  6356. 1026, 1106, 1071, 1111, 1111, 1111, 1082, 1145, 1030, 1101, 1034, 1038, 1106, 1106, 1106, 1106, 1046, 1206,
  6357. 1052, 1106, 1072, 1111, 1111, 1042, 1134, 1065, 1111, 1112, 1056, 1160, 1207, 1062, 1204, 1208, 1069, 1106,
  6358. 1106, 1106, 1076, 1111, 1207, 1161, 1122, 1205, 1064, 1094, 1106, 1106, 1107, 1111, 1111, 1111, 1078, 1086,
  6359. 1207, 1092, 1098, 1046, 1058, 1106, 1106, 1110, 1111, 1111, 1116, 1120, 1161, 1126, 1202, 1104, 1106, 1145,
  6360. 1146, 1129, 1138, 1088, 1151, 1048, 1157, 1153, 1132, 1141, 1165, 1107, 1111, 1172, 1179, 1109, 1183, 1175,
  6361. 1143, 1147, 1187, 1108, 1191, 1195, 1144, 1199, 1168, 1212, 1216, 1220, 1224, 1228, 1232, 1236, 1557, 1247,
  6362. 1241, 1241, 1038, 1434, 1241, 1241, 1241, 1241, 1254, 1275, 1617, 1241, 1280, 1287, 1241, 1241, 1241, 1287,
  6363. 1241, 2114, 1291, 1241, 1243, 1241, 2049, 1824, 2094, 2095, 1520, 1309, 1241, 1241, 1302, 1241, 1321, 1311,
  6364. 1241, 1241, 1313, 1778, 1325, 1336, 1241, 1241, 1325, 1330, 1353, 1241, 1241, 1695, 1354, 1241, 1241, 1241,
  6365. 1294, 1686, 1331, 1241, 1696, 1368, 1241, 1338, 1370, 1241, 1392, 1399, 1364, 2017, 1406, 2016, 1405, 1716,
  6366. 1406, 1407, 1422, 1417, 1421, 1241, 1241, 1241, 1349, 1426, 1241, 1774, 1756, 1241, 1773, 1241, 1241, 1345,
  6367. 1964, 1812, 1432, 1241, 1241, 1345, 1993, 1459, 1241, 1241, 1241, 1395, 1848, 1767, 1465, 1241, 1241, 1394,
  6368. 1847, 1242, 1477, 1241, 1241, 1428, 1241, 1445, 1492, 1241, 1241, 1438, 1241, 1499, 1241, 1241, 1241, 1455,
  6369. 1241, 1818, 1448, 1241, 1250, 1241, 2026, 1623, 1449, 1241, 1612, 1616, 1241, 1614, 1241, 1257, 1241, 1241,
  6370. 1985, 1292, 1586, 1512, 1241, 1517, 2050, 1526, 1674, 1519, 1524, 1647, 2051, 1532, 1537, 1551, 1544, 1550,
  6371. 1555, 1561, 1571, 1578, 1584, 1590, 1591, 1653, 1595, 1602, 1606, 1610, 1634, 1628, 1640, 1633, 1645, 1241,
  6372. 1241, 1241, 1469, 1241, 1970, 1651, 1241, 1270, 1241, 1241, 1819, 1449, 1241, 1293, 1664, 1241, 1241, 1481,
  6373. 1485, 1574, 1672, 1241, 1241, 1513, 1317, 1487, 1684, 1241, 1241, 1533, 1299, 1694, 1241, 1241, 1295, 1241,
  6374. 1241, 1241, 1546, 1700, 1241, 1241, 1707, 1241, 1713, 1241, 1849, 1715, 1241, 1720, 1241, 1276, 1267, 1241,
  6375. 1241, 2107, 1657, 1864, 1241, 1881, 1241, 1326, 1292, 1241, 1685, 1358, 1724, 1338, 1241, 1363, 1362, 1342,
  6376. 1340, 1361, 1339, 1833, 1372, 1360, 1833, 1833, 1342, 1343, 1835, 1341, 1731, 1738, 1344, 1241, 1745, 1241,
  6377. 1379, 1241, 1241, 2092, 1241, 1388, 1761, 1754, 1241, 1386, 1241, 1400, 1760, 1241, 1241, 1241, 1598, 1734,
  6378. 1241, 1241, 1241, 1635, 1645, 1241, 1780, 1766, 1241, 1241, 1332, 1771, 1241, 1241, 1629, 2079, 1241, 1242,
  6379. 1784, 1241, 1241, 1680, 1639, 2063, 1790, 1241, 1241, 1741, 1241, 1241, 1800, 1241, 1241, 1762, 1473, 1241,
  6380. 1806, 1241, 1241, 1786, 1240, 1709, 1241, 1241, 1241, 1668, 1811, 1241, 1940, 1241, 1401, 1974, 1241, 1408,
  6381. 1413, 1382, 1241, 1816, 1241, 1241, 1802, 2086, 1811, 1241, 1817, 1945, 1823, 2095, 2095, 2047, 2094, 2046,
  6382. 2080, 1241, 1409, 1312, 1376, 2096, 2048, 1241, 1241, 1807, 1241, 1241, 1241, 2035, 1241, 1241, 1828, 1241,
  6383. 2057, 2061, 1241, 1241, 1843, 1241, 2059, 1241, 1241, 1241, 1690, 1847, 1241, 1241, 1241, 1703, 2102, 1848,
  6384. 1241, 1241, 1853, 1292, 1848, 1241, 2016, 1857, 1241, 2002, 1868, 1241, 1436, 1241, 1241, 1271, 1305, 1241,
  6385. 1874, 1241, 1241, 1884, 2037, 1892, 1241, 1890, 1241, 1461, 1241, 1241, 1795, 1241, 1241, 1891, 1241, 1878,
  6386. 1241, 1888, 1241, 1888, 1905, 1896, 2087, 1912, 1903, 1241, 1911, 1906, 1916, 1905, 2027, 1863, 1925, 2088,
  6387. 1859, 1861, 1922, 1927, 1931, 1935, 1494, 1241, 1241, 1918, 1907, 1939, 1917, 1944, 1949, 1241, 1241, 1451,
  6388. 1955, 1241, 1241, 1241, 1796, 1727, 2061, 1241, 1241, 1899, 1241, 1660, 1968, 1241, 1241, 1951, 1678, 1978,
  6389. 1241, 1241, 1241, 1839, 1241, 1241, 1984, 1982, 1241, 1488, 1241, 1241, 1624, 1450, 1989, 1241, 1241, 1241,
  6390. 1870, 1995, 1292, 1241, 1241, 1958, 1261, 1241, 1996, 1241, 1241, 1241, 2039, 2008, 1241, 1241, 1750, 2000,
  6391. 1241, 1256, 2001, 1960, 1241, 1564, 1241, 1504, 1241, 1241, 1442, 1241, 1241, 1564, 1528, 1263, 1241, 1508,
  6392. 1241, 1241, 1468, 1498, 2006, 1540, 2015, 1539, 2014, 1748, 2013, 1539, 1831, 2014, 2012, 1500, 1567, 2022,
  6393. 2021, 1241, 1580, 1241, 1241, 2033, 2037, 1791, 2045, 2031, 1241, 1621, 1241, 1641, 2044, 1241, 1241, 1241,
  6394. 2093, 1241, 1241, 2055, 1241, 1241, 2067, 1241, 1283, 1241, 1241, 1241, 2101, 2071, 1241, 1241, 1241, 2073,
  6395. 1848, 2040, 1241, 1241, 1241, 2077, 1241, 1241, 2106, 1241, 1241, 2084, 1241, 2111, 1241, 1241, 1381, 1380,
  6396. 1241, 1241, 1241, 2100, 1241, 2129, 2118, 2122, 2126, 2197, 2133, 3010, 2825, 2145, 2698, 2156, 2226, 2160,
  6397. 2161, 2165, 2174, 2293, 2194, 2630, 2201, 2203, 2152, 3019, 2226, 2263, 2209, 2213, 2218, 2269, 2292, 2269,
  6398. 2269, 2184, 2226, 2238, 2148, 2151, 3017, 2245, 2214, 2269, 2269, 2185, 2226, 2292, 2269, 2291, 2269, 2269,
  6399. 2269, 2292, 2205, 3019, 2226, 2226, 2160, 2160, 2160, 2261, 2160, 2160, 2160, 2262, 2276, 2160, 2160, 2277,
  6400. 2216, 2283, 2216, 2269, 2269, 2268, 2269, 2267, 2269, 2269, 2269, 2271, 2568, 2292, 2269, 2293, 2269, 2182,
  6401. 2190, 2269, 2186, 2226, 2226, 2226, 2226, 2227, 2160, 2160, 2160, 2160, 2263, 2160, 2275, 2277, 2282, 2215,
  6402. 2217, 2269, 2269, 2291, 2269, 2269, 2293, 2291, 2269, 2220, 2269, 2295, 2294, 2269, 2269, 2305, 2233, 2262,
  6403. 2278, 2218, 2269, 2234, 2226, 2226, 2228, 2160, 2160, 2160, 2289, 2220, 2294, 2294, 2269, 2269, 2304, 2269,
  6404. 2160, 2160, 2287, 2269, 2269, 2305, 2269, 2269, 2312, 2269, 2269, 2225, 2226, 2160, 2287, 2289, 2219, 2304,
  6405. 2295, 2314, 2234, 2226, 2314, 2269, 2226, 2226, 2160, 2288, 2219, 2222, 2304, 2296, 2269, 2224, 2160, 2160,
  6406. 2269, 2302, 2294, 2314, 2224, 2226, 2288, 2220, 2294, 2269, 2290, 2269, 2269, 2293, 2269, 2269, 2269, 2269,
  6407. 2270, 2221, 2313, 2225, 2227, 2160, 2300, 2269, 2225, 2261, 2309, 2234, 2229, 2223, 2318, 2318, 2318, 2328,
  6408. 2336, 2340, 2344, 2350, 2637, 2712, 2358, 2362, 2372, 2135, 2378, 2398, 2135, 2135, 2135, 2135, 2136, 2417,
  6409. 2241, 2135, 2378, 2135, 2135, 2980, 2984, 2135, 3006, 2135, 2135, 2135, 2945, 2931, 2425, 2400, 2135, 2135,
  6410. 2135, 2954, 2135, 2481, 2433, 2135, 2135, 2988, 2824, 2135, 2135, 2482, 2434, 2135, 2135, 2440, 2445, 2452,
  6411. 2135, 2135, 2998, 3002, 2961, 2441, 2446, 2453, 2463, 2974, 2135, 2135, 2135, 2140, 2642, 2709, 2459, 2470,
  6412. 2465, 2135, 2135, 3005, 2135, 2135, 2987, 2823, 2458, 2469, 2464, 2975, 2135, 2135, 2135, 2353, 2488, 2447,
  6413. 2324, 2974, 2135, 2409, 2459, 2448, 2135, 2961, 2487, 2446, 2476, 2323, 2973, 2135, 2135, 2135, 2354, 2476,
  6414. 2974, 2135, 2135, 2135, 2957, 2135, 2135, 2960, 2135, 2135, 2135, 2363, 2409, 2459, 2474, 2465, 2487, 2571,
  6415. 2973, 2135, 2135, 2168, 2973, 2135, 2135, 2135, 2959, 2135, 2135, 2135, 2506, 2135, 2957, 2488, 2170, 2135,
  6416. 2135, 2135, 2960, 2135, 2818, 2493, 2135, 2135, 3033, 2135, 2135, 2135, 2934, 2819, 2494, 2135, 2135, 2135,
  6417. 2976, 2780, 2499, 2135, 2135, 2135, 3000, 2968, 2135, 2935, 2135, 2135, 2135, 2364, 2507, 2135, 2135, 2934,
  6418. 2135, 2135, 2780, 2492, 2507, 2135, 2135, 2506, 2780, 2135, 2135, 2782, 2780, 2135, 2782, 2135, 2783, 2374,
  6419. 2514, 2135, 2135, 2135, 3007, 2530, 2974, 2135, 2135, 2135, 3008, 2135, 2135, 2134, 2135, 2526, 2531, 2975,
  6420. 2135, 2135, 3042, 2581, 2575, 2956, 2135, 2135, 2135, 2394, 2135, 2508, 2535, 2840, 2844, 2495, 2135, 2135,
  6421. 2136, 2684, 2537, 2842, 2846, 2135, 2136, 2561, 2581, 2551, 2536, 2841, 2845, 2975, 3043, 2582, 2843, 2555,
  6422. 2135, 3040, 3044, 2538, 2844, 2975, 2135, 2135, 2253, 2644, 2672, 2542, 2554, 2135, 2135, 2346, 2873, 2551,
  6423. 2555, 2135, 2135, 2135, 2381, 2559, 2565, 2538, 2553, 2135, 2560, 2914, 2576, 2590, 2135, 2135, 2135, 2408,
  6424. 2136, 2596, 2624, 2135, 2135, 2135, 2409, 2135, 2618, 2597, 3008, 2135, 2135, 2380, 2956, 2601, 2135, 2135,
  6425. 2135, 2410, 2620, 2624, 2135, 2136, 2383, 2135, 2135, 2783, 2623, 2135, 2135, 2393, 2888, 2136, 2621, 3008,
  6426. 2135, 2618, 2618, 2622, 2135, 2135, 2405, 2414, 2619, 2384, 2624, 2135, 2136, 2950, 2135, 2138, 2135, 2139,
  6427. 2135, 2604, 2623, 2135, 2140, 2878, 2665, 2957, 2622, 2135, 2135, 2428, 2762, 2606, 2612, 2135, 2135, 2501,
  6428. 2586, 2604, 3038, 2135, 2604, 3036, 2387, 2958, 2386, 2135, 2141, 2135, 2421, 2387, 2385, 2135, 2385, 2384,
  6429. 2384, 2135, 2386, 2628, 2384, 2135, 2135, 2501, 2596, 2591, 2135, 2135, 2135, 2400, 2135, 2634, 2135, 2135,
  6430. 2559, 2580, 2575, 2648, 2135, 2135, 2135, 2429, 2649, 2135, 2135, 2135, 2435, 2654, 2658, 2135, 2135, 2135,
  6431. 2436, 2649, 2178, 2659, 2135, 2135, 2595, 2601, 2669, 2677, 2135, 2135, 2616, 2957, 2879, 2665, 2691, 2135,
  6432. 2363, 2367, 2900, 2878, 2664, 2690, 2975, 2877, 2643, 2670, 2974, 2671, 2975, 2135, 2135, 2619, 2608, 2669,
  6433. 2673, 2135, 2135, 2653, 2177, 2672, 2135, 2135, 2135, 2486, 2168, 2251, 2255, 2695, 2974, 2709, 2135, 2135,
  6434. 2135, 2487, 2169, 2399, 2716, 2975, 2135, 2363, 2770, 2776, 2640, 2717, 2135, 2135, 2729, 2135, 2135, 2641,
  6435. 2718, 2135, 2135, 2135, 2505, 2135, 2640, 2257, 2974, 2135, 2727, 2975, 2135, 2365, 2332, 2895, 2957, 2135,
  6436. 2959, 2135, 2365, 2749, 2754, 2959, 2958, 2958, 2135, 2380, 2793, 2799, 2135, 2735, 2738, 2135, 2381, 2135,
  6437. 2135, 2940, 2974, 2135, 2744, 2135, 2135, 2739, 2519, 2976, 2745, 2135, 2135, 2135, 2509, 2755, 2135, 2135,
  6438. 2135, 2510, 2772, 2778, 2135, 2135, 2740, 2520, 2135, 2771, 2777, 2135, 2135, 2759, 2750, 2792, 2798, 2135,
  6439. 2135, 2781, 2392, 2779, 2135, 2135, 2135, 2521, 2135, 2679, 2248, 2135, 2135, 2681, 2480, 2135, 2135, 2786,
  6440. 3000, 2135, 2679, 2683, 2135, 2135, 2416, 2135, 2135, 2135, 2525, 2135, 2730, 2135, 2135, 2135, 2560, 2581,
  6441. 2135, 2805, 2135, 2135, 2804, 2962, 2832, 2974, 2135, 2382, 2135, 2135, 2958, 2135, 2135, 2960, 2135, 2829,
  6442. 2833, 2975, 2961, 2965, 2969, 2973, 2968, 2972, 2135, 2135, 2135, 2641, 2135, 2515, 2966, 2970, 2851, 2478,
  6443. 2135, 2135, 2808, 2135, 2809, 2135, 2135, 2135, 2722, 2852, 2479, 2135, 2135, 2815, 2135, 2135, 2766, 2853,
  6444. 2480, 2135, 2857, 2479, 2135, 2388, 2723, 2135, 2364, 2331, 2894, 2858, 2480, 2135, 2135, 2850, 2478, 2135,
  6445. 2135, 2135, 2806, 2864, 2135, 2399, 2256, 2974, 2865, 2135, 2135, 2862, 2135, 2135, 2135, 2685, 2807, 2865,
  6446. 2135, 2135, 2807, 2863, 2135, 2135, 2135, 2686, 2884, 2807, 2135, 2809, 2807, 2135, 2135, 2807, 2806, 2705,
  6447. 2810, 2808, 2700, 2869, 2702, 2702, 2702, 2704, 2883, 2135, 2135, 2135, 2730, 2884, 2135, 2135, 2135, 2731,
  6448. 2321, 2546, 2135, 2135, 2876, 2255, 2889, 2322, 2547, 2135, 2401, 2135, 2135, 2135, 2949, 2367, 2893, 2544,
  6449. 2973, 2906, 2973, 2135, 2135, 2877, 2663, 2368, 2901, 2907, 2974, 2366, 2899, 2905, 2972, 2920, 2974, 2135,
  6450. 2135, 2911, 2900, 2920, 2363, 2913, 2918, 2465, 2941, 2975, 2135, 2135, 2924, 2928, 2974, 2945, 2931, 2135,
  6451. 2135, 2135, 2765, 2136, 2955, 2135, 2135, 2939, 2931, 2380, 2135, 2135, 2380, 2135, 2135, 2135, 2780, 2507,
  6452. 2137, 2135, 2137, 2135, 2139, 2135, 2806, 2810, 2135, 2135, 2135, 2992, 2135, 2135, 2962, 2966, 2970, 2974,
  6453. 2135, 2135, 2787, 3014, 2135, 2521, 2993, 2135, 2135, 2135, 2803, 2135, 2135, 2135, 2618, 2607, 2997, 3001,
  6454. 2135, 2135, 2963, 2967, 2971, 2975, 2135, 2135, 2791, 2797, 2135, 3009, 2999, 3003, 2787, 3001, 2135, 2135,
  6455. 2964, 2968, 2785, 2999, 3003, 2135, 2135, 2135, 2804, 2785, 2999, 3004, 2135, 2135, 2135, 2807, 2135, 2135,
  6456. 3023, 2135, 2135, 2135, 2811, 2135, 2135, 3027, 2135, 2135, 2135, 2837, 2968, 3028, 2135, 2135, 2135, 2875,
  6457. 2135, 2784, 3029, 2135, 2408, 2457, 2446, 0, 14, 0, -2120220672, 1610612736, -2074083328, -2002780160,
  6458. -2111830528, 1073872896, 1342177280, 1075807216, 4096, 16384, 2048, 8192, 0, 8192, 0, 0, 0, 0, 1, 0, 0, 0,
  6459. 2, 0, -2145386496, 8388608, 1073741824, 0, 0x80000000, 0x80000000, 2097152, 2097152, 2097152, 536870912, 0,
  6460. 0, 134217728, 33554432, 1536, 268435456, 268435456, 268435456, 268435456, 128, 256, 32, 0, 65536, 131072,
  6461. 524288, 16777216, 268435456, 0x80000000, 1572864, 1835008, 640, 32768, 65536, 262144, 1048576, 2097152,
  6462. 196608, 196800, 196608, 196608, 0, 131072, 131072, 131072, 196608, 196624, 196608, 196624, 196608, 196608,
  6463. 128, 4096, 16384, 16384, 2048, 0, 4, 0, 0, 0x80000000, 2097152, 0, 1024, 32, 32, 0, 65536, 1572864,
  6464. 1048576, 32768, 32768, 32768, 32768, 196608, 196608, 196608, 64, 64, 196608, 196608, 131072, 131072,
  6465. 131072, 131072, 268435456, 268435456, 64, 196736, 196608, 196608, 196608, 131072, 196608, 196608, 16384, 4,
  6466. 4, 4, 2, 32, 32, 65536, 1048576, 12582912, 1073741824, 0, 0, 2, 8, 16, 96, 2048, 32768, 0, 0, 131072,
  6467. 268435456, 268435456, 268435456, 256, 256, 196608, 196672, 196608, 196608, 196608, 196608, 4, 0, 256, 256,
  6468. 256, 256, 32, 32, 32768, 32, 32, 32, 32, 32768, 268435456, 268435456, 268435456, 196608, 196608, 196608,
  6469. 196624, 196608, 196608, 196608, 16, 16, 16, 268435456, 196608, 64, 64, 64, 196608, 196608, 196608, 196672,
  6470. 268435456, 64, 64, 196608, 196608, 16, 196608, 196608, 196608, 268435456, 64, 196608, 131072, 262144,
  6471. 4194304, 25165824, 33554432, 134217728, 268435456, 268435456, 196608, 262152, 8, 256, 512, 3072, 16384,
  6472. 200, -1073741816, 8392713, 40, 8392718, 520, 807404072, 40, 520, 100663304, 0, 0, -540651761, -540651761,
  6473. 257589048, 0, 262144, 0, 0, 3, 8, 256, 0, 4, 6, 4100, 8388612, 0, 0, 0, 3, 4, 8, 256, 512, 1024, 0,
  6474. 2097152, 0, 0, -537854471, -537854471, 0, 100663296, 0, 0, 1, 2, 0, 0, 0, 16384, 0, 0, 0, 96, 14336, 0, 0,
  6475. 0, 7, 8, 234881024, 0, 0, 0, 8, 0, 0, 0, 0, 262144, 0, 0, 16, 64, 384, 512, 0, 1, 1, 0, 12582912, 0, 0, 0,
  6476. 0, 33554432, 67108864, -606084144, -606084144, -606084138, 0, 0, 28, 32, 768, 1966080, -608174080, 0, 0, 0,
  6477. 14, 35056, 16, 64, 896, 24576, 98304, 98304, 131072, 262144, 524288, 1048576, 4194304, 25165824, 1048576,
  6478. 62914560, 134217728, -805306368, 0, 384, 512, 16384, 65536, 131072, 262144, 29360128, 33554432, 134217728,
  6479. 268435456, 1073741824, 0x80000000, 262144, 524288, 1048576, 29360128, 33554432, 524288, 1048576, 16777216,
  6480. 33554432, 134217728, 268435456, 1073741824, 0, 0, 0, 123856, 1966080, 0, 64, 384, 16384, 65536, 131072,
  6481. 16384, 65536, 524288, 268435456, 0x80000000, 0, 0, 524288, 0x80000000, 0, 0, 1, 16, 0, 256, 524288, 0, 0,
  6482. 0, 25, 96, 128, -537854471, 0, 0, 0, 32, 7404800, -545259520, 0, 0, 0, 60, 0, 249, 64768, 1048576, 6291456,
  6483. 6291456, 25165824, 100663296, 402653184, 1073741824, 96, 128, 1280, 2048, 4096, 57344, 6291456, 57344,
  6484. 6291456, 8388608, 16777216, 33554432, 201326592, 1342177280, 0x80000000, 0, 57344, 6291456, 8388608,
  6485. 100663296, 134217728, 0x80000000, 0, 0, 0, 1, 8, 16, 64, 128, 64, 128, 256, 1024, 131072, 131072, 131072,
  6486. 262144, 524288, 16777216, 57344, 6291456, 8388608, 67108864, 134217728, 64, 256, 1024, 2048, 4096, 57344,
  6487. 64, 256, 0, 24576, 32768, 6291456, 67108864, 134217728, 0, 1, 64, 256, 24576, 32768, 4194304, 32768,
  6488. 4194304, 67108864, 0, 0, 64, 256, 0, 0, 24576, 32768, 0, 16384, 4194304, 67108864, 64, 16384, 0, 0, 1, 64,
  6489. 256, 16384, 4194304, 67108864, 0, 0, 0, 16384, 0, 16384, 16384, 0, -470447874, -470447874, -470447874, 0,
  6490. 0, 128, 0, 0, 8, 96, 2048, 32768, 262144, 8388608, 35056, 1376256, -471859200, 0, 0, 14, 16, 224, 2048,
  6491. 32768, 2097152, 4194304, 8388608, -486539264, 0, 96, 128, 2048, 32768, 262144, 2097152, 262144, 2097152,
  6492. 8388608, 33554432, 536870912, 1073741824, 0x80000000, 0, 1610612736, 0x80000000, 0, 0, 1, 524288, 1048576,
  6493. 12582912, 0, 0, 0, 151311, 264503296, 2097152, 8388608, 33554432, 1610612736, 0x80000000, 262144, 8388608,
  6494. 33554432, 536870912, 67108864, 4194304, 0, 4194304, 0, 4194304, 4194304, 0, 0, 524288, 8388608, 536870912,
  6495. 1073741824, 0x80000000, 1, 4097, 8388609, 96, 2048, 32768, 1073741824, 0x80000000, 0, 96, 2048,
  6496. 0x80000000, 0, 0, 96, 2048, 0, 0, 1, 12582912, 0, 0, 0, 0, 1641895695, 1641895695, 0, 0, 0, 249, 7404800,
  6497. 15, 87808, 1835008, 1639972864, 0, 768, 5120, 16384, 65536, 1835008, 1835008, 12582912, 16777216,
  6498. 1610612736, 0, 3, 4, 8, 768, 4096, 65536, 0, 0, 256, 512, 786432, 8, 256, 512, 4096, 16384, 1835008, 16384,
  6499. 1835008, 12582912, 1610612736, 0, 0, 0, 256, 0, 0, 0, 4, 8, 16, 32, 1, 2, 8, 256, 16384, 524288, 16384,
  6500. 524288, 1048576, 12582912, 1610612736, 0, 0, 0, 8388608, 0, 0, 0, 524288, 4194304, 0, 0, 0, 8388608,
  6501. -548662288, -548662288, -548662288, 0, 0, 256, 16384, 65536, 520093696, -1073741824, 0, 0, 0, 16777216, 0,
  6502. 16, 32, 960, 4096, 4980736, 520093696, 1073741824, 0, 32, 896, 4096, 57344, 1048576, 6291456, 8388608,
  6503. 16777216, 100663296, 134217728, 268435456, 0x80000000, 0, 512, 786432, 4194304, 33554432, 134217728,
  6504. 268435456, 0, 786432, 4194304, 134217728, 268435456, 0, 524288, 4194304, 268435456, 0, 0, 0, 0, 0, 4194304,
  6505. 4194304, -540651761, 0, 0, 0, 2, 4, 8, 16, 96, 128, 264503296, -805306368, 0, 0, 0, 8, 256, 512, 19456,
  6506. 131072, 3072, 16384, 131072, 262144, 8388608, 16777216, 512, 1024, 2048, 16384, 131072, 262144, 131072,
  6507. 262144, 8388608, 33554432, 201326592, 268435456, 0, 3, 4, 256, 1024, 2048, 57344, 16384, 131072, 8388608,
  6508. 33554432, 134217728, 268435456, 0, 3, 256, 1024, 16384, 131072, 33554432, 134217728, 1073741824,
  6509. 0x80000000, 0, 0, 256, 524288, 0x80000000, 0, 3, 256, 33554432, 134217728, 1073741824, 0, 1, 2, 33554432,
  6510. 1, 2, 134217728, 1073741824, 0, 1, 2, 134217728, 0, 0, 0, 64, 0, 0, 0, 16, 32, 896, 4096, 786432, 4194304,
  6511. 16777216, 33554432, 201326592, 268435456, 1073741824, 0x80000000, 0, 0, 0, 15, 0, 4980736, 4980736,
  6512. 4980736, 70460, 70460, 3478332, 0, 0, 1008, 4984832, 520093696, 60, 4864, 65536, 0, 0, 0, 12, 16, 32, 256,
  6513. 512, 4096, 65536, 0, 0, 0, 67108864, 0, 0, 0, 12, 0, 256, 512, 65536, 0, 0, 1024, 512, 131072, 131072, 4,
  6514. 16, 32, 65536, 0, 4, 16, 32, 0, 0, 0, 4, 16, 0, 0, 16384, 67108864, 0, 0, 1, 24, 96, 128, 256, 1024
  6515. ];
  6516. JSONiqTokenizer.TOKEN =
  6517. [
  6518. "(0)",
  6519. "JSONChar",
  6520. "JSONCharRef",
  6521. "JSONPredefinedCharRef",
  6522. "ModuleDecl",
  6523. "Annotation",
  6524. "OptionDecl",
  6525. "Operator",
  6526. "Variable",
  6527. "Tag",
  6528. "EndTag",
  6529. "PragmaContents",
  6530. "DirCommentContents",
  6531. "DirPIContents",
  6532. "CDataSectionContents",
  6533. "AttrTest",
  6534. "Wildcard",
  6535. "EQName",
  6536. "IntegerLiteral",
  6537. "DecimalLiteral",
  6538. "DoubleLiteral",
  6539. "PredefinedEntityRef",
  6540. "'\"\"'",
  6541. "EscapeApos",
  6542. "AposChar",
  6543. "ElementContentChar",
  6544. "QuotAttrContentChar",
  6545. "AposAttrContentChar",
  6546. "NCName",
  6547. "QName",
  6548. "S",
  6549. "CharRef",
  6550. "CommentContents",
  6551. "DocTag",
  6552. "DocCommentContents",
  6553. "EOF",
  6554. "'!'",
  6555. "'\"'",
  6556. "'#'",
  6557. "'#)'",
  6558. "'$$'",
  6559. "''''",
  6560. "'('",
  6561. "'(#'",
  6562. "'(:'",
  6563. "'(:~'",
  6564. "')'",
  6565. "'*'",
  6566. "'*'",
  6567. "','",
  6568. "'-->'",
  6569. "'.'",
  6570. "'/'",
  6571. "'/>'",
  6572. "':'",
  6573. "':)'",
  6574. "';'",
  6575. "'<!--'",
  6576. "'<![CDATA['",
  6577. "'<?'",
  6578. "'='",
  6579. "'>'",
  6580. "'?'",
  6581. "'?>'",
  6582. "'NaN'",
  6583. "'['",
  6584. "']'",
  6585. "']]>'",
  6586. "'after'",
  6587. "'all'",
  6588. "'allowing'",
  6589. "'ancestor'",
  6590. "'ancestor-or-self'",
  6591. "'and'",
  6592. "'any'",
  6593. "'append'",
  6594. "'array'",
  6595. "'as'",
  6596. "'ascending'",
  6597. "'at'",
  6598. "'attribute'",
  6599. "'base-uri'",
  6600. "'before'",
  6601. "'boundary-space'",
  6602. "'break'",
  6603. "'by'",
  6604. "'case'",
  6605. "'cast'",
  6606. "'castable'",
  6607. "'catch'",
  6608. "'check'",
  6609. "'child'",
  6610. "'collation'",
  6611. "'collection'",
  6612. "'comment'",
  6613. "'constraint'",
  6614. "'construction'",
  6615. "'contains'",
  6616. "'content'",
  6617. "'context'",
  6618. "'continue'",
  6619. "'copy'",
  6620. "'copy-namespaces'",
  6621. "'count'",
  6622. "'decimal-format'",
  6623. "'decimal-separator'",
  6624. "'declare'",
  6625. "'default'",
  6626. "'delete'",
  6627. "'descendant'",
  6628. "'descendant-or-self'",
  6629. "'descending'",
  6630. "'diacritics'",
  6631. "'different'",
  6632. "'digit'",
  6633. "'distance'",
  6634. "'div'",
  6635. "'document'",
  6636. "'document-node'",
  6637. "'element'",
  6638. "'else'",
  6639. "'empty'",
  6640. "'empty-sequence'",
  6641. "'encoding'",
  6642. "'end'",
  6643. "'entire'",
  6644. "'eq'",
  6645. "'every'",
  6646. "'exactly'",
  6647. "'except'",
  6648. "'exit'",
  6649. "'external'",
  6650. "'first'",
  6651. "'following'",
  6652. "'following-sibling'",
  6653. "'for'",
  6654. "'foreach'",
  6655. "'foreign'",
  6656. "'from'",
  6657. "'ft-option'",
  6658. "'ftand'",
  6659. "'ftnot'",
  6660. "'ftor'",
  6661. "'function'",
  6662. "'ge'",
  6663. "'greatest'",
  6664. "'group'",
  6665. "'grouping-separator'",
  6666. "'gt'",
  6667. "'idiv'",
  6668. "'if'",
  6669. "'import'",
  6670. "'in'",
  6671. "'index'",
  6672. "'infinity'",
  6673. "'inherit'",
  6674. "'insensitive'",
  6675. "'insert'",
  6676. "'instance'",
  6677. "'integrity'",
  6678. "'intersect'",
  6679. "'into'",
  6680. "'is'",
  6681. "'item'",
  6682. "'json'",
  6683. "'json-item'",
  6684. "'key'",
  6685. "'language'",
  6686. "'last'",
  6687. "'lax'",
  6688. "'le'",
  6689. "'least'",
  6690. "'let'",
  6691. "'levels'",
  6692. "'loop'",
  6693. "'lowercase'",
  6694. "'lt'",
  6695. "'minus-sign'",
  6696. "'mod'",
  6697. "'modify'",
  6698. "'module'",
  6699. "'most'",
  6700. "'namespace'",
  6701. "'namespace-node'",
  6702. "'ne'",
  6703. "'next'",
  6704. "'no'",
  6705. "'no-inherit'",
  6706. "'no-preserve'",
  6707. "'node'",
  6708. "'nodes'",
  6709. "'not'",
  6710. "'object'",
  6711. "'occurs'",
  6712. "'of'",
  6713. "'on'",
  6714. "'only'",
  6715. "'option'",
  6716. "'or'",
  6717. "'order'",
  6718. "'ordered'",
  6719. "'ordering'",
  6720. "'paragraph'",
  6721. "'paragraphs'",
  6722. "'parent'",
  6723. "'pattern-separator'",
  6724. "'per-mille'",
  6725. "'percent'",
  6726. "'phrase'",
  6727. "'position'",
  6728. "'preceding'",
  6729. "'preceding-sibling'",
  6730. "'preserve'",
  6731. "'previous'",
  6732. "'processing-instruction'",
  6733. "'relationship'",
  6734. "'rename'",
  6735. "'replace'",
  6736. "'return'",
  6737. "'returning'",
  6738. "'revalidation'",
  6739. "'same'",
  6740. "'satisfies'",
  6741. "'schema'",
  6742. "'schema-attribute'",
  6743. "'schema-element'",
  6744. "'score'",
  6745. "'self'",
  6746. "'sensitive'",
  6747. "'sentence'",
  6748. "'sentences'",
  6749. "'skip'",
  6750. "'sliding'",
  6751. "'some'",
  6752. "'stable'",
  6753. "'start'",
  6754. "'stemming'",
  6755. "'stop'",
  6756. "'strict'",
  6757. "'strip'",
  6758. "'structured-item'",
  6759. "'switch'",
  6760. "'text'",
  6761. "'then'",
  6762. "'thesaurus'",
  6763. "'times'",
  6764. "'to'",
  6765. "'treat'",
  6766. "'try'",
  6767. "'tumbling'",
  6768. "'type'",
  6769. "'typeswitch'",
  6770. "'union'",
  6771. "'unique'",
  6772. "'unordered'",
  6773. "'updating'",
  6774. "'uppercase'",
  6775. "'using'",
  6776. "'validate'",
  6777. "'value'",
  6778. "'variable'",
  6779. "'version'",
  6780. "'weight'",
  6781. "'when'",
  6782. "'where'",
  6783. "'while'",
  6784. "'wildcards'",
  6785. "'window'",
  6786. "'with'",
  6787. "'without'",
  6788. "'word'",
  6789. "'words'",
  6790. "'xquery'",
  6791. "'zero-digit'",
  6792. "'{'",
  6793. "'{{'",
  6794. "'|'",
  6795. "'}'",
  6796. "'}}'"
  6797. ];
  6798. },{}],"/node_modules/xqlint/lib/lexers/XQueryTokenizer.js":[function(_dereq_,module,exports){
  6799. var XQueryTokenizer = exports.XQueryTokenizer = function XQueryTokenizer(string, parsingEventHandler)
  6800. {
  6801. init(string, parsingEventHandler);
  6802. var self = this;
  6803. this.ParseException = function(b, e, s, o, x)
  6804. {
  6805. var
  6806. begin = b,
  6807. end = e,
  6808. state = s,
  6809. offending = o,
  6810. expected = x;
  6811. this.getBegin = function() {return begin;};
  6812. this.getEnd = function() {return end;};
  6813. this.getState = function() {return state;};
  6814. this.getExpected = function() {return expected;};
  6815. this.getOffending = function() {return offending;};
  6816. this.getMessage = function()
  6817. {
  6818. return offending < 0 ? "lexical analysis failed" : "syntax error";
  6819. };
  6820. };
  6821. function init(string, parsingEventHandler)
  6822. {
  6823. eventHandler = parsingEventHandler;
  6824. input = string;
  6825. size = string.length;
  6826. reset(0, 0, 0);
  6827. }
  6828. this.getInput = function()
  6829. {
  6830. return input;
  6831. };
  6832. function reset(l, b, e)
  6833. {
  6834. b0 = b; e0 = b;
  6835. l1 = l; b1 = b; e1 = e;
  6836. end = e;
  6837. eventHandler.reset(input);
  6838. }
  6839. this.getOffendingToken = function(e)
  6840. {
  6841. var o = e.getOffending();
  6842. return o >= 0 ? XQueryTokenizer.TOKEN[o] : null;
  6843. };
  6844. this.getExpectedTokenSet = function(e)
  6845. {
  6846. var expected;
  6847. if (e.getExpected() < 0)
  6848. {
  6849. expected = XQueryTokenizer.getTokenSet(- e.getState());
  6850. }
  6851. else
  6852. {
  6853. expected = [XQueryTokenizer.TOKEN[e.getExpected()]];
  6854. }
  6855. return expected;
  6856. };
  6857. this.getErrorMessage = function(e)
  6858. {
  6859. var tokenSet = this.getExpectedTokenSet(e);
  6860. var found = this.getOffendingToken(e);
  6861. var prefix = input.substring(0, e.getBegin());
  6862. var lines = prefix.split("\n");
  6863. var line = lines.length;
  6864. var column = lines[line - 1].length + 1;
  6865. var size = e.getEnd() - e.getBegin();
  6866. return e.getMessage()
  6867. + (found == null ? "" : ", found " + found)
  6868. + "\nwhile expecting "
  6869. + (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
  6870. + "\n"
  6871. + (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
  6872. + "at line " + line + ", column " + column + ":\n..."
  6873. + input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
  6874. + "...";
  6875. };
  6876. this.parse_start = function()
  6877. {
  6878. eventHandler.startNonterminal("start", e0);
  6879. lookahead1W(14); // ModuleDecl | Annotation | OptionDecl | Operator | Variable | Tag | AttrTest |
  6880. switch (l1)
  6881. {
  6882. case 55: // '<![CDATA['
  6883. shift(55); // '<![CDATA['
  6884. break;
  6885. case 54: // '<!--'
  6886. shift(54); // '<!--'
  6887. break;
  6888. case 56: // '<?'
  6889. shift(56); // '<?'
  6890. break;
  6891. case 40: // '(#'
  6892. shift(40); // '(#'
  6893. break;
  6894. case 42: // '(:~'
  6895. shift(42); // '(:~'
  6896. break;
  6897. case 41: // '(:'
  6898. shift(41); // '(:'
  6899. break;
  6900. case 35: // '"'
  6901. shift(35); // '"'
  6902. break;
  6903. case 38: // "'"
  6904. shift(38); // "'"
  6905. break;
  6906. case 274: // '}'
  6907. shift(274); // '}'
  6908. break;
  6909. case 271: // '{'
  6910. shift(271); // '{'
  6911. break;
  6912. case 39: // '('
  6913. shift(39); // '('
  6914. break;
  6915. case 43: // ')'
  6916. shift(43); // ')'
  6917. break;
  6918. case 49: // '/'
  6919. shift(49); // '/'
  6920. break;
  6921. case 62: // '['
  6922. shift(62); // '['
  6923. break;
  6924. case 63: // ']'
  6925. shift(63); // ']'
  6926. break;
  6927. case 46: // ','
  6928. shift(46); // ','
  6929. break;
  6930. case 48: // '.'
  6931. shift(48); // '.'
  6932. break;
  6933. case 53: // ';'
  6934. shift(53); // ';'
  6935. break;
  6936. case 51: // ':'
  6937. shift(51); // ':'
  6938. break;
  6939. case 34: // '!'
  6940. shift(34); // '!'
  6941. break;
  6942. case 273: // '|'
  6943. shift(273); // '|'
  6944. break;
  6945. case 2: // Annotation
  6946. shift(2); // Annotation
  6947. break;
  6948. case 1: // ModuleDecl
  6949. shift(1); // ModuleDecl
  6950. break;
  6951. case 3: // OptionDecl
  6952. shift(3); // OptionDecl
  6953. break;
  6954. case 12: // AttrTest
  6955. shift(12); // AttrTest
  6956. break;
  6957. case 13: // Wildcard
  6958. shift(13); // Wildcard
  6959. break;
  6960. case 15: // IntegerLiteral
  6961. shift(15); // IntegerLiteral
  6962. break;
  6963. case 16: // DecimalLiteral
  6964. shift(16); // DecimalLiteral
  6965. break;
  6966. case 17: // DoubleLiteral
  6967. shift(17); // DoubleLiteral
  6968. break;
  6969. case 5: // Variable
  6970. shift(5); // Variable
  6971. break;
  6972. case 6: // Tag
  6973. shift(6); // Tag
  6974. break;
  6975. case 4: // Operator
  6976. shift(4); // Operator
  6977. break;
  6978. case 33: // EOF
  6979. shift(33); // EOF
  6980. break;
  6981. default:
  6982. parse_EQName();
  6983. }
  6984. eventHandler.endNonterminal("start", e0);
  6985. };
  6986. this.parse_StartTag = function()
  6987. {
  6988. eventHandler.startNonterminal("StartTag", e0);
  6989. lookahead1W(8); // QName | S^WS | EOF | '"' | "'" | '/>' | '=' | '>'
  6990. switch (l1)
  6991. {
  6992. case 58: // '>'
  6993. shift(58); // '>'
  6994. break;
  6995. case 50: // '/>'
  6996. shift(50); // '/>'
  6997. break;
  6998. case 27: // QName
  6999. shift(27); // QName
  7000. break;
  7001. case 57: // '='
  7002. shift(57); // '='
  7003. break;
  7004. case 35: // '"'
  7005. shift(35); // '"'
  7006. break;
  7007. case 38: // "'"
  7008. shift(38); // "'"
  7009. break;
  7010. default:
  7011. shift(33); // EOF
  7012. }
  7013. eventHandler.endNonterminal("StartTag", e0);
  7014. };
  7015. this.parse_TagContent = function()
  7016. {
  7017. eventHandler.startNonterminal("TagContent", e0);
  7018. lookahead1(11); // Tag | EndTag | PredefinedEntityRef | ElementContentChar | CharRef | EOF |
  7019. switch (l1)
  7020. {
  7021. case 23: // ElementContentChar
  7022. shift(23); // ElementContentChar
  7023. break;
  7024. case 6: // Tag
  7025. shift(6); // Tag
  7026. break;
  7027. case 7: // EndTag
  7028. shift(7); // EndTag
  7029. break;
  7030. case 55: // '<![CDATA['
  7031. shift(55); // '<![CDATA['
  7032. break;
  7033. case 54: // '<!--'
  7034. shift(54); // '<!--'
  7035. break;
  7036. case 18: // PredefinedEntityRef
  7037. shift(18); // PredefinedEntityRef
  7038. break;
  7039. case 29: // CharRef
  7040. shift(29); // CharRef
  7041. break;
  7042. case 272: // '{{'
  7043. shift(272); // '{{'
  7044. break;
  7045. case 275: // '}}'
  7046. shift(275); // '}}'
  7047. break;
  7048. case 271: // '{'
  7049. shift(271); // '{'
  7050. break;
  7051. default:
  7052. shift(33); // EOF
  7053. }
  7054. eventHandler.endNonterminal("TagContent", e0);
  7055. };
  7056. this.parse_AposAttr = function()
  7057. {
  7058. eventHandler.startNonterminal("AposAttr", e0);
  7059. lookahead1(10); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | EOF | "'" |
  7060. switch (l1)
  7061. {
  7062. case 20: // EscapeApos
  7063. shift(20); // EscapeApos
  7064. break;
  7065. case 25: // AposAttrContentChar
  7066. shift(25); // AposAttrContentChar
  7067. break;
  7068. case 18: // PredefinedEntityRef
  7069. shift(18); // PredefinedEntityRef
  7070. break;
  7071. case 29: // CharRef
  7072. shift(29); // CharRef
  7073. break;
  7074. case 272: // '{{'
  7075. shift(272); // '{{'
  7076. break;
  7077. case 275: // '}}'
  7078. shift(275); // '}}'
  7079. break;
  7080. case 271: // '{'
  7081. shift(271); // '{'
  7082. break;
  7083. case 38: // "'"
  7084. shift(38); // "'"
  7085. break;
  7086. default:
  7087. shift(33); // EOF
  7088. }
  7089. eventHandler.endNonterminal("AposAttr", e0);
  7090. };
  7091. this.parse_QuotAttr = function()
  7092. {
  7093. eventHandler.startNonterminal("QuotAttr", e0);
  7094. lookahead1(9); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | EOF | '"' |
  7095. switch (l1)
  7096. {
  7097. case 19: // EscapeQuot
  7098. shift(19); // EscapeQuot
  7099. break;
  7100. case 24: // QuotAttrContentChar
  7101. shift(24); // QuotAttrContentChar
  7102. break;
  7103. case 18: // PredefinedEntityRef
  7104. shift(18); // PredefinedEntityRef
  7105. break;
  7106. case 29: // CharRef
  7107. shift(29); // CharRef
  7108. break;
  7109. case 272: // '{{'
  7110. shift(272); // '{{'
  7111. break;
  7112. case 275: // '}}'
  7113. shift(275); // '}}'
  7114. break;
  7115. case 271: // '{'
  7116. shift(271); // '{'
  7117. break;
  7118. case 35: // '"'
  7119. shift(35); // '"'
  7120. break;
  7121. default:
  7122. shift(33); // EOF
  7123. }
  7124. eventHandler.endNonterminal("QuotAttr", e0);
  7125. };
  7126. this.parse_CData = function()
  7127. {
  7128. eventHandler.startNonterminal("CData", e0);
  7129. lookahead1(1); // CDataSectionContents | EOF | ']]>'
  7130. switch (l1)
  7131. {
  7132. case 11: // CDataSectionContents
  7133. shift(11); // CDataSectionContents
  7134. break;
  7135. case 64: // ']]>'
  7136. shift(64); // ']]>'
  7137. break;
  7138. default:
  7139. shift(33); // EOF
  7140. }
  7141. eventHandler.endNonterminal("CData", e0);
  7142. };
  7143. this.parse_XMLComment = function()
  7144. {
  7145. eventHandler.startNonterminal("XMLComment", e0);
  7146. lookahead1(0); // DirCommentContents | EOF | '-->'
  7147. switch (l1)
  7148. {
  7149. case 9: // DirCommentContents
  7150. shift(9); // DirCommentContents
  7151. break;
  7152. case 47: // '-->'
  7153. shift(47); // '-->'
  7154. break;
  7155. default:
  7156. shift(33); // EOF
  7157. }
  7158. eventHandler.endNonterminal("XMLComment", e0);
  7159. };
  7160. this.parse_PI = function()
  7161. {
  7162. eventHandler.startNonterminal("PI", e0);
  7163. lookahead1(3); // DirPIContents | EOF | '?' | '?>'
  7164. switch (l1)
  7165. {
  7166. case 10: // DirPIContents
  7167. shift(10); // DirPIContents
  7168. break;
  7169. case 59: // '?'
  7170. shift(59); // '?'
  7171. break;
  7172. case 60: // '?>'
  7173. shift(60); // '?>'
  7174. break;
  7175. default:
  7176. shift(33); // EOF
  7177. }
  7178. eventHandler.endNonterminal("PI", e0);
  7179. };
  7180. this.parse_Pragma = function()
  7181. {
  7182. eventHandler.startNonterminal("Pragma", e0);
  7183. lookahead1(2); // PragmaContents | EOF | '#' | '#)'
  7184. switch (l1)
  7185. {
  7186. case 8: // PragmaContents
  7187. shift(8); // PragmaContents
  7188. break;
  7189. case 36: // '#'
  7190. shift(36); // '#'
  7191. break;
  7192. case 37: // '#)'
  7193. shift(37); // '#)'
  7194. break;
  7195. default:
  7196. shift(33); // EOF
  7197. }
  7198. eventHandler.endNonterminal("Pragma", e0);
  7199. };
  7200. this.parse_Comment = function()
  7201. {
  7202. eventHandler.startNonterminal("Comment", e0);
  7203. lookahead1(4); // CommentContents | EOF | '(:' | ':)'
  7204. switch (l1)
  7205. {
  7206. case 52: // ':)'
  7207. shift(52); // ':)'
  7208. break;
  7209. case 41: // '(:'
  7210. shift(41); // '(:'
  7211. break;
  7212. case 30: // CommentContents
  7213. shift(30); // CommentContents
  7214. break;
  7215. default:
  7216. shift(33); // EOF
  7217. }
  7218. eventHandler.endNonterminal("Comment", e0);
  7219. };
  7220. this.parse_CommentDoc = function()
  7221. {
  7222. eventHandler.startNonterminal("CommentDoc", e0);
  7223. lookahead1(5); // DocTag | DocCommentContents | EOF | '(:' | ':)'
  7224. switch (l1)
  7225. {
  7226. case 31: // DocTag
  7227. shift(31); // DocTag
  7228. break;
  7229. case 32: // DocCommentContents
  7230. shift(32); // DocCommentContents
  7231. break;
  7232. case 52: // ':)'
  7233. shift(52); // ':)'
  7234. break;
  7235. case 41: // '(:'
  7236. shift(41); // '(:'
  7237. break;
  7238. default:
  7239. shift(33); // EOF
  7240. }
  7241. eventHandler.endNonterminal("CommentDoc", e0);
  7242. };
  7243. this.parse_QuotString = function()
  7244. {
  7245. eventHandler.startNonterminal("QuotString", e0);
  7246. lookahead1(6); // PredefinedEntityRef | EscapeQuot | QuotChar | CharRef | EOF | '"'
  7247. switch (l1)
  7248. {
  7249. case 18: // PredefinedEntityRef
  7250. shift(18); // PredefinedEntityRef
  7251. break;
  7252. case 29: // CharRef
  7253. shift(29); // CharRef
  7254. break;
  7255. case 19: // EscapeQuot
  7256. shift(19); // EscapeQuot
  7257. break;
  7258. case 21: // QuotChar
  7259. shift(21); // QuotChar
  7260. break;
  7261. case 35: // '"'
  7262. shift(35); // '"'
  7263. break;
  7264. default:
  7265. shift(33); // EOF
  7266. }
  7267. eventHandler.endNonterminal("QuotString", e0);
  7268. };
  7269. this.parse_AposString = function()
  7270. {
  7271. eventHandler.startNonterminal("AposString", e0);
  7272. lookahead1(7); // PredefinedEntityRef | EscapeApos | AposChar | CharRef | EOF | "'"
  7273. switch (l1)
  7274. {
  7275. case 18: // PredefinedEntityRef
  7276. shift(18); // PredefinedEntityRef
  7277. break;
  7278. case 29: // CharRef
  7279. shift(29); // CharRef
  7280. break;
  7281. case 20: // EscapeApos
  7282. shift(20); // EscapeApos
  7283. break;
  7284. case 22: // AposChar
  7285. shift(22); // AposChar
  7286. break;
  7287. case 38: // "'"
  7288. shift(38); // "'"
  7289. break;
  7290. default:
  7291. shift(33); // EOF
  7292. }
  7293. eventHandler.endNonterminal("AposString", e0);
  7294. };
  7295. this.parse_Prefix = function()
  7296. {
  7297. eventHandler.startNonterminal("Prefix", e0);
  7298. lookahead1W(13); // NCName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7299. whitespace();
  7300. parse_NCName();
  7301. eventHandler.endNonterminal("Prefix", e0);
  7302. };
  7303. this.parse__EQName = function()
  7304. {
  7305. eventHandler.startNonterminal("_EQName", e0);
  7306. lookahead1W(12); // EQName^Token | S^WS | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7307. whitespace();
  7308. parse_EQName();
  7309. eventHandler.endNonterminal("_EQName", e0);
  7310. };
  7311. function parse_EQName()
  7312. {
  7313. eventHandler.startNonterminal("EQName", e0);
  7314. switch (l1)
  7315. {
  7316. case 77: // 'attribute'
  7317. shift(77); // 'attribute'
  7318. break;
  7319. case 91: // 'comment'
  7320. shift(91); // 'comment'
  7321. break;
  7322. case 115: // 'document-node'
  7323. shift(115); // 'document-node'
  7324. break;
  7325. case 116: // 'element'
  7326. shift(116); // 'element'
  7327. break;
  7328. case 119: // 'empty-sequence'
  7329. shift(119); // 'empty-sequence'
  7330. break;
  7331. case 140: // 'function'
  7332. shift(140); // 'function'
  7333. break;
  7334. case 147: // 'if'
  7335. shift(147); // 'if'
  7336. break;
  7337. case 160: // 'item'
  7338. shift(160); // 'item'
  7339. break;
  7340. case 180: // 'namespace-node'
  7341. shift(180); // 'namespace-node'
  7342. break;
  7343. case 186: // 'node'
  7344. shift(186); // 'node'
  7345. break;
  7346. case 211: // 'processing-instruction'
  7347. shift(211); // 'processing-instruction'
  7348. break;
  7349. case 221: // 'schema-attribute'
  7350. shift(221); // 'schema-attribute'
  7351. break;
  7352. case 222: // 'schema-element'
  7353. shift(222); // 'schema-element'
  7354. break;
  7355. case 238: // 'switch'
  7356. shift(238); // 'switch'
  7357. break;
  7358. case 239: // 'text'
  7359. shift(239); // 'text'
  7360. break;
  7361. case 248: // 'typeswitch'
  7362. shift(248); // 'typeswitch'
  7363. break;
  7364. default:
  7365. parse_FunctionName();
  7366. }
  7367. eventHandler.endNonterminal("EQName", e0);
  7368. }
  7369. function parse_FunctionName()
  7370. {
  7371. eventHandler.startNonterminal("FunctionName", e0);
  7372. switch (l1)
  7373. {
  7374. case 14: // EQName^Token
  7375. shift(14); // EQName^Token
  7376. break;
  7377. case 65: // 'after'
  7378. shift(65); // 'after'
  7379. break;
  7380. case 68: // 'ancestor'
  7381. shift(68); // 'ancestor'
  7382. break;
  7383. case 69: // 'ancestor-or-self'
  7384. shift(69); // 'ancestor-or-self'
  7385. break;
  7386. case 70: // 'and'
  7387. shift(70); // 'and'
  7388. break;
  7389. case 74: // 'as'
  7390. shift(74); // 'as'
  7391. break;
  7392. case 75: // 'ascending'
  7393. shift(75); // 'ascending'
  7394. break;
  7395. case 79: // 'before'
  7396. shift(79); // 'before'
  7397. break;
  7398. case 83: // 'case'
  7399. shift(83); // 'case'
  7400. break;
  7401. case 84: // 'cast'
  7402. shift(84); // 'cast'
  7403. break;
  7404. case 85: // 'castable'
  7405. shift(85); // 'castable'
  7406. break;
  7407. case 88: // 'child'
  7408. shift(88); // 'child'
  7409. break;
  7410. case 89: // 'collation'
  7411. shift(89); // 'collation'
  7412. break;
  7413. case 98: // 'copy'
  7414. shift(98); // 'copy'
  7415. break;
  7416. case 100: // 'count'
  7417. shift(100); // 'count'
  7418. break;
  7419. case 103: // 'declare'
  7420. shift(103); // 'declare'
  7421. break;
  7422. case 104: // 'default'
  7423. shift(104); // 'default'
  7424. break;
  7425. case 105: // 'delete'
  7426. shift(105); // 'delete'
  7427. break;
  7428. case 106: // 'descendant'
  7429. shift(106); // 'descendant'
  7430. break;
  7431. case 107: // 'descendant-or-self'
  7432. shift(107); // 'descendant-or-self'
  7433. break;
  7434. case 108: // 'descending'
  7435. shift(108); // 'descending'
  7436. break;
  7437. case 113: // 'div'
  7438. shift(113); // 'div'
  7439. break;
  7440. case 114: // 'document'
  7441. shift(114); // 'document'
  7442. break;
  7443. case 117: // 'else'
  7444. shift(117); // 'else'
  7445. break;
  7446. case 118: // 'empty'
  7447. shift(118); // 'empty'
  7448. break;
  7449. case 121: // 'end'
  7450. shift(121); // 'end'
  7451. break;
  7452. case 123: // 'eq'
  7453. shift(123); // 'eq'
  7454. break;
  7455. case 124: // 'every'
  7456. shift(124); // 'every'
  7457. break;
  7458. case 126: // 'except'
  7459. shift(126); // 'except'
  7460. break;
  7461. case 129: // 'first'
  7462. shift(129); // 'first'
  7463. break;
  7464. case 130: // 'following'
  7465. shift(130); // 'following'
  7466. break;
  7467. case 131: // 'following-sibling'
  7468. shift(131); // 'following-sibling'
  7469. break;
  7470. case 132: // 'for'
  7471. shift(132); // 'for'
  7472. break;
  7473. case 141: // 'ge'
  7474. shift(141); // 'ge'
  7475. break;
  7476. case 143: // 'group'
  7477. shift(143); // 'group'
  7478. break;
  7479. case 145: // 'gt'
  7480. shift(145); // 'gt'
  7481. break;
  7482. case 146: // 'idiv'
  7483. shift(146); // 'idiv'
  7484. break;
  7485. case 148: // 'import'
  7486. shift(148); // 'import'
  7487. break;
  7488. case 154: // 'insert'
  7489. shift(154); // 'insert'
  7490. break;
  7491. case 155: // 'instance'
  7492. shift(155); // 'instance'
  7493. break;
  7494. case 157: // 'intersect'
  7495. shift(157); // 'intersect'
  7496. break;
  7497. case 158: // 'into'
  7498. shift(158); // 'into'
  7499. break;
  7500. case 159: // 'is'
  7501. shift(159); // 'is'
  7502. break;
  7503. case 165: // 'last'
  7504. shift(165); // 'last'
  7505. break;
  7506. case 167: // 'le'
  7507. shift(167); // 'le'
  7508. break;
  7509. case 169: // 'let'
  7510. shift(169); // 'let'
  7511. break;
  7512. case 173: // 'lt'
  7513. shift(173); // 'lt'
  7514. break;
  7515. case 175: // 'mod'
  7516. shift(175); // 'mod'
  7517. break;
  7518. case 176: // 'modify'
  7519. shift(176); // 'modify'
  7520. break;
  7521. case 177: // 'module'
  7522. shift(177); // 'module'
  7523. break;
  7524. case 179: // 'namespace'
  7525. shift(179); // 'namespace'
  7526. break;
  7527. case 181: // 'ne'
  7528. shift(181); // 'ne'
  7529. break;
  7530. case 193: // 'only'
  7531. shift(193); // 'only'
  7532. break;
  7533. case 195: // 'or'
  7534. shift(195); // 'or'
  7535. break;
  7536. case 196: // 'order'
  7537. shift(196); // 'order'
  7538. break;
  7539. case 197: // 'ordered'
  7540. shift(197); // 'ordered'
  7541. break;
  7542. case 201: // 'parent'
  7543. shift(201); // 'parent'
  7544. break;
  7545. case 207: // 'preceding'
  7546. shift(207); // 'preceding'
  7547. break;
  7548. case 208: // 'preceding-sibling'
  7549. shift(208); // 'preceding-sibling'
  7550. break;
  7551. case 213: // 'rename'
  7552. shift(213); // 'rename'
  7553. break;
  7554. case 214: // 'replace'
  7555. shift(214); // 'replace'
  7556. break;
  7557. case 215: // 'return'
  7558. shift(215); // 'return'
  7559. break;
  7560. case 219: // 'satisfies'
  7561. shift(219); // 'satisfies'
  7562. break;
  7563. case 224: // 'self'
  7564. shift(224); // 'self'
  7565. break;
  7566. case 230: // 'some'
  7567. shift(230); // 'some'
  7568. break;
  7569. case 231: // 'stable'
  7570. shift(231); // 'stable'
  7571. break;
  7572. case 232: // 'start'
  7573. shift(232); // 'start'
  7574. break;
  7575. case 243: // 'to'
  7576. shift(243); // 'to'
  7577. break;
  7578. case 244: // 'treat'
  7579. shift(244); // 'treat'
  7580. break;
  7581. case 245: // 'try'
  7582. shift(245); // 'try'
  7583. break;
  7584. case 249: // 'union'
  7585. shift(249); // 'union'
  7586. break;
  7587. case 251: // 'unordered'
  7588. shift(251); // 'unordered'
  7589. break;
  7590. case 255: // 'validate'
  7591. shift(255); // 'validate'
  7592. break;
  7593. case 261: // 'where'
  7594. shift(261); // 'where'
  7595. break;
  7596. case 265: // 'with'
  7597. shift(265); // 'with'
  7598. break;
  7599. case 269: // 'xquery'
  7600. shift(269); // 'xquery'
  7601. break;
  7602. case 67: // 'allowing'
  7603. shift(67); // 'allowing'
  7604. break;
  7605. case 76: // 'at'
  7606. shift(76); // 'at'
  7607. break;
  7608. case 78: // 'base-uri'
  7609. shift(78); // 'base-uri'
  7610. break;
  7611. case 80: // 'boundary-space'
  7612. shift(80); // 'boundary-space'
  7613. break;
  7614. case 81: // 'break'
  7615. shift(81); // 'break'
  7616. break;
  7617. case 86: // 'catch'
  7618. shift(86); // 'catch'
  7619. break;
  7620. case 93: // 'construction'
  7621. shift(93); // 'construction'
  7622. break;
  7623. case 96: // 'context'
  7624. shift(96); // 'context'
  7625. break;
  7626. case 97: // 'continue'
  7627. shift(97); // 'continue'
  7628. break;
  7629. case 99: // 'copy-namespaces'
  7630. shift(99); // 'copy-namespaces'
  7631. break;
  7632. case 101: // 'decimal-format'
  7633. shift(101); // 'decimal-format'
  7634. break;
  7635. case 120: // 'encoding'
  7636. shift(120); // 'encoding'
  7637. break;
  7638. case 127: // 'exit'
  7639. shift(127); // 'exit'
  7640. break;
  7641. case 128: // 'external'
  7642. shift(128); // 'external'
  7643. break;
  7644. case 136: // 'ft-option'
  7645. shift(136); // 'ft-option'
  7646. break;
  7647. case 149: // 'in'
  7648. shift(149); // 'in'
  7649. break;
  7650. case 150: // 'index'
  7651. shift(150); // 'index'
  7652. break;
  7653. case 156: // 'integrity'
  7654. shift(156); // 'integrity'
  7655. break;
  7656. case 166: // 'lax'
  7657. shift(166); // 'lax'
  7658. break;
  7659. case 187: // 'nodes'
  7660. shift(187); // 'nodes'
  7661. break;
  7662. case 194: // 'option'
  7663. shift(194); // 'option'
  7664. break;
  7665. case 198: // 'ordering'
  7666. shift(198); // 'ordering'
  7667. break;
  7668. case 217: // 'revalidation'
  7669. shift(217); // 'revalidation'
  7670. break;
  7671. case 220: // 'schema'
  7672. shift(220); // 'schema'
  7673. break;
  7674. case 223: // 'score'
  7675. shift(223); // 'score'
  7676. break;
  7677. case 229: // 'sliding'
  7678. shift(229); // 'sliding'
  7679. break;
  7680. case 235: // 'strict'
  7681. shift(235); // 'strict'
  7682. break;
  7683. case 246: // 'tumbling'
  7684. shift(246); // 'tumbling'
  7685. break;
  7686. case 247: // 'type'
  7687. shift(247); // 'type'
  7688. break;
  7689. case 252: // 'updating'
  7690. shift(252); // 'updating'
  7691. break;
  7692. case 256: // 'value'
  7693. shift(256); // 'value'
  7694. break;
  7695. case 257: // 'variable'
  7696. shift(257); // 'variable'
  7697. break;
  7698. case 258: // 'version'
  7699. shift(258); // 'version'
  7700. break;
  7701. case 262: // 'while'
  7702. shift(262); // 'while'
  7703. break;
  7704. case 92: // 'constraint'
  7705. shift(92); // 'constraint'
  7706. break;
  7707. case 171: // 'loop'
  7708. shift(171); // 'loop'
  7709. break;
  7710. default:
  7711. shift(216); // 'returning'
  7712. }
  7713. eventHandler.endNonterminal("FunctionName", e0);
  7714. }
  7715. function parse_NCName()
  7716. {
  7717. eventHandler.startNonterminal("NCName", e0);
  7718. switch (l1)
  7719. {
  7720. case 26: // NCName^Token
  7721. shift(26); // NCName^Token
  7722. break;
  7723. case 65: // 'after'
  7724. shift(65); // 'after'
  7725. break;
  7726. case 70: // 'and'
  7727. shift(70); // 'and'
  7728. break;
  7729. case 74: // 'as'
  7730. shift(74); // 'as'
  7731. break;
  7732. case 75: // 'ascending'
  7733. shift(75); // 'ascending'
  7734. break;
  7735. case 79: // 'before'
  7736. shift(79); // 'before'
  7737. break;
  7738. case 83: // 'case'
  7739. shift(83); // 'case'
  7740. break;
  7741. case 84: // 'cast'
  7742. shift(84); // 'cast'
  7743. break;
  7744. case 85: // 'castable'
  7745. shift(85); // 'castable'
  7746. break;
  7747. case 89: // 'collation'
  7748. shift(89); // 'collation'
  7749. break;
  7750. case 100: // 'count'
  7751. shift(100); // 'count'
  7752. break;
  7753. case 104: // 'default'
  7754. shift(104); // 'default'
  7755. break;
  7756. case 108: // 'descending'
  7757. shift(108); // 'descending'
  7758. break;
  7759. case 113: // 'div'
  7760. shift(113); // 'div'
  7761. break;
  7762. case 117: // 'else'
  7763. shift(117); // 'else'
  7764. break;
  7765. case 118: // 'empty'
  7766. shift(118); // 'empty'
  7767. break;
  7768. case 121: // 'end'
  7769. shift(121); // 'end'
  7770. break;
  7771. case 123: // 'eq'
  7772. shift(123); // 'eq'
  7773. break;
  7774. case 126: // 'except'
  7775. shift(126); // 'except'
  7776. break;
  7777. case 132: // 'for'
  7778. shift(132); // 'for'
  7779. break;
  7780. case 141: // 'ge'
  7781. shift(141); // 'ge'
  7782. break;
  7783. case 143: // 'group'
  7784. shift(143); // 'group'
  7785. break;
  7786. case 145: // 'gt'
  7787. shift(145); // 'gt'
  7788. break;
  7789. case 146: // 'idiv'
  7790. shift(146); // 'idiv'
  7791. break;
  7792. case 155: // 'instance'
  7793. shift(155); // 'instance'
  7794. break;
  7795. case 157: // 'intersect'
  7796. shift(157); // 'intersect'
  7797. break;
  7798. case 158: // 'into'
  7799. shift(158); // 'into'
  7800. break;
  7801. case 159: // 'is'
  7802. shift(159); // 'is'
  7803. break;
  7804. case 167: // 'le'
  7805. shift(167); // 'le'
  7806. break;
  7807. case 169: // 'let'
  7808. shift(169); // 'let'
  7809. break;
  7810. case 173: // 'lt'
  7811. shift(173); // 'lt'
  7812. break;
  7813. case 175: // 'mod'
  7814. shift(175); // 'mod'
  7815. break;
  7816. case 176: // 'modify'
  7817. shift(176); // 'modify'
  7818. break;
  7819. case 181: // 'ne'
  7820. shift(181); // 'ne'
  7821. break;
  7822. case 193: // 'only'
  7823. shift(193); // 'only'
  7824. break;
  7825. case 195: // 'or'
  7826. shift(195); // 'or'
  7827. break;
  7828. case 196: // 'order'
  7829. shift(196); // 'order'
  7830. break;
  7831. case 215: // 'return'
  7832. shift(215); // 'return'
  7833. break;
  7834. case 219: // 'satisfies'
  7835. shift(219); // 'satisfies'
  7836. break;
  7837. case 231: // 'stable'
  7838. shift(231); // 'stable'
  7839. break;
  7840. case 232: // 'start'
  7841. shift(232); // 'start'
  7842. break;
  7843. case 243: // 'to'
  7844. shift(243); // 'to'
  7845. break;
  7846. case 244: // 'treat'
  7847. shift(244); // 'treat'
  7848. break;
  7849. case 249: // 'union'
  7850. shift(249); // 'union'
  7851. break;
  7852. case 261: // 'where'
  7853. shift(261); // 'where'
  7854. break;
  7855. case 265: // 'with'
  7856. shift(265); // 'with'
  7857. break;
  7858. case 68: // 'ancestor'
  7859. shift(68); // 'ancestor'
  7860. break;
  7861. case 69: // 'ancestor-or-self'
  7862. shift(69); // 'ancestor-or-self'
  7863. break;
  7864. case 77: // 'attribute'
  7865. shift(77); // 'attribute'
  7866. break;
  7867. case 88: // 'child'
  7868. shift(88); // 'child'
  7869. break;
  7870. case 91: // 'comment'
  7871. shift(91); // 'comment'
  7872. break;
  7873. case 98: // 'copy'
  7874. shift(98); // 'copy'
  7875. break;
  7876. case 103: // 'declare'
  7877. shift(103); // 'declare'
  7878. break;
  7879. case 105: // 'delete'
  7880. shift(105); // 'delete'
  7881. break;
  7882. case 106: // 'descendant'
  7883. shift(106); // 'descendant'
  7884. break;
  7885. case 107: // 'descendant-or-self'
  7886. shift(107); // 'descendant-or-self'
  7887. break;
  7888. case 114: // 'document'
  7889. shift(114); // 'document'
  7890. break;
  7891. case 115: // 'document-node'
  7892. shift(115); // 'document-node'
  7893. break;
  7894. case 116: // 'element'
  7895. shift(116); // 'element'
  7896. break;
  7897. case 119: // 'empty-sequence'
  7898. shift(119); // 'empty-sequence'
  7899. break;
  7900. case 124: // 'every'
  7901. shift(124); // 'every'
  7902. break;
  7903. case 129: // 'first'
  7904. shift(129); // 'first'
  7905. break;
  7906. case 130: // 'following'
  7907. shift(130); // 'following'
  7908. break;
  7909. case 131: // 'following-sibling'
  7910. shift(131); // 'following-sibling'
  7911. break;
  7912. case 140: // 'function'
  7913. shift(140); // 'function'
  7914. break;
  7915. case 147: // 'if'
  7916. shift(147); // 'if'
  7917. break;
  7918. case 148: // 'import'
  7919. shift(148); // 'import'
  7920. break;
  7921. case 154: // 'insert'
  7922. shift(154); // 'insert'
  7923. break;
  7924. case 160: // 'item'
  7925. shift(160); // 'item'
  7926. break;
  7927. case 165: // 'last'
  7928. shift(165); // 'last'
  7929. break;
  7930. case 177: // 'module'
  7931. shift(177); // 'module'
  7932. break;
  7933. case 179: // 'namespace'
  7934. shift(179); // 'namespace'
  7935. break;
  7936. case 180: // 'namespace-node'
  7937. shift(180); // 'namespace-node'
  7938. break;
  7939. case 186: // 'node'
  7940. shift(186); // 'node'
  7941. break;
  7942. case 197: // 'ordered'
  7943. shift(197); // 'ordered'
  7944. break;
  7945. case 201: // 'parent'
  7946. shift(201); // 'parent'
  7947. break;
  7948. case 207: // 'preceding'
  7949. shift(207); // 'preceding'
  7950. break;
  7951. case 208: // 'preceding-sibling'
  7952. shift(208); // 'preceding-sibling'
  7953. break;
  7954. case 211: // 'processing-instruction'
  7955. shift(211); // 'processing-instruction'
  7956. break;
  7957. case 213: // 'rename'
  7958. shift(213); // 'rename'
  7959. break;
  7960. case 214: // 'replace'
  7961. shift(214); // 'replace'
  7962. break;
  7963. case 221: // 'schema-attribute'
  7964. shift(221); // 'schema-attribute'
  7965. break;
  7966. case 222: // 'schema-element'
  7967. shift(222); // 'schema-element'
  7968. break;
  7969. case 224: // 'self'
  7970. shift(224); // 'self'
  7971. break;
  7972. case 230: // 'some'
  7973. shift(230); // 'some'
  7974. break;
  7975. case 238: // 'switch'
  7976. shift(238); // 'switch'
  7977. break;
  7978. case 239: // 'text'
  7979. shift(239); // 'text'
  7980. break;
  7981. case 245: // 'try'
  7982. shift(245); // 'try'
  7983. break;
  7984. case 248: // 'typeswitch'
  7985. shift(248); // 'typeswitch'
  7986. break;
  7987. case 251: // 'unordered'
  7988. shift(251); // 'unordered'
  7989. break;
  7990. case 255: // 'validate'
  7991. shift(255); // 'validate'
  7992. break;
  7993. case 257: // 'variable'
  7994. shift(257); // 'variable'
  7995. break;
  7996. case 269: // 'xquery'
  7997. shift(269); // 'xquery'
  7998. break;
  7999. case 67: // 'allowing'
  8000. shift(67); // 'allowing'
  8001. break;
  8002. case 76: // 'at'
  8003. shift(76); // 'at'
  8004. break;
  8005. case 78: // 'base-uri'
  8006. shift(78); // 'base-uri'
  8007. break;
  8008. case 80: // 'boundary-space'
  8009. shift(80); // 'boundary-space'
  8010. break;
  8011. case 81: // 'break'
  8012. shift(81); // 'break'
  8013. break;
  8014. case 86: // 'catch'
  8015. shift(86); // 'catch'
  8016. break;
  8017. case 93: // 'construction'
  8018. shift(93); // 'construction'
  8019. break;
  8020. case 96: // 'context'
  8021. shift(96); // 'context'
  8022. break;
  8023. case 97: // 'continue'
  8024. shift(97); // 'continue'
  8025. break;
  8026. case 99: // 'copy-namespaces'
  8027. shift(99); // 'copy-namespaces'
  8028. break;
  8029. case 101: // 'decimal-format'
  8030. shift(101); // 'decimal-format'
  8031. break;
  8032. case 120: // 'encoding'
  8033. shift(120); // 'encoding'
  8034. break;
  8035. case 127: // 'exit'
  8036. shift(127); // 'exit'
  8037. break;
  8038. case 128: // 'external'
  8039. shift(128); // 'external'
  8040. break;
  8041. case 136: // 'ft-option'
  8042. shift(136); // 'ft-option'
  8043. break;
  8044. case 149: // 'in'
  8045. shift(149); // 'in'
  8046. break;
  8047. case 150: // 'index'
  8048. shift(150); // 'index'
  8049. break;
  8050. case 156: // 'integrity'
  8051. shift(156); // 'integrity'
  8052. break;
  8053. case 166: // 'lax'
  8054. shift(166); // 'lax'
  8055. break;
  8056. case 187: // 'nodes'
  8057. shift(187); // 'nodes'
  8058. break;
  8059. case 194: // 'option'
  8060. shift(194); // 'option'
  8061. break;
  8062. case 198: // 'ordering'
  8063. shift(198); // 'ordering'
  8064. break;
  8065. case 217: // 'revalidation'
  8066. shift(217); // 'revalidation'
  8067. break;
  8068. case 220: // 'schema'
  8069. shift(220); // 'schema'
  8070. break;
  8071. case 223: // 'score'
  8072. shift(223); // 'score'
  8073. break;
  8074. case 229: // 'sliding'
  8075. shift(229); // 'sliding'
  8076. break;
  8077. case 235: // 'strict'
  8078. shift(235); // 'strict'
  8079. break;
  8080. case 246: // 'tumbling'
  8081. shift(246); // 'tumbling'
  8082. break;
  8083. case 247: // 'type'
  8084. shift(247); // 'type'
  8085. break;
  8086. case 252: // 'updating'
  8087. shift(252); // 'updating'
  8088. break;
  8089. case 256: // 'value'
  8090. shift(256); // 'value'
  8091. break;
  8092. case 258: // 'version'
  8093. shift(258); // 'version'
  8094. break;
  8095. case 262: // 'while'
  8096. shift(262); // 'while'
  8097. break;
  8098. case 92: // 'constraint'
  8099. shift(92); // 'constraint'
  8100. break;
  8101. case 171: // 'loop'
  8102. shift(171); // 'loop'
  8103. break;
  8104. default:
  8105. shift(216); // 'returning'
  8106. }
  8107. eventHandler.endNonterminal("NCName", e0);
  8108. }
  8109. function shift(t)
  8110. {
  8111. if (l1 == t)
  8112. {
  8113. whitespace();
  8114. eventHandler.terminal(XQueryTokenizer.TOKEN[l1], b1, e1 > size ? size : e1);
  8115. b0 = b1; e0 = e1; l1 = 0;
  8116. }
  8117. else
  8118. {
  8119. error(b1, e1, 0, l1, t);
  8120. }
  8121. }
  8122. function whitespace()
  8123. {
  8124. if (e0 != b1)
  8125. {
  8126. b0 = e0;
  8127. e0 = b1;
  8128. eventHandler.whitespace(b0, e0);
  8129. }
  8130. }
  8131. function matchW(set)
  8132. {
  8133. var code;
  8134. for (;;)
  8135. {
  8136. code = match(set);
  8137. if (code != 28) // S^WS
  8138. {
  8139. break;
  8140. }
  8141. }
  8142. return code;
  8143. }
  8144. function lookahead1W(set)
  8145. {
  8146. if (l1 == 0)
  8147. {
  8148. l1 = matchW(set);
  8149. b1 = begin;
  8150. e1 = end;
  8151. }
  8152. }
  8153. function lookahead1(set)
  8154. {
  8155. if (l1 == 0)
  8156. {
  8157. l1 = match(set);
  8158. b1 = begin;
  8159. e1 = end;
  8160. }
  8161. }
  8162. function error(b, e, s, l, t)
  8163. {
  8164. throw new self.ParseException(b, e, s, l, t);
  8165. }
  8166. var lk, b0, e0;
  8167. var l1, b1, e1;
  8168. var eventHandler;
  8169. var input;
  8170. var size;
  8171. var begin;
  8172. var end;
  8173. function match(tokenSetId)
  8174. {
  8175. var nonbmp = false;
  8176. begin = end;
  8177. var current = end;
  8178. var result = XQueryTokenizer.INITIAL[tokenSetId];
  8179. var state = 0;
  8180. for (var code = result & 4095; code != 0; )
  8181. {
  8182. var charclass;
  8183. var c0 = current < size ? input.charCodeAt(current) : 0;
  8184. ++current;
  8185. if (c0 < 0x80)
  8186. {
  8187. charclass = XQueryTokenizer.MAP0[c0];
  8188. }
  8189. else if (c0 < 0xd800)
  8190. {
  8191. var c1 = c0 >> 4;
  8192. charclass = XQueryTokenizer.MAP1[(c0 & 15) + XQueryTokenizer.MAP1[(c1 & 31) + XQueryTokenizer.MAP1[c1 >> 5]]];
  8193. }
  8194. else
  8195. {
  8196. if (c0 < 0xdc00)
  8197. {
  8198. var c1 = current < size ? input.charCodeAt(current) : 0;
  8199. if (c1 >= 0xdc00 && c1 < 0xe000)
  8200. {
  8201. ++current;
  8202. c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
  8203. nonbmp = true;
  8204. }
  8205. }
  8206. var lo = 0, hi = 5;
  8207. for (var m = 3; ; m = (hi + lo) >> 1)
  8208. {
  8209. if (XQueryTokenizer.MAP2[m] > c0) hi = m - 1;
  8210. else if (XQueryTokenizer.MAP2[6 + m] < c0) lo = m + 1;
  8211. else {charclass = XQueryTokenizer.MAP2[12 + m]; break;}
  8212. if (lo > hi) {charclass = 0; break;}
  8213. }
  8214. }
  8215. state = code;
  8216. var i0 = (charclass << 12) + code - 1;
  8217. code = XQueryTokenizer.TRANSITION[(i0 & 15) + XQueryTokenizer.TRANSITION[i0 >> 4]];
  8218. if (code > 4095)
  8219. {
  8220. result = code;
  8221. code &= 4095;
  8222. end = current;
  8223. }
  8224. }
  8225. result >>= 12;
  8226. if (result == 0)
  8227. {
  8228. end = current - 1;
  8229. var c1 = end < size ? input.charCodeAt(end) : 0;
  8230. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  8231. return error(begin, end, state, -1, -1);
  8232. }
  8233. if (nonbmp)
  8234. {
  8235. for (var i = result >> 9; i > 0; --i)
  8236. {
  8237. --end;
  8238. var c1 = end < size ? input.charCodeAt(end) : 0;
  8239. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  8240. }
  8241. }
  8242. else
  8243. {
  8244. end -= result >> 9;
  8245. }
  8246. return (result & 511) - 1;
  8247. }
  8248. }
  8249. XQueryTokenizer.getTokenSet = function(tokenSetId)
  8250. {
  8251. var set = [];
  8252. var s = tokenSetId < 0 ? - tokenSetId : INITIAL[tokenSetId] & 4095;
  8253. for (var i = 0; i < 276; i += 32)
  8254. {
  8255. var j = i;
  8256. var i0 = (i >> 5) * 2062 + s - 1;
  8257. var i1 = i0 >> 2;
  8258. var i2 = i1 >> 2;
  8259. var f = XQueryTokenizer.EXPECTED[(i0 & 3) + XQueryTokenizer.EXPECTED[(i1 & 3) + XQueryTokenizer.EXPECTED[(i2 & 3) + XQueryTokenizer.EXPECTED[i2 >> 2]]]];
  8260. for ( ; f != 0; f >>>= 1, ++j)
  8261. {
  8262. if ((f & 1) != 0)
  8263. {
  8264. set.push(XQueryTokenizer.TOKEN[j]);
  8265. }
  8266. }
  8267. }
  8268. return set;
  8269. };
  8270. XQueryTokenizer.MAP0 =
  8271. [
  8272. 66, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5,
  8273. 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 20, 21, 22, 23, 24,
  8274. 25, 26, 27, 28, 29, 30, 27, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 32, 31, 31, 33, 31, 31, 31, 31, 31, 31,
  8275. 34, 35, 36, 35, 31, 35, 37, 38, 39, 40, 41, 42, 43, 44, 45, 31, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
  8276. 57, 58, 59, 60, 31, 61, 62, 63, 64, 35
  8277. ];
  8278. XQueryTokenizer.MAP1 =
  8279. [
  8280. 108, 124, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 156, 181, 181, 181, 181,
  8281. 181, 214, 215, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  8282. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  8283. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  8284. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  8285. 214, 214, 214, 247, 261, 277, 293, 309, 347, 363, 379, 416, 416, 416, 408, 331, 323, 331, 323, 331, 331,
  8286. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 433, 433, 433, 433, 433, 433, 433,
  8287. 316, 331, 331, 331, 331, 331, 331, 331, 331, 394, 416, 416, 417, 415, 416, 416, 331, 331, 331, 331, 331,
  8288. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 416, 416, 416, 416, 416, 416, 416, 416,
  8289. 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
  8290. 416, 416, 416, 330, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331,
  8291. 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 416, 66, 0, 0, 0, 0, 0, 0, 0, 0,
  8292. 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
  8293. 15, 16, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 27, 31,
  8294. 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 35, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
  8295. 31, 31, 31, 31, 32, 31, 31, 33, 31, 31, 31, 31, 31, 31, 34, 35, 36, 35, 31, 35, 37, 38, 39, 40, 41, 42, 43,
  8296. 44, 45, 31, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 31, 61, 62, 63, 64, 35, 35, 35, 35,
  8297. 35, 35, 35, 35, 35, 35, 35, 35, 31, 31, 35, 35, 35, 35, 35, 35, 35, 65, 35, 35, 35, 35, 35, 35, 35, 35, 35,
  8298. 35, 35, 35, 35, 35, 35, 35, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65, 65
  8299. ];
  8300. XQueryTokenizer.MAP2 =
  8301. [
  8302. 57344, 63744, 64976, 65008, 65536, 983040, 63743, 64975, 65007, 65533, 983039, 1114111, 35, 31, 35, 31, 31,
  8303. 35
  8304. ];
  8305. XQueryTokenizer.INITIAL =
  8306. [
  8307. 1, 2, 36867, 45060, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
  8308. ];
  8309. XQueryTokenizer.TRANSITION =
  8310. [
  8311. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8312. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8313. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8314. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8315. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8316. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8317. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8318. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8319. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8320. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8321. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8322. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8323. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8324. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8325. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8326. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8327. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8328. 17590, 22908, 18836, 17152, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189,
  8329. 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 17365, 21880, 18649, 18665, 19006, 17265, 22033,
  8330. 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 17470, 17497, 17520, 17251,
  8331. 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 18157, 21940,
  8332. 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531,
  8333. 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 17848, 17880, 18731, 17918, 36551,
  8334. 17292, 17934, 17979, 18727, 18023, 36545, 18621, 18039, 18056, 18072, 18117, 18143, 18173, 18052, 18209,
  8335. 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816,
  8336. 32961, 17687, 18805, 18421, 18437, 18101, 17393, 18489, 18505, 18535, 17590, 17590, 17590, 17590, 17590,
  8337. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8338. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8339. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8340. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8341. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8342. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8343. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8344. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8345. 17590, 17590, 18579, 21711, 17152, 19008, 19233, 20367, 19008, 28684, 30763, 36437, 17330, 17349, 18921,
  8346. 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 17365, 21880, 18649, 18665, 19006, 17265,
  8347. 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 17470, 17497, 17520,
  8348. 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 18157,
  8349. 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223,
  8350. 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 17848, 17880, 18731, 17918,
  8351. 36551, 17292, 17934, 17979, 18727, 18023, 36545, 18621, 18039, 18056, 18072, 18117, 18143, 18173, 18052,
  8352. 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392,
  8353. 17816, 32961, 17687, 18805, 18421, 18437, 18101, 17393, 18489, 18505, 18535, 17590, 17590, 17590, 17590,
  8354. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8355. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8356. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8357. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8358. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8359. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8360. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8361. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8362. 17590, 17590, 17590, 20116, 18836, 18637, 19008, 19233, 21267, 19008, 17173, 30763, 36437, 17330, 17349,
  8363. 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006,
  8364. 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497,
  8365. 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418,
  8366. 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473,
  8367. 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731,
  8368. 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706,
  8369. 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642,
  8370. 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590,
  8371. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8372. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8373. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8374. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8375. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8376. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8377. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8378. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8379. 17590, 17590, 17590, 17590, 18763, 18778, 18794, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330,
  8380. 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665,
  8381. 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952,
  8382. 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258,
  8383. 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617,
  8384. 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864,
  8385. 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143,
  8386. 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163,
  8387. 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590,
  8388. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8389. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8390. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8391. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8392. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8393. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8394. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8395. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8396. 17590, 17590, 17590, 17590, 17590, 18821, 22923, 18906, 19008, 19233, 17431, 19008, 17173, 30763, 36437,
  8397. 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18937, 21880, 18649,
  8398. 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 19054, 17311, 18658, 18999, 19008, 17447,
  8399. 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 18953, 21887, 17504, 17527,
  8400. 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946,
  8401. 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156,
  8402. 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117,
  8403. 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796,
  8404. 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590,
  8405. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8406. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8407. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8408. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8409. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8410. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8411. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8412. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8413. 17590, 17590, 17590, 17590, 17590, 17590, 21843, 18836, 18987, 19008, 19233, 20367, 19008, 17173, 30763,
  8414. 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880,
  8415. 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008,
  8416. 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504,
  8417. 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737,
  8418. 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481,
  8419. 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072,
  8420. 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232,
  8421. 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535,
  8422. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8423. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8424. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8425. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8426. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8427. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8428. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8429. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8430. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21696, 18836, 18987, 19008, 19233, 20367, 19008, 17173,
  8431. 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452,
  8432. 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999,
  8433. 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887,
  8434. 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730,
  8435. 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620,
  8436. 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056,
  8437. 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403,
  8438. 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505,
  8439. 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8440. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8441. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8442. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8443. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8444. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8445. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8446. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8447. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22429, 20131, 18720, 19008, 19233, 20367, 19008,
  8448. 17173, 23559, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 18087, 17308, 17327, 17346, 18918,
  8449. 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 21242, 19111, 17311, 18658,
  8450. 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585,
  8451. 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176,
  8452. 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590,
  8453. 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039,
  8454. 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807,
  8455. 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747,
  8456. 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8457. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8458. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8459. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8460. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8461. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8462. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8463. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8464. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 19024, 18836, 18609, 19008, 19233, 20367,
  8465. 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346,
  8466. 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311,
  8467. 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559,
  8468. 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703,
  8469. 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832,
  8470. 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621,
  8471. 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376,
  8472. 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393,
  8473. 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8474. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8475. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8476. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8477. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8478. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8479. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8480. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8481. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 19081, 22444, 18987, 19008, 19233,
  8482. 20367, 19008, 19065, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327,
  8483. 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873,
  8484. 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543,
  8485. 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190,
  8486. 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753,
  8487. 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405,
  8488. 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312,
  8489. 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519,
  8490. 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8491. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8492. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8493. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8494. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8495. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8496. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8497. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8498. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21992, 22007, 18987, 19008,
  8499. 19233, 20367, 19008, 18690, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308,
  8500. 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127,
  8501. 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326,
  8502. 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661,
  8503. 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675,
  8504. 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681,
  8505. 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296,
  8506. 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437,
  8507. 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8508. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8509. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8510. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8511. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8512. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8513. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8514. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8515. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22414, 18836, 18987,
  8516. 19008, 19233, 30651, 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 19138,
  8517. 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192,
  8518. 18127, 19280, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714,
  8519. 18326, 17543, 17559, 19172, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633,
  8520. 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892,
  8521. 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727,
  8522. 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963,
  8523. 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421,
  8524. 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8525. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8526. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8527. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8528. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8529. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8530. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8531. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8532. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21783, 18836,
  8533. 18987, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355,
  8534. 19218, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535,
  8535. 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682,
  8536. 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217,
  8537. 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860,
  8538. 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979,
  8539. 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266,
  8540. 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805,
  8541. 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8542. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8543. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8544. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8545. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8546. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8547. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8548. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8549. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21651,
  8550. 18836, 18987, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281,
  8551. 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421,
  8552. 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782,
  8553. 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467,
  8554. 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152,
  8555. 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934,
  8556. 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239,
  8557. 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645,
  8558. 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8559. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8560. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8561. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8562. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8563. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8564. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8565. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8566. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8567. 19249, 19265, 19307, 18888, 27857, 30536, 24401, 31444, 23357, 18888, 19351, 18888, 18890, 27211, 19370,
  8568. 27211, 27211, 19392, 24401, 31911, 24401, 24401, 25467, 18888, 18888, 18888, 18888, 18888, 25783, 27211,
  8569. 27211, 27211, 27211, 28537, 19440, 24401, 24401, 24401, 24401, 24036, 17994, 24060, 18888, 18888, 18888,
  8570. 18890, 19468, 27211, 27211, 27211, 27211, 19484, 35367, 19520, 24401, 24401, 24401, 19628, 18888, 29855,
  8571. 18888, 18888, 23086, 27211, 19538, 27211, 27211, 30756, 24012, 24401, 19560, 24401, 24401, 26750, 18888,
  8572. 18888, 19327, 27855, 27211, 27211, 19580, 17590, 24017, 24401, 24401, 19600, 25665, 18888, 18888, 28518,
  8573. 27211, 27212, 24016, 19620, 19868, 28435, 25722, 18889, 19644, 27211, 32888, 35852, 19868, 31018, 19694,
  8574. 19376, 19717, 22215, 19735, 22098, 19751, 35203, 19776, 19797, 19817, 19840, 25783, 31738, 24135, 19701,
  8575. 19856, 31015, 23516, 31008, 28311, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590,
  8576. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8577. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8578. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8579. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8580. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8581. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8582. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8583. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8584. 17590, 21768, 18836, 19307, 18888, 27857, 27904, 24401, 29183, 28015, 18888, 18888, 18888, 18890, 27211,
  8585. 27211, 27211, 27211, 19888, 24401, 24401, 24401, 24401, 22953, 18888, 18888, 18888, 18888, 18888, 25783,
  8586. 27211, 27211, 27211, 27211, 28537, 19440, 24401, 24401, 24401, 24401, 24036, 18881, 18888, 18888, 18888,
  8587. 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 19628, 18888,
  8588. 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401, 26750,
  8589. 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888,
  8590. 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018,
  8591. 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837,
  8592. 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590,
  8593. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8594. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8595. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8596. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8597. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8598. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8599. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8600. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8601. 17590, 17590, 22399, 18836, 19918, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330, 17349, 18921,
  8602. 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265,
  8603. 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520,
  8604. 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915,
  8605. 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223,
  8606. 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918,
  8607. 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052,
  8608. 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392,
  8609. 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590,
  8610. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8611. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8612. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8613. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8614. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8615. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8616. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8617. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8618. 17590, 17590, 17590, 21666, 18836, 19307, 18888, 27857, 27525, 24401, 29183, 21467, 18888, 18888, 18888,
  8619. 18890, 27211, 27211, 27211, 27211, 19946, 24401, 24401, 24401, 24401, 32382, 18888, 18888, 18888, 18888,
  8620. 18888, 25783, 27211, 27211, 27211, 27211, 28537, 19998, 24401, 24401, 24401, 24401, 31500, 18467, 18888,
  8621. 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 20021, 24401, 24401, 24401, 24401, 24401,
  8622. 34271, 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 32926, 29908, 24401, 24401, 24401,
  8623. 24401, 26095, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 20050, 22968, 24401, 24401, 24401, 18887,
  8624. 18888, 18888, 27211, 27211, 35779, 20080, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889,
  8625. 19868, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783,
  8626. 31738, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590,
  8627. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8628. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8629. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8630. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8631. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8632. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8633. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8634. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8635. 17590, 17590, 17590, 17590, 20101, 19039, 20191, 20412, 20903, 17569, 20309, 20872, 25633, 20623, 20505,
  8636. 20218, 20242, 17189, 17208, 17281, 20355, 20265, 20306, 20328, 20383, 22490, 20796, 20619, 21354, 20654,
  8637. 20410, 20956, 21232, 20765, 17421, 20535, 17192, 18127, 22459, 20312, 25531, 22470, 20309, 20428, 18964,
  8638. 20466, 20491, 21342, 21070, 20521, 20682, 17714, 18326, 17543, 17559, 17585, 22497, 20559, 19504, 20279,
  8639. 20575, 20290, 20475, 20604, 20639, 20226, 20670, 17661, 21190, 17703, 21176, 17730, 19494, 20698, 20711,
  8640. 22480, 21046, 21116, 18971, 21130, 20727, 20755, 17675, 17753, 17832, 17590, 25518, 20394, 20781, 20831,
  8641. 20202, 20847, 21401, 17292, 17934, 17979, 18549, 20863, 20588, 25542, 20888, 20919, 18072, 18117, 20935,
  8642. 20972, 21032, 21062, 21086, 18239, 21102, 18563, 21146, 21162, 21206, 18351, 20949, 20902, 18340, 21222,
  8643. 21258, 21283, 18360, 20249, 17405, 21295, 21311, 21327, 20739, 20343, 21370, 21386, 21417, 17590, 17590,
  8644. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8645. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8646. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8647. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8648. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8649. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8650. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8651. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8652. 17590, 17590, 17590, 17590, 17590, 21977, 18836, 18987, 19008, 19233, 20367, 19008, 17173, 30763, 36437,
  8653. 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 21452, 21880, 18649,
  8654. 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 21504,
  8655. 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527,
  8656. 17258, 36418, 36501, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 28674, 21946,
  8657. 17617, 36473, 18223, 17237, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 21575, 21534, 17481, 19156,
  8658. 17864, 18731, 17918, 36551, 17292, 17934, 21560, 30628, 18681, 18405, 18621, 18039, 18056, 18072, 18117,
  8659. 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796,
  8660. 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590,
  8661. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8662. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8663. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8664. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8665. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8666. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8667. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8668. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8669. 17590, 17590, 17590, 17590, 17590, 17590, 21798, 18836, 21612, 19008, 19233, 20367, 19008, 17173, 30763,
  8670. 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880,
  8671. 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008,
  8672. 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504,
  8673. 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737,
  8674. 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481,
  8675. 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072,
  8676. 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232,
  8677. 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535,
  8678. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8679. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8680. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8681. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8682. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8683. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8684. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8685. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8686. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21636, 18836, 18987, 19008, 19233, 17902, 19008, 17173,
  8687. 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452,
  8688. 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999,
  8689. 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887,
  8690. 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730,
  8691. 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620,
  8692. 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056,
  8693. 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403,
  8694. 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505,
  8695. 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8696. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8697. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8698. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8699. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8700. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8701. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8702. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8703. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21753, 19096, 21903, 19008, 19233, 20367, 19008,
  8704. 19291, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918,
  8705. 17379, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658,
  8706. 18999, 19008, 17447, 21931, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585,
  8707. 21887, 17504, 17527, 17258, 36418, 18280, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176,
  8708. 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590,
  8709. 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039,
  8710. 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807,
  8711. 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747,
  8712. 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8713. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8714. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8715. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8716. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8717. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8718. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8719. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8720. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21962, 18594, 18987, 19008, 19233, 22043,
  8721. 19008, 17173, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346,
  8722. 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311,
  8723. 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559,
  8724. 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703,
  8725. 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832,
  8726. 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621,
  8727. 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376,
  8728. 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393,
  8729. 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8730. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8731. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8732. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8733. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8734. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8735. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8736. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8737. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 21681, 21858, 18987, 19008, 19233,
  8738. 20367, 19008, 21544, 30763, 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327,
  8739. 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873,
  8740. 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543,
  8741. 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190,
  8742. 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753,
  8743. 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405,
  8744. 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312,
  8745. 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519,
  8746. 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8747. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8748. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8749. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8750. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8751. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8752. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8753. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8754. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339, 18836, 22059, 18888,
  8755. 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 22121, 24401,
  8756. 24401, 24401, 24401, 30613, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211, 27211, 35072,
  8757. 22164, 24401, 24401, 24401, 24401, 31500, 31693, 18888, 18888, 18888, 18888, 18890, 27211, 27211, 27211,
  8758. 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 32319, 18888, 18888, 18888, 18888, 23086, 27211,
  8759. 27211, 27211, 27211, 30756, 21431, 24401, 24401, 24401, 24401, 26095, 18888, 18888, 18888, 27855, 27211,
  8760. 27211, 27211, 22187, 22968, 24401, 24401, 24401, 22231, 18888, 18888, 27211, 27211, 35779, 20080, 24402,
  8761. 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406, 19447,
  8762. 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516, 31008,
  8763. 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8764. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8765. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8766. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8767. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8768. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8769. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8770. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8771. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339, 18836, 22059,
  8772. 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 22121,
  8773. 24401, 24401, 24401, 24401, 30613, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211, 27211,
  8774. 35072, 22164, 24401, 24401, 24401, 24401, 31500, 31693, 18888, 18888, 18888, 18888, 18890, 27211, 27211,
  8775. 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 31181, 18888, 18888, 18888, 18888, 23086,
  8776. 27211, 27211, 27211, 27211, 30756, 21431, 24401, 24401, 24401, 24401, 26095, 18888, 18888, 18888, 27855,
  8777. 27211, 27211, 27211, 22187, 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 35779, 20080,
  8778. 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406,
  8779. 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516,
  8780. 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8781. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8782. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8783. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8784. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8785. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8786. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8787. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8788. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339, 18836,
  8789. 22059, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211,
  8790. 22121, 24401, 24401, 24401, 24401, 31678, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211,
  8791. 27211, 35072, 22164, 24401, 24401, 24401, 24401, 31500, 31693, 18888, 18888, 18888, 18888, 18890, 27211,
  8792. 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 31181, 18888, 18888, 18888, 18888,
  8793. 23086, 27211, 27211, 27211, 27211, 30756, 21431, 24401, 24401, 24401, 24401, 26095, 18888, 18888, 18888,
  8794. 27855, 27211, 27211, 27211, 22187, 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 35779,
  8795. 20080, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833,
  8796. 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015,
  8797. 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8798. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8799. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8800. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8801. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8802. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8803. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8804. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8805. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339,
  8806. 18836, 22059, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211,
  8807. 27211, 22121, 24401, 24401, 24401, 24401, 30613, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211,
  8808. 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 33588, 31693, 18888, 18888, 18888, 18888, 18890,
  8809. 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 31181, 18888, 18888, 18888,
  8810. 18888, 23086, 27211, 27211, 27211, 27211, 30756, 21431, 24401, 24401, 24401, 24401, 26095, 18888, 18888,
  8811. 18888, 27855, 27211, 27211, 27211, 22187, 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211,
  8812. 35779, 20080, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211,
  8813. 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760,
  8814. 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8815. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8816. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8817. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8818. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8819. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8820. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8821. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8822. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8823. 22339, 18836, 22059, 18888, 27857, 35019, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211,
  8824. 27211, 27211, 22248, 24401, 24401, 24401, 24401, 30613, 18888, 18888, 18888, 18888, 18888, 25783, 27211,
  8825. 27211, 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 31500, 31693, 18888, 18888, 18888, 18888,
  8826. 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 31181, 18888, 18888,
  8827. 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 21431, 24401, 24401, 24401, 24401, 26095, 18888,
  8828. 18888, 18888, 27855, 27211, 27211, 27211, 22187, 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211,
  8829. 27211, 35779, 20080, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890,
  8830. 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782,
  8831. 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590,
  8832. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8833. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8834. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8835. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8836. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8837. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8838. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8839. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8840. 17590, 22339, 18836, 22059, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211,
  8841. 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401, 18866, 18888, 18888, 18888, 18888, 18888, 25783,
  8842. 27211, 27211, 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 31693, 18888, 18888, 18888,
  8843. 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 19628, 18888,
  8844. 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401, 26750,
  8845. 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888,
  8846. 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018,
  8847. 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837,
  8848. 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590,
  8849. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8850. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8851. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8852. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8853. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8854. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8855. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8856. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8857. 17590, 17590, 22324, 18836, 22059, 18888, 27857, 30501, 24401, 29183, 22087, 18888, 18888, 18888, 18890,
  8858. 27211, 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401, 18866, 18888, 18888, 18888, 18888, 18888,
  8859. 25783, 27211, 27211, 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 31693, 18888, 18888,
  8860. 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 19628,
  8861. 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401,
  8862. 26750, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888,
  8863. 18888, 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868,
  8864. 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738,
  8865. 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590,
  8866. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8867. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8868. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8869. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8870. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8871. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8872. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8873. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8874. 17590, 17590, 17590, 22339, 18836, 22059, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888,
  8875. 18890, 27211, 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401, 18866, 18888, 18888, 18888, 18888,
  8876. 18888, 25783, 27211, 27211, 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 31693, 18888,
  8877. 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401,
  8878. 19628, 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401,
  8879. 24401, 34365, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887,
  8880. 18888, 18888, 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889,
  8881. 19868, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783,
  8882. 31738, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590,
  8883. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8884. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8885. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8886. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8887. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8888. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8889. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8890. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8891. 17590, 17590, 17590, 17590, 22354, 18836, 18987, 19008, 19233, 20367, 19008, 17173, 27086, 36437, 17330,
  8892. 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665,
  8893. 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952,
  8894. 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258,
  8895. 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617,
  8896. 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864,
  8897. 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 19930, 18039, 18056, 18072, 18117, 18143,
  8898. 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163,
  8899. 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590,
  8900. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8901. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8902. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8903. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8904. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8905. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8906. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8907. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8908. 17590, 17590, 17590, 17590, 17590, 21828, 18836, 18987, 19008, 19233, 20367, 19008, 17173, 30763, 36437,
  8909. 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649,
  8910. 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447,
  8911. 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527,
  8912. 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946,
  8913. 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156,
  8914. 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117,
  8915. 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796,
  8916. 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590,
  8917. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8918. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8919. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8920. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8921. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8922. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8923. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8924. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8925. 17590, 17590, 17590, 17590, 17590, 17590, 22309, 22513, 18987, 19008, 19233, 20367, 19008, 19122, 30763,
  8926. 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 22544, 21880,
  8927. 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008,
  8928. 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504,
  8929. 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737,
  8930. 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481,
  8931. 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072,
  8932. 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232,
  8933. 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535,
  8934. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8935. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8936. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8937. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8938. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8939. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8940. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8941. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8942. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22608, 18836, 22988, 23004, 27585, 23020, 23036, 23067,
  8943. 22087, 18888, 18888, 18888, 23083, 27211, 27211, 27211, 23102, 22121, 24401, 24401, 24401, 23122, 31386,
  8944. 26154, 19674, 18888, 28119, 28232, 19424, 23705, 27211, 27211, 23142, 23173, 23189, 23212, 24401, 24401,
  8945. 23246, 34427, 31693, 23262, 18888, 23290, 23308, 27783, 27620, 23327, 35263, 35107, 33383, 23346, 18193,
  8946. 23393, 32748, 23968, 24401, 23414, 35153, 23463, 18888, 33913, 23442, 23482, 27211, 27211, 23532, 23552,
  8947. 21431, 23575, 24401, 24401, 23604, 26095, 23635, 23657, 18888, 33482, 23685, 33251, 27211, 22187, 18851,
  8948. 23721, 35536, 24401, 18887, 23750, 32641, 27211, 23769, 23787, 20080, 33012, 24384, 25659, 18888, 18889,
  8949. 27211, 27211, 19719, 23889, 23803, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 28224,
  8950. 31826, 23823, 26917, 34978, 23850, 26493, 25782, 23878, 23914, 23516, 31008, 22105, 19419, 27963, 19659,
  8951. 29781, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8952. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8953. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8954. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8955. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8956. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8957. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8958. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8959. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22623, 18836, 22059, 18888, 27857, 34097, 24401,
  8960. 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401,
  8961. 30613, 18888, 18888, 18888, 18888, 28909, 25783, 27211, 27211, 27211, 34048, 23933, 22164, 24401, 24401,
  8962. 24401, 28409, 23949, 31693, 18888, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484,
  8963. 24401, 24401, 24401, 24401, 24401, 31181, 26583, 18888, 18888, 18888, 35585, 23984, 27211, 27211, 27211,
  8964. 24005, 22201, 24033, 24401, 24401, 24401, 24052, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 22187,
  8965. 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 35779, 20080, 24402, 19868, 25659, 18888,
  8966. 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828,
  8967. 31017, 27856, 31741, 26496, 24076, 24126, 24151, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963,
  8968. 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8969. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8970. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8971. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8972. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8973. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8974. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8975. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8976. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22638, 18836, 22059, 19678, 27857, 24185,
  8977. 24401, 24201, 24217, 26592, 18888, 18888, 18890, 24252, 24268, 27211, 27211, 22121, 24287, 24303, 24401,
  8978. 24401, 30613, 19781, 35432, 36007, 32649, 18888, 25783, 24322, 28966, 23771, 27211, 35072, 22164, 24358,
  8979. 32106, 26829, 24400, 31500, 31693, 18888, 18888, 18888, 24801, 18890, 27211, 27211, 27211, 27211, 24418,
  8980. 19484, 24401, 24401, 24401, 24401, 20167, 31181, 18888, 18888, 18888, 27833, 23086, 27211, 27211, 33540,
  8981. 27211, 30756, 21431, 24401, 24401, 22972, 24401, 26095, 18888, 36131, 18888, 27855, 27211, 24440, 27211,
  8982. 22187, 22968, 24401, 24459, 24401, 31699, 28454, 18888, 34528, 34570, 35779, 24478, 24402, 24494, 25659,
  8983. 18888, 36228, 27211, 27211, 24515, 30981, 23734, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330,
  8984. 24538, 31017, 27856, 31741, 30059, 23377, 24563, 19837, 25782, 19760, 31015, 23516, 25374, 22105, 19419,
  8985. 29793, 24579, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8986. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8987. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8988. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8989. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8990. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8991. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8992. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  8993. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22653, 18836, 22059, 25756, 19982,
  8994. 34097, 23196, 29183, 24614, 24110, 23641, 24673, 26103, 24697, 24443, 24713, 28558, 22121, 24748, 24462,
  8995. 24764, 23398, 30613, 18888, 18888, 18888, 18888, 24798, 25783, 27211, 27211, 27211, 34232, 35072, 22164,
  8996. 24401, 24401, 24401, 33302, 31500, 22559, 24106, 24232, 18888, 18888, 34970, 24817, 30411, 27211, 27211,
  8997. 32484, 19484, 29750, 35127, 24401, 24401, 19872, 31181, 24852, 18888, 18888, 24871, 29221, 27211, 27211,
  8998. 32072, 27211, 30756, 34441, 24401, 24401, 31571, 24401, 26095, 33141, 27802, 27011, 27855, 25295, 25607,
  8999. 24888, 22187, 22968, 19195, 34593, 24906, 18887, 18888, 18888, 27211, 27211, 35779, 20080, 24402, 19868,
  9000. 25659, 18888, 33663, 27211, 27211, 24924, 24947, 23588, 31018, 18890, 27211, 31833, 22135, 19447, 23086,
  9001. 23330, 19828, 30904, 31042, 24972, 19840, 25000, 31738, 30898, 25782, 19760, 31015, 23516, 31008, 22105,
  9002. 19419, 25016, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9003. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9004. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9005. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9006. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9007. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9008. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9009. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9010. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22668, 18836, 25041, 25057,
  9011. 31320, 25073, 25089, 25105, 22087, 34796, 24236, 36138, 34870, 34125, 25121, 23106, 35497, 22248, 36613,
  9012. 25137, 30671, 27365, 30613, 25153, 26447, 25199, 25233, 22574, 23274, 25249, 25265, 25281, 25318, 25344,
  9013. 25360, 25400, 25428, 25452, 26731, 25504, 31693, 23669, 25558, 27407, 25575, 28599, 25934, 25599, 27211,
  9014. 28180, 27304, 25623, 25839, 25649, 24401, 34820, 25681, 25698, 22586, 27775, 30190, 25745, 25778, 25799,
  9015. 25817, 28995, 33569, 30756, 21518, 33443, 25837, 25855, 25893, 26095, 31254, 26677, 30136, 27855, 25930,
  9016. 25950, 27211, 22187, 22968, 25966, 25986, 24401, 23428, 27763, 36330, 26959, 26002, 26029, 26045, 26085,
  9017. 26119, 26170, 26203, 26222, 26239, 30527, 26372, 26274, 28404, 31018, 33757, 27211, 34262, 26316, 36729,
  9018. 26345, 26366, 35337, 31017, 26388, 26407, 30954, 26350, 33861, 26434, 26463, 26479, 26512, 23516, 33189,
  9019. 26531, 26547, 27963, 31293, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9020. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9021. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9022. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9023. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9024. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9025. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9026. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9027. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22683, 18836, 26568,
  9028. 26181, 26608, 34097, 26643, 29183, 22087, 26669, 18888, 18888, 18890, 26693, 27211, 27211, 27211, 22121,
  9029. 26720, 24401, 24401, 24401, 30613, 18888, 18888, 18888, 18888, 26774, 25783, 27211, 27211, 27211, 26619,
  9030. 35072, 22164, 24401, 24401, 24401, 21596, 31500, 31693, 18888, 18888, 33978, 18888, 18890, 27211, 27211,
  9031. 25801, 27211, 27211, 19484, 24401, 24401, 24401, 26792, 24401, 31181, 18888, 18888, 18888, 35464, 23086,
  9032. 27211, 27211, 27211, 26809, 30756, 21431, 24401, 24401, 24401, 26828, 26095, 18888, 18888, 18888, 27855,
  9033. 27211, 27211, 27211, 22187, 22968, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 35779, 20080,
  9034. 24402, 19868, 25659, 31948, 18889, 35707, 27211, 19719, 26845, 19868, 31018, 18890, 27211, 31833, 19406,
  9035. 19447, 23086, 23330, 26905, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516,
  9036. 24984, 31088, 19419, 26945, 27651, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9037. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9038. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9039. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9040. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9041. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9042. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9043. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9044. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22698, 18836,
  9045. 26999, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211,
  9046. 22121, 24401, 24401, 24401, 24401, 23051, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211,
  9047. 27211, 35072, 27033, 24401, 24401, 24401, 24401, 24036, 31693, 18888, 18888, 27056, 18888, 18890, 27211,
  9048. 27211, 30320, 27211, 27211, 27075, 24401, 24401, 29032, 24401, 24401, 19628, 18888, 18888, 18888, 18888,
  9049. 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401, 26750, 18888, 18888, 33986,
  9050. 27855, 27211, 27211, 27102, 17590, 24017, 24401, 24401, 27123, 27144, 36254, 27162, 27210, 27228, 28500,
  9051. 18187, 34842, 33426, 27244, 35980, 27277, 27302, 27320, 36048, 34013, 20999, 31882, 21478, 27895, 27356,
  9052. 30287, 27381, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015,
  9053. 23516, 31008, 22105, 26329, 30087, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9054. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9055. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9056. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9057. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9058. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9059. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9060. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9061. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339,
  9062. 18836, 22059, 27406, 27423, 27445, 35294, 27461, 22087, 18888, 18888, 30140, 18890, 27211, 27211, 27989,
  9063. 27211, 22121, 24401, 24401, 25682, 24401, 18866, 18888, 18888, 18888, 18888, 18888, 34042, 27211, 27211,
  9064. 27211, 27211, 29700, 22164, 24401, 24401, 24401, 24401, 27128, 31693, 27477, 18888, 18888, 18888, 18890,
  9065. 27194, 27211, 27211, 27211, 27211, 19484, 35299, 24401, 24401, 24401, 24401, 19628, 18888, 18888, 18888,
  9066. 27059, 23086, 27211, 27211, 27211, 33366, 30756, 24012, 24401, 24401, 24401, 35044, 26750, 18888, 18888,
  9067. 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211,
  9068. 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 20815, 27211,
  9069. 30818, 19960, 33969, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760,
  9070. 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9071. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9072. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9073. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9074. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9075. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9076. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9077. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9078. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9079. 22713, 18836, 22059, 27496, 27516, 27541, 35231, 27557, 22087, 29662, 26292, 23292, 27573, 24836, 27601,
  9080. 27211, 27636, 22121, 35544, 27686, 24401, 27721, 18866, 18888, 27799, 18888, 27818, 22071, 27853, 32260,
  9081. 27211, 26013, 27873, 27920, 22164, 29419, 24401, 29946, 33413, 26742, 27751, 26881, 18888, 18888, 27261,
  9082. 36776, 27936, 27211, 27211, 27211, 27988, 28005, 28031, 28052, 24401, 24401, 28069, 28088, 28135, 25488,
  9083. 28152, 26069, 28167, 27211, 28340, 24657, 28196, 30756, 31523, 24401, 28212, 34176, 36174, 24956, 28248,
  9084. 28266, 28290, 21488, 33077, 28327, 28356, 17590, 20986, 23126, 28391, 28425, 28102, 28451, 28470, 28490,
  9085. 28516, 28534, 20034, 33728, 25868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 30241, 28274,
  9086. 28553, 28574, 19406, 28590, 23086, 23330, 19828, 19452, 28615, 28660, 26147, 25783, 31738, 19837, 25782,
  9087. 19760, 29613, 35958, 29276, 22105, 19419, 27963, 23157, 28700, 17590, 17590, 17590, 17590, 17590, 17590,
  9088. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9089. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9090. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9091. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9092. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9093. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9094. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9095. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9096. 17590, 22339, 18836, 22059, 18888, 27857, 34097, 24401, 29183, 22087, 18888, 18888, 18888, 18890, 27211,
  9097. 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401, 18866, 18888, 18888, 18888, 18888, 18888, 25783,
  9098. 27211, 27211, 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 22528, 18888, 18888, 18888,
  9099. 18888, 18890, 27333, 27211, 27211, 27211, 27211, 19484, 30853, 24401, 24401, 24401, 24401, 19628, 18888,
  9100. 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401, 26750,
  9101. 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888,
  9102. 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018,
  9103. 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837,
  9104. 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590,
  9105. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9106. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9107. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9108. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9109. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9110. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9111. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9112. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9113. 17590, 17590, 22728, 18836, 28747, 28782, 28817, 28841, 28857, 28880, 28896, 24161, 28943, 32011, 36261,
  9114. 27340, 28961, 29492, 28982, 29011, 24522, 29027, 25436, 29048, 23051, 27500, 29090, 29110, 30713, 18888,
  9115. 23512, 29130, 25183, 27211, 29155, 28927, 27033, 29173, 23230, 24401, 29199, 35373, 31693, 18888, 18888,
  9116. 25583, 32629, 29218, 27211, 27211, 31461, 30692, 29237, 27075, 24401, 24401, 24401, 29262, 29302, 19628,
  9117. 18888, 34329, 18888, 18888, 23086, 27211, 29329, 27211, 27211, 30756, 24012, 35933, 24401, 24401, 24401,
  9118. 27705, 31612, 18888, 18888, 29346, 29374, 27211, 35650, 17590, 21436, 29393, 24401, 25970, 18887, 33895,
  9119. 18888, 27211, 32528, 27212, 24016, 32769, 19868, 25659, 18888, 26889, 27211, 27211, 29412, 23889, 24371,
  9120. 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31768, 19840, 25783, 31738,
  9121. 19837, 29435, 29508, 31102, 29550, 29606, 22105, 30300, 29462, 19659, 27951, 17590, 17590, 17590, 17590,
  9122. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9123. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9124. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9125. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9126. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9127. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9128. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9129. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9130. 17590, 17590, 17590, 22743, 18836, 22059, 29629, 29473, 34097, 33285, 29183, 29651, 27254, 18888, 29678,
  9131. 33329, 32535, 27211, 29694, 29716, 22121, 19202, 24401, 32742, 29741, 18866, 26776, 33921, 28474, 18888,
  9132. 18888, 25783, 29766, 27211, 29809, 27211, 35072, 22164, 35825, 24401, 29828, 24401, 24036, 36769, 25217,
  9133. 18888, 18888, 29848, 18890, 27211, 29871, 27211, 26258, 27211, 29894, 24401, 29929, 24401, 36587, 24401,
  9134. 19628, 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 29725, 29962, 24401, 24401, 24401,
  9135. 24401, 26750, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18473,
  9136. 18888, 18888, 19584, 27211, 27212, 24016, 29982, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889,
  9137. 19868, 31018, 18890, 27211, 31833, 19902, 19447, 32052, 19544, 19828, 29998, 30097, 30031, 19840, 25783,
  9138. 30047, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 30075, 17590, 17590, 17590,
  9139. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9140. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9141. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9142. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9143. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9144. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9145. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9146. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9147. 17590, 17590, 17590, 17590, 22758, 18836, 30121, 30156, 30206, 30257, 30273, 30336, 22087, 35624, 32837,
  9148. 25762, 18890, 29878, 34934, 26812, 27211, 22121, 24931, 23223, 29202, 24401, 18866, 34373, 30352, 18888,
  9149. 18888, 18888, 23447, 24828, 27211, 27211, 27211, 35072, 30370, 35052, 24401, 24401, 24401, 24036, 29523,
  9150. 18888, 18888, 27146, 18888, 31308, 30386, 27211, 27211, 30405, 30558, 19484, 30427, 24401, 24401, 29938,
  9151. 35686, 19628, 28766, 30447, 34506, 35614, 23086, 28731, 30482, 30517, 30552, 30756, 24012, 20156, 30574,
  9152. 30598, 30667, 26283, 33464, 28945, 27670, 30687, 32915, 33504, 25328, 17590, 23963, 20450, 33837, 21016,
  9153. 32397, 26300, 30708, 30729, 27885, 30748, 21588, 36373, 30779, 26653, 24628, 33220, 32514, 30806, 31835,
  9154. 25412, 25906, 26515, 18890, 28825, 31833, 26133, 19447, 28304, 31730, 23834, 26057, 30869, 30885, 32181,
  9155. 30920, 30942, 32797, 25782, 30970, 31015, 23516, 31008, 30997, 31034, 27963, 19659, 29450, 17590, 17590,
  9156. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9157. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9158. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9159. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9160. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9161. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9162. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9163. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9164. 17590, 17590, 17590, 17590, 17590, 22773, 18836, 31058, 31074, 32463, 31125, 31141, 31197, 22087, 18888,
  9165. 29534, 35471, 36738, 27211, 24342, 31213, 24424, 22121, 24401, 20175, 31229, 31917, 27736, 31245, 34334,
  9166. 27175, 18888, 29094, 27286, 27211, 31278, 31336, 27211, 31355, 31371, 24401, 31402, 31418, 24401, 31437,
  9167. 31693, 18888, 31619, 32841, 18888, 18890, 27211, 27211, 31460, 31477, 27211, 19484, 24401, 24401, 31497,
  9168. 36581, 24401, 33020, 18888, 18888, 18888, 18888, 30007, 27211, 27211, 27211, 27211, 31516, 32310, 24401,
  9169. 24401, 24401, 24401, 31539, 18888, 28762, 18888, 24651, 35740, 27211, 27211, 28644, 31565, 35796, 24401,
  9170. 24401, 19318, 32188, 18888, 24334, 28366, 27212, 29966, 29832, 19868, 25659, 18888, 18889, 27211, 27211,
  9171. 19719, 31587, 19868, 31635, 32435, 33693, 30105, 31663, 20005, 31715, 31757, 31784, 31812, 30015, 31851,
  9172. 31878, 25783, 31898, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 31933, 30221, 17590,
  9173. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9174. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9175. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9176. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9177. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9178. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9179. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9180. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9181. 17590, 17590, 17590, 17590, 17590, 17590, 22788, 18836, 22059, 25729, 30466, 31968, 24306, 31984, 32000,
  9182. 32807, 35160, 27017, 29590, 34941, 19801, 29377, 33700, 22121, 27040, 30431, 29396, 28864, 29565, 18888,
  9183. 18888, 18888, 32027, 18888, 25783, 27211, 27211, 23698, 27211, 35072, 22164, 24401, 24401, 30845, 24401,
  9184. 24036, 32045, 18888, 26929, 18888, 18888, 18890, 27211, 31481, 32068, 27211, 27211, 32088, 24401, 33058,
  9185. 32122, 24401, 24401, 33736, 18888, 18888, 33162, 18888, 23086, 27211, 27211, 29484, 27211, 28375, 32144,
  9186. 24401, 24401, 33831, 24401, 26750, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 36704, 24017, 24401,
  9187. 24401, 24401, 18887, 18888, 18888, 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211,
  9188. 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 33107, 22171, 33224, 24271, 32169, 31017, 27856,
  9189. 31741, 19840, 25783, 31738, 30234, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951,
  9190. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9191. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9192. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9193. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9194. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9195. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9196. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9197. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9198. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22339, 18836, 32204, 32232, 32252, 32677, 33295, 29074,
  9199. 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 22121, 24401, 24401, 24401, 24401, 23619,
  9200. 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211, 27211, 35072, 32276, 24401, 24401, 24401,
  9201. 24401, 24036, 31693, 18888, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 32299, 24401,
  9202. 24401, 24401, 24401, 24401, 19628, 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756,
  9203. 24012, 24401, 24401, 24401, 24401, 26750, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017,
  9204. 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 27212, 24016, 24402, 19868, 25659, 33886, 18889,
  9205. 36065, 27211, 19719, 35326, 19868, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017,
  9206. 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659,
  9207. 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9208. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9209. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9210. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9211. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9212. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9213. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9214. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9215. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22803, 18836, 32335, 31647, 34666, 32351, 32367,
  9216. 32417, 22087, 18888, 32433, 19335, 32451, 27211, 32479, 27107, 32500, 22121, 24401, 32551, 20085, 32572,
  9217. 18866, 22287, 23753, 18888, 18888, 32602, 32665, 27211, 32693, 27211, 26972, 32713, 32729, 24401, 32764,
  9218. 24401, 25877, 32785, 34768, 18888, 27390, 32823, 24594, 24855, 32857, 24890, 32878, 32904, 27211, 32942,
  9219. 32977, 24401, 33000, 29313, 24401, 30790, 26206, 27666, 33904, 18888, 23086, 36353, 27211, 33036, 27211,
  9220. 30756, 24012, 32153, 24401, 33056, 24401, 35861, 18888, 18888, 30354, 27972, 27211, 27211, 33800, 17590,
  9221. 20145, 24401, 24401, 34638, 20811, 18888, 18888, 33074, 27211, 27212, 36167, 24402, 19868, 25659, 18888,
  9222. 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406, 34616, 24169, 33093, 33123,
  9223. 33157, 27856, 31741, 23862, 26552, 34302, 19837, 25782, 19760, 31015, 23516, 31008, 33178, 19973, 27963,
  9224. 23497, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9225. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9226. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9227. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9228. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9229. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9230. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9231. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9232. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22818, 18836, 33205, 28113, 33240, 34097,
  9233. 33275, 29183, 22087, 33318, 35438, 18888, 18890, 33345, 26391, 33382, 27211, 22121, 33399, 28072, 33442,
  9234. 24401, 18866, 22232, 18888, 33459, 18888, 18888, 33480, 33498, 25175, 27211, 27211, 26704, 22164, 24775,
  9235. 35239, 24401, 24401, 25914, 29580, 18888, 18888, 31109, 25211, 33520, 33539, 27211, 27211, 33556, 36284,
  9236. 19484, 33585, 24401, 24401, 33604, 32556, 19628, 18888, 18888, 31262, 33658, 23086, 27211, 27211, 33679,
  9237. 27211, 30756, 24012, 24401, 24401, 33716, 24401, 26854, 27480, 18888, 33752, 27855, 33259, 34701, 27211,
  9238. 17590, 32102, 24782, 23807, 24401, 18887, 18888, 18888, 27211, 27211, 27212, 33773, 36105, 19868, 25659,
  9239. 18888, 23368, 27211, 29157, 19719, 23889, 34454, 29286, 18890, 33794, 25302, 33816, 19447, 34079, 33853,
  9240. 31862, 31017, 27856, 31741, 33877, 28920, 33937, 19837, 30461, 34002, 22276, 36041, 34029, 22105, 19419,
  9241. 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9242. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9243. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9244. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9245. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9246. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9247. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9248. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9249. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22833, 18836, 34064, 32616, 34113,
  9250. 34141, 34157, 34192, 34208, 32216, 36013, 31549, 31952, 34224, 34248, 34287, 29330, 34350, 34389, 34413,
  9251. 34481, 26793, 18866, 26187, 29635, 22293, 18888, 36654, 25783, 34522, 34544, 34566, 25821, 35072, 22164,
  9252. 34586, 34609, 34632, 19604, 24036, 36644, 36674, 24681, 18888, 32401, 34654, 31339, 34682, 34698, 27211,
  9253. 34717, 34753, 28053, 34812, 34836, 24401, 33619, 19628, 34858, 32236, 34906, 24598, 33523, 27612, 34890,
  9254. 34922, 24732, 29246, 36717, 33634, 34465, 32984, 34168, 26750, 34957, 18888, 18888, 34994, 35010, 27211,
  9255. 33040, 17590, 29913, 35035, 24401, 36304, 25482, 30171, 35883, 35068, 35088, 26627, 20441, 31173, 35123,
  9256. 35143, 35176, 24640, 30492, 29358, 19719, 35192, 35219, 25384, 28801, 35255, 35279, 32586, 34496, 23086,
  9257. 23330, 29061, 31017, 27856, 31741, 19840, 25783, 31738, 24547, 25164, 35315, 31796, 35353, 34316, 22105,
  9258. 19419, 27963, 24091, 28630, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9259. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9260. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9261. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9262. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9263. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9264. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9265. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9266. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22848, 18836, 22059, 34782,
  9267. 34088, 35389, 21008, 35405, 35421, 35454, 18888, 18888, 23466, 35487, 27211, 27211, 27211, 35513, 31154,
  9268. 24401, 24401, 24401, 35560, 18888, 26863, 36664, 35601, 24872, 25783, 30389, 23536, 26250, 35647, 35666,
  9269. 22164, 19522, 19564, 30582, 35682, 27697, 35575, 29114, 18888, 18888, 18888, 18890, 27211, 35702, 27211,
  9270. 27211, 27211, 35723, 24401, 35527, 24401, 24401, 24401, 19628, 30184, 18888, 18888, 18888, 23086, 35739,
  9271. 27211, 27211, 27211, 29139, 22938, 24401, 24401, 24401, 24401, 23898, 35756, 18888, 18888, 25025, 35778,
  9272. 27211, 27211, 17590, 20064, 35795, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 27212, 24016, 24402,
  9273. 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 23917, 18890, 34550, 31833, 22262, 19447,
  9274. 23086, 23330, 26418, 31017, 27856, 31741, 19840, 25783, 35812, 19837, 27187, 35841, 33135, 23516, 31008,
  9275. 22105, 22148, 28712, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9276. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9277. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9278. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9279. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9280. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9281. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9282. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9283. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22863, 18836, 22059,
  9284. 35877, 28723, 34097, 31164, 29183, 22087, 26758, 18888, 22592, 18890, 23989, 27211, 29812, 27211, 22121,
  9285. 33778, 24401, 31421, 24401, 18866, 18888, 18888, 26872, 18888, 18888, 25783, 27211, 30732, 27211, 27211,
  9286. 35072, 22164, 24401, 24908, 24401, 24401, 24036, 31693, 18888, 18888, 18888, 18888, 18890, 27211, 27211,
  9287. 27211, 27211, 27211, 19484, 24401, 24401, 24401, 24401, 24401, 19628, 18888, 18888, 18888, 18888, 23086,
  9288. 27211, 27211, 27211, 27211, 30756, 24012, 24401, 24401, 24401, 24401, 26750, 18888, 18888, 18888, 27855,
  9289. 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 27212, 24016,
  9290. 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406,
  9291. 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516,
  9292. 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9293. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9294. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9295. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9296. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9297. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9298. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9299. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9300. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22878, 18836,
  9301. 22059, 27837, 27857, 35899, 24401, 35915, 22087, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211,
  9302. 22121, 24401, 24401, 24401, 24401, 18866, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211, 27211,
  9303. 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 31602, 18888, 18888, 18888, 18888, 26223, 27211,
  9304. 27211, 27211, 27211, 27211, 19484, 35931, 24401, 24401, 24401, 24401, 19628, 18888, 28136, 18888, 18888,
  9305. 35949, 27211, 32862, 27211, 32697, 30756, 24012, 24401, 32283, 24401, 32128, 26750, 18888, 18888, 18888,
  9306. 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211, 27212,
  9307. 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211, 31833,
  9308. 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760, 31015,
  9309. 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9310. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9311. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9312. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9313. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9314. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9315. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9316. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9317. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 22893,
  9318. 18836, 22059, 35974, 34882, 34097, 33960, 29183, 35996, 18888, 23311, 18888, 36029, 27211, 27211, 36064,
  9319. 36081, 22121, 24401, 24401, 36104, 33950, 18866, 18888, 18888, 18888, 18888, 18888, 25783, 27211, 27211,
  9320. 27211, 27211, 35072, 22164, 24401, 24401, 24401, 24401, 24036, 36121, 18888, 25559, 18888, 18888, 18890,
  9321. 27211, 27211, 30313, 27211, 27211, 36154, 24401, 24401, 34397, 24401, 24401, 19628, 28250, 18888, 18888,
  9322. 18888, 23086, 30926, 27211, 27211, 27211, 26983, 24012, 33642, 24401, 24401, 24401, 26750, 18888, 18888,
  9323. 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 18887, 18888, 18888, 27211, 27211,
  9324. 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211, 19719, 23889, 19868, 31018, 18890, 27211,
  9325. 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782, 19760,
  9326. 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9327. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9328. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9329. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9330. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9331. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9332. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9333. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9334. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9335. 22339, 18836, 22059, 19354, 27857, 36190, 24401, 36206, 22087, 18888, 18888, 18888, 18007, 27211, 27211,
  9336. 27211, 24724, 22121, 24401, 24401, 24401, 30827, 18866, 18888, 36222, 18888, 28795, 18888, 25783, 35100,
  9337. 27211, 27429, 27211, 35072, 22164, 30836, 24401, 24499, 24401, 24036, 31693, 18888, 36244, 18888, 18888,
  9338. 18890, 27211, 36088, 27211, 27211, 27211, 19484, 24401, 28036, 24401, 24401, 24401, 19628, 18888, 18888,
  9339. 35631, 18888, 35762, 27211, 27211, 36277, 27211, 34730, 24012, 24401, 24401, 36300, 24401, 36320, 18888,
  9340. 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401, 24401, 25712, 18888, 18888, 36346,
  9341. 27211, 27212, 19184, 24402, 19868, 25659, 32029, 18889, 27211, 33359, 19719, 23889, 36369, 31018, 18890,
  9342. 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741, 19840, 25783, 31738, 19837, 25782,
  9343. 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590, 17590, 17590, 17590, 17590, 17590,
  9344. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9345. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9346. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9347. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9348. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9349. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9350. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9351. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9352. 17590, 22384, 18836, 36389, 19008, 19233, 20367, 36434, 17173, 17595, 36437, 17330, 17349, 18921, 17189,
  9353. 17208, 17281, 20355, 36453, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265, 22033,
  9354. 20765, 17421, 20535, 17192, 20362, 21726, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520, 17251,
  9355. 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915, 21940,
  9356. 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223, 36531,
  9357. 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918, 36551,
  9358. 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052, 18209,
  9359. 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392, 17816,
  9360. 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590, 17590,
  9361. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9362. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9363. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9364. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9365. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9366. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9367. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9368. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9369. 17590, 17590, 22369, 18836, 18987, 19008, 19233, 20367, 19008, 21737, 30763, 36437, 17330, 17349, 18921,
  9370. 17189, 17208, 17281, 20355, 17949, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006, 17265,
  9371. 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952, 17497, 17520,
  9372. 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418, 21915,
  9373. 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473, 18223,
  9374. 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731, 17918,
  9375. 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706, 18052,
  9376. 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642, 18392,
  9377. 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590, 17590,
  9378. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9379. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9380. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9381. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9382. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9383. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9384. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9385. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9386. 17590, 17590, 17590, 21813, 18836, 36489, 19008, 19233, 20367, 19008, 17173, 17737, 36437, 17330, 17349,
  9387. 18921, 17189, 17208, 17281, 20355, 17768, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665, 19006,
  9388. 17265, 22033, 20765, 17421, 20535, 17192, 20543, 22022, 17311, 18658, 18999, 19008, 17447, 32952, 17497,
  9389. 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258, 36418,
  9390. 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617, 36473,
  9391. 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864, 18731,
  9392. 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143, 18706,
  9393. 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163, 30642,
  9394. 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590, 17590,
  9395. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9396. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9397. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9398. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9399. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9400. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9401. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9402. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9403. 17590, 17590, 17590, 17590, 21828, 18836, 18987, 19008, 19233, 20367, 19008, 17173, 30763, 36437, 17330,
  9404. 17349, 18921, 17189, 17208, 17281, 20355, 36517, 17308, 17327, 17346, 18918, 18452, 21880, 18649, 18665,
  9405. 19006, 17265, 22033, 20765, 17421, 20535, 17192, 18127, 21873, 17311, 18658, 18999, 19008, 17447, 32952,
  9406. 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504, 17527, 17258,
  9407. 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737, 21946, 17617,
  9408. 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481, 19156, 17864,
  9409. 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072, 18117, 18143,
  9410. 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232, 17796, 17163,
  9411. 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535, 17590, 17590,
  9412. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9413. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9414. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9415. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9416. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9417. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9418. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9419. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9420. 17590, 17590, 17590, 17590, 17590, 21828, 18836, 19307, 18888, 27857, 30756, 24401, 29183, 28015, 18888,
  9421. 18888, 18888, 18890, 27211, 27211, 27211, 27211, 36567, 24401, 24401, 24401, 24401, 22953, 18888, 18888,
  9422. 18888, 18888, 18888, 25783, 27211, 27211, 27211, 27211, 28537, 36603, 24401, 24401, 24401, 24401, 24036,
  9423. 18881, 18888, 18888, 18888, 18888, 18890, 27211, 27211, 27211, 27211, 27211, 19484, 24401, 24401, 24401,
  9424. 24401, 24401, 19628, 18888, 18888, 18888, 18888, 23086, 27211, 27211, 27211, 27211, 30756, 24012, 24401,
  9425. 24401, 24401, 24401, 26750, 18888, 18888, 18888, 27855, 27211, 27211, 27211, 17590, 24017, 24401, 24401,
  9426. 24401, 18887, 18888, 18888, 27211, 27211, 27212, 24016, 24402, 19868, 25659, 18888, 18889, 27211, 27211,
  9427. 19719, 23889, 19868, 31018, 18890, 27211, 31833, 19406, 19447, 23086, 23330, 19828, 31017, 27856, 31741,
  9428. 19840, 25783, 31738, 19837, 25782, 19760, 31015, 23516, 31008, 22105, 19419, 27963, 19659, 27951, 17590,
  9429. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9430. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9431. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9432. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9433. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9434. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9435. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9436. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9437. 17590, 17590, 17590, 17590, 17590, 17590, 36629, 36690, 18720, 19008, 19233, 20367, 19008, 17454, 17595,
  9438. 36437, 17330, 17349, 18921, 17189, 17208, 17281, 20355, 17223, 17308, 17327, 17346, 18918, 36754, 21880,
  9439. 18649, 18665, 19006, 17265, 22033, 20765, 17421, 20535, 17192, 20362, 21726, 17311, 18658, 18999, 19008,
  9440. 17447, 32952, 17497, 17520, 17251, 36411, 17782, 20682, 17714, 18326, 17543, 17559, 17585, 21887, 17504,
  9441. 17527, 17258, 36418, 21915, 21940, 17611, 36467, 18217, 17633, 17661, 21190, 17703, 21176, 17730, 34737,
  9442. 21946, 17617, 36473, 18223, 36531, 17477, 19152, 17860, 17892, 17675, 17753, 17832, 17590, 21620, 17481,
  9443. 19156, 17864, 18731, 17918, 36551, 17292, 17934, 17979, 18727, 18681, 18405, 18621, 18039, 18056, 18072,
  9444. 18117, 18143, 18706, 18052, 18209, 18250, 18239, 18266, 17963, 18296, 18312, 18376, 17807, 36403, 19232,
  9445. 17796, 17163, 30642, 18392, 17816, 32961, 17645, 18805, 18421, 18437, 18519, 17393, 18747, 18505, 18535,
  9446. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9447. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9448. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9449. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9450. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9451. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9452. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9453. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590, 17590,
  9454. 17590, 17590, 17590, 17590, 17590, 17590, 17590, 0, 94242, 0, 118820, 0, 2211840, 102439, 0, 0, 106538,
  9455. 98347, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2482176, 2158592,
  9456. 2158592, 2158592, 2158592, 2158592, 2158592, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 2207744, 2404352,
  9457. 2412544, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9458. 2207744, 2207744, 2207744, 2207744, 2207744, 3104768, 2605056, 2207744, 2207744, 2207744, 2207744,
  9459. 2207744, 2207744, 2678784, 2207744, 2695168, 2207744, 2703360, 2207744, 2711552, 2752512, 2207744, 0, 0,
  9460. 0, 0, 0, 0, 2166784, 0, 0, 0, 0, 0, 0, 2158592, 2158592, 3170304, 3174400, 2158592, 0, 139, 0, 2158592,
  9461. 2158592, 2158592, 2158592, 2158592, 2424832, 2158592, 2158592, 2158592, 2748416, 2756608, 2777088,
  9462. 2801664, 2158592, 2158592, 2158592, 2863104, 2891776, 2158592, 2158592, 2158592, 2158592, 2158592,
  9463. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 3104768, 2158592, 2158592, 2158592, 2158592,
  9464. 2158592, 2158592, 2207744, 2785280, 2207744, 2809856, 2207744, 2207744, 2842624, 2207744, 2207744,
  9465. 2207744, 2899968, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2473984,
  9466. 2207744, 2207744, 2494464, 2207744, 2207744, 2207744, 2523136, 2158592, 2404352, 2412544, 2158592,
  9467. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9468. 2158592, 2564096, 2158592, 2158592, 2605056, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9469. 2678784, 2158592, 2695168, 2158592, 2703360, 2158592, 2711552, 2752512, 2158592, 2158592, 2785280,
  9470. 2158592, 2158592, 2785280, 2158592, 2809856, 2158592, 2158592, 2842624, 2158592, 2158592, 2158592,
  9471. 2899968, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 18, 0, 0, 0, 0,
  9472. 0, 0, 0, 2211840, 0, 0, 641, 0, 2158592, 0, 0, 0, 0, 0, 0, 0, 0, 2211840, 0, 0, 32768, 0, 2158592, 0,
  9473. 2158592, 2158592, 2158592, 2383872, 2158592, 2158592, 2158592, 2158592, 3006464, 2383872, 2207744,
  9474. 2207744, 2207744, 2207744, 2158877, 2158877, 2158877, 2158877, 0, 0, 0, 2158877, 2572573, 2158877,
  9475. 2158877, 0, 2207744, 2207744, 2596864, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2641920,
  9476. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 0, 0, 167936, 0, 0, 2162688, 0, 0,
  9477. 3104768, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9478. 2158592, 2158592, 0, 0, 0, 2146304, 2146304, 2224128, 2224128, 2232320, 2232320, 2232320, 641, 0, 0, 0, 0,
  9479. 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2531328, 2158592,
  9480. 2158592, 2158592, 2158592, 2158592, 2617344, 2158592, 2158592, 2158592, 2158592, 2441216, 2445312,
  9481. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2502656, 2158592, 2158592, 2158592, 2158592,
  9482. 2158592, 2158592, 2158592, 2158592, 2580480, 2158592, 2158592, 2158592, 2158592, 2621440, 2158592,
  9483. 2580480, 2158592, 2158592, 2158592, 2158592, 2621440, 2158592, 2158592, 2158592, 2158592, 2158592,
  9484. 2158592, 2699264, 2158592, 2158592, 2158592, 2158592, 2158592, 2748416, 2756608, 2777088, 2801664,
  9485. 2207744, 2863104, 2891776, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9486. 2207744, 2207744, 2207744, 2207744, 3018752, 2207744, 3043328, 2207744, 2207744, 2207744, 2207744,
  9487. 3080192, 2207744, 2207744, 3112960, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 0,
  9488. 0, 172310, 279, 0, 2162688, 0, 0, 2207744, 2207744, 2207744, 3186688, 2207744, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  9489. 0, 0, 0, 0, 0, 0, 0, 2158592, 2158592, 2158592, 2404352, 2412544, 2158592, 2510848, 2158592, 2158592,
  9490. 2158592, 2158592, 2158592, 2158592, 2158592, 2584576, 2158592, 2609152, 2158592, 2158592, 2629632,
  9491. 2158592, 2158592, 2158592, 2686976, 2158592, 2715648, 2158592, 2158592, 3121152, 2158592, 2158592,
  9492. 2158592, 3149824, 2158592, 2158592, 3170304, 3174400, 2158592, 2367488, 2207744, 2207744, 2207744,
  9493. 2207744, 2158592, 2158592, 2158592, 2158592, 0, 0, 0, 2158592, 2572288, 2158592, 2158592, 0, 2207744,
  9494. 2207744, 2207744, 2433024, 2207744, 2453504, 2461696, 2207744, 2207744, 2207744, 2207744, 2207744,
  9495. 2207744, 2510848, 2207744, 2207744, 2207744, 2207744, 2207744, 2531328, 2207744, 2207744, 2207744,
  9496. 2207744, 2207744, 2617344, 2207744, 2207744, 2207744, 2207744, 2158592, 2158592, 2158592, 2158592, 0, 0,
  9497. 0, 2158592, 2572288, 2158592, 2158592, 1508, 2715648, 2207744, 2207744, 2207744, 2207744, 2207744,
  9498. 2207744, 2207744, 2867200, 2207744, 2904064, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9499. 2207744, 2207744, 2580480, 2207744, 2207744, 2207744, 2207744, 2621440, 2207744, 2207744, 2207744,
  9500. 3149824, 2207744, 2207744, 3170304, 3174400, 2207744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 138, 2158592, 2158592,
  9501. 2158592, 2404352, 2412544, 2707456, 2732032, 2207744, 2207744, 2207744, 2822144, 2826240, 2207744,
  9502. 2895872, 2207744, 2207744, 2924544, 2207744, 2207744, 2973696, 2207744, 0, 0, 0, 0, 0, 0, 2166784, 0, 0,
  9503. 0, 0, 0, 285, 2158592, 2158592, 3112960, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9504. 2158592, 2158592, 3186688, 2158592, 2207744, 2207744, 2158592, 2158592, 2158592, 2158592, 2158592, 0, 0,
  9505. 0, 2158592, 2158592, 2158592, 2158592, 0, 0, 2535424, 2543616, 2158592, 2158592, 2158592, 0, 0, 0,
  9506. 2158592, 2158592, 2158592, 2990080, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9507. 2572288, 2981888, 2207744, 2207744, 3002368, 2207744, 3047424, 3063808, 3076096, 2207744, 2207744,
  9508. 2207744, 2207744, 2207744, 2207744, 2207744, 3203072, 2708960, 2732032, 2158592, 2158592, 2158592,
  9509. 2822144, 2827748, 2158592, 2895872, 2158592, 2158592, 2924544, 2158592, 2158592, 2973696, 2158592,
  9510. 2981888, 2158592, 2158592, 3002368, 2158592, 3047424, 3063808, 3076096, 2158592, 2158592, 2158592,
  9511. 2158592, 2158592, 2158592, 2158592, 3203072, 2981888, 2158592, 2158592, 3003876, 2158592, 3047424,
  9512. 3063808, 3076096, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 3203072, 2207744,
  9513. 2207744, 2207744, 2207744, 2207744, 2424832, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9514. 2207744, 20480, 0, 0, 0, 0, 0, 2162688, 20480, 0, 2523136, 2527232, 2158592, 2158592, 2576384, 2158592,
  9515. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2908160, 2527232,
  9516. 2207744, 2207744, 2576384, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9517. 2207744, 2207744, 2908160, 2207744, 0, 0, 0, 0, 0, 0, 2166784, 0, 0, 0, 0, 0, 286, 2158592, 2158592, 0, 0,
  9518. 2158592, 2158592, 2158592, 2158592, 2633728, 2658304, 0, 0, 2740224, 2744320, 0, 2834432, 2207744,
  9519. 2207744, 2977792, 2207744, 2207744, 2207744, 2207744, 3039232, 2207744, 2207744, 2207744, 2207744,
  9520. 2207744, 2207744, 3158016, 0, 0, 29315, 0, 0, 0, 0, 45, 45, 45, 45, 45, 933, 45, 45, 45, 45, 442, 45, 45,
  9521. 45, 45, 45, 45, 45, 45, 45, 67, 67, 2494464, 2158592, 2158592, 2158592, 2524757, 2527232, 2158592,
  9522. 2158592, 2576384, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 1504, 2158592, 2498560, 2158592,
  9523. 2158592, 2158592, 2158592, 2568192, 2158592, 2592768, 2625536, 2158592, 2158592, 2674688, 2736128,
  9524. 2158592, 2158592, 0, 2158592, 2912256, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9525. 3108864, 2158592, 2158592, 3133440, 3145728, 3153920, 2375680, 2379776, 2207744, 2207744, 2420736,
  9526. 2207744, 2449408, 2207744, 2207744, 2207744, 2498560, 2207744, 2207744, 2207744, 2207744, 2568192,
  9527. 2207744, 0, 0, 0, 0, 0, 0, 2166784, 0, 0, 0, 0, 0, 551, 2158592, 2158592, 2158592, 2158592, 2207744,
  9528. 2506752, 2207744, 2207744, 2207744, 2207744, 2207744, 2158592, 2506752, 0, 2020, 2158592, 2592768,
  9529. 2625536, 2207744, 2207744, 2674688, 2736128, 2207744, 2207744, 2207744, 2912256, 2207744, 2207744,
  9530. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 542, 0, 544,
  9531. 2207744, 3108864, 2207744, 2207744, 3133440, 3145728, 3153920, 2375680, 2379776, 2158592, 2158592,
  9532. 2420736, 2158592, 2449408, 2158592, 2158592, 2158592, 2158592, 2158592, 3186688, 2158592, 0, 641, 0, 0, 0,
  9533. 0, 0, 0, 2367488, 2158592, 2498560, 2158592, 2158592, 1621, 2158592, 2158592, 2568192, 2158592, 2592768,
  9534. 2625536, 2158592, 2158592, 2674688, 0, 0, 0, 0, 0, 1608, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1107, 97,
  9535. 97, 1110, 97, 97, 3133440, 3145728, 3153920, 2158592, 2408448, 2416640, 2158592, 2465792, 2158592,
  9536. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 3014656, 2158592, 2158592, 3051520,
  9537. 2158592, 2158592, 3100672, 2158592, 2158592, 3121152, 2158592, 2158592, 2158592, 3149824, 2416640,
  9538. 2207744, 2465792, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2633728,
  9539. 2658304, 2740224, 2744320, 2834432, 2949120, 2158592, 2985984, 2158592, 2998272, 2158592, 2158592,
  9540. 2158592, 3129344, 2207744, 2408448, 2949120, 2207744, 2985984, 2207744, 2998272, 2207744, 2207744,
  9541. 2207744, 3129344, 2158592, 2408448, 2416640, 2158592, 2465792, 2158592, 2158592, 2158592, 2158592,
  9542. 2158592, 3186688, 2158592, 0, 32768, 0, 0, 0, 0, 0, 0, 2367488, 2949120, 2158592, 2985984, 2158592,
  9543. 2998272, 2158592, 2158592, 2158592, 3129344, 2158592, 2158592, 2478080, 2158592, 2158592, 2158592,
  9544. 2535424, 2543616, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9545. 3117056, 2207744, 2207744, 2478080, 2207744, 2207744, 2207744, 2207744, 2699264, 2207744, 2207744,
  9546. 2207744, 2207744, 2207744, 2748416, 2756608, 2777088, 2801664, 2207744, 2207744, 2158877, 2158877,
  9547. 2158877, 2158877, 2158877, 0, 0, 0, 2158877, 2158877, 2158877, 2158877, 0, 0, 2535709, 2543901, 2158877,
  9548. 2158877, 2158877, 0, 0, 0, 2158877, 2158877, 2158877, 2990365, 2158877, 2158877, 2158730, 2158730,
  9549. 2158730, 2158730, 2158730, 2572426, 2207744, 2535424, 2543616, 2207744, 2207744, 2207744, 2207744,
  9550. 2207744, 2207744, 2207744, 2207744, 2207744, 3117056, 2158592, 2158592, 2478080, 2207744, 2207744,
  9551. 2990080, 2207744, 2207744, 2158592, 2158592, 2482176, 2158592, 2158592, 0, 0, 0, 2158592, 2158592,
  9552. 2158592, 0, 2158592, 2908160, 2158592, 2158592, 2158592, 2977792, 2158592, 2158592, 2158592, 2158592,
  9553. 3039232, 2158592, 2158592, 3010560, 2207744, 2428928, 2207744, 2514944, 2207744, 2588672, 2207744,
  9554. 2838528, 2207744, 2207744, 2207744, 3010560, 2158592, 2428928, 2158592, 2514944, 0, 0, 2158592, 2588672,
  9555. 2158592, 0, 2838528, 2158592, 2158592, 2158592, 3010560, 2158592, 2506752, 2158592, 18, 0, 0, 0, 0, 0, 0,
  9556. 0, 2211840, 0, 0, 0, 0, 2158592, 0, 0, 29315, 922, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9557. 45, 45, 1539, 45, 3006464, 2383872, 0, 2020, 2158592, 2158592, 2158592, 2158592, 3006464, 2158592,
  9558. 2637824, 2953216, 2158592, 2207744, 2637824, 2953216, 2207744, 0, 0, 2158592, 2637824, 2953216, 2158592,
  9559. 2539520, 2158592, 2539520, 2207744, 0, 0, 2539520, 2158592, 2158592, 2158592, 2158592, 2207744, 2506752,
  9560. 2207744, 2207744, 2207744, 2207744, 2207744, 2158592, 2506752, 0, 0, 2158592, 2207744, 0, 2158592,
  9561. 2158592, 2207744, 0, 2158592, 2158592, 2207744, 0, 2158592, 2965504, 2965504, 2965504, 0, 0, 0, 0, 0,
  9562. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2474269, 2158877, 2158877, 0, 0,
  9563. 2158877, 2158877, 2158877, 2158877, 2634013, 2658589, 0, 0, 2740509, 2744605, 0, 2834717, 40976, 18,
  9564. 36884, 45078, 24, 28, 90143, 94242, 118820, 102439, 106538, 98347, 118820, 118820, 118820, 40976, 18, 18,
  9565. 36884, 0, 0, 0, 24, 24, 24, 27, 27, 27, 27, 90143, 0, 0, 86016, 0, 0, 2211840, 102439, 0, 0, 0, 98347, 0,
  9566. 2158592, 2158592, 2158592, 2158592, 2158592, 3158016, 0, 2375680, 2379776, 2158592, 2158592, 2420736,
  9567. 2158592, 2449408, 2158592, 2158592, 0, 94242, 0, 0, 0, 2211840, 102439, 0, 0, 106538, 98347, 135, 2158592,
  9568. 2158592, 2158592, 2158592, 2158592, 2158592, 2564096, 2158592, 2158592, 2158592, 2158592, 2158592,
  9569. 2596864, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2641920, 2158592, 2158592, 2158592,
  9570. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2781184, 2793472, 2494464, 2158592,
  9571. 2158592, 2158592, 2523136, 2527232, 2158592, 2158592, 2576384, 2158592, 2158592, 2158592, 2158592,
  9572. 2158592, 2158592, 0, 40976, 0, 18, 18, 24, 0, 27, 27, 0, 2158592, 2498560, 2158592, 2158592, 0, 2158592,
  9573. 2158592, 2568192, 2158592, 2592768, 2625536, 2158592, 2158592, 2674688, 0, 0, 0, 0, 0, 2211840, 0, 0, 0,
  9574. 0, 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2473984, 2158592,
  9575. 2158592, 2494464, 2158592, 2158592, 2158592, 3006464, 2383872, 0, 0, 2158592, 2158592, 2158592, 2158592,
  9576. 3006464, 2158592, 2637824, 2953216, 2158592, 2207744, 2637824, 2953216, 40976, 18, 36884, 45078, 24, 27,
  9577. 147488, 94242, 147456, 147488, 106538, 98347, 0, 0, 147456, 40976, 18, 18, 36884, 0, 45078, 0, 24, 24, 24,
  9578. 27, 27, 27, 27, 0, 81920, 0, 94242, 0, 0, 0, 2211840, 0, 0, 0, 106538, 98347, 0, 2158592, 2158592,
  9579. 2158592, 2158592, 2158592, 2158592, 2428928, 2158592, 2514944, 2158592, 2588672, 2158592, 2838528,
  9580. 2158592, 2158592, 40976, 18, 151573, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 0,
  9581. 40976, 18, 18, 36884, 0, 45078, 0, 24, 24, 24, 27, 27, 27, 27, 90143, 0, 0, 1315, 0, 97, 97, 97, 97, 97,
  9582. 97, 97, 97, 97, 97, 1487, 97, 18, 131427, 0, 0, 0, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 0, 0, 29315, 0, 0,
  9583. 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 130, 94242, 0, 0, 0,
  9584. 2211840, 102439, 0, 0, 106538, 98347, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 3096576,
  9585. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2207744,
  9586. 2207744, 2158592, 18, 0, 0, 0, 0, 0, 0, 0, 2211840, 0, 0, 0, 0, 2158592, 644, 2207744, 2207744, 2207744,
  9587. 3186688, 2207744, 0, 1080, 0, 1084, 0, 1088, 0, 0, 0, 0, 0, 0, 0, 2158730, 2158730, 2158730, 2158730,
  9588. 2158730, 2158730, 2158730, 2158730, 2158730, 2531466, 2158730, 2158730, 2158730, 2158730, 2158730,
  9589. 2617482, 0, 94242, 0, 0, 0, 2211840, 102439, 0, 0, 106538, 98347, 0, 2158592, 2158592, 2158592, 2158592,
  9590. 2158592, 2781184, 2793472, 2158592, 2818048, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  9591. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 40976, 18,
  9592. 36884, 45078, 24, 27, 90143, 159779, 159744, 102439, 159779, 98347, 0, 0, 159744, 40976, 18, 18, 36884, 0,
  9593. 45078, 0, 2224253, 172032, 2224253, 2232448, 2232448, 172032, 2232448, 90143, 0, 0, 2170880, 0, 0, 550,
  9594. 829, 2158592, 2158592, 2158592, 2387968, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 0, 40976,
  9595. 0, 18, 18, 124, 124, 127, 127, 127, 40976, 18, 36884, 45078, 25, 29, 90143, 94242, 0, 102439, 106538,
  9596. 98347, 0, 0, 163931, 40976, 18, 18, 36884, 0, 45078, 249856, 24, 24, 24, 27, 27, 27, 27, 90143, 0, 0,
  9597. 2170880, 0, 0, 827, 0, 2158592, 2158592, 2158592, 2387968, 2158592, 2158592, 2158592, 2158592, 2158592,
  9598. 2158592, 0, 40976, 0, 4243810, 4243810, 24, 24, 27, 27, 27, 2207744, 0, 0, 0, 0, 0, 0, 2166784, 0, 0, 0,
  9599. 0, 57344, 286, 2158592, 2158592, 2158592, 2158592, 2707456, 2732032, 2158592, 2158592, 2158592, 2822144,
  9600. 2826240, 2158592, 2895872, 2158592, 2158592, 2924544, 2158592, 2158592, 2973696, 2158592, 2207744,
  9601. 2207744, 2207744, 3186688, 2207744, 0, 0, 0, 0, 0, 0, 53248, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 1613, 97,
  9602. 97, 97, 97, 97, 97, 1495, 97, 97, 97, 97, 97, 97, 97, 97, 97, 566, 97, 97, 97, 97, 97, 97, 2207744, 0, 0,
  9603. 0, 0, 0, 0, 2166784, 546, 0, 0, 0, 0, 286, 2158592, 2158592, 2158592, 2207744, 2207744, 2207744, 2207744,
  9604. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 17, 18, 36884,
  9605. 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 20480, 120, 121, 18, 18, 36884, 0, 45078, 0,
  9606. 24, 24, 24, 27, 27, 27, 27, 90143, 0, 0, 2170880, 0, 53248, 550, 0, 2158592, 2158592, 2158592, 2387968,
  9607. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 0, 40976, 196608, 18, 266240, 24, 24, 27, 27, 27, 0,
  9608. 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 0, 45, 45, 45, 45, 45, 45, 45, 1535, 45, 45, 45, 45, 45,
  9609. 45, 45, 1416, 45, 45, 45, 45, 45, 45, 45, 45, 424, 45, 45, 45, 45, 45, 45, 45, 45, 45, 405, 45, 45, 45,
  9610. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 199, 45, 45, 67, 67, 67, 67, 67, 491, 67, 67, 67, 67, 67, 67, 67,
  9611. 67, 67, 67, 67, 1766, 67, 67, 67, 1767, 67, 24850, 24850, 12564, 12564, 0, 0, 2166784, 546, 0, 53531,
  9612. 53531, 0, 286, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97, 97, 97, 45, 45, 45, 45, 45, 45,
  9613. 67, 67, 67, 67, 67, 67, 67, 67, 67, 743, 57889, 0, 2170880, 0, 0, 550, 0, 97, 97, 97, 97, 97, 97, 97, 97,
  9614. 97, 45, 45, 45, 45, 45, 45, 45, 45, 1856, 45, 1858, 1859, 67, 67, 67, 1009, 67, 67, 67, 67, 67, 67, 67,
  9615. 67, 67, 67, 67, 1021, 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2367773,
  9616. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2699549, 2158877, 2158877, 2158877, 2158877,
  9617. 2158877, 2748701, 2756893, 2777373, 2801949, 97, 1115, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9618. 97, 857, 97, 67, 67, 67, 67, 67, 1258, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1826, 67, 97, 97, 97,
  9619. 97, 97, 97, 1338, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 870, 97, 97, 67, 67, 67, 1463, 67,
  9620. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1579, 67, 67, 97, 97, 97, 1518, 97, 97, 97, 97, 97, 97,
  9621. 97, 97, 97, 97, 97, 97, 97, 904, 905, 97, 97, 97, 97, 1620, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0,
  9622. 921, 0, 0, 0, 0, 0, 0, 45, 1679, 67, 67, 67, 1682, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1690, 67, 0, 0, 97,
  9623. 97, 97, 97, 45, 45, 67, 67, 0, 0, 97, 97, 45, 45, 45, 669, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9624. 189, 45, 45, 45, 1748, 45, 45, 45, 1749, 1750, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 1959, 67,
  9625. 67, 67, 67, 1768, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1791, 97, 97, 97,
  9626. 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 1802, 67, 1817, 67, 67, 67, 67, 67, 67, 1823, 67, 67, 67, 67,
  9627. 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 0, 97, 97, 97, 97, 1848, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9628. 45, 659, 45, 45, 45, 45, 45, 45, 45, 1863, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 495, 67, 67,
  9629. 67, 67, 67, 1878, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97,
  9630. 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 97, 97, 97, 97, 0, 0, 0, 1973, 97, 97, 97,
  9631. 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1165, 97, 1167, 67, 24850, 24850, 12564, 12564, 0,
  9632. 0, 2166784, 0, 0, 53531, 53531, 0, 286, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 1789, 97, 0,
  9633. 94242, 0, 0, 0, 2211840, 102439, 0, 0, 106538, 98347, 136, 2158592, 2158592, 2158592, 2158592, 2158592,
  9634. 3158016, 229376, 2375680, 2379776, 2158592, 2158592, 2420736, 2158592, 2449408, 2158592, 2158592, 67,
  9635. 24850, 24850, 12564, 12564, 0, 0, 280, 547, 0, 53531, 53531, 0, 286, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97,
  9636. 0, 1788, 97, 97, 0, 97, 2024, 97, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 235, 67, 67, 67,
  9637. 67, 67, 57889, 547, 547, 0, 0, 550, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 45, 45, 45, 1799, 45, 45, 45,
  9638. 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 1092, 0, 0, 0, 0, 0, 97, 97, 97, 97, 1612, 97, 97,
  9639. 97, 97, 1616, 97, 1297, 1472, 0, 0, 0, 0, 1303, 1474, 0, 0, 0, 0, 1309, 1476, 0, 0, 0, 0, 97, 97, 97,
  9640. 1481, 97, 97, 97, 97, 97, 97, 1488, 97, 0, 1474, 0, 1476, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9641. 607, 97, 97, 97, 97, 40976, 18, 36884, 45078, 26, 30, 90143, 94242, 0, 102439, 106538, 98347, 0, 0,
  9642. 213080, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 143448, 40976, 18,
  9643. 18, 36884, 0, 45078, 0, 24, 24, 24, 27, 27, 27, 27, 0, 0, 0, 0, 97, 97, 97, 97, 1482, 97, 1483, 97, 97,
  9644. 97, 97, 97, 97, 1326, 97, 97, 1329, 1330, 97, 97, 97, 97, 97, 97, 1159, 1160, 97, 97, 97, 97, 97, 97, 97,
  9645. 97, 590, 97, 97, 97, 97, 97, 97, 97, 0, 94242, 0, 0, 0, 2211974, 102439, 0, 0, 106538, 98347, 0, 2158730,
  9646. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2474122, 2158730, 2158730, 2494602,
  9647. 2158730, 2158730, 2158730, 2809994, 2158730, 2158730, 2842762, 2158730, 2158730, 2158730, 2900106,
  9648. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 3014794, 2158730, 2158730,
  9649. 3051658, 2158730, 2158730, 3100810, 2158730, 2158730, 2158730, 2158730, 3096714, 2158730, 2158730,
  9650. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2207744, 2207744, 2207744,
  9651. 2207744, 2207744, 2572288, 2207744, 2207744, 2207744, 2207744, 541, 541, 543, 543, 0, 0, 2166784, 0, 548,
  9652. 549, 549, 0, 286, 2158877, 2158877, 2158877, 2863389, 2892061, 2158877, 2158877, 2158877, 2158877,
  9653. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 3186973, 2158877, 0, 0, 0, 0, 0, 0, 0, 0,
  9654. 2367626, 2158877, 2404637, 2412829, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877,
  9655. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2564381, 2158877,
  9656. 2158877, 2605341, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2679069, 2158877, 2695453,
  9657. 2158877, 2703645, 2158877, 2711837, 2752797, 2158877, 0, 2158877, 2158877, 2158877, 2384010, 2158730,
  9658. 2158730, 2158730, 2158730, 3006602, 2383872, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9659. 3096576, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9660. 2207744, 2207744, 0, 0, 0, 0, 0, 0, 2162688, 0, 0, 2158877, 2785565, 2158877, 2810141, 2158877, 2158877,
  9661. 2842909, 2158877, 2158877, 2158877, 2900253, 2158877, 2158877, 2158877, 2158877, 2158877, 2531613,
  9662. 2158877, 2158877, 2158877, 2158877, 2158877, 2617629, 2158877, 2158877, 2158877, 2158877, 2158730,
  9663. 2818186, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9664. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 3105053, 2158877, 2158877, 2158877, 2158877,
  9665. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 0, 0, 0, 0, 0, 97, 97, 97, 1611,
  9666. 97, 97, 97, 97, 97, 97, 97, 1496, 97, 97, 1499, 97, 97, 97, 97, 97, 2441354, 2445450, 2158730, 2158730,
  9667. 2158730, 2158730, 2158730, 2158730, 2502794, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9668. 2158730, 2433162, 2158730, 2453642, 2461834, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9669. 2580618, 2158730, 2158730, 2158730, 2158730, 2621578, 2158730, 2158730, 2158730, 2158730, 2158730,
  9670. 2158730, 2699402, 2158730, 2158730, 2158730, 2158730, 2678922, 2158730, 2695306, 2158730, 2703498,
  9671. 2158730, 2711690, 2752650, 2158730, 2158730, 2785418, 2158730, 2158730, 2158730, 3113098, 2158730,
  9672. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 3186826, 2158730, 2207744,
  9673. 2207744, 2207744, 2207744, 2781184, 2793472, 2207744, 2818048, 2207744, 2207744, 2207744, 2207744,
  9674. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 541, 0, 543, 2158877, 2502941,
  9675. 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2580765, 2158877, 2158877,
  9676. 2158877, 2158877, 2621725, 2158877, 3019037, 2158877, 3043613, 2158877, 2158877, 2158877, 2158877,
  9677. 3080477, 2158877, 2158877, 3113245, 2158877, 2158877, 2158877, 2158877, 0, 2158877, 2908445, 2158877,
  9678. 2158877, 2158877, 2978077, 2158877, 2158877, 2158877, 2158877, 3039517, 2158877, 2158730, 2510986,
  9679. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2584714, 2158730, 2609290, 2158730,
  9680. 2158730, 2629770, 2158730, 2158730, 2158730, 2388106, 2158730, 2158730, 2158730, 2158730, 2158730,
  9681. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2605194, 2158730, 2158730,
  9682. 2158730, 2158730, 2687114, 2158730, 2715786, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9683. 2158730, 2867338, 2158730, 2904202, 2158730, 2158730, 2158730, 2642058, 2158730, 2158730, 2158730,
  9684. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2781322, 2793610, 2158730, 3121290,
  9685. 2158730, 2158730, 2158730, 3149962, 2158730, 2158730, 3170442, 3174538, 2158730, 2367488, 2207744,
  9686. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2441216, 2445312, 2207744, 2207744, 2207744,
  9687. 2207744, 2207744, 2207744, 2502656, 2158877, 2433309, 2158877, 2453789, 2461981, 2158877, 2158877,
  9688. 2158877, 2158877, 2158877, 2158877, 2511133, 2158877, 2158877, 2158877, 2158877, 2584861, 2158877,
  9689. 2609437, 2158877, 2158877, 2629917, 2158877, 2158877, 2158877, 2687261, 2158877, 2715933, 2158877,
  9690. 2158730, 2158730, 2973834, 2158730, 2982026, 2158730, 2158730, 3002506, 2158730, 3047562, 3063946,
  9691. 3076234, 2158730, 2158730, 2158730, 2158730, 2207744, 2506752, 2207744, 2207744, 2207744, 2207744,
  9692. 2207744, 2158877, 2507037, 0, 0, 2158877, 2158730, 2158730, 2158730, 3203210, 2207744, 2207744, 2207744,
  9693. 2207744, 2207744, 2424832, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9694. 2207744, 2207744, 2207744, 2207744, 2564096, 2207744, 2207744, 2207744, 2707741, 2732317, 2158877,
  9695. 2158877, 2158877, 2822429, 2826525, 2158877, 2896157, 2158877, 2158877, 2924829, 2158877, 2158877,
  9696. 2973981, 2158877, 18, 0, 0, 0, 0, 0, 0, 0, 2211840, 0, 0, 642, 0, 2158592, 0, 45, 1529, 45, 45, 45, 45,
  9697. 45, 45, 45, 45, 45, 45, 45, 45, 45, 1755, 45, 67, 67, 2982173, 2158877, 2158877, 3002653, 2158877,
  9698. 3047709, 3064093, 3076381, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 3203357,
  9699. 2523274, 2527370, 2158730, 2158730, 2576522, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9700. 2158730, 2158730, 2158730, 2158730, 2908298, 2494749, 2158877, 2158877, 2158877, 2523421, 2527517,
  9701. 2158877, 2158877, 2576669, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 0, 40976, 0, 18, 18,
  9702. 4321280, 2224253, 2232448, 4329472, 2232448, 2158730, 2498698, 2158730, 2158730, 2158730, 2158730,
  9703. 2568330, 2158730, 2592906, 2625674, 2158730, 2158730, 2674826, 2736266, 2158730, 2158730, 2158730,
  9704. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  9705. 2207744, 2207744, 2207744, 2158730, 2912394, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9706. 2158730, 3109002, 2158730, 2158730, 3133578, 3145866, 3154058, 2375680, 2207744, 3108864, 2207744,
  9707. 2207744, 3133440, 3145728, 3153920, 2375965, 2380061, 2158877, 2158877, 2421021, 2158877, 2449693,
  9708. 2158877, 2158877, 2158877, 3117341, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9709. 2158730, 2158730, 2158730, 2158730, 2158730, 3104906, 2158730, 2158730, 2158730, 2158730, 2158730,
  9710. 2158730, 2158877, 2498845, 2158877, 2158877, 0, 2158877, 2158877, 2568477, 2158877, 2593053, 2625821,
  9711. 2158877, 2158877, 2674973, 0, 0, 0, 0, 97, 97, 1480, 97, 97, 97, 97, 97, 1485, 97, 97, 97, 0, 97, 97,
  9712. 1729, 97, 1731, 97, 97, 97, 97, 97, 97, 97, 311, 97, 97, 97, 97, 97, 97, 97, 97, 1520, 97, 97, 1523, 97,
  9713. 97, 1526, 97, 2736413, 2158877, 2158877, 0, 2158877, 2912541, 2158877, 2158877, 2158877, 2158877, 2158877,
  9714. 2158877, 2158877, 3109149, 2158877, 2158877, 3014941, 2158877, 2158877, 3051805, 2158877, 2158877,
  9715. 3100957, 2158877, 2158877, 3121437, 2158877, 2158877, 2158877, 3150109, 3133725, 3146013, 3154205,
  9716. 2158730, 2408586, 2416778, 2158730, 2465930, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730,
  9717. 2158730, 2158730, 3018890, 2158730, 3043466, 2158730, 2158730, 2158730, 2158730, 3080330, 2633866,
  9718. 2658442, 2740362, 2744458, 2834570, 2949258, 2158730, 2986122, 2158730, 2998410, 2158730, 2158730,
  9719. 2158730, 3129482, 2207744, 2408448, 2949120, 2207744, 2985984, 2207744, 2998272, 2207744, 2207744,
  9720. 2207744, 3129344, 2158877, 2408733, 2416925, 2158877, 2466077, 2158877, 2158877, 3170589, 3174685,
  9721. 2158877, 0, 0, 0, 2158730, 2158730, 2158730, 2158730, 2158730, 2424970, 2158730, 2158730, 2158730,
  9722. 2158730, 2707594, 2732170, 2158730, 2158730, 2158730, 2822282, 2826378, 2158730, 2896010, 2158730,
  9723. 2158730, 2924682, 2949405, 2158877, 2986269, 2158877, 2998557, 2158877, 2158877, 2158877, 3129629,
  9724. 2158730, 2158730, 2478218, 2158730, 2158730, 2158730, 2535562, 2543754, 2158730, 2158730, 2158730,
  9725. 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 3117194, 2207744, 2207744, 2478080, 2207744,
  9726. 2207744, 2207744, 2207744, 3014656, 2207744, 2207744, 3051520, 2207744, 2207744, 3100672, 2207744,
  9727. 2207744, 3121152, 2207744, 2207744, 2207744, 2207744, 2207744, 2584576, 2207744, 2609152, 2207744,
  9728. 2207744, 2629632, 2207744, 2207744, 2207744, 2686976, 2207744, 2207744, 2535424, 2543616, 2207744,
  9729. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 3117056, 2158877, 2158877,
  9730. 2478365, 0, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158730, 2158730, 2482314, 2158730,
  9731. 2158730, 2158730, 2158730, 2158730, 2158730, 2207744, 2207744, 2207744, 2387968, 2207744, 2207744,
  9732. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 823, 0, 825,
  9733. 2158730, 2158730, 2158730, 2990218, 2158730, 2158730, 2207744, 2207744, 2482176, 2207744, 2207744,
  9734. 2207744, 2207744, 2207744, 2207744, 2207744, 0, 0, 0, 0, 0, 0, 2162688, 135, 0, 2207744, 2207744, 2990080,
  9735. 2207744, 2207744, 2158877, 2158877, 2482461, 2158877, 2158877, 0, 0, 0, 2158877, 2158877, 2158877,
  9736. 2158877, 2158877, 2158730, 2429066, 2158730, 2515082, 2158730, 2588810, 2158730, 2838666, 2158730,
  9737. 2158730, 2158730, 3010698, 2207744, 2428928, 2207744, 2514944, 2207744, 2588672, 2207744, 2838528,
  9738. 2207744, 2207744, 2207744, 3010560, 2158877, 2429213, 2158877, 2515229, 0, 0, 2158877, 2588957, 2158877,
  9739. 0, 2838813, 2158877, 2158877, 2158877, 3010845, 2158730, 2506890, 2158730, 2158730, 2158730, 2748554,
  9740. 2756746, 2777226, 2801802, 2158730, 2158730, 2158730, 2863242, 2891914, 2158730, 2158730, 2158730,
  9741. 2158730, 2158730, 2158730, 2564234, 2158730, 2158730, 2158730, 2158730, 2158730, 2597002, 2158730,
  9742. 2158730, 2158730, 3006464, 2384157, 0, 0, 2158877, 2158877, 2158877, 2158877, 3006749, 2158730, 2637962,
  9743. 2953354, 2158730, 2207744, 2637824, 2953216, 2207744, 0, 0, 2158877, 2638109, 2953501, 2158877, 2539658,
  9744. 2158730, 2539520, 2207744, 0, 0, 2539805, 2158877, 2158730, 2158730, 2158730, 2977930, 2158730, 2158730,
  9745. 2158730, 2158730, 3039370, 2158730, 2158730, 2158730, 2158730, 2158730, 2158730, 3158154, 2207744, 0,
  9746. 2158877, 2158730, 2207744, 0, 2158877, 2158730, 2207744, 0, 2158877, 2965642, 2965504, 2965789, 0, 0, 0,
  9747. 0, 1315, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 1484, 97, 97, 97, 97, 2158592, 18, 0, 122880, 0, 0, 0,
  9748. 77824, 0, 2211840, 0, 0, 0, 0, 2158592, 0, 356, 0, 0, 0, 0, 0, 0, 28809, 0, 139, 45, 45, 45, 45, 45, 45,
  9749. 1751, 45, 45, 45, 45, 45, 45, 45, 67, 67, 1427, 67, 67, 67, 67, 67, 1432, 67, 67, 67, 3104768, 2158592,
  9750. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 122880,
  9751. 0, 0, 0, 0, 1315, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 1322, 550, 0, 286, 0, 2158592, 2158592, 2158592,
  9752. 2158592, 2158592, 2424832, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 0, 40976, 0, 18, 18, 24,
  9753. 24, 4329472, 27, 27, 2207744, 2207744, 2977792, 2207744, 2207744, 2207744, 2207744, 3039232, 2207744,
  9754. 2207744, 2207744, 2207744, 2207744, 2207744, 3158016, 542, 0, 0, 0, 542, 0, 544, 0, 0, 0, 544, 0, 550, 0,
  9755. 0, 0, 0, 0, 97, 97, 1610, 97, 97, 97, 97, 97, 97, 97, 97, 898, 97, 97, 97, 97, 97, 97, 97, 0, 94242, 0, 0,
  9756. 0, 2211840, 0, 0, 0, 0, 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2424832, 2158592, 2158592,
  9757. 2158592, 2158592, 2158592, 2158592, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 237568, 102439, 106538,
  9758. 98347, 0, 0, 20480, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 192512,
  9759. 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 94, 40976, 18, 36884,
  9760. 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 96, 40976, 18, 36884, 45078, 24, 27, 90143,
  9761. 94242, 0, 102439, 106538, 98347, 0, 0, 12378, 40976, 18, 18, 36884, 0, 45078, 0, 24, 24, 24, 126, 126,
  9762. 126, 126, 90143, 0, 0, 2170880, 0, 0, 0, 0, 2158592, 2158592, 2158592, 2387968, 2158592, 2158592, 2158592,
  9763. 2158592, 2158592, 2158592, 20480, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 40976, 18, 36884, 45078, 24, 27,
  9764. 90143, 94242, 241664, 102439, 106538, 98347, 0, 0, 20568, 40976, 18, 36884, 45078, 24, 27, 90143, 94242,
  9765. 0, 102439, 106538, 98347, 0, 0, 200797, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538,
  9766. 98347, 0, 0, 20480, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 0, 0, 44, 0, 0, 20575, 40976, 18,
  9767. 36884, 45078, 24, 27, 90143, 94242, 0, 41, 41, 41, 0, 0, 1126400, 40976, 18, 36884, 45078, 24, 27, 90143,
  9768. 94242, 0, 102439, 106538, 98347, 0, 0, 0, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439,
  9769. 106538, 98347, 0, 0, 89, 40976, 18, 18, 36884, 0, 45078, 0, 24, 24, 24, 27, 131201, 27, 27, 90143, 0, 0,
  9770. 2170880, 0, 0, 550, 0, 2158592, 2158592, 2158592, 2387968, 2158592, 2158592, 2158592, 2158592, 2158592,
  9771. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2441216, 2445312, 2158592, 2158592,
  9772. 2158592, 2158592, 2158592, 0, 94242, 0, 0, 208896, 2211840, 102439, 0, 0, 106538, 98347, 0, 2158592,
  9773. 2158592, 2158592, 2158592, 2158592, 3186688, 2158592, 0, 0, 0, 0, 0, 0, 0, 0, 2367488, 32768, 0, 0, 0, 0,
  9774. 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2433024, 2158592,
  9775. 2453504, 2461696, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2510848, 2158592, 2158592,
  9776. 2158592, 2158592, 40976, 18, 36884, 245783, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 20480,
  9777. 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 221184, 40976, 18, 36884,
  9778. 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 180224, 40976, 18, 18, 36884, 155648, 45078,
  9779. 0, 24, 24, 217088, 27, 27, 27, 217088, 90143, 0, 0, 2170880, 0, 0, 828, 0, 2158592, 2158592, 2158592,
  9780. 2387968, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2207744, 2207744, 2207744, 2387968,
  9781. 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744, 0, 0, 0, 0, 0, 0, 2162688, 233472, 0, 0,
  9782. 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 45, 45, 45, 718, 45, 45, 45, 45, 45, 45,
  9783. 45, 45, 45, 727, 131427, 0, 0, 0, 0, 362, 0, 365, 28809, 367, 139, 45, 45, 45, 45, 45, 45, 1808, 45, 45,
  9784. 45, 45, 67, 67, 67, 67, 67, 67, 67, 97, 97, 0, 0, 97, 67, 24850, 24850, 12564, 12564, 0, 57889, 0, 0, 0,
  9785. 53531, 53531, 367, 286, 97, 97, 0, 0, 97, 97, 97, 97, 97, 97, 1787, 0, 97, 97, 0, 97, 97, 97, 45, 45, 45,
  9786. 45, 2029, 45, 67, 67, 67, 67, 2033, 57889, 0, 0, 54074, 54074, 550, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9787. 45, 1798, 45, 45, 1800, 45, 45, 0, 1472, 0, 0, 0, 0, 0, 1474, 0, 0, 0, 0, 0, 1476, 0, 0, 0, 0, 1315, 0, 0,
  9788. 0, 0, 97, 97, 97, 97, 1320, 97, 97, 0, 0, 97, 97, 97, 97, 1786, 97, 0, 0, 97, 97, 0, 1790, 1527, 45, 45,
  9789. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 663, 67, 24850, 24850, 12564, 12564, 0, 57889, 281, 0,
  9790. 0, 53531, 53531, 367, 286, 97, 97, 0, 0, 97, 97, 97, 1785, 97, 97, 0, 0, 97, 97, 0, 97, 97, 1979, 97, 97,
  9791. 45, 45, 1983, 45, 1984, 45, 45, 45, 45, 45, 652, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 690, 45, 45, 694,
  9792. 45, 45, 40976, 19, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 262144, 40976, 18,
  9793. 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 46, 67, 98, 40976, 18, 36884, 45078, 24,
  9794. 27, 90143, 94242, 38, 102439, 106538, 98347, 45, 67, 97, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0,
  9795. 102439, 106538, 98347, 0, 0, 258048, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538,
  9796. 98347, 0, 0, 1122423, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 0, 1114152, 1114152, 1114152, 0, 0,
  9797. 1114112, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 37, 102439, 106538, 98347, 0, 0, 204800, 40976,
  9798. 18, 36884, 45078, 24, 27, 90143, 94242, 0, 102439, 106538, 98347, 0, 0, 57436, 40976, 18, 36884, 45078,
  9799. 24, 27, 33, 33, 0, 33, 33, 33, 0, 0, 0, 40976, 18, 18, 36884, 0, 45078, 0, 124, 124, 124, 127, 127, 127,
  9800. 127, 90143, 0, 0, 2170880, 0, 0, 550, 0, 2158877, 2158877, 2158877, 2388253, 2158877, 2158877, 2158877,
  9801. 2158877, 2158877, 2781469, 2793757, 2158877, 2818333, 2158877, 2158877, 2158877, 2158877, 2158877,
  9802. 2158877, 2158877, 2867485, 2158877, 2904349, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877,
  9803. 2158877, 3096861, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877,
  9804. 2441501, 2445597, 2158877, 2158877, 2158877, 2158877, 2158877, 40976, 122, 123, 36884, 0, 45078, 0, 24,
  9805. 24, 24, 27, 27, 27, 27, 90143, 0, 921, 29315, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 936, 2158592,
  9806. 4243810, 0, 0, 0, 0, 0, 0, 0, 2211840, 0, 0, 0, 0, 2158592, 0, 921, 29315, 0, 0, 0, 0, 45, 45, 45, 45, 45,
  9807. 45, 45, 935, 45, 45, 45, 715, 45, 45, 45, 45, 45, 45, 45, 723, 45, 45, 45, 45, 45, 1182, 45, 45, 45, 45,
  9808. 45, 45, 45, 45, 45, 45, 430, 45, 45, 45, 45, 45, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38,
  9809. 102439, 106538, 98347, 47, 68, 99, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538,
  9810. 98347, 48, 69, 100, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 49, 70, 101,
  9811. 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 50, 71, 102, 40976, 18, 36884,
  9812. 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 51, 72, 103, 40976, 18, 36884, 45078, 24, 27,
  9813. 90143, 94242, 38, 102439, 106538, 98347, 52, 73, 104, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38,
  9814. 102439, 106538, 98347, 53, 74, 105, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538,
  9815. 98347, 54, 75, 106, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 55, 76, 107,
  9816. 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 56, 77, 108, 40976, 18, 36884,
  9817. 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 57, 78, 109, 40976, 18, 36884, 45078, 24, 27,
  9818. 90143, 94242, 38, 102439, 106538, 98347, 58, 79, 110, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38,
  9819. 102439, 106538, 98347, 59, 80, 111, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538,
  9820. 98347, 60, 81, 112, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 61, 82, 113,
  9821. 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 62, 83, 114, 40976, 18, 36884,
  9822. 45078, 24, 27, 90143, 94242, 38, 102439, 106538, 98347, 63, 84, 115, 40976, 18, 36884, 45078, 24, 27,
  9823. 90143, 94242, 38, 102439, 106538, 98347, 64, 85, 116, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38,
  9824. 102439, 106538, 98347, 65, 86, 117, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 38, 102439, 106538,
  9825. 98347, 66, 87, 118, 40976, 18, 36884, 45078, 24, 27, 90143, 94242, 118820, 102439, 106538, 98347, 118820,
  9826. 118820, 118820, 40976, 18, 18, 0, 0, 45078, 0, 24, 24, 24, 27, 27, 27, 27, 90143, 0, 0, 1314, 0, 0, 0, 0,
  9827. 0, 0, 97, 97, 97, 97, 97, 1321, 97, 18, 131427, 0, 0, 0, 0, 0, 0, 362, 0, 0, 365, 0, 367, 0, 0, 1315, 0,
  9828. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1360, 97, 97, 131, 94242, 0, 0, 0, 38, 102439, 0, 0,
  9829. 106538, 98347, 28809, 45, 45, 45, 145, 149, 45, 45, 45, 45, 45, 174, 45, 179, 45, 185, 45, 188, 45, 45,
  9830. 202, 67, 255, 67, 67, 269, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 97, 292, 296, 97,
  9831. 97, 97, 97, 97, 321, 97, 326, 97, 332, 97, 18, 131427, 0, 0, 0, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 646,
  9832. 335, 97, 97, 349, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 437, 45, 45, 45, 45, 45, 45, 45, 45,
  9833. 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 523, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9834. 511, 67, 67, 67, 97, 97, 97, 620, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1501, 1502, 97, 793,
  9835. 67, 67, 796, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 808, 67, 0, 0, 97, 97, 97, 97, 45, 45, 67, 67, 0, 0,
  9836. 97, 97, 2052, 67, 67, 67, 67, 813, 67, 67, 67, 67, 67, 67, 67, 25398, 542, 13112, 544, 57889, 0, 0, 54074,
  9837. 54074, 550, 830, 97, 97, 97, 97, 97, 97, 97, 97, 97, 315, 97, 97, 97, 97, 97, 97, 841, 97, 97, 97, 97, 97,
  9838. 97, 97, 97, 97, 854, 97, 97, 97, 97, 97, 97, 589, 97, 97, 97, 97, 97, 97, 97, 97, 97, 867, 97, 97, 97, 97,
  9839. 97, 97, 97, 891, 97, 97, 894, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 906, 45, 937, 45, 45, 940, 45, 45,
  9840. 45, 45, 45, 45, 948, 45, 45, 45, 45, 45, 734, 735, 67, 737, 67, 738, 67, 740, 67, 67, 67, 45, 967, 45, 45,
  9841. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 435, 45, 45, 45, 980, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9842. 45, 45, 45, 45, 415, 45, 45, 67, 67, 1024, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97,
  9843. 67, 67, 67, 67, 67, 25398, 1081, 13112, 1085, 54074, 1089, 0, 0, 0, 0, 0, 0, 363, 0, 28809, 0, 139, 45,
  9844. 45, 45, 45, 45, 45, 1674, 45, 45, 45, 45, 45, 45, 45, 45, 67, 1913, 67, 1914, 67, 67, 67, 1918, 67, 67,
  9845. 97, 97, 97, 97, 1118, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 630, 97, 97, 97, 97, 97, 1169, 97, 97,
  9846. 97, 97, 97, 0, 921, 0, 1175, 0, 0, 0, 0, 45, 45, 45, 45, 45, 45, 1534, 45, 45, 45, 45, 45, 1538, 45, 45,
  9847. 45, 45, 1233, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 742, 67, 45, 45, 1191, 45, 45, 45,
  9848. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 454, 67, 67, 67, 67, 1243, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9849. 67, 1251, 67, 0, 0, 97, 97, 97, 97, 45, 45, 67, 67, 2050, 0, 97, 97, 45, 45, 45, 732, 45, 45, 67, 67, 67,
  9850. 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 67, 67, 67, 1284, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9851. 67, 772, 67, 67, 67, 1293, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368, 2158592, 2158592,
  9852. 2158592, 2404352, 2412544, 1323, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1331, 97, 97, 97, 0, 97, 97,
  9853. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1737, 97, 1364, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1373,
  9854. 97, 18, 131427, 0, 0, 0, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 647, 45, 45, 1387, 45, 45, 1391, 45, 45, 45,
  9855. 45, 45, 45, 45, 45, 45, 45, 410, 45, 45, 45, 45, 45, 1400, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1407,
  9856. 45, 45, 45, 45, 45, 941, 45, 943, 45, 45, 45, 45, 45, 45, 951, 45, 67, 1438, 67, 67, 67, 67, 67, 67, 67,
  9857. 67, 67, 67, 1447, 67, 67, 67, 67, 67, 67, 782, 67, 67, 67, 67, 67, 67, 67, 67, 67, 756, 67, 67, 67, 67,
  9858. 67, 67, 97, 1491, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1500, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97,
  9859. 97, 97, 97, 1736, 97, 45, 45, 1541, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 677, 45, 45, 67,
  9860. 1581, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 791, 792, 67, 67, 67, 67, 1598, 67, 1600,
  9861. 67, 67, 67, 67, 67, 67, 67, 67, 1472, 97, 97, 97, 1727, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9862. 97, 1513, 97, 97, 67, 67, 97, 1879, 97, 1881, 97, 0, 1884, 0, 97, 97, 97, 97, 0, 0, 97, 97, 97, 97, 97, 0,
  9863. 0, 0, 1842, 97, 97, 67, 67, 67, 67, 67, 97, 97, 97, 97, 1928, 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45,
  9864. 45, 45, 1903, 45, 45, 45, 67, 67, 67, 67, 97, 97, 97, 97, 1971, 0, 0, 97, 97, 97, 97, 0, 97, 97, 97, 97,
  9865. 97, 97, 97, 97, 97, 0, 0, 0, 45, 45, 45, 1381, 45, 45, 45, 45, 1976, 97, 97, 97, 97, 97, 45, 45, 45, 45,
  9866. 45, 45, 45, 45, 45, 45, 45, 45, 1747, 809, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 25398, 542, 13112,
  9867. 544, 97, 907, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 638, 0, 0, 0, 0, 1478, 97, 97, 97, 97, 97, 97,
  9868. 97, 97, 97, 97, 97, 1150, 97, 97, 97, 97, 67, 67, 67, 67, 1244, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9869. 67, 477, 67, 67, 67, 67, 67, 67, 1294, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97,
  9870. 97, 97, 97, 97, 97, 97, 97, 97, 1324, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 0, 1374,
  9871. 97, 97, 97, 97, 0, 1175, 0, 45, 45, 45, 45, 45, 45, 45, 45, 945, 45, 45, 45, 45, 45, 45, 45, 45, 1908, 45,
  9872. 45, 1910, 45, 67, 67, 67, 67, 67, 67, 67, 67, 1919, 67, 0, 0, 97, 97, 97, 97, 45, 2048, 67, 2049, 0, 0,
  9873. 97, 2051, 45, 45, 45, 939, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 397, 45, 45, 45, 1921, 67, 67,
  9874. 1923, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 1947, 45, 1935, 0, 0, 0,
  9875. 97, 1939, 97, 97, 1941, 97, 45, 45, 45, 45, 45, 45, 382, 389, 45, 45, 45, 45, 45, 45, 45, 45, 1810, 45,
  9876. 45, 1812, 67, 67, 67, 67, 67, 256, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 336, 97,
  9877. 97, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 131427, 0, 0, 0, 0, 362, 0, 365, 28809, 367, 139,
  9878. 45, 45, 371, 373, 45, 45, 45, 955, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 413, 45, 45, 45, 457,
  9879. 459, 67, 67, 67, 67, 67, 67, 67, 67, 473, 67, 478, 67, 67, 482, 67, 67, 485, 67, 67, 67, 67, 67, 67, 67,
  9880. 67, 67, 67, 67, 67, 67, 97, 1828, 97, 554, 556, 97, 97, 97, 97, 97, 97, 97, 97, 570, 97, 575, 97, 97, 579,
  9881. 97, 97, 582, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 330, 97, 97, 67, 746, 67, 67, 67, 67, 67,
  9882. 67, 67, 67, 67, 758, 67, 67, 67, 67, 67, 67, 67, 1575, 67, 67, 67, 67, 67, 67, 67, 67, 493, 67, 67, 67,
  9883. 67, 67, 67, 67, 97, 97, 844, 97, 97, 97, 97, 97, 97, 97, 97, 97, 856, 97, 97, 97, 0, 97, 97, 97, 97, 97,
  9884. 97, 97, 97, 1735, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 1642, 97, 1644, 97, 97, 890, 97, 97, 97, 97,
  9885. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 67, 67, 67, 67, 1065, 1066, 67, 67, 67, 67, 67, 67, 67,
  9886. 67, 67, 67, 532, 67, 67, 67, 67, 67, 67, 67, 1451, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9887. 496, 67, 67, 97, 97, 1505, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 593, 97, 97, 0, 1474, 0,
  9888. 1476, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1617, 97, 97, 1635, 0, 1637, 97, 97, 97, 97, 97, 97, 97,
  9889. 97, 97, 97, 97, 885, 97, 97, 97, 97, 67, 67, 1704, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9890. 565, 572, 97, 97, 97, 97, 97, 97, 97, 97, 1832, 0, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 97,
  9891. 45, 45, 45, 1946, 45, 45, 67, 67, 67, 67, 67, 97, 1926, 97, 1927, 97, 0, 0, 0, 97, 97, 1934, 2043, 0, 0,
  9892. 97, 97, 97, 2047, 45, 45, 67, 67, 0, 1832, 97, 97, 45, 45, 45, 981, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9893. 45, 45, 45, 1227, 45, 45, 45, 131427, 0, 0, 0, 0, 362, 0, 365, 28809, 367, 139, 45, 45, 372, 45, 45, 45,
  9894. 45, 1661, 1662, 45, 45, 45, 45, 45, 1666, 45, 45, 45, 45, 45, 1673, 45, 1675, 45, 45, 45, 45, 45, 45, 45,
  9895. 67, 1426, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1275, 67, 67, 67, 67, 67, 45, 418, 45, 45, 420, 45, 45,
  9896. 423, 45, 45, 45, 45, 45, 45, 45, 45, 959, 45, 45, 962, 45, 45, 45, 45, 458, 67, 67, 67, 67, 67, 67, 67,
  9897. 67, 67, 67, 67, 67, 67, 67, 483, 67, 67, 67, 67, 504, 67, 67, 506, 67, 67, 509, 67, 67, 67, 67, 67, 67,
  9898. 67, 528, 67, 67, 67, 67, 67, 67, 67, 67, 1287, 67, 67, 67, 67, 67, 67, 67, 555, 97, 97, 97, 97, 97, 97,
  9899. 97, 97, 97, 97, 97, 97, 97, 97, 580, 97, 97, 97, 97, 601, 97, 97, 603, 97, 97, 606, 97, 97, 97, 97, 97,
  9900. 97, 848, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1498, 97, 97, 97, 97, 97, 97, 45, 45, 714, 45, 45, 45, 45,
  9901. 45, 45, 45, 45, 45, 45, 45, 45, 45, 989, 990, 45, 67, 67, 67, 67, 67, 1011, 67, 67, 67, 67, 1015, 67, 67,
  9902. 67, 67, 67, 67, 67, 753, 67, 67, 67, 67, 67, 67, 67, 67, 467, 67, 67, 67, 67, 67, 67, 67, 45, 45, 1179,
  9903. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1003, 1004, 67, 1217, 45, 45, 45, 45, 45, 45, 45, 45,
  9904. 45, 45, 45, 45, 45, 45, 45, 728, 67, 1461, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1034,
  9905. 67, 97, 1516, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 871, 97, 67, 67, 67, 1705, 67, 67,
  9906. 67, 97, 97, 97, 97, 97, 97, 97, 97, 97, 567, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1715, 97, 97, 97, 97,
  9907. 97, 97, 97, 97, 97, 0, 0, 0, 45, 45, 1380, 45, 45, 45, 45, 45, 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97,
  9908. 1887, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 2006, 45, 45, 1907, 45, 45, 45, 45, 45, 67, 67, 67,
  9909. 67, 67, 67, 67, 67, 67, 1920, 67, 97, 0, 2035, 97, 97, 97, 97, 97, 45, 45, 45, 45, 67, 67, 67, 1428, 67,
  9910. 67, 67, 67, 67, 67, 1435, 67, 0, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 45, 146,
  9911. 45, 152, 45, 45, 165, 45, 175, 45, 180, 45, 45, 187, 190, 195, 45, 203, 254, 257, 262, 67, 270, 67, 67, 0,
  9912. 24850, 12564, 0, 0, 0, 281, 28809, 53531, 97, 97, 97, 293, 97, 299, 97, 97, 312, 97, 322, 97, 327, 97, 97,
  9913. 334, 337, 342, 97, 350, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 67, 484, 67, 67, 67, 67, 67, 67,
  9914. 67, 67, 67, 67, 67, 67, 67, 499, 97, 581, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 596, 648,
  9915. 45, 650, 45, 651, 45, 653, 45, 45, 45, 657, 45, 45, 45, 45, 45, 45, 1954, 67, 67, 67, 1958, 67, 67, 67,
  9916. 67, 67, 67, 67, 768, 67, 67, 67, 67, 67, 67, 67, 67, 769, 67, 67, 67, 67, 67, 67, 67, 680, 45, 45, 45, 45,
  9917. 45, 45, 45, 45, 688, 689, 691, 45, 45, 45, 45, 45, 983, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 947, 45,
  9918. 45, 45, 45, 952, 45, 45, 698, 699, 45, 45, 702, 703, 45, 45, 45, 45, 45, 45, 45, 711, 744, 67, 67, 67, 67,
  9919. 67, 67, 67, 67, 67, 757, 67, 67, 67, 67, 761, 67, 67, 67, 67, 765, 67, 767, 67, 67, 67, 67, 67, 67, 67,
  9920. 67, 775, 776, 778, 67, 67, 67, 67, 67, 67, 785, 786, 67, 67, 789, 790, 67, 67, 67, 67, 67, 67, 1442, 67,
  9921. 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 1775, 97, 97, 97, 67, 67, 67, 67, 67, 798, 67, 67, 67, 802,
  9922. 67, 67, 67, 67, 67, 67, 67, 67, 1465, 67, 67, 1468, 67, 67, 1471, 67, 67, 810, 67, 67, 67, 67, 67, 67, 67,
  9923. 67, 67, 821, 25398, 542, 13112, 544, 57889, 0, 0, 54074, 54074, 550, 0, 833, 97, 835, 97, 836, 97, 838,
  9924. 97, 97, 0, 0, 97, 97, 97, 2002, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 1740, 45, 45, 45, 1744, 45, 45,
  9925. 45, 97, 842, 97, 97, 97, 97, 97, 97, 97, 97, 97, 855, 97, 97, 97, 97, 0, 1717, 1718, 97, 97, 97, 97, 97,
  9926. 1722, 97, 0, 0, 859, 97, 97, 97, 97, 863, 97, 865, 97, 97, 97, 97, 97, 97, 97, 97, 604, 97, 97, 97, 97,
  9927. 97, 97, 97, 873, 874, 876, 97, 97, 97, 97, 97, 97, 883, 884, 97, 97, 887, 888, 97, 18, 131427, 0, 0, 0, 0,
  9928. 0, 0, 362, 225280, 0, 365, 0, 367, 0, 45, 45, 45, 1531, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1199,
  9929. 45, 45, 45, 45, 45, 97, 97, 908, 97, 97, 97, 97, 97, 97, 97, 97, 97, 919, 638, 0, 0, 0, 0, 2158877,
  9930. 2158877, 2158877, 2158877, 2158877, 2425117, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877,
  9931. 2597149, 2158877, 2158877, 2158877, 2158877, 2158877, 2158877, 2642205, 2158877, 2158877, 2158877,
  9932. 2158877, 2158877, 3158301, 0, 2375818, 2379914, 2158730, 2158730, 2420874, 2158730, 2449546, 2158730,
  9933. 2158730, 953, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 965, 978, 45, 45, 45, 45, 45,
  9934. 45, 985, 45, 45, 45, 45, 45, 45, 45, 45, 971, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1027, 67,
  9935. 1029, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1455, 67, 67, 67, 67, 67, 67, 67, 1077, 1078, 67, 67, 25398, 0,
  9936. 13112, 0, 54074, 0, 0, 0, 0, 0, 0, 0, 0, 366, 0, 139, 2158730, 2158730, 2158730, 2404490, 2412682, 1113,
  9937. 97, 97, 97, 97, 97, 97, 1121, 97, 1123, 97, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9938. 45, 45, 45, 45, 1540, 1155, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 615, 1168, 97, 97,
  9939. 1171, 1172, 97, 97, 0, 921, 0, 1175, 0, 0, 0, 0, 45, 45, 45, 45, 45, 1533, 45, 45, 45, 45, 45, 45, 45, 45,
  9940. 45, 1663, 45, 45, 45, 45, 45, 45, 45, 45, 45, 183, 45, 45, 45, 45, 201, 45, 45, 45, 1219, 45, 45, 45, 45,
  9941. 45, 45, 45, 1226, 45, 45, 45, 45, 45, 168, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 427, 45, 45, 45, 45,
  9942. 45, 45, 45, 1231, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1242, 67,
  9943. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1046, 67, 67, 1254, 67, 1256, 67, 67, 67, 67, 67, 67,
  9944. 67, 67, 67, 67, 67, 67, 806, 807, 67, 67, 97, 1336, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9945. 97, 1111, 97, 97, 97, 97, 97, 1351, 97, 97, 97, 1354, 97, 97, 97, 1359, 97, 97, 97, 0, 97, 97, 97, 97,
  9946. 1640, 97, 97, 97, 97, 97, 97, 97, 897, 97, 97, 97, 902, 97, 97, 97, 97, 97, 97, 97, 97, 1366, 97, 97, 97,
  9947. 97, 97, 97, 97, 1371, 97, 97, 97, 0, 97, 97, 97, 1730, 97, 97, 97, 97, 97, 97, 97, 97, 915, 97, 97, 97,
  9948. 97, 0, 360, 0, 67, 67, 67, 1440, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1017, 67, 1019, 67, 67,
  9949. 67, 67, 67, 1453, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1459, 97, 97, 97, 1493, 97, 97, 97, 97, 97, 97,
  9950. 97, 97, 97, 97, 97, 97, 97, 1525, 97, 97, 97, 97, 97, 97, 1507, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  9951. 1514, 67, 67, 67, 67, 1584, 67, 67, 67, 67, 67, 1590, 67, 67, 67, 67, 67, 67, 67, 783, 67, 67, 67, 788,
  9952. 67, 67, 67, 67, 67, 67, 67, 67, 67, 1599, 1601, 67, 67, 67, 1604, 67, 1606, 1607, 67, 1472, 0, 1474, 0,
  9953. 1476, 0, 97, 97, 97, 97, 97, 97, 1614, 97, 97, 97, 97, 45, 45, 1850, 45, 45, 45, 45, 1855, 45, 45, 45, 45,
  9954. 45, 1222, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1229, 97, 1618, 97, 97, 97, 97, 97, 97, 97, 1625, 97, 97,
  9955. 97, 97, 97, 0, 1175, 0, 45, 45, 45, 45, 45, 45, 45, 45, 447, 45, 45, 45, 45, 45, 67, 67, 1633, 97, 97, 0,
  9956. 97, 97, 97, 97, 97, 97, 97, 97, 1643, 1645, 97, 97, 0, 0, 97, 97, 1784, 97, 97, 97, 0, 0, 97, 97, 0, 97,
  9957. 1894, 1895, 97, 1897, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 656, 45, 45, 45, 45, 45, 45, 97, 1648, 97,
  9958. 1650, 1651, 97, 0, 45, 45, 45, 1654, 45, 45, 45, 45, 45, 169, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 658,
  9959. 45, 45, 45, 45, 664, 45, 45, 1659, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1187, 45, 45, 1669,
  9960. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 1005, 67, 67, 1681, 67, 67, 67, 67, 67, 67,
  9961. 67, 1686, 67, 67, 67, 67, 67, 67, 67, 784, 67, 67, 67, 67, 67, 67, 67, 67, 1055, 67, 67, 67, 67, 1060, 67,
  9962. 67, 97, 97, 1713, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 0, 1378, 45, 45, 45, 45, 45, 45, 45,
  9963. 408, 45, 45, 45, 45, 45, 45, 45, 45, 1547, 45, 1549, 45, 45, 45, 45, 45, 97, 97, 1780, 0, 97, 97, 97, 97,
  9964. 97, 97, 0, 0, 97, 97, 0, 97, 97, 97, 45, 45, 2027, 2028, 45, 45, 67, 67, 2031, 2032, 67, 45, 45, 1804, 45,
  9965. 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 1917, 67, 67, 67, 67, 67, 67, 67, 1819, 67, 67, 67,
  9966. 67, 67, 67, 67, 67, 97, 97, 97, 1708, 97, 97, 97, 97, 97, 45, 45, 1862, 67, 67, 67, 67, 67, 67, 67, 67,
  9967. 67, 67, 67, 67, 67, 497, 67, 67, 67, 1877, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 0, 0, 97, 97, 97,
  9968. 97, 97, 1839, 0, 0, 97, 97, 97, 97, 1936, 0, 0, 97, 97, 97, 97, 97, 97, 1943, 1944, 1945, 45, 45, 45, 45,
  9969. 670, 45, 45, 45, 45, 674, 45, 45, 45, 45, 678, 45, 1948, 45, 1950, 45, 45, 45, 45, 1955, 1956, 1957, 67,
  9970. 67, 67, 1960, 67, 1962, 67, 67, 67, 67, 1967, 1968, 1969, 97, 0, 0, 0, 97, 97, 1974, 97, 0, 1936, 0, 97,
  9971. 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 1906, 0, 1977, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45,
  9972. 45, 45, 45, 45, 45, 1746, 45, 45, 45, 45, 2011, 67, 67, 2013, 67, 67, 67, 2017, 97, 97, 0, 0, 2021, 97,
  9973. 8192, 97, 97, 2025, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1916, 67, 67, 67, 67, 0, 94242, 0, 0, 0,
  9974. 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 140, 45, 45, 45, 1180, 45, 45, 45, 45, 1184, 45, 45, 45,
  9975. 45, 45, 45, 45, 387, 45, 392, 45, 45, 396, 45, 45, 399, 45, 45, 67, 207, 67, 67, 67, 67, 67, 67, 236, 67,
  9976. 67, 67, 67, 67, 67, 67, 800, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1603, 67, 67, 67, 67, 67, 0, 97, 97, 287,
  9977. 97, 97, 97, 97, 97, 97, 316, 97, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 1656, 1657, 45, 376,
  9978. 45, 45, 45, 45, 45, 388, 45, 45, 45, 45, 45, 45, 45, 45, 1406, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67,
  9979. 462, 67, 67, 67, 67, 67, 474, 67, 67, 67, 67, 67, 67, 67, 817, 67, 67, 67, 67, 25398, 542, 13112, 544, 97,
  9980. 97, 97, 97, 559, 97, 97, 97, 97, 97, 571, 97, 97, 97, 97, 97, 97, 896, 97, 97, 97, 900, 97, 97, 97, 97,
  9981. 97, 97, 912, 914, 97, 97, 97, 97, 97, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 391, 45, 45, 45, 45, 45,
  9982. 45, 45, 45, 713, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 662, 45, 1140, 97, 97, 97, 97,
  9983. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 636, 67, 67, 1283, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  9984. 67, 67, 513, 67, 67, 1363, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 889, 97, 97, 97,
  9985. 1714, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 926, 45, 45, 45, 45, 45, 45, 45, 45, 672, 45, 45, 45,
  9986. 45, 45, 45, 45, 45, 686, 45, 45, 45, 45, 45, 45, 45, 45, 944, 45, 45, 45, 45, 45, 45, 45, 45, 1676, 45,
  9987. 45, 45, 45, 45, 45, 67, 97, 97, 97, 1833, 0, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 97, 45, 45,
  9988. 45, 45, 1902, 45, 45, 45, 45, 45, 957, 45, 45, 45, 45, 961, 45, 963, 45, 45, 45, 67, 97, 2034, 0, 97, 97,
  9989. 97, 97, 97, 2040, 45, 45, 45, 2042, 67, 67, 67, 67, 67, 67, 1574, 67, 67, 67, 67, 67, 1578, 67, 67, 67,
  9990. 67, 67, 67, 799, 67, 67, 67, 804, 67, 67, 67, 67, 67, 67, 67, 1298, 0, 0, 0, 1304, 0, 0, 0, 1310, 132,
  9991. 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 45, 45, 45, 1414, 45, 45, 45, 45, 45, 45,
  9992. 45, 45, 45, 45, 428, 45, 45, 45, 45, 45, 57889, 0, 0, 54074, 54074, 550, 831, 97, 97, 97, 97, 97, 97, 97,
  9993. 97, 97, 568, 97, 97, 97, 97, 578, 97, 45, 45, 968, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  9994. 1228, 45, 45, 67, 67, 67, 67, 67, 25398, 1082, 13112, 1086, 54074, 1090, 0, 0, 0, 0, 0, 0, 364, 0, 0, 0,
  9995. 139, 2158592, 2158592, 2158592, 2404352, 2412544, 67, 67, 67, 67, 1464, 67, 67, 67, 67, 67, 67, 67, 67,
  9996. 67, 67, 67, 510, 67, 67, 67, 67, 97, 97, 97, 97, 1519, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 918,
  9997. 97, 0, 0, 0, 0, 1528, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 976, 45, 1554, 45, 45, 45,
  9998. 45, 45, 45, 45, 45, 1562, 45, 45, 1565, 45, 45, 45, 45, 683, 45, 45, 45, 687, 45, 45, 692, 45, 45, 45, 45,
  9999. 45, 1953, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1014, 67, 67, 67, 67, 67, 67, 1568, 67, 67, 67, 67, 67,
  10000. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 0, 67, 67, 67, 67, 67, 1585, 67, 67, 67, 67, 67, 67, 67, 67,
  10001. 67, 1594, 97, 97, 1649, 97, 97, 97, 0, 45, 45, 1653, 45, 45, 45, 45, 45, 45, 383, 45, 45, 45, 45, 45, 45,
  10002. 45, 45, 45, 986, 45, 45, 45, 45, 45, 45, 45, 45, 1670, 45, 1672, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10003. 67, 736, 67, 67, 67, 67, 67, 741, 67, 67, 67, 1680, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10004. 67, 1074, 67, 67, 67, 1692, 67, 67, 67, 67, 67, 67, 67, 1697, 67, 1699, 67, 67, 67, 67, 67, 67, 1012, 67,
  10005. 67, 67, 67, 67, 67, 67, 67, 67, 468, 475, 67, 67, 67, 67, 67, 67, 1769, 67, 67, 67, 67, 67, 67, 67, 97,
  10006. 97, 97, 97, 97, 97, 97, 624, 97, 97, 97, 97, 97, 97, 634, 97, 97, 1792, 97, 97, 97, 97, 97, 97, 97, 45,
  10007. 45, 45, 45, 45, 45, 45, 958, 45, 45, 45, 45, 45, 45, 964, 45, 150, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10008. 45, 45, 45, 45, 45, 977, 204, 45, 67, 67, 67, 217, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 787, 67, 67,
  10009. 67, 67, 67, 67, 67, 67, 67, 67, 271, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 97, 97, 351,
  10010. 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 45, 45, 938, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10011. 45, 1398, 45, 45, 45, 153, 45, 161, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 660, 661, 45, 45, 205,
  10012. 45, 67, 67, 67, 67, 220, 67, 228, 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 280, 94, 0, 0, 67, 67, 67,
  10013. 67, 67, 272, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 97, 97, 352, 97, 0, 40976, 0, 18, 18,
  10014. 24, 24, 27, 27, 27, 45, 439, 45, 45, 45, 45, 45, 445, 45, 45, 45, 452, 45, 45, 67, 67, 212, 216, 67, 67,
  10015. 67, 67, 67, 241, 67, 246, 67, 252, 67, 67, 486, 67, 67, 67, 67, 67, 67, 67, 494, 67, 67, 67, 67, 67, 67,
  10016. 67, 1245, 67, 67, 67, 67, 67, 67, 67, 67, 1013, 67, 67, 1016, 67, 67, 67, 67, 67, 521, 67, 67, 525, 67,
  10017. 67, 67, 67, 67, 531, 67, 67, 67, 538, 67, 0, 0, 2046, 97, 97, 97, 45, 45, 67, 67, 0, 0, 97, 97, 45, 45,
  10018. 45, 1192, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1418, 45, 45, 1421, 97, 97, 583, 97, 97, 97, 97,
  10019. 97, 97, 97, 591, 97, 97, 97, 97, 97, 97, 913, 97, 97, 97, 97, 97, 97, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45,
  10020. 1384, 97, 618, 97, 97, 622, 97, 97, 97, 97, 97, 628, 97, 97, 97, 635, 97, 18, 131427, 0, 0, 0, 639, 0,
  10021. 132, 362, 0, 0, 365, 29315, 367, 0, 921, 29315, 0, 0, 0, 0, 45, 45, 45, 45, 932, 45, 45, 45, 45, 45, 1544,
  10022. 45, 45, 45, 45, 45, 1550, 45, 45, 45, 45, 45, 1194, 45, 1196, 45, 45, 45, 45, 45, 45, 45, 45, 999, 45, 45,
  10023. 45, 45, 45, 67, 67, 45, 45, 667, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1408, 45, 45, 45,
  10024. 696, 45, 45, 45, 701, 45, 45, 45, 45, 45, 45, 45, 45, 710, 45, 45, 45, 1220, 45, 45, 45, 45, 45, 45, 45,
  10025. 45, 45, 45, 45, 45, 194, 45, 45, 45, 729, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10026. 67, 67, 67, 67, 67, 67, 67, 797, 67, 67, 67, 67, 67, 67, 805, 67, 67, 67, 67, 67, 67, 67, 1587, 67, 1589,
  10027. 67, 67, 67, 67, 67, 67, 67, 67, 1763, 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 2162968, 0, 0, 67, 67,
  10028. 67, 67, 67, 814, 816, 67, 67, 67, 67, 67, 25398, 542, 13112, 544, 67, 67, 1008, 67, 67, 67, 67, 67, 67,
  10029. 67, 67, 67, 67, 67, 1020, 67, 0, 97, 45, 67, 0, 97, 45, 67, 0, 97, 45, 67, 97, 0, 0, 97, 97, 97, 97, 97,
  10030. 45, 45, 45, 45, 67, 67, 67, 67, 1429, 67, 1430, 67, 67, 67, 67, 67, 1062, 67, 67, 67, 67, 67, 67, 67, 67,
  10031. 67, 67, 67, 67, 67, 67, 67, 518, 1076, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 0, 0, 0, 0, 0, 0,
  10032. 28809, 0, 139, 45, 45, 45, 45, 45, 97, 97, 97, 97, 1102, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1124,
  10033. 97, 1126, 97, 97, 1114, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1112, 97, 97, 1156,
  10034. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 594, 97, 97, 97, 97, 1170, 97, 97, 97, 97, 0, 921, 0,
  10035. 0, 0, 0, 0, 0, 45, 45, 45, 45, 1532, 45, 45, 45, 45, 1536, 45, 45, 45, 45, 45, 172, 45, 45, 45, 45, 45,
  10036. 45, 45, 45, 45, 45, 706, 45, 45, 709, 45, 45, 1177, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10037. 45, 45, 1202, 45, 1204, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1215, 45, 45, 45, 1232, 45, 45,
  10038. 45, 45, 45, 45, 45, 67, 1237, 67, 67, 67, 67, 67, 67, 1053, 1054, 67, 67, 67, 67, 67, 67, 1061, 67, 67,
  10039. 1282, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1289, 67, 67, 67, 1292, 97, 97, 97, 97, 1339, 97, 97, 97, 97,
  10040. 97, 97, 1344, 97, 97, 97, 97, 45, 1849, 45, 1851, 45, 45, 45, 45, 45, 45, 45, 45, 721, 45, 45, 45, 45, 45,
  10041. 726, 45, 1385, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1188, 45, 45, 1401, 1402, 45,
  10042. 45, 45, 45, 1405, 45, 45, 45, 45, 45, 45, 45, 45, 1752, 45, 45, 45, 45, 45, 67, 67, 1410, 45, 45, 45,
  10043. 1413, 45, 1415, 45, 45, 45, 45, 45, 45, 1419, 45, 45, 45, 45, 1806, 45, 45, 45, 45, 45, 45, 67, 67, 67,
  10044. 67, 67, 67, 67, 97, 97, 2019, 0, 97, 67, 67, 67, 1452, 67, 67, 67, 67, 67, 67, 67, 67, 1457, 67, 67, 67,
  10045. 67, 67, 67, 1259, 67, 67, 67, 67, 67, 67, 1264, 67, 67, 1460, 67, 1462, 67, 67, 67, 67, 67, 67, 1466, 67,
  10046. 67, 67, 67, 67, 67, 67, 67, 1588, 67, 67, 67, 67, 67, 67, 67, 0, 1300, 0, 0, 0, 1306, 0, 0, 0, 97, 97, 97,
  10047. 1506, 97, 97, 97, 97, 97, 97, 97, 97, 1512, 97, 97, 97, 0, 1728, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10048. 97, 901, 97, 97, 97, 97, 1515, 97, 1517, 97, 97, 97, 97, 97, 97, 1521, 97, 97, 97, 97, 97, 97, 0, 45,
  10049. 1652, 45, 45, 45, 1655, 45, 45, 45, 45, 45, 1542, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10050. 1552, 1553, 45, 45, 45, 1556, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 693, 45, 45, 45, 67, 67,
  10051. 67, 67, 1572, 67, 67, 67, 67, 1576, 67, 67, 67, 67, 67, 67, 67, 67, 1602, 67, 67, 1605, 67, 67, 67, 0, 67,
  10052. 1582, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1580, 67, 67, 1596, 67, 67, 67, 67, 67, 67,
  10053. 67, 67, 67, 67, 67, 67, 67, 0, 542, 0, 544, 67, 67, 67, 67, 1759, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10054. 67, 533, 67, 67, 67, 67, 67, 67, 67, 1770, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 1777, 97, 97, 97,
  10055. 1793, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 998, 45, 45, 1001, 1002, 45, 45, 67, 67, 45, 1861,
  10056. 45, 67, 67, 67, 67, 67, 67, 67, 67, 1871, 67, 1873, 1874, 67, 0, 97, 45, 67, 0, 97, 45, 67, 16384, 97, 45,
  10057. 67, 97, 0, 0, 0, 1473, 0, 1082, 0, 0, 0, 1475, 0, 1086, 0, 0, 0, 1477, 1876, 67, 97, 97, 97, 97, 97, 1883,
  10058. 0, 1885, 97, 97, 97, 1889, 0, 0, 0, 286, 0, 0, 0, 286, 0, 2367488, 2158592, 2158592, 2158592, 2158592,
  10059. 2158592, 2158592, 0, 40976, 0, 18, 18, 24, 24, 126, 126, 126, 2053, 0, 2055, 45, 67, 0, 97, 45, 67, 0, 97,
  10060. 45, 67, 97, 0, 0, 97, 97, 97, 2039, 97, 45, 45, 45, 45, 67, 67, 67, 67, 67, 226, 67, 67, 67, 67, 67, 67,
  10061. 67, 67, 1246, 67, 67, 1249, 1250, 67, 67, 67, 132, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809,
  10062. 45, 45, 141, 45, 45, 45, 1403, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1186, 45, 45, 1189, 45, 45,
  10063. 155, 45, 45, 45, 45, 45, 45, 45, 45, 45, 191, 45, 45, 45, 45, 700, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10064. 45, 1753, 45, 45, 45, 67, 67, 45, 45, 67, 208, 67, 67, 67, 222, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1764,
  10065. 67, 67, 67, 67, 67, 67, 67, 258, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97,
  10066. 288, 97, 97, 97, 302, 97, 97, 97, 97, 97, 97, 97, 97, 97, 627, 97, 97, 97, 97, 97, 97, 338, 97, 97, 97,
  10067. 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 131427, 0, 0, 0, 0, 362, 0, 365, 28809, 367, 139, 45,
  10068. 370, 45, 45, 45, 45, 716, 45, 45, 45, 45, 45, 722, 45, 45, 45, 45, 45, 45, 1912, 67, 67, 67, 67, 67, 67,
  10069. 67, 67, 67, 819, 67, 67, 25398, 542, 13112, 544, 45, 403, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10070. 45, 45, 1409, 45, 67, 67, 67, 67, 489, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 771, 67, 67, 67, 67,
  10071. 520, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 534, 67, 67, 67, 67, 67, 67, 1271, 67, 67, 67, 1274, 67,
  10072. 67, 67, 1279, 67, 67, 24850, 24850, 12564, 12564, 0, 57889, 0, 0, 0, 53531, 53531, 367, 286, 97, 553, 97,
  10073. 97, 97, 97, 586, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1138, 97, 97, 97, 97, 617, 97, 97, 97, 97,
  10074. 97, 97, 97, 97, 97, 97, 97, 631, 97, 97, 97, 0, 1834, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97,
  10075. 353, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 45, 45, 668, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10076. 45, 724, 45, 45, 45, 45, 45, 682, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 949, 45, 45, 45, 67,
  10077. 67, 747, 748, 67, 67, 67, 67, 755, 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 1302, 0, 0, 0, 1308, 0, 67, 794,
  10078. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1701, 67, 97, 97, 97, 845, 846, 97, 97, 97, 97,
  10079. 853, 97, 97, 97, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 97, 97, 892, 97, 97, 97, 97, 97, 97,
  10080. 97, 97, 97, 97, 97, 97, 97, 610, 97, 97, 45, 992, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67,
  10081. 67, 1239, 67, 67, 67, 1063, 67, 67, 67, 67, 67, 1068, 67, 67, 67, 67, 67, 67, 67, 0, 0, 1301, 0, 0, 0,
  10082. 1307, 0, 0, 97, 1141, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1152, 97, 97, 0, 0, 97, 97, 2001, 0, 97,
  10083. 2003, 97, 97, 97, 45, 45, 45, 1739, 45, 45, 45, 1742, 45, 45, 45, 45, 45, 97, 97, 97, 97, 1157, 97, 97,
  10084. 97, 97, 97, 1162, 97, 97, 97, 97, 97, 97, 1145, 97, 97, 97, 97, 97, 1151, 97, 97, 97, 1253, 67, 67, 67,
  10085. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 539, 45, 1423, 45, 45, 67, 67, 67, 67, 67, 67, 67, 1431,
  10086. 67, 67, 67, 67, 67, 67, 67, 1695, 67, 67, 67, 67, 67, 1700, 67, 1702, 67, 67, 1439, 67, 67, 67, 67, 67,
  10087. 67, 67, 67, 67, 67, 67, 67, 67, 514, 67, 67, 97, 97, 1492, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10088. 97, 611, 97, 97, 1703, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 97, 97, 97, 852, 97, 97, 97, 97,
  10089. 97, 97, 45, 1949, 45, 1951, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 1961, 67, 0, 97, 45, 67, 0, 97, 2060,
  10090. 2061, 0, 2062, 45, 67, 97, 0, 0, 2036, 97, 97, 97, 97, 45, 45, 45, 45, 67, 67, 67, 67, 67, 223, 67, 67,
  10091. 237, 67, 67, 67, 67, 67, 67, 67, 1272, 67, 67, 67, 67, 67, 67, 67, 67, 507, 67, 67, 67, 67, 67, 67, 67,
  10092. 1963, 67, 67, 67, 97, 97, 97, 97, 0, 1972, 0, 97, 97, 97, 1975, 0, 921, 29315, 0, 0, 0, 0, 45, 45, 45,
  10093. 931, 45, 45, 45, 45, 45, 407, 45, 45, 45, 45, 45, 45, 45, 45, 45, 417, 45, 45, 1989, 67, 67, 67, 67, 67,
  10094. 67, 67, 67, 67, 67, 67, 1996, 97, 18, 131427, 0, 0, 360, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 0, 921,
  10095. 29315, 0, 0, 0, 0, 45, 45, 930, 45, 45, 45, 45, 45, 45, 444, 45, 45, 45, 45, 45, 45, 45, 67, 67, 97, 97,
  10096. 1998, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 1985, 45, 1986, 45, 45, 45, 156, 45,
  10097. 45, 170, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 675, 45, 45, 45, 45, 679, 131427, 0, 358, 0, 0, 362, 0,
  10098. 365, 28809, 367, 139, 45, 45, 45, 45, 45, 381, 45, 45, 45, 45, 45, 45, 45, 45, 45, 400, 45, 45, 419, 45,
  10099. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 436, 67, 67, 67, 67, 67, 505, 67, 67, 67, 67, 67, 67, 67, 67,
  10100. 67, 67, 820, 67, 25398, 542, 13112, 544, 67, 67, 522, 67, 67, 67, 67, 67, 529, 67, 67, 67, 67, 67, 67, 67,
  10101. 0, 1299, 0, 0, 0, 1305, 0, 0, 0, 97, 97, 619, 97, 97, 97, 97, 97, 626, 97, 97, 97, 97, 97, 97, 97, 1105,
  10102. 97, 97, 97, 97, 1109, 97, 97, 97, 67, 67, 67, 67, 749, 67, 67, 67, 67, 67, 67, 67, 67, 67, 760, 67, 0, 97,
  10103. 45, 67, 2058, 97, 45, 67, 0, 97, 45, 67, 97, 0, 0, 97, 97, 97, 97, 97, 45, 45, 45, 2041, 67, 67, 67, 67,
  10104. 67, 780, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 516, 67, 67, 97, 97, 97, 878, 97, 97, 97, 97,
  10105. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1629, 97, 0, 45, 979, 45, 45, 45, 45, 984, 45, 45, 45, 45, 45, 45, 45,
  10106. 45, 45, 1198, 45, 45, 45, 45, 45, 45, 67, 1023, 67, 67, 67, 67, 1028, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10107. 470, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 0, 1094, 0, 0, 0, 1092,
  10108. 1315, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1486, 97, 1489, 97, 97, 97, 1117, 97, 97, 97, 97,
  10109. 1122, 97, 97, 97, 97, 97, 97, 97, 1146, 97, 97, 97, 97, 97, 97, 97, 97, 881, 97, 97, 97, 886, 97, 97, 97,
  10110. 1311, 0, 0, 0, 0, 0, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 1615, 97, 97, 97, 97, 97, 1619, 97, 97, 97, 97,
  10111. 97, 97, 97, 97, 97, 97, 97, 97, 1631, 97, 97, 1847, 97, 45, 45, 45, 45, 1852, 45, 45, 45, 45, 45, 45, 45,
  10112. 1235, 45, 45, 45, 67, 67, 67, 67, 67, 1868, 67, 67, 67, 1872, 67, 67, 67, 67, 67, 97, 97, 97, 97, 1882, 0,
  10113. 0, 0, 97, 97, 97, 97, 0, 1891, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 1929, 0, 0, 97, 97, 97, 97, 97, 97,
  10114. 45, 1900, 45, 1901, 45, 45, 45, 1905, 45, 67, 2054, 97, 45, 67, 0, 97, 45, 67, 0, 97, 45, 67, 97, 0, 0,
  10115. 97, 2037, 2038, 97, 97, 45, 45, 45, 45, 67, 67, 67, 67, 1867, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1774,
  10116. 97, 97, 97, 97, 97, 97, 0, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 142, 45, 45,
  10117. 45, 1412, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 432, 45, 45, 45, 45, 45, 157, 45, 45, 171, 45,
  10118. 45, 45, 182, 45, 45, 45, 45, 200, 45, 45, 45, 1543, 45, 45, 45, 45, 45, 45, 45, 45, 1551, 45, 45, 45, 45,
  10119. 1181, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1211, 45, 45, 45, 1214, 45, 45, 45, 67, 209, 67, 67, 67,
  10120. 224, 67, 67, 238, 67, 67, 67, 249, 67, 0, 97, 2056, 2057, 0, 2059, 45, 67, 0, 97, 45, 67, 97, 0, 0, 1937,
  10121. 97, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 1741, 45, 45, 45, 45, 45, 45, 67, 67, 67, 267, 67, 67, 67,
  10122. 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 289, 97, 97, 97, 304, 97, 97, 318, 97, 97, 97, 329, 97,
  10123. 97, 0, 0, 97, 1783, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97, 97, 97, 45, 2026, 45, 45, 45, 45, 67, 2030, 67,
  10124. 67, 67, 67, 67, 67, 1041, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1044, 67, 67, 67, 67, 67, 67, 97, 97, 347,
  10125. 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 45, 666, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10126. 45, 45, 45, 1420, 45, 57889, 0, 0, 54074, 54074, 550, 0, 97, 97, 97, 97, 97, 97, 97, 97, 840, 67, 1007,
  10127. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 759, 67, 67, 67, 67, 67, 67, 67, 1052, 67, 67, 67,
  10128. 67, 67, 67, 67, 67, 67, 67, 1031, 67, 67, 67, 67, 67, 97, 97, 97, 1101, 97, 97, 97, 97, 97, 97, 97, 97,
  10129. 97, 97, 97, 97, 592, 97, 97, 97, 1190, 45, 45, 45, 45, 45, 1195, 45, 1197, 45, 45, 45, 45, 1201, 45, 45,
  10130. 45, 45, 1952, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 250, 67, 67, 67, 1255, 67, 1257, 67,
  10131. 67, 67, 67, 1261, 67, 67, 67, 67, 67, 67, 67, 67, 1685, 67, 67, 67, 67, 67, 67, 67, 0, 24851, 12565, 0, 0,
  10132. 0, 0, 28809, 53532, 67, 67, 1267, 67, 67, 67, 67, 67, 67, 1273, 67, 67, 67, 67, 67, 67, 67, 67, 1696, 67,
  10133. 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 2162688, 0, 0, 1281, 67, 67, 67, 67, 1285, 67, 67, 67, 67, 67,
  10134. 67, 67, 67, 67, 67, 1070, 67, 67, 67, 67, 67, 1335, 97, 1337, 97, 97, 97, 97, 1341, 97, 97, 97, 97, 97,
  10135. 97, 97, 97, 882, 97, 97, 97, 97, 97, 97, 97, 1347, 97, 97, 97, 97, 97, 97, 1353, 97, 97, 97, 97, 97, 97,
  10136. 1361, 97, 18, 131427, 0, 638, 0, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 0, 544, 0, 550, 0, 2158592, 2158592,
  10137. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2473984, 2158592, 2158592, 2158592, 2990080,
  10138. 2158592, 2158592, 2207744, 2207744, 2482176, 2207744, 2207744, 2207744, 2207744, 2207744, 2207744,
  10139. 2207744, 0, 0, 0, 0, 0, 0, 2162688, 0, 53530, 97, 97, 97, 1365, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10140. 97, 97, 608, 97, 97, 97, 45, 45, 1424, 45, 1425, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1058, 67, 67,
  10141. 67, 67, 45, 1555, 45, 45, 1557, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 707, 45, 45, 45, 45, 67, 67,
  10142. 1570, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 773, 67, 67, 1595, 67, 67, 1597, 67, 67, 67, 67,
  10143. 67, 67, 67, 67, 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139, 2158592, 2158592, 2158592, 2404352,
  10144. 2412544, 97, 97, 97, 1636, 97, 97, 97, 1639, 97, 97, 1641, 97, 97, 97, 97, 97, 97, 1173, 0, 921, 0, 0, 0,
  10145. 0, 0, 0, 45, 67, 67, 67, 1693, 67, 67, 67, 67, 67, 67, 67, 1698, 67, 67, 67, 67, 67, 67, 67, 1773, 67, 97,
  10146. 97, 97, 97, 97, 97, 97, 625, 97, 97, 97, 97, 97, 97, 97, 97, 850, 97, 97, 97, 97, 97, 97, 97, 97, 880, 97,
  10147. 97, 97, 97, 97, 97, 97, 97, 1106, 97, 97, 97, 97, 97, 97, 97, 1860, 45, 45, 67, 67, 1865, 67, 67, 67, 67,
  10148. 1870, 67, 67, 67, 67, 1875, 67, 67, 97, 97, 1880, 97, 97, 0, 0, 0, 97, 97, 1888, 97, 0, 0, 0, 1938, 97,
  10149. 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 1854, 45, 45, 45, 45, 45, 45, 45, 1909, 45, 45, 1911, 67, 67, 67,
  10150. 67, 67, 67, 67, 67, 67, 67, 1248, 67, 67, 67, 67, 67, 67, 1922, 67, 67, 1924, 97, 97, 97, 97, 97, 0, 0, 0,
  10151. 97, 97, 97, 97, 97, 1898, 45, 45, 45, 45, 45, 45, 1904, 45, 45, 67, 67, 67, 67, 97, 97, 97, 97, 0, 0,
  10152. 16384, 97, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 1724, 2008, 2009, 45, 45, 67, 67, 67,
  10153. 2014, 2015, 67, 67, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10154. 45, 45, 45, 45, 2022, 0, 2023, 97, 97, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 1869, 67, 67, 67,
  10155. 67, 67, 67, 0, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 45, 147, 151, 154, 45, 162,
  10156. 45, 45, 176, 178, 181, 45, 45, 45, 192, 196, 45, 45, 45, 45, 2012, 67, 67, 67, 67, 67, 67, 2018, 97, 0, 0,
  10157. 97, 1978, 97, 97, 97, 1982, 45, 45, 45, 45, 45, 45, 45, 45, 45, 972, 973, 45, 45, 45, 45, 45, 67, 259,
  10158. 263, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 97, 294, 298, 301, 97, 309, 97,
  10159. 97, 323, 325, 328, 97, 97, 97, 97, 97, 560, 97, 97, 97, 569, 97, 97, 97, 97, 97, 97, 306, 97, 97, 97, 97,
  10160. 97, 97, 97, 97, 97, 1624, 97, 97, 97, 97, 97, 97, 97, 0, 921, 0, 1175, 0, 0, 0, 0, 45, 339, 343, 97, 97,
  10161. 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 67, 67, 503, 67, 67, 67, 67, 67, 67, 67, 67, 67, 512, 67,
  10162. 67, 519, 97, 97, 600, 97, 97, 97, 97, 97, 97, 97, 97, 97, 609, 97, 97, 616, 45, 649, 45, 45, 45, 45, 45,
  10163. 654, 45, 45, 45, 45, 45, 45, 45, 45, 1393, 45, 45, 45, 45, 45, 45, 45, 45, 1209, 45, 45, 45, 45, 45, 45,
  10164. 45, 67, 763, 67, 67, 67, 67, 67, 67, 67, 67, 770, 67, 67, 67, 774, 67, 0, 2045, 97, 97, 97, 97, 45, 45,
  10165. 67, 67, 0, 0, 97, 97, 45, 45, 45, 994, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 213, 67, 219, 67,
  10166. 67, 232, 67, 242, 67, 247, 67, 67, 67, 779, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1018,
  10167. 67, 67, 67, 67, 811, 67, 67, 67, 67, 67, 67, 67, 67, 67, 25398, 542, 13112, 544, 57889, 0, 0, 54074,
  10168. 54074, 550, 0, 97, 834, 97, 97, 97, 97, 97, 839, 97, 18, 131427, 0, 638, 0, 0, 0, 0, 362, 0, 0, 365,
  10169. 29315, 367, 645, 97, 97, 861, 97, 97, 97, 97, 97, 97, 97, 97, 868, 97, 97, 97, 872, 97, 97, 877, 97, 97,
  10170. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 613, 97, 97, 97, 97, 97, 909, 97, 97, 97, 97, 97, 97, 97, 97,
  10171. 97, 0, 0, 0, 18, 18, 24, 24, 27, 27, 27, 1036, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10172. 1047, 67, 67, 67, 1050, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1033, 67, 67, 67, 97, 97, 1130,
  10173. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 638, 0, 0, 67, 67, 67, 1295, 67, 67, 67, 0, 0, 0, 0,
  10174. 0, 0, 0, 0, 0, 97, 1317, 97, 97, 97, 97, 97, 97, 1375, 97, 97, 97, 0, 0, 0, 45, 1379, 45, 45, 45, 45, 45,
  10175. 45, 422, 45, 45, 45, 429, 431, 45, 45, 45, 45, 0, 1090, 0, 0, 97, 1479, 97, 97, 97, 97, 97, 97, 97, 97,
  10176. 97, 97, 1357, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1716, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1723, 0, 921,
  10177. 29315, 0, 0, 0, 0, 45, 929, 45, 45, 45, 45, 45, 45, 45, 1392, 45, 45, 45, 45, 45, 45, 45, 45, 45, 960, 45,
  10178. 45, 45, 45, 45, 45, 97, 97, 97, 1738, 45, 45, 45, 45, 45, 45, 45, 1743, 45, 45, 45, 45, 166, 45, 45, 45,
  10179. 45, 184, 186, 45, 45, 197, 45, 45, 97, 1779, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97, 18,
  10180. 131427, 0, 638, 0, 0, 0, 0, 362, 0, 640, 365, 29315, 367, 0, 921, 29315, 0, 0, 0, 0, 45, 45, 45, 45, 45,
  10181. 45, 45, 45, 45, 45, 1537, 45, 45, 45, 45, 45, 1803, 45, 45, 45, 45, 45, 1809, 45, 45, 45, 67, 67, 67,
  10182. 1814, 67, 67, 67, 67, 67, 67, 1821, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97,
  10183. 0, 0, 67, 67, 67, 1818, 67, 67, 67, 67, 67, 1824, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97,
  10184. 1890, 0, 1829, 97, 97, 0, 0, 97, 97, 1836, 97, 97, 0, 0, 0, 97, 97, 97, 97, 1981, 45, 45, 45, 45, 45, 45,
  10185. 45, 45, 45, 1987, 1845, 97, 97, 97, 45, 45, 45, 45, 45, 1853, 45, 45, 45, 1857, 45, 45, 45, 67, 1864, 67,
  10186. 1866, 67, 67, 67, 67, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 97, 97, 1710, 1711, 67, 67, 97, 97, 97, 97,
  10187. 97, 0, 0, 0, 1886, 97, 97, 97, 0, 0, 97, 97, 97, 97, 1838, 0, 0, 0, 97, 1843, 97, 0, 1893, 97, 97, 97, 97,
  10188. 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1745, 45, 45, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0,
  10189. 1931, 97, 97, 97, 97, 97, 588, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 629, 97, 97, 97, 97, 97, 67, 2044,
  10190. 0, 97, 97, 97, 97, 45, 45, 67, 67, 0, 0, 97, 97, 45, 45, 45, 1660, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10191. 45, 45, 453, 45, 455, 67, 67, 67, 67, 268, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97,
  10192. 348, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 131427, 0, 359, 0, 0, 362, 0, 365, 28809, 367,
  10193. 139, 45, 45, 45, 45, 45, 421, 45, 45, 45, 45, 45, 45, 45, 434, 45, 45, 695, 45, 45, 45, 45, 45, 45, 45,
  10194. 45, 45, 45, 45, 45, 45, 45, 45, 1667, 45, 0, 921, 29315, 0, 925, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10195. 1811, 45, 67, 67, 67, 67, 67, 67, 1037, 67, 1039, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1277,
  10196. 67, 67, 67, 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 0, 1095, 0, 0, 0, 1096, 97, 97, 97, 97,
  10197. 97, 97, 97, 97, 97, 97, 97, 97, 869, 97, 97, 97, 97, 97, 97, 1131, 97, 1133, 97, 97, 97, 97, 97, 97, 97,
  10198. 97, 97, 97, 1370, 97, 97, 97, 97, 97, 1312, 0, 0, 0, 0, 1096, 0, 0, 0, 97, 97, 97, 97, 97, 97, 97, 1327,
  10199. 97, 97, 97, 97, 97, 1332, 97, 97, 97, 1830, 97, 0, 0, 97, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 1896, 97,
  10200. 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1548, 45, 45, 45, 45, 45, 45, 133, 94242, 0, 0, 0, 38, 102439, 0,
  10201. 0, 106538, 98347, 28809, 45, 45, 45, 45, 380, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 401, 45, 45, 158,
  10202. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1200, 45, 45, 45, 45, 206, 67, 67, 67, 67, 67, 225,
  10203. 67, 67, 67, 67, 67, 67, 67, 67, 754, 67, 67, 67, 67, 67, 67, 67, 57889, 0, 0, 54074, 54074, 550, 832, 97,
  10204. 97, 97, 97, 97, 97, 97, 97, 97, 1342, 97, 97, 97, 97, 97, 97, 67, 67, 67, 67, 67, 25398, 1083, 13112,
  10205. 1087, 54074, 1091, 0, 0, 0, 0, 0, 0, 1316, 0, 831, 97, 97, 97, 97, 97, 97, 97, 1174, 921, 0, 1175, 0, 0,
  10206. 0, 0, 45, 0, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 45, 148, 67, 67, 264, 67, 67,
  10207. 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 97, 97, 295, 97, 97, 97, 97, 313, 97, 97, 97, 97,
  10208. 331, 333, 97, 18, 131427, 356, 638, 0, 0, 0, 0, 362, 0, 0, 365, 0, 367, 0, 45, 45, 1530, 45, 45, 45, 45,
  10209. 45, 45, 45, 45, 45, 45, 45, 45, 988, 45, 45, 45, 97, 344, 97, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27,
  10210. 27, 27, 402, 404, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1756, 67, 438, 45, 45, 45, 45,
  10211. 45, 45, 45, 45, 449, 450, 45, 45, 45, 67, 67, 214, 218, 221, 67, 229, 67, 67, 243, 245, 248, 67, 67, 67,
  10212. 67, 67, 488, 490, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1071, 67, 1073, 67, 67, 67, 67, 67, 524, 67,
  10213. 67, 67, 67, 67, 67, 67, 67, 535, 536, 67, 67, 67, 67, 67, 67, 1683, 1684, 67, 67, 67, 67, 1688, 1689, 67,
  10214. 67, 67, 67, 67, 67, 1586, 67, 67, 67, 67, 67, 67, 67, 67, 67, 469, 67, 67, 67, 67, 67, 67, 97, 97, 97,
  10215. 585, 587, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1163, 97, 97, 97, 97, 97, 97, 97, 621, 97, 97, 97,
  10216. 97, 97, 97, 97, 97, 632, 633, 97, 97, 0, 0, 1782, 97, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97, 712, 45, 45,
  10217. 45, 717, 45, 45, 45, 45, 45, 45, 45, 45, 725, 45, 45, 45, 163, 167, 173, 177, 45, 45, 45, 45, 45, 193, 45,
  10218. 45, 45, 45, 982, 45, 45, 45, 45, 45, 45, 987, 45, 45, 45, 45, 45, 1558, 45, 1560, 45, 45, 45, 45, 45, 45,
  10219. 45, 45, 704, 705, 45, 45, 45, 45, 45, 45, 45, 45, 731, 45, 45, 45, 67, 67, 67, 67, 67, 739, 67, 67, 67,
  10220. 67, 67, 67, 273, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 67, 67, 67, 764, 67, 67, 67, 67, 67, 67, 67,
  10221. 67, 67, 67, 67, 67, 1290, 67, 67, 67, 67, 67, 67, 812, 67, 67, 67, 67, 818, 67, 67, 67, 25398, 542, 13112,
  10222. 544, 57889, 0, 0, 54074, 54074, 550, 0, 97, 97, 97, 97, 97, 837, 97, 97, 97, 97, 97, 602, 97, 97, 97, 97,
  10223. 97, 97, 97, 97, 97, 97, 1137, 97, 97, 97, 97, 97, 97, 97, 97, 97, 862, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10224. 97, 97, 1627, 97, 97, 97, 0, 97, 97, 97, 97, 910, 97, 97, 97, 97, 916, 97, 97, 97, 0, 0, 0, 97, 97, 1940,
  10225. 97, 97, 1942, 45, 45, 45, 45, 45, 45, 385, 45, 45, 45, 45, 395, 45, 45, 45, 45, 966, 45, 969, 45, 45, 45,
  10226. 45, 45, 45, 45, 45, 45, 45, 975, 45, 45, 45, 406, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 974, 45,
  10227. 45, 45, 67, 67, 67, 67, 1010, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1262, 67, 67, 67, 67, 67, 67,
  10228. 67, 67, 67, 1040, 67, 1042, 67, 1045, 67, 67, 67, 67, 67, 67, 67, 97, 1706, 97, 97, 97, 1709, 97, 97, 97,
  10229. 67, 67, 67, 67, 1051, 67, 67, 67, 67, 67, 1057, 67, 67, 67, 67, 67, 67, 67, 1443, 67, 67, 1446, 67, 67,
  10230. 67, 67, 67, 67, 67, 1297, 0, 0, 0, 1303, 0, 0, 0, 1309, 67, 67, 67, 67, 1079, 25398, 0, 13112, 0, 54074,
  10231. 0, 0, 0, 0, 0, 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  10232. 2207744, 2207744, 2207744, 2207744, 2207744, 2572288, 2207744, 2207744, 2207744, 1098, 97, 97, 97, 97, 97,
  10233. 1104, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1356, 97, 97, 97, 97, 97, 97, 1128, 97, 97, 97, 97, 97, 97,
  10234. 1134, 97, 1136, 97, 1139, 97, 97, 97, 97, 97, 97, 1622, 97, 97, 97, 97, 97, 97, 97, 97, 0, 921, 0, 0, 0,
  10235. 1176, 0, 646, 45, 67, 67, 67, 1268, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1469, 67, 67, 67, 97,
  10236. 1348, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1127, 97, 67, 1569, 67, 67, 67, 67, 67, 67,
  10237. 67, 67, 67, 67, 67, 67, 67, 67, 1448, 1449, 67, 1816, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1825, 67, 67,
  10238. 1827, 97, 97, 0, 1781, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97, 97, 97, 1831, 0, 0, 97, 97, 97, 97,
  10239. 97, 0, 0, 0, 97, 97, 97, 1980, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1395, 45, 45, 45, 45, 45, 97,
  10240. 1846, 97, 97, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1212, 45, 45, 45, 45, 45, 45, 2010, 45, 67,
  10241. 67, 67, 67, 67, 2016, 67, 97, 97, 0, 0, 97, 97, 97, 0, 97, 97, 97, 97, 97, 45, 45, 2007, 0, 94242, 0, 0,
  10242. 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 143, 45, 45, 45, 1671, 45, 45, 45, 45, 45, 45, 45, 45,
  10243. 45, 45, 45, 67, 1813, 67, 67, 1815, 45, 45, 67, 210, 67, 67, 67, 67, 67, 67, 239, 67, 67, 67, 67, 67, 67,
  10244. 67, 1454, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1445, 67, 67, 67, 67, 67, 67, 97, 97, 290, 97, 97, 97, 97,
  10245. 97, 97, 319, 97, 97, 97, 97, 97, 97, 303, 97, 97, 317, 97, 97, 97, 97, 97, 97, 305, 97, 97, 97, 97, 97,
  10246. 97, 97, 97, 97, 899, 97, 97, 97, 97, 97, 97, 375, 45, 45, 45, 379, 45, 45, 390, 45, 45, 394, 45, 45, 45,
  10247. 45, 45, 443, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 461, 67, 67, 67, 465, 67, 67, 476, 67,
  10248. 67, 480, 67, 67, 67, 67, 67, 67, 1694, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1288, 67, 67, 67, 67, 67, 67,
  10249. 500, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1075, 97, 97, 97, 558, 97, 97, 97, 562,
  10250. 97, 97, 573, 97, 97, 577, 97, 97, 97, 97, 97, 895, 97, 97, 97, 97, 97, 97, 903, 97, 97, 97, 0, 97, 97,
  10251. 1638, 97, 97, 97, 97, 97, 97, 97, 97, 1646, 597, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10252. 97, 1334, 45, 681, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1396, 45, 45, 1399, 45, 45,
  10253. 730, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1434, 67, 67, 67, 67, 67, 67, 750, 67, 67,
  10254. 67, 67, 67, 67, 67, 67, 67, 67, 1456, 67, 67, 67, 67, 67, 45, 45, 993, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10255. 45, 45, 67, 67, 1238, 67, 67, 1006, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1280,
  10256. 1048, 1049, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1059, 67, 67, 67, 67, 67, 67, 1286, 67, 67, 67, 67,
  10257. 67, 67, 67, 1291, 67, 97, 97, 1100, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 638, 0, 920, 97,
  10258. 97, 1142, 1143, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1153, 97, 97, 97, 97, 97, 1158, 97, 97, 97, 1161,
  10259. 97, 97, 97, 97, 1166, 97, 97, 97, 97, 97, 1325, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1328, 97, 97, 97,
  10260. 97, 97, 97, 97, 45, 1218, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1678, 45, 45, 45, 67,
  10261. 67, 67, 67, 67, 1269, 67, 67, 67, 67, 67, 67, 67, 67, 1278, 67, 67, 67, 67, 67, 67, 1761, 67, 67, 67, 67,
  10262. 67, 67, 67, 67, 67, 530, 67, 67, 67, 67, 67, 67, 97, 97, 1349, 97, 97, 97, 97, 97, 97, 97, 97, 1358, 97,
  10263. 97, 97, 97, 97, 97, 1623, 97, 97, 97, 97, 97, 97, 97, 97, 0, 921, 0, 0, 926, 0, 0, 0, 45, 45, 1411, 45,
  10264. 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1754, 45, 45, 67, 67, 1301, 0, 1307, 0, 1313, 97, 97,
  10265. 97, 97, 97, 97, 97, 97, 97, 97, 97, 21054, 97, 97, 97, 97, 67, 1757, 67, 67, 67, 1760, 67, 67, 67, 67, 67,
  10266. 67, 67, 67, 67, 67, 1467, 67, 67, 67, 67, 67, 1778, 97, 0, 0, 97, 97, 97, 97, 97, 97, 0, 0, 97, 97, 0, 97,
  10267. 97, 97, 97, 97, 1352, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1511, 97, 97, 97, 97, 97, 67, 67, 67, 67,
  10268. 67, 1820, 67, 1822, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 0, 0, 97, 1933, 97, 1892, 97, 97, 97, 97,
  10269. 97, 97, 1899, 45, 45, 45, 45, 45, 45, 45, 45, 1664, 45, 45, 45, 45, 45, 45, 45, 45, 1546, 45, 45, 45, 45,
  10270. 45, 45, 45, 45, 1208, 45, 45, 45, 45, 45, 45, 45, 45, 1224, 45, 45, 45, 45, 45, 45, 45, 45, 673, 45, 45,
  10271. 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 1925, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 97, 623, 97, 97,
  10272. 97, 97, 97, 97, 97, 97, 97, 97, 307, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1796, 97, 45, 45, 45, 45, 45, 45,
  10273. 45, 970, 45, 45, 45, 45, 45, 45, 45, 45, 1417, 45, 45, 45, 45, 45, 45, 45, 67, 1964, 67, 67, 97, 97, 97,
  10274. 97, 0, 0, 0, 97, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 1721, 97, 97, 0, 0, 1997, 97, 0, 0, 2000, 97, 97,
  10275. 0, 97, 97, 97, 97, 97, 45, 45, 45, 45, 733, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 803, 67, 67, 67,
  10276. 67, 67, 0, 94242, 0, 0, 0, 38, 102439, 0, 0, 106538, 98347, 28809, 45, 45, 144, 45, 45, 45, 1805, 45,
  10277. 1807, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 67, 231, 67, 67, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0,
  10278. 0, 0, 28809, 53531, 45, 45, 67, 211, 67, 67, 67, 67, 230, 234, 240, 244, 67, 67, 67, 67, 67, 67, 464, 67,
  10279. 67, 67, 67, 67, 67, 479, 67, 67, 67, 260, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531,
  10280. 97, 97, 291, 97, 97, 97, 97, 310, 314, 320, 324, 97, 97, 97, 97, 97, 97, 1367, 97, 97, 97, 97, 97, 97, 97,
  10281. 97, 97, 1355, 97, 97, 97, 97, 97, 97, 1362, 340, 97, 97, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27,
  10282. 27, 131427, 0, 0, 360, 0, 362, 0, 365, 28809, 367, 139, 369, 45, 45, 45, 374, 67, 67, 460, 67, 67, 67, 67,
  10283. 466, 67, 67, 67, 67, 67, 67, 67, 67, 801, 67, 67, 67, 67, 67, 67, 67, 67, 67, 487, 67, 67, 67, 67, 67, 67,
  10284. 67, 67, 67, 67, 498, 67, 67, 67, 67, 67, 67, 1772, 67, 67, 97, 97, 97, 97, 97, 97, 97, 0, 921, 922, 1175,
  10285. 0, 0, 0, 0, 45, 67, 502, 67, 67, 67, 67, 67, 67, 67, 508, 67, 67, 67, 515, 517, 67, 67, 67, 67, 67, 97,
  10286. 97, 97, 97, 97, 0, 0, 0, 1932, 97, 97, 0, 1999, 97, 97, 97, 0, 97, 97, 2004, 2005, 97, 45, 45, 45, 45,
  10287. 1193, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 676, 45, 45, 45, 45, 67, 24850, 24850, 12564, 12564, 0,
  10288. 57889, 0, 0, 0, 53531, 53531, 367, 286, 552, 97, 97, 97, 97, 97, 1377, 0, 0, 45, 45, 45, 45, 45, 45, 45,
  10289. 45, 655, 45, 45, 45, 45, 45, 45, 45, 97, 97, 557, 97, 97, 97, 97, 563, 97, 97, 97, 97, 97, 97, 97, 97,
  10290. 1135, 97, 97, 97, 97, 97, 97, 97, 97, 97, 584, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 595, 97, 97, 97,
  10291. 97, 97, 911, 97, 97, 97, 97, 97, 97, 97, 638, 0, 0, 0, 0, 1315, 0, 0, 0, 0, 97, 97, 97, 1319, 97, 97, 97,
  10292. 0, 97, 97, 97, 97, 97, 97, 1733, 97, 97, 97, 97, 97, 97, 1340, 97, 97, 97, 1343, 97, 97, 1345, 97, 1346,
  10293. 97, 599, 97, 97, 97, 97, 97, 97, 97, 605, 97, 97, 97, 612, 614, 97, 97, 97, 97, 97, 1794, 97, 97, 97, 45,
  10294. 45, 45, 45, 45, 45, 45, 1207, 45, 45, 45, 45, 45, 45, 1213, 45, 45, 745, 67, 67, 67, 67, 751, 67, 67, 67,
  10295. 67, 67, 67, 67, 67, 67, 67, 1577, 67, 67, 67, 67, 67, 762, 67, 67, 67, 67, 766, 67, 67, 67, 67, 67, 67,
  10296. 67, 67, 67, 67, 1765, 67, 67, 67, 67, 67, 777, 67, 67, 781, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10297. 67, 1592, 1593, 67, 67, 97, 843, 97, 97, 97, 97, 849, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1510, 97, 97,
  10298. 97, 97, 97, 97, 97, 860, 97, 97, 97, 97, 864, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1797, 45, 45, 45, 45,
  10299. 1801, 45, 97, 875, 97, 97, 879, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1522, 97, 97, 97, 97, 97, 991,
  10300. 45, 45, 45, 45, 996, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67, 215, 67, 67, 67, 67, 233, 67, 67, 67, 67,
  10301. 251, 253, 1022, 67, 67, 67, 1026, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1035, 67, 67, 1038, 67, 67, 67,
  10302. 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1458, 67, 67, 67, 67, 67, 1064, 67, 67, 67, 1067, 67, 67, 67, 67,
  10303. 1072, 67, 67, 67, 67, 67, 67, 1296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2367488, 2158592, 2158592, 2158592,
  10304. 2158592, 2158592, 2158592, 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0, 0, 0, 1096, 0, 921, 29315,
  10305. 0, 0, 0, 0, 928, 45, 45, 45, 45, 45, 934, 45, 45, 45, 164, 45, 45, 45, 45, 45, 45, 45, 45, 45, 198, 45,
  10306. 45, 45, 378, 45, 45, 45, 45, 45, 45, 393, 45, 45, 45, 398, 45, 97, 97, 1116, 97, 97, 97, 1120, 97, 97, 97,
  10307. 97, 97, 97, 97, 97, 97, 1147, 1148, 97, 97, 97, 97, 97, 97, 97, 1129, 97, 97, 1132, 97, 97, 97, 97, 97,
  10308. 97, 97, 97, 97, 97, 97, 1626, 97, 97, 97, 97, 0, 45, 1178, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1185, 45,
  10309. 45, 45, 45, 441, 45, 45, 45, 45, 45, 45, 451, 45, 45, 67, 67, 67, 67, 67, 227, 67, 67, 67, 67, 67, 67, 67,
  10310. 67, 1260, 67, 67, 67, 1263, 67, 67, 1265, 1203, 45, 45, 1205, 45, 1206, 45, 45, 45, 45, 45, 45, 45, 45,
  10311. 45, 1216, 67, 1266, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1276, 67, 67, 67, 67, 67, 67, 492, 67, 67, 67, 67,
  10312. 67, 67, 67, 67, 67, 471, 67, 67, 67, 67, 481, 67, 45, 1386, 45, 1389, 45, 45, 45, 45, 1394, 45, 45, 45,
  10313. 1397, 45, 45, 45, 45, 995, 45, 997, 45, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 1915, 67, 67, 67, 67, 67,
  10314. 1422, 45, 45, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1433, 67, 1436, 67, 67, 67, 67, 1441, 67, 67, 67,
  10315. 1444, 67, 67, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 281, 28809, 53531, 97, 97, 97, 97, 1494, 97,
  10316. 97, 97, 1497, 97, 97, 97, 97, 97, 97, 97, 1368, 97, 97, 97, 97, 97, 97, 97, 97, 851, 97, 97, 97, 97, 97,
  10317. 97, 97, 67, 67, 67, 1571, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 25398, 542, 13112, 544, 67, 67,
  10318. 1583, 67, 67, 67, 67, 67, 67, 67, 67, 1591, 67, 67, 67, 67, 67, 67, 752, 67, 67, 67, 67, 67, 67, 67, 67,
  10319. 67, 1056, 67, 67, 67, 67, 67, 67, 97, 1634, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1125,
  10320. 97, 97, 97, 1647, 97, 97, 97, 97, 97, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1183, 45, 45, 45, 45, 45, 45,
  10321. 45, 45, 45, 409, 45, 45, 45, 45, 45, 45, 1658, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10322. 1668, 1712, 97, 97, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 0, 0, 1835, 97, 97, 97, 97, 0, 0, 0, 97,
  10323. 97, 1844, 97, 97, 1726, 0, 97, 97, 97, 97, 97, 1732, 97, 1734, 97, 97, 97, 97, 97, 300, 97, 308, 97, 97,
  10324. 97, 97, 97, 97, 97, 97, 866, 97, 97, 97, 97, 97, 97, 97, 67, 67, 67, 1758, 67, 67, 67, 1762, 67, 67, 67,
  10325. 67, 67, 67, 67, 67, 1043, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1771, 67, 67, 67, 97, 97, 97,
  10326. 97, 97, 1776, 97, 97, 97, 97, 297, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1108, 97, 97, 97, 97, 67,
  10327. 67, 67, 1966, 97, 97, 97, 1970, 0, 0, 0, 97, 97, 97, 97, 0, 97, 97, 97, 1720, 97, 97, 97, 97, 97, 0, 0,
  10328. 97, 97, 97, 1837, 97, 0, 1840, 1841, 97, 97, 97, 1988, 45, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1994, 1995,
  10329. 67, 97, 97, 97, 97, 97, 1103, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 917, 97, 97, 0, 0, 0, 67, 67, 265,
  10330. 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 345, 97, 97, 97, 97, 0, 40976, 0, 18, 18,
  10331. 24, 24, 27, 27, 27, 131427, 0, 0, 0, 361, 362, 0, 365, 28809, 367, 139, 45, 45, 45, 45, 45, 671, 45, 45,
  10332. 45, 45, 45, 45, 45, 45, 45, 45, 411, 45, 45, 414, 45, 45, 45, 45, 377, 45, 45, 45, 386, 45, 45, 45, 45,
  10333. 45, 45, 45, 45, 45, 1223, 45, 45, 45, 45, 45, 45, 45, 45, 45, 426, 45, 45, 433, 45, 45, 45, 67, 67, 67,
  10334. 67, 67, 463, 67, 67, 67, 472, 67, 67, 67, 67, 67, 67, 67, 527, 67, 67, 67, 67, 67, 67, 537, 67, 540,
  10335. 24850, 24850, 12564, 12564, 0, 57889, 0, 0, 0, 53531, 53531, 367, 286, 97, 97, 97, 97, 97, 1119, 97, 97,
  10336. 97, 97, 97, 97, 97, 97, 97, 97, 1509, 97, 97, 97, 97, 97, 97, 97, 97, 564, 97, 97, 97, 97, 97, 97, 97,
  10337. 637, 18, 131427, 0, 0, 0, 0, 0, 0, 362, 0, 0, 365, 29315, 367, 0, 921, 29315, 0, 0, 0, 927, 45, 45, 45,
  10338. 45, 45, 45, 45, 45, 45, 1234, 45, 45, 45, 45, 67, 67, 67, 67, 1240, 45, 697, 45, 45, 45, 45, 45, 45, 45,
  10339. 45, 45, 45, 708, 45, 45, 45, 45, 1221, 45, 45, 45, 45, 1225, 45, 45, 45, 45, 45, 45, 384, 45, 45, 45, 45,
  10340. 45, 45, 45, 45, 45, 1210, 45, 45, 45, 45, 45, 45, 67, 67, 795, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10341. 67, 67, 1470, 67, 67, 67, 67, 67, 67, 67, 815, 67, 67, 67, 67, 67, 67, 25398, 542, 13112, 544, 97, 97, 97,
  10342. 893, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1164, 97, 97, 97, 67, 67, 67, 1025, 67, 67, 67, 67,
  10343. 67, 67, 67, 67, 67, 67, 67, 67, 1687, 67, 67, 67, 67, 67, 67, 67, 67, 67, 25398, 0, 13112, 0, 54074, 0, 0,
  10344. 0, 0, 0, 1097, 1241, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1450, 45, 45, 1388, 45,
  10345. 1390, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1236, 67, 67, 67, 67, 67, 1437, 67, 67, 67, 67, 67, 67,
  10346. 67, 67, 67, 67, 67, 67, 67, 67, 67, 1472, 1490, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
  10347. 97, 1503, 67, 67, 67, 67, 67, 97, 97, 97, 97, 97, 0, 1930, 0, 97, 97, 97, 97, 97, 847, 97, 97, 97, 97, 97,
  10348. 97, 97, 97, 97, 858, 67, 67, 1965, 67, 97, 97, 97, 97, 0, 0, 0, 97, 97, 97, 97, 0, 97, 97, 1719, 97, 97,
  10349. 97, 97, 97, 97, 0, 0, 0, 45, 45, 45, 45, 1382, 45, 1383, 45, 45, 45, 159, 45, 45, 45, 45, 45, 45, 45, 45,
  10350. 45, 45, 45, 45, 45, 1563, 45, 45, 45, 45, 45, 67, 261, 67, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0,
  10351. 28809, 53531, 341, 97, 97, 97, 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 97, 1099, 97, 97, 97, 97,
  10352. 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1333, 97, 1230, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 67, 67,
  10353. 67, 67, 67, 67, 1992, 67, 1993, 67, 67, 67, 97, 97, 45, 45, 160, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10354. 45, 45, 45, 1665, 45, 45, 45, 45, 45, 131427, 357, 0, 0, 0, 362, 0, 365, 28809, 367, 139, 45, 45, 45, 45,
  10355. 45, 684, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 412, 45, 45, 45, 416, 45, 45, 45, 440, 45, 45, 45, 45,
  10356. 45, 45, 45, 45, 45, 45, 45, 67, 67, 1990, 67, 1991, 67, 67, 67, 67, 67, 67, 67, 97, 97, 1707, 97, 97, 97,
  10357. 97, 97, 97, 501, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1691, 67, 67, 67, 67, 67,
  10358. 526, 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, 1030, 67, 1032, 67, 67, 67, 67, 598, 97, 97, 97, 97, 97, 97,
  10359. 97, 97, 97, 97, 97, 97, 97, 97, 97, 1632, 0, 921, 29315, 923, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10360. 1404, 45, 45, 45, 45, 45, 45, 45, 45, 45, 425, 45, 45, 45, 45, 45, 45, 67, 67, 67, 67, 67, 25398, 0,
  10361. 13112, 0, 54074, 0, 0, 1093, 0, 0, 0, 0, 0, 97, 1609, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1369, 97, 97,
  10362. 97, 1372, 97, 97, 67, 67, 266, 67, 67, 67, 67, 0, 24850, 12564, 0, 0, 0, 0, 28809, 53531, 97, 346, 97, 97,
  10363. 97, 97, 0, 40976, 0, 18, 18, 24, 24, 27, 27, 27, 665, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
  10364. 45, 45, 1677, 45, 45, 45, 45, 67, 45, 45, 954, 45, 956, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 1545,
  10365. 45, 45, 45, 45, 45, 45, 45, 45, 45, 448, 45, 45, 45, 45, 67, 456, 67, 67, 67, 67, 67, 1270, 67, 67, 67,
  10366. 67, 67, 67, 67, 67, 67, 67, 1069, 67, 67, 67, 67, 67, 67, 97, 97, 97, 1350, 97, 97, 97, 97, 97, 97, 97,
  10367. 97, 97, 97, 97, 97, 1524, 97, 97, 97, 97, 97, 97, 97, 1376, 0, 0, 0, 45, 45, 45, 45, 45, 45, 45, 45, 1559,
  10368. 1561, 45, 45, 45, 1564, 45, 1566, 1567, 45, 67, 67, 67, 67, 67, 1573, 67, 67, 67, 67, 67, 67, 67, 67, 67,
  10369. 67, 1247, 67, 67, 67, 67, 67, 1252, 97, 1725, 97, 0, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, 1628,
  10370. 97, 1630, 0, 0, 94242, 0, 0, 0, 2211840, 0, 1118208, 0, 0, 0, 0, 2158592, 2158731, 2158592, 2158592,
  10371. 2158592, 3117056, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  10372. 2158592, 2158592, 2158592, 3018752, 2158592, 3043328, 2158592, 2158592, 2158592, 2158592, 3080192,
  10373. 2158592, 2158592, 3112960, 2158592, 2158592, 2158592, 2158592, 2158592, 2158878, 2158592, 2158592,
  10374. 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  10375. 2158592, 2605056, 2158592, 2158592, 2207744, 0, 542, 0, 544, 0, 0, 2166784, 0, 0, 0, 550, 0, 0, 2158592,
  10376. 2158592, 2686976, 2158592, 2715648, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592,
  10377. 2867200, 2158592, 2904064, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 0, 94242, 0, 0,
  10378. 0, 2211840, 0, 0, 1130496, 0, 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 3186688, 2158592, 0, 0,
  10379. 139, 0, 0, 0, 139, 0, 2367488, 2207744, 0, 0, 0, 0, 176128, 0, 2166784, 0, 0, 0, 0, 0, 286, 2158592,
  10380. 2158592, 3170304, 3174400, 2158592, 0, 0, 0, 2158592, 2158592, 2158592, 2158592, 2158592, 2424832,
  10381. 2158592, 2158592, 2158592, 1508, 2158592, 2908160, 2158592, 2158592, 2158592, 2977792, 2158592, 2158592,
  10382. 2158592, 2158592, 3039232, 2158592, 2158592, 2158592, 2158592, 2158592, 2158592, 3158016, 67, 24850,
  10383. 24850, 12564, 12564, 0, 0, 0, 0, 0, 53531, 53531, 0, 286, 97, 97, 97, 97, 97, 1144, 97, 97, 97, 97, 97,
  10384. 97, 97, 97, 97, 97, 1149, 97, 97, 97, 97, 1154, 57889, 0, 0, 0, 0, 550, 0, 97, 97, 97, 97, 97, 97, 97, 97,
  10385. 97, 561, 97, 97, 97, 97, 97, 97, 576, 97, 97, 139264, 139264, 139264, 139264, 139264, 139264, 139264,
  10386. 139264, 139264, 139264, 139264, 139264, 0, 0, 139264, 0, 921, 29315, 0, 0, 926, 0, 45, 45, 45, 45, 45, 45,
  10387. 45, 45, 45, 719, 720, 45, 45, 45, 45, 45, 45, 45, 45, 685, 45, 45, 45, 45, 45, 45, 45, 45, 45, 942, 45,
  10388. 45, 946, 45, 45, 45, 950, 45, 45, 0, 2146304, 2146304, 0, 0, 0, 0, 2224128, 2224128, 2224128, 2232320,
  10389. 2232320, 2232320, 2232320, 0, 0, 1301, 0, 0, 0, 0, 0, 1307, 0, 0, 0, 0, 0, 1313, 0, 0, 0, 0, 0, 0, 0, 97,
  10390. 97, 1318, 97, 97, 97, 97, 97, 97, 1795, 97, 97, 45, 45, 45, 45, 45, 45, 45, 446, 45, 45, 45, 45, 45, 45,
  10391. 67, 67, 2158592, 2146304, 0, 0, 0, 0, 0, 0, 0, 2211840, 0, 0, 0, 0, 2158592, 0, 921, 29315, 0, 924, 0, 0,
  10392. 45, 45, 45, 45, 45, 45, 45, 45, 45, 1000, 45, 45, 45, 45, 67, 67
  10393. ];
  10394. XQueryTokenizer.EXPECTED =
  10395. [
  10396. 290, 300, 304, 353, 296, 309, 305, 319, 315, 324, 328, 352, 354, 334, 338, 330, 320, 345, 349, 293, 358,
  10397. 362, 341, 366, 312, 370, 374, 378, 382, 386, 390, 394, 398, 737, 402, 634, 439, 604, 634, 634, 634, 634,
  10398. 408, 634, 634, 634, 404, 634, 634, 634, 457, 634, 634, 963, 634, 634, 413, 634, 634, 634, 634, 634, 634,
  10399. 634, 663, 418, 422, 903, 902, 426, 431, 548, 634, 437, 521, 919, 443, 615, 409, 449, 455, 624, 731, 751,
  10400. 634, 461, 465, 672, 470, 469, 474, 481, 485, 477, 489, 493, 629, 542, 497, 505, 603, 602, 991, 648, 510,
  10401. 804, 634, 515, 958, 526, 525, 530, 768, 634, 546, 552, 711, 710, 593, 558, 562, 618, 566, 570, 574, 578,
  10402. 582, 586, 590, 608, 612, 660, 822, 821, 634, 622, 596, 444, 628, 533, 724, 633, 640, 653, 647, 652, 536,
  10403. 1008, 451, 450, 445, 657, 670, 676, 685, 689, 693, 697, 701, 704, 707, 715, 719, 798, 815, 634, 723, 762,
  10404. 996, 634, 728, 969, 730, 735, 908, 634, 741, 679, 889, 511, 747, 634, 750, 755, 499, 666, 499, 501, 759,
  10405. 772, 776, 780, 634, 787, 784, 797, 802, 809, 808, 427, 814, 1006, 517, 634, 519, 853, 634, 813, 850, 793,
  10406. 634, 819, 826, 833, 832, 837, 843, 847, 857, 861, 863, 867, 871, 875, 879, 883, 643, 887, 539, 980, 979,
  10407. 634, 893, 944, 634, 900, 896, 634, 907, 933, 506, 912, 917, 828, 433, 636, 635, 554, 961, 923, 930, 927,
  10408. 937, 941, 634, 634, 634, 974, 948, 952, 985, 913, 968, 967, 743, 634, 973, 839, 634, 978, 599, 634, 984,
  10409. 989, 765, 444, 995, 1000, 634, 1003, 790, 955, 1012, 681, 634, 634, 634, 634, 634, 414, 1016, 1020, 1024,
  10410. 1085, 1027, 1090, 1090, 1046, 1080, 1137, 1108, 1215, 1049, 1032, 1039, 1085, 1085, 1085, 1085, 1058, 1062,
  10411. 1068, 1085, 1086, 1090, 1090, 1091, 1072, 1064, 1107, 1090, 1090, 1090, 1118, 1123, 1138, 1078, 1074, 1084,
  10412. 1085, 1085, 1085, 1087, 1090, 1062, 1052, 1060, 1114, 1062, 1104, 1085, 1085, 1090, 1090, 1028, 1122, 1063,
  10413. 1128, 1139, 1127, 1158, 1085, 1085, 1151, 1090, 1090, 1090, 1095, 1090, 1132, 1073, 1136, 1143, 1061, 1150,
  10414. 1085, 1155, 1098, 1101, 1146, 1162, 1169, 1101, 1185, 1151, 1090, 1110, 1173, 1054, 1087, 1109, 1177, 1165,
  10415. 1089, 1204, 1184, 1107, 1189, 1193, 1088, 1197, 1180, 1201, 1208, 1042, 1212, 1219, 1223, 1227, 1231, 1235,
  10416. 1245, 1777, 1527, 1686, 1686, 1238, 1686, 1254, 1686, 1686, 1686, 1294, 1669, 1686, 1686, 1686, 1322, 1625,
  10417. 1534, 1268, 1624, 1275, 1281, 1443, 1292, 1300, 1686, 1686, 1686, 1350, 1826, 1306, 1686, 1686, 1240, 2032,
  10418. 1317, 1321, 1686, 1686, 1253, 1686, 1326, 1686, 1686, 1686, 1418, 1709, 1446, 1686, 1686, 1686, 1492, 1686,
  10419. 1295, 1447, 1686, 1686, 1258, 1686, 1736, 1686, 1686, 1520, 1355, 1686, 1288, 1348, 1361, 1686, 1359, 1686,
  10420. 1364, 1498, 1368, 1302, 1362, 1381, 1389, 1395, 1486, 1686, 1371, 1377, 1370, 1686, 1375, 1382, 1384, 1402,
  10421. 1408, 1385, 1383, 1619, 1413, 1423, 1428, 1433, 1686, 1686, 1270, 1686, 1338, 1686, 1440, 1686, 1686, 1686,
  10422. 1499, 1465, 1686, 1686, 1686, 1639, 1473, 1884, 1686, 1686, 1293, 1864, 1686, 1686, 1296, 1321, 1483, 1686,
  10423. 1686, 1686, 1646, 1686, 1748, 1496, 1686, 1418, 1675, 1686, 1418, 1702, 1686, 1418, 1981, 1686, 1429, 1409,
  10424. 1427, 1504, 1692, 1686, 1686, 1313, 1448, 1651, 1508, 1686, 1686, 1340, 1686, 1903, 1686, 1686, 1435, 1513,
  10425. 1686, 1283, 1287, 1519, 1686, 1524, 1363, 1568, 1938, 1539, 1566, 1579, 1479, 1533, 1538, 1553, 1544, 1552,
  10426. 1557, 1563, 1574, 1557, 1583, 1589, 1590, 1759, 1594, 1603, 1607, 1611, 1686, 1436, 1514, 1686, 1434, 1656,
  10427. 1686, 1434, 1680, 1686, 1453, 1686, 1686, 1686, 1559, 1617, 1686, 1770, 1418, 1623, 1769, 1629, 1686, 1515,
  10428. 1335, 1686, 1285, 1686, 1671, 1921, 1650, 1686, 1686, 1344, 1308, 1666, 1686, 1686, 1686, 1659, 1685, 1686,
  10429. 1686, 1686, 1686, 1241, 1686, 1686, 1844, 1691, 1686, 1630, 1977, 1970, 1362, 1686, 1686, 1686, 1693, 1698,
  10430. 1686, 1686, 1686, 1697, 1686, 1764, 1715, 1686, 1634, 1638, 1686, 1599, 1585, 1686, 1271, 1686, 1269, 1686,
  10431. 1721, 1686, 1686, 1354, 1686, 1801, 1686, 1799, 1686, 1640, 1686, 1686, 1461, 1686, 1686, 1732, 1686, 1944,
  10432. 1686, 1740, 1686, 1746, 1415, 1396, 1686, 1598, 1547, 1417, 1597, 1416, 1577, 1546, 1397, 1577, 1547, 1548,
  10433. 1570, 1398, 1753, 1686, 1652, 1509, 1686, 1686, 1686, 1757, 1686, 1419, 1686, 1763, 1418, 1768, 1781, 1686,
  10434. 1686, 1686, 1705, 1686, 2048, 1792, 1686, 1686, 1686, 1735, 1686, 1797, 1686, 1686, 1404, 1686, 1639, 1815,
  10435. 1686, 1686, 1418, 2017, 1820, 1686, 1686, 1803, 1686, 1686, 1686, 1736, 1489, 1686, 1686, 1825, 1338, 1260,
  10436. 1263, 1686, 1686, 1785, 1686, 1686, 1728, 1686, 1686, 1749, 1497, 1830, 1830, 1262, 1248, 1261, 1329, 1260,
  10437. 1264, 1329, 1248, 1249, 1259, 1540, 1849, 1842, 1686, 1686, 1835, 1686, 1686, 1816, 1686, 1686, 1831, 1882,
  10438. 1848, 1686, 1686, 1686, 1774, 2071, 1854, 1686, 1686, 1469, 1884, 1686, 1821, 1859, 1686, 1686, 1350, 1883,
  10439. 1686, 1686, 1686, 1781, 1391, 1875, 1686, 1686, 1613, 1644, 1686, 1686, 1889, 1686, 1686, 1662, 1884, 1686,
  10440. 1885, 1890, 1686, 1686, 1686, 1894, 1686, 1686, 1678, 1686, 1907, 1686, 1686, 1529, 1914, 1686, 1838, 1686,
  10441. 1686, 1881, 1686, 1686, 1872, 1876, 1836, 1919, 1686, 1837, 1692, 1910, 1686, 1925, 1928, 1742, 1686, 1811,
  10442. 1811, 1930, 1810, 1929, 1935, 1928, 1900, 1942, 1867, 1868, 1931, 1035, 1788, 1948, 1952, 1956, 1960, 1964,
  10443. 1686, 1976, 1686, 1686, 1686, 2065, 1686, 1992, 2037, 1686, 1686, 1998, 2009, 1972, 2002, 1686, 1686, 1686,
  10444. 2077, 1300, 2023, 1686, 1686, 1686, 1807, 2031, 1686, 1686, 1686, 1860, 1500, 2032, 1686, 1686, 1686, 2083,
  10445. 1686, 2036, 1686, 1277, 1276, 2042, 1877, 1686, 1686, 2041, 1686, 1686, 2027, 2037, 2012, 1686, 2012, 1855,
  10446. 1850, 1686, 2046, 1686, 1686, 2054, 1996, 1686, 1897, 1309, 2059, 2052, 1686, 2058, 1686, 1686, 2081, 1686,
  10447. 1717, 1477, 1686, 1331, 1686, 1686, 1687, 1686, 1860, 1681, 1686, 1686, 1686, 1966, 1724, 1686, 1686, 1686,
  10448. 1984, 2015, 1686, 1686, 1686, 1988, 1686, 2063, 1686, 1686, 1686, 2005, 1686, 1727, 1686, 1686, 1711, 1457,
  10449. 2069, 1686, 1686, 1686, 2019, 2075, 1686, 1686, 1915, 1686, 1686, 1793, 1874, 1686, 1686, 1491, 1362, 1449,
  10450. 1686, 1686, 1460, 2098, 2087, 2091, 2095, 2184, 2102, 2113, 2780, 2117, 2134, 2142, 2281, 2146, 2146, 2146,
  10451. 2304, 2296, 2181, 2639, 2591, 2872, 2592, 2873, 2313, 2195, 2200, 2281, 2146, 2273, 2226, 2204, 2152, 2219,
  10452. 2276, 2167, 2177, 2276, 2235, 2276, 2276, 2230, 2281, 2276, 2296, 2276, 2293, 2276, 2276, 2276, 2276, 2234,
  10453. 2276, 2311, 2314, 2210, 2199, 2217, 2222, 2276, 2276, 2276, 2240, 2276, 2294, 2276, 2276, 2173, 2276, 2198,
  10454. 2281, 2281, 2281, 2281, 2282, 2146, 2146, 2146, 2146, 2205, 2146, 2204, 2248, 2276, 2235, 2276, 2297, 2276,
  10455. 2276, 2276, 2277, 2256, 2281, 2283, 2146, 2146, 2146, 2275, 2276, 2295, 2276, 2276, 2293, 2146, 2304, 2264,
  10456. 2269, 2221, 2276, 2276, 2276, 2293, 2295, 2276, 2276, 2276, 2295, 2263, 2205, 2268, 2220, 2172, 2276, 2276,
  10457. 2276, 2296, 2276, 2276, 2296, 2294, 2276, 2276, 2278, 2281, 2281, 2280, 2281, 2281, 2281, 2283, 2206, 2223,
  10458. 2276, 2276, 2279, 2281, 2281, 2146, 2273, 2276, 2276, 2281, 2281, 2281, 2276, 2292, 2276, 2298, 2225, 2276,
  10459. 2298, 2169, 2224, 2292, 2298, 2171, 2229, 2281, 2281, 2171, 2236, 2281, 2281, 2281, 2146, 2275, 2225, 2292,
  10460. 2299, 2276, 2229, 2281, 2146, 2276, 2290, 2297, 2283, 2146, 2146, 2274, 2224, 2227, 2298, 2225, 2297, 2276,
  10461. 2230, 2170, 2230, 2282, 2146, 2147, 2151, 2156, 2288, 2276, 2230, 2303, 2308, 2236, 2284, 2228, 2318, 2318,
  10462. 2318, 2326, 2335, 2339, 2343, 2349, 2416, 2693, 2357, 2592, 2109, 2592, 2592, 2162, 2943, 2823, 2646, 2592,
  10463. 2361, 2592, 2122, 2592, 2592, 2122, 2470, 2592, 2592, 2592, 2109, 2107, 2592, 2592, 2592, 2123, 2592, 2592,
  10464. 2592, 2125, 2592, 2413, 2592, 2592, 2592, 2127, 2592, 2592, 2414, 2592, 2592, 2592, 2130, 2952, 2592, 2594,
  10465. 2592, 2592, 2212, 2609, 2252, 2592, 2592, 2592, 2446, 2434, 2592, 2592, 2592, 2212, 2446, 2450, 2456, 2431,
  10466. 2435, 2592, 2592, 2243, 2478, 2448, 2439, 2946, 2592, 2592, 2592, 2368, 2809, 2813, 2450, 2441, 2212, 2812,
  10467. 2449, 2440, 2947, 2592, 2592, 2592, 2345, 2451, 2457, 2948, 2592, 2124, 2592, 2592, 2650, 2823, 2449, 2455,
  10468. 2946, 2592, 2128, 2592, 2592, 2649, 2952, 2592, 2810, 2448, 2461, 2991, 2467, 2592, 2592, 2329, 2817, 2474,
  10469. 2990, 2466, 2592, 2592, 2373, 2447, 2992, 2469, 2592, 2592, 2592, 2373, 2447, 2477, 2468, 2592, 2592, 2353,
  10470. 2469, 2592, 2495, 2592, 2592, 2415, 2483, 2592, 2415, 2496, 2592, 2592, 2352, 2592, 2592, 2352, 2352, 2469,
  10471. 2592, 2592, 2363, 2331, 2494, 2592, 2592, 2592, 2375, 2592, 2375, 2415, 2504, 2592, 2592, 2367, 2372, 2503,
  10472. 2592, 2592, 2592, 2389, 2418, 2415, 2592, 2592, 2373, 2592, 2592, 2592, 2593, 2732, 2417, 2415, 2592, 2417,
  10473. 2520, 2592, 2592, 2592, 2390, 2521, 2521, 2592, 2592, 2592, 2401, 2599, 2585, 2526, 2531, 2120, 2592, 2212,
  10474. 2426, 2450, 2463, 2948, 2592, 2592, 2592, 2213, 2389, 2527, 2532, 2121, 2542, 2551, 2105, 2592, 2213, 2592,
  10475. 2592, 2592, 2558, 2538, 2544, 2553, 2557, 2537, 2543, 2552, 2421, 2572, 2576, 2546, 2543, 2547, 2592, 2592,
  10476. 2373, 2615, 2575, 2545, 2105, 2592, 2244, 2479, 2592, 2129, 2592, 2592, 2628, 2690, 2469, 2562, 2566, 2592,
  10477. 2592, 2592, 2415, 2928, 2934, 2401, 2570, 2574, 2564, 2572, 2585, 2590, 2592, 2592, 2585, 2965, 2592, 2592,
  10478. 2592, 2445, 2251, 2592, 2592, 2592, 2474, 2592, 2609, 2892, 2592, 2362, 2592, 2592, 2138, 2851, 2159, 2592,
  10479. 2592, 2592, 2509, 2888, 2892, 2592, 2592, 2592, 2490, 2418, 2891, 2592, 2592, 2376, 2592, 2592, 2374, 2592,
  10480. 2889, 2388, 2592, 2373, 2373, 2890, 2592, 2592, 2387, 2592, 2887, 2505, 2892, 2592, 2373, 2610, 2388, 2592,
  10481. 2592, 2376, 2373, 2592, 2887, 2891, 2592, 2374, 2592, 2592, 2608, 2159, 2614, 2620, 2592, 2592, 2394, 2594,
  10482. 2887, 2399, 2592, 2887, 2397, 2508, 2374, 2507, 2592, 2375, 2592, 2592, 2592, 2595, 2508, 2506, 2592, 2506,
  10483. 2505, 2505, 2592, 2507, 2637, 2505, 2592, 2592, 2401, 2661, 2592, 2643, 2592, 2592, 2417, 2592, 2655, 2592,
  10484. 2592, 2592, 2510, 2414, 2656, 2592, 2592, 2592, 2516, 2592, 2593, 2660, 2665, 2880, 2592, 2592, 2592, 2522,
  10485. 2767, 2666, 2881, 2592, 2592, 2420, 2571, 2696, 2592, 2592, 2592, 2580, 2572, 2686, 2632, 2698, 2592, 2383,
  10486. 2514, 2592, 2163, 2932, 2465, 2685, 2631, 2697, 2592, 2388, 2592, 2592, 2212, 2604, 2671, 2632, 2678, 2592,
  10487. 2401, 2405, 2409, 2592, 2592, 2592, 2679, 2592, 2592, 2592, 2592, 2108, 2677, 2591, 2592, 2592, 2592, 2419,
  10488. 2592, 2683, 2187, 2191, 2469, 2671, 2189, 2467, 2592, 2401, 2629, 2633, 2702, 2468, 2592, 2592, 2421, 2536,
  10489. 2703, 2469, 2592, 2592, 2422, 2573, 2593, 2672, 2467, 2592, 2402, 2406, 2592, 2402, 2979, 2592, 2592, 2626,
  10490. 2673, 2467, 2592, 2446, 2259, 2947, 2592, 2377, 2709, 2592, 2592, 2522, 2862, 2713, 2468, 2592, 2592, 2581,
  10491. 2572, 2562, 2374, 2374, 2592, 2376, 2721, 2724, 2592, 2592, 2624, 2373, 2731, 2592, 2592, 2592, 2626, 2732,
  10492. 2592, 2592, 2592, 2755, 2656, 2726, 2736, 2741, 2592, 2486, 2593, 2381, 2592, 2727, 2737, 2742, 2715, 2747,
  10493. 2753, 2592, 2498, 2469, 2873, 2743, 2592, 2592, 2592, 2791, 2759, 2763, 2592, 2592, 2627, 2704, 2592, 2592,
  10494. 2522, 2789, 2593, 2761, 2753, 2592, 2498, 2863, 2592, 2592, 2767, 2592, 2592, 2592, 2792, 2789, 2592, 2592,
  10495. 2592, 2803, 2126, 2592, 2592, 2592, 2811, 2122, 2592, 2592, 2592, 2834, 2777, 2592, 2592, 2592, 2848, 2936,
  10496. 2591, 2489, 2797, 2592, 2592, 2670, 2631, 2490, 2798, 2592, 2592, 2592, 2963, 2807, 2592, 2592, 2592, 2965,
  10497. 2838, 2592, 2592, 2592, 2975, 2330, 2818, 2829, 2592, 2498, 2939, 2592, 2498, 2592, 2791, 2331, 2819, 2830,
  10498. 2592, 2592, 2592, 2982, 2834, 2817, 2828, 2106, 2592, 2592, 2592, 2405, 2405, 2817, 2828, 2592, 2592, 2415,
  10499. 2849, 2842, 2592, 2522, 2773, 2592, 2522, 2868, 2592, 2580, 2600, 2586, 2137, 2850, 2843, 2592, 2592, 2855,
  10500. 2937, 2844, 2592, 2592, 2592, 2987, 2936, 2591, 2592, 2592, 2684, 2630, 2592, 2856, 2938, 2592, 2592, 2860,
  10501. 2939, 2592, 2592, 2872, 2592, 2861, 2591, 2592, 2592, 2887, 2616, 2592, 2867, 2592, 2592, 2708, 2592, 2498,
  10502. 2469, 2498, 2497, 2785, 2773, 2499, 2783, 2770, 2877, 2877, 2877, 2772, 2592, 2592, 2345, 2885, 2592, 2592,
  10503. 2592, 2715, 2762, 2515, 2896, 2592, 2592, 2715, 2917, 2516, 2897, 2592, 2592, 2592, 2901, 2906, 2911, 2592,
  10504. 2592, 2956, 2960, 2715, 2902, 2907, 2912, 2593, 2916, 2920, 2820, 2922, 2822, 2592, 2592, 2715, 2927, 2921,
  10505. 2821, 2106, 2592, 2592, 2974, 2408, 2321, 2821, 2106, 2592, 2592, 2983, 2592, 2593, 2404, 2408, 2592, 2592,
  10506. 2717, 2749, 2716, 2928, 2322, 2822, 2593, 2926, 2919, 2820, 2934, 2823, 2592, 2592, 2592, 2651, 2824, 2592,
  10507. 2592, 2592, 2130, 2952, 2592, 2592, 2592, 2592, 2964, 2592, 2592, 2716, 2748, 2592, 2969, 2592, 2592, 2716,
  10508. 2918, 2368, 2970, 2592, 2592, 2592, 2403, 2407, 2592, 2592, 2787, 2211, 2404, 2409, 2592, 2592, 2802, 2837,
  10509. 2987, 2592, 2592, 2592, 2809, 2427, 2592, 2793, 2592, 2592, 2809, 2447, 1073741824, 0x80000000, 539754496,
  10510. 542375936, 402653184, 554434560, 571736064, 545521856, 268451840, 335544320, 268693630, 512, 2048, 256,
  10511. 1024, 0, 1024, 0, 1073741824, 0x80000000, 0, 0, 0, 8388608, 0, 0, 1073741824, 1073741824, 0, 0x80000000,
  10512. 537133056, 4194304, 1048576, 268435456, -1073741824, 0, 0, 0, 1048576, 0, 0, 0, 1572864, 0, 0, 0, 4194304,
  10513. 0, 134217728, 16777216, 0, 0, 32, 64, 98304, 0, 33554432, 8388608, 192, 67108864, 67108864, 67108864,
  10514. 67108864, 16, 32, 4, 0, 8192, 196608, 196608, 229376, 80, 4096, 524288, 8388608, 0, 0, 32, 128, 256, 24576,
  10515. 24600, 24576, 24576, 2, 24576, 24576, 24576, 24584, 24592, 24576, 24578, 24576, 24578, 24576, 24576, 16,
  10516. 512, 2048, 2048, 256, 4096, 32768, 1048576, 4194304, 67108864, 134217728, 268435456, 262144, 134217728, 0,
  10517. 128, 128, 64, 16384, 16384, 16384, 67108864, 32, 32, 4, 4, 4096, 262144, 134217728, 0, 0, 0, 2, 0, 8192,
  10518. 131072, 131072, 4096, 4096, 4096, 4096, 24576, 24576, 24576, 8, 8, 24576, 24576, 16384, 16384, 16384,
  10519. 24576, 24584, 24576, 24576, 24576, 16384, 24576, 536870912, 262144, 0, 0, 32, 2048, 8192, 4, 4096, 4096,
  10520. 4096, 786432, 8388608, 16777216, 0, 128, 16384, 16384, 16384, 32768, 65536, 2097152, 32, 32, 32, 32, 4, 4,
  10521. 4, 4, 4, 4096, 67108864, 67108864, 67108864, 24576, 24576, 24576, 24576, 0, 16384, 16384, 16384, 16384,
  10522. 67108864, 67108864, 8, 67108864, 24576, 8, 8, 8, 24576, 24576, 24576, 24578, 24576, 24576, 24576, 2, 2, 2,
  10523. 16384, 67108864, 67108864, 67108864, 32, 67108864, 8, 8, 24576, 2048, 0x80000000, 536870912, 262144,
  10524. 262144, 262144, 67108864, 8, 24576, 16384, 32768, 1048576, 4194304, 25165824, 67108864, 24576, 32770, 2, 4,
  10525. 112, 512, 98304, 524288, 50, 402653186, 1049090, 1049091, 10, 66, 100925514, 10, 66, 12582914, 0, 0,
  10526. -1678194207, -1678194207, -1041543218, 0, 32768, 0, 0, 32, 65536, 268435456, 1, 1, 513, 1048577, 0,
  10527. 12582912, 0, 0, 0, 4, 1792, 0, 0, 0, 7, 29360128, 0, 0, 0, 8, 0, 0, 0, 12, 1, 1, 0, 0, -604102721,
  10528. -604102721, 4194304, 8388608, 0, 0, 0, 31, 925600, 997981306, 997981306, 997981306, 0, 0, 2048, 8388608, 0,
  10529. 0, 1, 2, 4, 32, 64, 512, 8192, 0, 0, 0, 245760, 997720064, 0, 0, 0, 32, 0, 0, 0, 3, 12, 16, 32, 8, 112,
  10530. 3072, 12288, 16384, 32768, 65536, 131072, 7864320, 16777216, 973078528, 0, 0, 65536, 131072, 3670016,
  10531. 4194304, 16777216, 33554432, 2, 8, 48, 2048, 8192, 16384, 32768, 65536, 131072, 524288, 131072, 524288,
  10532. 3145728, 4194304, 16777216, 33554432, 65536, 131072, 2097152, 4194304, 16777216, 33554432, 134217728,
  10533. 268435456, 536870912, 0, 0, 0, 1024, 0, 8, 48, 2048, 8192, 65536, 33554432, 268435456, 536870912, 65536,
  10534. 268435456, 536870912, 0, 0, 32768, 0, 0, 126, 623104, 65011712, 0, 32, 65536, 536870912, 0, 0, 65536,
  10535. 524288, 0, 32, 65536, 0, 0, 0, 2048, 0, 0, 0, 15482, 245760, -604102721, 0, 0, 0, 18913, 33062912, 925600,
  10536. -605028352, 0, 0, 0, 65536, 31, 8096, 131072, 786432, 3145728, 3145728, 12582912, 50331648, 134217728,
  10537. 268435456, 160, 256, 512, 7168, 131072, 786432, 131072, 786432, 1048576, 2097152, 12582912, 16777216,
  10538. 268435456, 1073741824, 0x80000000, 12582912, 16777216, 33554432, 268435456, 1073741824, 0x80000000, 3, 12,
  10539. 16, 160, 256, 7168, 786432, 1048576, 12582912, 16777216, 268435456, 1073741824, 0, 8, 16, 32, 128, 256,
  10540. 512, 7168, 786432, 1048576, 2097152, 0, 1, 2, 8, 16, 7168, 786432, 1048576, 8388608, 16777216, 16777216,
  10541. 1073741824, 0, 0, 0, 0, 1, 0, 0, 8, 32, 128, 256, 7168, 8, 32, 0, 3072, 0, 8, 32, 3072, 4096, 524288, 8,
  10542. 32, 0, 0, 3072, 4096, 0, 2048, 524288, 8388608, 8, 2048, 0, 0, 1, 12, 256, 4096, 32768, 262144, 1048576,
  10543. 4194304, 67108864, 0, 2048, 0, 2048, 2048, 1073741824, -58805985, -58805985, -58805985, 0, 0, 262144, 0, 0,
  10544. 32, 4194304, 16777216, 134217728, 4382, 172032, -58982400, 0, 0, 2, 28, 256, 4096, 8192, 8192, 32768,
  10545. 131072, 262144, 524288, 1, 2, 12, 256, 4096, 0, 0, 4194304, 67108864, 134217728, 805306368, 1073741824, 0,
  10546. 0, 1, 2, 12, 16, 256, 4096, 1048576, 67108864, 134217728, 268435456, 0, 512, 1048576, 4194304, 201326592,
  10547. 1879048192, 0, 0, 12, 256, 4096, 134217728, 268435456, 536870912, 12, 256, 268435456, 536870912, 0, 12,
  10548. 256, 0, 0, 1, 32, 64, 512, 0, 0, 205236961, 205236961, 0, 0, 0, 1, 96, 640, 1, 10976, 229376, 204996608, 0,
  10549. 640, 2048, 8192, 229376, 1572864, 1572864, 2097152, 201326592, 0, 0, 0, 64, 512, 2048, 229376, 1572864,
  10550. 201326592, 1572864, 201326592, 0, 0, 1, 4382, 0, 1, 32, 2048, 65536, 131072, 1572864, 201326592, 131072,
  10551. 1572864, 134217728, 0, 0, 524288, 524288, 0, 0, 0, -68582786, -68582786, -68582786, 0, 0, 2097152, 524288,
  10552. 0, 524288, 0, 0, 65536, 131072, 1572864, 0, 0, 2, 4, 0, 0, 65011712, -134217728, 0, 0, 0, 0, 2, 4, 120,
  10553. 512, -268435456, 0, 0, 0, 2, 8, 48, 64, 2048, 8192, 98304, 524288, 2097152, 4194304, 25165824, 33554432,
  10554. 134217728, 268435456, 0x80000000, 0, 0, 25165824, 33554432, 134217728, 1879048192, 0x80000000, 0, 0, 4,
  10555. 112, 512, 622592, 65011712, 134217728, -268435456, 16777216, 33554432, 134217728, 1610612736, 0, 0, 0, 64,
  10556. 98304, 524288, 4194304, 16777216, 33554432, 0, 98304, 524288, 16777216, 33554432, 0, 65536, 524288,
  10557. 33554432, 536870912, 1073741824, 0, 65536, 524288, 536870912, 1073741824, 0, 0, 65536, 524288, 536870912,
  10558. 0, 524288, 0, 524288, 524288, 1048576, 2086666240, 0x80000000, 0, -1678194207, 0, 0, 0, 8, 32, 2048,
  10559. 524288, 8388608, 0, 0, 33062912, 436207616, 0x80000000, 0, 0, 32, 64, 2432, 16384, 32768, 32768, 524288,
  10560. 3145728, 4194304, 25165824, 25165824, 167772160, 268435456, 0x80000000, 0, 32, 64, 384, 2048, 16384, 32768,
  10561. 1048576, 2097152, 4194304, 25165824, 32, 64, 128, 256, 2048, 16384, 2048, 16384, 1048576, 4194304,
  10562. 16777216, 33554432, 134217728, 536870912, 1073741824, 0, 0, 2048, 16384, 4194304, 16777216, 33554432,
  10563. 134217728, 805306368, 0, 0, 16777216, 134217728, 268435456, 0x80000000, 0, 622592, 622592, 622592, 8807,
  10564. 8807, 434791, 0, 0, 16777216, 0, 0, 0, 7, 608, 8192, 0, 0, 0, 3, 4, 96, 512, 32, 64, 8192, 0, 0, 16777216,
  10565. 134217728, 0, 0, 2, 4, 8192, 16384, 65536, 2097152, 33554432, 268435456
  10566. ];
  10567. XQueryTokenizer.TOKEN =
  10568. [
  10569. "(0)",
  10570. "ModuleDecl",
  10571. "Annotation",
  10572. "OptionDecl",
  10573. "Operator",
  10574. "Variable",
  10575. "Tag",
  10576. "EndTag",
  10577. "PragmaContents",
  10578. "DirCommentContents",
  10579. "DirPIContents",
  10580. "CDataSectionContents",
  10581. "AttrTest",
  10582. "Wildcard",
  10583. "EQName",
  10584. "IntegerLiteral",
  10585. "DecimalLiteral",
  10586. "DoubleLiteral",
  10587. "PredefinedEntityRef",
  10588. "'\"\"'",
  10589. "EscapeApos",
  10590. "QuotChar",
  10591. "AposChar",
  10592. "ElementContentChar",
  10593. "QuotAttrContentChar",
  10594. "AposAttrContentChar",
  10595. "NCName",
  10596. "QName",
  10597. "S",
  10598. "CharRef",
  10599. "CommentContents",
  10600. "DocTag",
  10601. "DocCommentContents",
  10602. "EOF",
  10603. "'!'",
  10604. "'\"'",
  10605. "'#'",
  10606. "'#)'",
  10607. "''''",
  10608. "'('",
  10609. "'(#'",
  10610. "'(:'",
  10611. "'(:~'",
  10612. "')'",
  10613. "'*'",
  10614. "'*'",
  10615. "','",
  10616. "'-->'",
  10617. "'.'",
  10618. "'/'",
  10619. "'/>'",
  10620. "':'",
  10621. "':)'",
  10622. "';'",
  10623. "'<!--'",
  10624. "'<![CDATA['",
  10625. "'<?'",
  10626. "'='",
  10627. "'>'",
  10628. "'?'",
  10629. "'?>'",
  10630. "'NaN'",
  10631. "'['",
  10632. "']'",
  10633. "']]>'",
  10634. "'after'",
  10635. "'all'",
  10636. "'allowing'",
  10637. "'ancestor'",
  10638. "'ancestor-or-self'",
  10639. "'and'",
  10640. "'any'",
  10641. "'append'",
  10642. "'array'",
  10643. "'as'",
  10644. "'ascending'",
  10645. "'at'",
  10646. "'attribute'",
  10647. "'base-uri'",
  10648. "'before'",
  10649. "'boundary-space'",
  10650. "'break'",
  10651. "'by'",
  10652. "'case'",
  10653. "'cast'",
  10654. "'castable'",
  10655. "'catch'",
  10656. "'check'",
  10657. "'child'",
  10658. "'collation'",
  10659. "'collection'",
  10660. "'comment'",
  10661. "'constraint'",
  10662. "'construction'",
  10663. "'contains'",
  10664. "'content'",
  10665. "'context'",
  10666. "'continue'",
  10667. "'copy'",
  10668. "'copy-namespaces'",
  10669. "'count'",
  10670. "'decimal-format'",
  10671. "'decimal-separator'",
  10672. "'declare'",
  10673. "'default'",
  10674. "'delete'",
  10675. "'descendant'",
  10676. "'descendant-or-self'",
  10677. "'descending'",
  10678. "'diacritics'",
  10679. "'different'",
  10680. "'digit'",
  10681. "'distance'",
  10682. "'div'",
  10683. "'document'",
  10684. "'document-node'",
  10685. "'element'",
  10686. "'else'",
  10687. "'empty'",
  10688. "'empty-sequence'",
  10689. "'encoding'",
  10690. "'end'",
  10691. "'entire'",
  10692. "'eq'",
  10693. "'every'",
  10694. "'exactly'",
  10695. "'except'",
  10696. "'exit'",
  10697. "'external'",
  10698. "'first'",
  10699. "'following'",
  10700. "'following-sibling'",
  10701. "'for'",
  10702. "'foreach'",
  10703. "'foreign'",
  10704. "'from'",
  10705. "'ft-option'",
  10706. "'ftand'",
  10707. "'ftnot'",
  10708. "'ftor'",
  10709. "'function'",
  10710. "'ge'",
  10711. "'greatest'",
  10712. "'group'",
  10713. "'grouping-separator'",
  10714. "'gt'",
  10715. "'idiv'",
  10716. "'if'",
  10717. "'import'",
  10718. "'in'",
  10719. "'index'",
  10720. "'infinity'",
  10721. "'inherit'",
  10722. "'insensitive'",
  10723. "'insert'",
  10724. "'instance'",
  10725. "'integrity'",
  10726. "'intersect'",
  10727. "'into'",
  10728. "'is'",
  10729. "'item'",
  10730. "'json'",
  10731. "'json-item'",
  10732. "'key'",
  10733. "'language'",
  10734. "'last'",
  10735. "'lax'",
  10736. "'le'",
  10737. "'least'",
  10738. "'let'",
  10739. "'levels'",
  10740. "'loop'",
  10741. "'lowercase'",
  10742. "'lt'",
  10743. "'minus-sign'",
  10744. "'mod'",
  10745. "'modify'",
  10746. "'module'",
  10747. "'most'",
  10748. "'namespace'",
  10749. "'namespace-node'",
  10750. "'ne'",
  10751. "'next'",
  10752. "'no'",
  10753. "'no-inherit'",
  10754. "'no-preserve'",
  10755. "'node'",
  10756. "'nodes'",
  10757. "'not'",
  10758. "'object'",
  10759. "'occurs'",
  10760. "'of'",
  10761. "'on'",
  10762. "'only'",
  10763. "'option'",
  10764. "'or'",
  10765. "'order'",
  10766. "'ordered'",
  10767. "'ordering'",
  10768. "'paragraph'",
  10769. "'paragraphs'",
  10770. "'parent'",
  10771. "'pattern-separator'",
  10772. "'per-mille'",
  10773. "'percent'",
  10774. "'phrase'",
  10775. "'position'",
  10776. "'preceding'",
  10777. "'preceding-sibling'",
  10778. "'preserve'",
  10779. "'previous'",
  10780. "'processing-instruction'",
  10781. "'relationship'",
  10782. "'rename'",
  10783. "'replace'",
  10784. "'return'",
  10785. "'returning'",
  10786. "'revalidation'",
  10787. "'same'",
  10788. "'satisfies'",
  10789. "'schema'",
  10790. "'schema-attribute'",
  10791. "'schema-element'",
  10792. "'score'",
  10793. "'self'",
  10794. "'sensitive'",
  10795. "'sentence'",
  10796. "'sentences'",
  10797. "'skip'",
  10798. "'sliding'",
  10799. "'some'",
  10800. "'stable'",
  10801. "'start'",
  10802. "'stemming'",
  10803. "'stop'",
  10804. "'strict'",
  10805. "'strip'",
  10806. "'structured-item'",
  10807. "'switch'",
  10808. "'text'",
  10809. "'then'",
  10810. "'thesaurus'",
  10811. "'times'",
  10812. "'to'",
  10813. "'treat'",
  10814. "'try'",
  10815. "'tumbling'",
  10816. "'type'",
  10817. "'typeswitch'",
  10818. "'union'",
  10819. "'unique'",
  10820. "'unordered'",
  10821. "'updating'",
  10822. "'uppercase'",
  10823. "'using'",
  10824. "'validate'",
  10825. "'value'",
  10826. "'variable'",
  10827. "'version'",
  10828. "'weight'",
  10829. "'when'",
  10830. "'where'",
  10831. "'while'",
  10832. "'wildcards'",
  10833. "'window'",
  10834. "'with'",
  10835. "'without'",
  10836. "'word'",
  10837. "'words'",
  10838. "'xquery'",
  10839. "'zero-digit'",
  10840. "'{'",
  10841. "'{{'",
  10842. "'|'",
  10843. "'}'",
  10844. "'}}'"
  10845. ];
  10846. },{}],"/node_modules/xqlint/lib/lexers/jsoniq_lexer.js":[function(_dereq_,module,exports){
  10847. 'use strict';
  10848. var JSONiqTokenizer = _dereq_('./JSONiqTokenizer').JSONiqTokenizer;
  10849. var Lexer = _dereq_('./lexer').Lexer;
  10850. var keys = 'NaN|after|allowing|ancestor|ancestor-or-self|and|append|array|as|ascending|at|attribute|base-uri|before|boundary-space|break|by|case|cast|castable|catch|child|collation|comment|constraint|construction|contains|context|continue|copy|copy-namespaces|count|decimal-format|decimal-separator|declare|default|delete|descendant|descendant-or-self|descending|digit|div|document|document-node|element|else|empty|empty-sequence|encoding|end|eq|every|except|exit|external|false|first|following|following-sibling|for|from|ft-option|function|ge|greatest|group|grouping-separator|gt|idiv|if|import|in|index|infinity|insert|instance|integrity|intersect|into|is|item|json|json-item|jsoniq|last|lax|le|least|let|loop|lt|minus-sign|mod|modify|module|namespace|namespace-node|ne|next|node|nodes|not|null|object|of|only|option|or|order|ordered|ordering|paragraphs|parent|pattern-separator|per-mille|percent|preceding|preceding-sibling|previous|processing-instruction|rename|replace|return|returning|revalidation|satisfies|schema|schema-attribute|schema-element|score|select|self|sentences|sliding|some|stable|start|strict|switch|text|then|times|to|treat|true|try|tumbling|type|typeswitch|union|unordered|updating|validate|value|variable|version|when|where|while|window|with|words|xquery|zero-digit'.split('|');
  10851. var keywords = keys.map(function(val) { return { name: '\'' + val + '\'', token: 'keyword' }; });
  10852. var ncnames = keys.map(function(val) { return { name: '\'' + val + '\'', token: 'text', next: function(stack){ stack.pop(); } }; });
  10853. var cdata = 'constant.language';
  10854. var number = 'constant';
  10855. var xmlcomment = 'comment';
  10856. var pi = 'xml-pe';
  10857. var pragma = 'constant.buildin';
  10858. var n = function(name){
  10859. return '\'' + name + '\'';
  10860. };
  10861. var Rules = {
  10862. start: [
  10863. { name: n('(#'), token: pragma, next: function(stack){ stack.push('Pragma'); } },
  10864. { name: n('(:'), token: 'comment', next: function(stack){ stack.push('Comment'); } },
  10865. { name: n('(:~'), token: 'comment.doc', next: function(stack){ stack.push('CommentDoc'); } },
  10866. { name: n('<!--'), token: xmlcomment, next: function(stack){ stack.push('XMLComment'); } },
  10867. { name: n('<?'), token: pi, next: function(stack) { stack.push('PI'); } },
  10868. { name: n('\'\''), token: 'string', next: function(stack){ stack.push('AposString'); } },
  10869. { name: n('"'), token: 'string', next: function(stack){ stack.push('QuotString'); } },
  10870. { name: 'Annotation', token: 'support.function' },
  10871. { name: 'ModuleDecl', token: 'keyword', next: function(stack){ stack.push('Prefix'); } },
  10872. { name: 'OptionDecl', token: 'keyword', next: function(stack){ stack.push('_EQName'); } },
  10873. { name: 'AttrTest', token: 'support.type' },
  10874. { name: 'Variable', token: 'variable' },
  10875. { name: n('<![CDATA['), token: cdata, next: function(stack){ stack.push('CData'); } },
  10876. { name: 'IntegerLiteral', token: number },
  10877. { name: 'DecimalLiteral', token: number },
  10878. { name: 'DoubleLiteral', token: number },
  10879. { name: 'Operator', token: 'keyword.operator' },
  10880. { name: 'EQName', token: function(val) { return keys.indexOf(val) !== -1 ? 'keyword' : 'support.function'; } },
  10881. { name: n('('), token: 'lparen' },
  10882. { name: n(')'), token: 'rparen' },
  10883. { name: 'Tag', token: 'meta.tag', next: function(stack){ stack.push('StartTag'); } },
  10884. { name: n('}'), token: 'text', next: function(stack){ if(stack.length > 1) { stack.pop(); } } },
  10885. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } } //, next: function(stack){ if(stack.length > 1) { stack.pop(); } } }
  10886. ].concat(keywords),
  10887. _EQName: [
  10888. { name: 'EQName', token: 'text', next: function(stack) { stack.pop(); } }
  10889. ].concat(ncnames),
  10890. Prefix: [
  10891. { name: 'NCName', token: 'text', next: function(stack) { stack.pop(); } }
  10892. ].concat(ncnames),
  10893. StartTag: [
  10894. { name: n('>'), token: 'meta.tag', next: function(stack){ stack.push('TagContent'); } },
  10895. { name: 'QName', token: 'entity.other.attribute-name' },
  10896. { name: n('='), token: 'text' },
  10897. { name: n('\'\''), token: 'string', next: function(stack){ stack.push('AposAttr'); } },
  10898. { name: n('"'), token: 'string', next: function(stack){ stack.push('QuotAttr'); } },
  10899. { name: n('/>'), token: 'meta.tag.r', next: function(stack){ stack.pop(); } }
  10900. ],
  10901. TagContent: [
  10902. { name: 'ElementContentChar', token: 'text' },
  10903. { name: n('<![CDATA['), token: cdata, next: function(stack){ stack.push('CData'); } },
  10904. { name: n('<!--'), token: xmlcomment, next: function(stack){ stack.push('XMLComment'); } },
  10905. { name: 'Tag', token: 'meta.tag', next: function(stack){ stack.push('StartTag'); } },
  10906. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  10907. { name: 'CharRef', token: 'constant.language.escape' },
  10908. { name: n('{{'), token: 'text' },
  10909. { name: n('}}'), token: 'text' },
  10910. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } },
  10911. { name: 'EndTag', token: 'meta.tag', next: function(stack){ stack.pop(); stack.pop(); } }
  10912. ],
  10913. AposAttr: [
  10914. { name: n('\'\''), token: 'string', next: function(stack){ stack.pop(); } },
  10915. { name: 'EscapeApos', token: 'constant.language.escape' },
  10916. { name: 'AposAttrContentChar', token: 'string' },
  10917. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  10918. { name: 'CharRef', token: 'constant.language.escape' },
  10919. { name: n('{{'), token: 'string' },
  10920. { name: n('}}'), token: 'string' },
  10921. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } }
  10922. ],
  10923. QuotAttr: [
  10924. { name: n('\"'), token: 'string', next: function(stack){ stack.pop(); } },
  10925. { name: 'EscapeQuot', token: 'constant.language.escape' },
  10926. { name: 'QuotAttrContentChar', token: 'string' },
  10927. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  10928. { name: 'CharRef', token: 'constant.language.escape' },
  10929. { name: n('{{'), token: 'string' },
  10930. { name: n('}}'), token: 'string' },
  10931. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } }
  10932. ],
  10933. Pragma: [
  10934. { name: 'PragmaContents', token: pragma },
  10935. { name: n('#'), token: pragma },
  10936. { name: n('#)'), token: pragma, next: function(stack){ stack.pop(); } }
  10937. ],
  10938. Comment: [
  10939. { name: 'CommentContents', token: 'comment' },
  10940. { name: n('(:'), token: 'comment', next: function(stack){ stack.push('Comment'); } },
  10941. { name: n(':)'), token: 'comment', next: function(stack){ stack.pop(); } }
  10942. ],
  10943. CommentDoc: [
  10944. { name: 'DocCommentContents', token: 'comment.doc' },
  10945. { name: 'DocTag', token: 'comment.doc.tag' },
  10946. { name: n('(:'), token: 'comment.doc', next: function(stack){ stack.push('CommentDoc'); } },
  10947. { name: n(':)'), token: 'comment.doc', next: function(stack){ stack.pop(); } }
  10948. ],
  10949. XMLComment: [
  10950. { name: 'DirCommentContents', token: xmlcomment },
  10951. { name: n('-->'), token: xmlcomment, next: function(stack){ stack.pop(); } }
  10952. ],
  10953. CData: [
  10954. { name: 'CDataSectionContents', token: cdata },
  10955. { name: n(']]>'), token: cdata, next: function(stack){ stack.pop(); } }
  10956. ],
  10957. PI: [
  10958. { name: 'DirPIContents', token: pi },
  10959. { name: n('?'), token: pi },
  10960. { name: n('?>'), token: pi, next: function(stack){ stack.pop(); } }
  10961. ],
  10962. AposString: [
  10963. { name: n('\'\''), token: 'string', next: function(stack){ stack.pop(); } },
  10964. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  10965. { name: 'CharRef', token: 'constant.language.escape' },
  10966. { name: 'EscapeApos', token: 'constant.language.escape' },
  10967. { name: 'AposChar', token: 'string' }
  10968. ],
  10969. QuotString: [
  10970. { name: n('"'), token: 'string', next: function(stack){ stack.pop(); } },
  10971. { name: 'JSONPredefinedCharRef', token: 'constant.language.escape' },
  10972. { name: 'JSONCharRef', token: 'constant.language.escape' },
  10973. { name: 'JSONChar', token: 'string' }
  10974. ]
  10975. };
  10976. exports.JSONiqLexer = function(){ return new Lexer(JSONiqTokenizer, Rules); };
  10977. },{"./JSONiqTokenizer":"/node_modules/xqlint/lib/lexers/JSONiqTokenizer.js","./lexer":"/node_modules/xqlint/lib/lexers/lexer.js"}],"/node_modules/xqlint/lib/lexers/lexer.js":[function(_dereq_,module,exports){
  10978. 'use strict';
  10979. var TokenHandler = function(code) {
  10980. var input = code;
  10981. this.tokens = [];
  10982. this.reset = function() {
  10983. input = input;
  10984. this.tokens = [];
  10985. };
  10986. this.startNonterminal = function() {};
  10987. this.endNonterminal = function() {};
  10988. this.terminal = function(name, begin, end) {
  10989. this.tokens.push({
  10990. name: name,
  10991. value: input.substring(begin, end)
  10992. });
  10993. };
  10994. this.whitespace = function(begin, end) {
  10995. this.tokens.push({
  10996. name: 'WS',
  10997. value: input.substring(begin, end)
  10998. });
  10999. };
  11000. };
  11001. exports.Lexer = function(Tokenizer, Rules) {
  11002. this.tokens = [];
  11003. this.getLineTokens = function(line, state) {
  11004. state = (state === 'start' || !state) ? '["start"]' : state;
  11005. var stack = JSON.parse(state);
  11006. var h = new TokenHandler(line);
  11007. var tokenizer = new Tokenizer(line, h);
  11008. var tokens = [];
  11009. while(true) {
  11010. var currentState = stack[stack.length - 1];
  11011. try {
  11012. h.tokens = [];
  11013. tokenizer['parse_' + currentState]();
  11014. var info = null;
  11015. if(h.tokens.length > 1 && h.tokens[0].name === 'WS') {
  11016. tokens.push({
  11017. type: 'text',
  11018. value: h.tokens[0].value
  11019. });
  11020. h.tokens.splice(0, 1);
  11021. }
  11022. var token = h.tokens[0];
  11023. var rules = Rules[currentState];
  11024. for(var k = 0; k < rules.length; k++) {
  11025. var rule = Rules[currentState][k];
  11026. if((typeof(rule.name) === 'function' && rule.name(token)) || rule.name === token.name) {
  11027. info = rule;
  11028. break;
  11029. }
  11030. }
  11031. if(token.name === 'EOF') { break; }
  11032. if(token.value === '') { throw 'Encountered empty string lexical rule.'; }
  11033. tokens.push({
  11034. type: info === null ? 'text' : (typeof(info.token) === 'function' ? info.token(token.value) : info.token),
  11035. value: token.value
  11036. });
  11037. if(info && info.next) {
  11038. info.next(stack);
  11039. }
  11040. } catch(e) {
  11041. if(e instanceof tokenizer.ParseException) {
  11042. var index = 0;
  11043. for(var i=0; i < tokens.length; i++) {
  11044. index += tokens[i].value.length;
  11045. }
  11046. tokens.push({ type: 'text', value: line.substring(index) });
  11047. return {
  11048. tokens: tokens,
  11049. state: JSON.stringify(['start'])
  11050. };
  11051. } else {
  11052. throw e;
  11053. }
  11054. }
  11055. }
  11056. return {
  11057. tokens: tokens,
  11058. state: JSON.stringify(stack)
  11059. };
  11060. };
  11061. };
  11062. },{}],"/node_modules/xqlint/lib/lexers/xquery_lexer.js":[function(_dereq_,module,exports){
  11063. 'use strict';
  11064. var XQueryTokenizer = _dereq_('./XQueryTokenizer').XQueryTokenizer;
  11065. var Lexer = _dereq_('./lexer').Lexer;
  11066. var keys = 'after|ancestor|ancestor-or-self|and|as|ascending|attribute|before|case|cast|castable|child|collation|comment|copy|count|declare|default|delete|descendant|descendant-or-self|descending|div|document|document-node|element|else|empty|empty-sequence|end|eq|every|except|first|following|following-sibling|for|function|ge|group|gt|idiv|if|import|insert|instance|intersect|into|is|item|last|le|let|lt|mod|modify|module|namespace|namespace-node|ne|node|only|or|order|ordered|parent|preceding|preceding-sibling|processing-instruction|rename|replace|return|satisfies|schema-attribute|schema-element|self|some|stable|start|switch|text|to|treat|try|typeswitch|union|unordered|validate|where|with|xquery|contains|paragraphs|sentences|times|words|by|collectionreturn|variable|version|option|when|encoding|toswitch|catch|tumbling|sliding|window|at|using|stemming|collection|schema|while|on|nodes|index|external|then|in|updating|value|of|containsbreak|loop|continue|exit|returning|append|json|position|strict'.split('|');
  11067. var keywords = keys.map(function(val) { return { name: '\'' + val + '\'', token: 'keyword' }; });
  11068. var ncnames = keys.map(function(val) { return { name: '\'' + val + '\'', token: 'text', next: function(stack){ stack.pop(); } }; });
  11069. var cdata = 'constant.language';
  11070. var number = 'constant';
  11071. var xmlcomment = 'comment';
  11072. var pi = 'xml-pe';
  11073. var pragma = 'constant.buildin';
  11074. var n = function(name){
  11075. return '\'' + name + '\'';
  11076. };
  11077. var Rules = {
  11078. start: [
  11079. { name: n('(#'), token: pragma, next: function(stack){ stack.push('Pragma'); } },
  11080. { name: n('(:'), token: 'comment', next: function(stack){ stack.push('Comment'); } },
  11081. { name: n('(:~'), token: 'comment.doc', next: function(stack){ stack.push('CommentDoc'); } },
  11082. { name: n('<!--'), token: xmlcomment, next: function(stack){ stack.push('XMLComment'); } },
  11083. { name: n('<?'), token: pi, next: function(stack) { stack.push('PI'); } },
  11084. { name: n('\'\''), token: 'string', next: function(stack){ stack.push('AposString'); } },
  11085. { name: n('"'), token: 'string', next: function(stack){ stack.push('QuotString'); } },
  11086. { name: 'Annotation', token: 'support.function' },
  11087. { name: 'ModuleDecl', token: 'keyword', next: function(stack){ stack.push('Prefix'); } },
  11088. { name: 'OptionDecl', token: 'keyword', next: function(stack){ stack.push('_EQName'); } },
  11089. { name: 'AttrTest', token: 'support.type' },
  11090. { name: 'Variable', token: 'variable' },
  11091. { name: n('<![CDATA['), token: cdata, next: function(stack){ stack.push('CData'); } },
  11092. { name: 'IntegerLiteral', token: number },
  11093. { name: 'DecimalLiteral', token: number },
  11094. { name: 'DoubleLiteral', token: number },
  11095. { name: 'Operator', token: 'keyword.operator' },
  11096. { name: 'EQName', token: function(val) { return keys.indexOf(val) !== -1 ? 'keyword' : 'support.function'; } },
  11097. { name: n('('), token: 'lparen' },
  11098. { name: n(')'), token: 'rparen' },
  11099. { name: 'Tag', token: 'meta.tag', next: function(stack){ stack.push('StartTag'); } },
  11100. { name: n('}'), token: 'text', next: function(stack){ if(stack.length > 1) { stack.pop(); } } },
  11101. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } } //, next: function(stack){ if(stack.length > 1) { stack.pop(); } } }
  11102. ].concat(keywords),
  11103. _EQName: [
  11104. { name: 'EQName', token: 'text', next: function(stack) { stack.pop(); } }
  11105. ].concat(ncnames),
  11106. Prefix: [
  11107. { name: 'NCName', token: 'text', next: function(stack) { stack.pop(); } }
  11108. ].concat(ncnames),
  11109. StartTag: [
  11110. { name: n('>'), token: 'meta.tag', next: function(stack){ stack.push('TagContent'); } },
  11111. { name: 'QName', token: 'entity.other.attribute-name' },
  11112. { name: n('='), token: 'text' },
  11113. { name: n('\'\''), token: 'string', next: function(stack){ stack.push('AposAttr'); } },
  11114. { name: n('"'), token: 'string', next: function(stack){ stack.push('QuotAttr'); } },
  11115. { name: n('/>'), token: 'meta.tag.r', next: function(stack){ stack.pop(); } }
  11116. ],
  11117. TagContent: [
  11118. { name: 'ElementContentChar', token: 'text' },
  11119. { name: n('<![CDATA['), token: cdata, next: function(stack){ stack.push('CData'); } },
  11120. { name: n('<!--'), token: xmlcomment, next: function(stack){ stack.push('XMLComment'); } },
  11121. { name: 'Tag', token: 'meta.tag', next: function(stack){ stack.push('StartTag'); } },
  11122. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  11123. { name: 'CharRef', token: 'constant.language.escape' },
  11124. { name: n('{{'), token: 'text' },
  11125. { name: n('}}'), token: 'text' },
  11126. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } },
  11127. { name: 'EndTag', token: 'meta.tag', next: function(stack){ stack.pop(); stack.pop(); } }
  11128. ],
  11129. AposAttr: [
  11130. { name: n('\'\''), token: 'string', next: function(stack){ stack.pop(); } },
  11131. { name: 'EscapeApos', token: 'constant.language.escape' },
  11132. { name: 'AposAttrContentChar', token: 'string' },
  11133. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  11134. { name: 'CharRef', token: 'constant.language.escape' },
  11135. { name: n('{{'), token: 'string' },
  11136. { name: n('}}'), token: 'string' },
  11137. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } }
  11138. ],
  11139. QuotAttr: [
  11140. { name: n('\"'), token: 'string', next: function(stack){ stack.pop(); } },
  11141. { name: 'EscapeQuot', token: 'constant.language.escape' },
  11142. { name: 'QuotAttrContentChar', token: 'string' },
  11143. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  11144. { name: 'CharRef', token: 'constant.language.escape' },
  11145. { name: n('{{'), token: 'string' },
  11146. { name: n('}}'), token: 'string' },
  11147. { name: n('{'), token: 'text', next: function(stack){ stack.push('start'); } }
  11148. ],
  11149. Pragma: [
  11150. { name: 'PragmaContents', token: pragma },
  11151. { name: n('#'), token: pragma },
  11152. { name: n('#)'), token: pragma, next: function(stack){ stack.pop(); } }
  11153. ],
  11154. Comment: [
  11155. { name: 'CommentContents', token: 'comment' },
  11156. { name: n('(:'), token: 'comment', next: function(stack){ stack.push('Comment'); } },
  11157. { name: n(':)'), token: 'comment', next: function(stack){ stack.pop(); } }
  11158. ],
  11159. CommentDoc: [
  11160. { name: 'DocCommentContents', token: 'comment.doc' },
  11161. { name: 'DocTag', token: 'comment.doc.tag' },
  11162. { name: n('(:'), token: 'comment.doc', next: function(stack){ stack.push('CommentDoc'); } },
  11163. { name: n(':)'), token: 'comment.doc', next: function(stack){ stack.pop(); } }
  11164. ],
  11165. XMLComment: [
  11166. { name: 'DirCommentContents', token: xmlcomment },
  11167. { name: n('-->'), token: xmlcomment, next: function(stack){ stack.pop(); } }
  11168. ],
  11169. CData: [
  11170. { name: 'CDataSectionContents', token: cdata },
  11171. { name: n(']]>'), token: cdata, next: function(stack){ stack.pop(); } }
  11172. ],
  11173. PI: [
  11174. { name: 'DirPIContents', token: pi },
  11175. { name: n('?'), token: pi },
  11176. { name: n('?>'), token: pi, next: function(stack){ stack.pop(); } }
  11177. ],
  11178. AposString: [
  11179. { name: n('\'\''), token: 'string', next: function(stack){ stack.pop(); } },
  11180. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  11181. { name: 'CharRef', token: 'constant.language.escape' },
  11182. { name: 'EscapeApos', token: 'constant.language.escape' },
  11183. { name: 'AposChar', token: 'string' }
  11184. ],
  11185. QuotString: [
  11186. { name: n('"'), token: 'string', next: function(stack){ stack.pop(); } },
  11187. { name: 'PredefinedEntityRef', token: 'constant.language.escape' },
  11188. { name: 'CharRef', token: 'constant.language.escape' },
  11189. { name: 'EscapeQuot', token: 'constant.language.escape' },
  11190. { name: 'QuotChar', token: 'string' }
  11191. ]
  11192. };
  11193. exports.XQueryLexer = function(){ return new Lexer(XQueryTokenizer, Rules); };
  11194. },{"./XQueryTokenizer":"/node_modules/xqlint/lib/lexers/XQueryTokenizer.js","./lexer":"/node_modules/xqlint/lib/lexers/lexer.js"}],"/node_modules/xqlint/lib/parsers/JSONParseTreeHandler.js":[function(_dereq_,module,exports){
  11195. exports.JSONParseTreeHandler = function (code) {
  11196. 'use strict';
  11197. var toBeIndex = ['VarDecl', 'FunctionDecl'];
  11198. var list = [
  11199. 'OrExpr', 'AndExpr', 'ComparisonExpr', 'StringConcatExpr', 'RangeExpr',
  11200. 'AdditiveExpr', 'MultiplicativeExpr',
  11201. 'UnionExpr', 'IntersectExceptExpr', 'InstanceofExpr', 'TreatExpr', 'CastableExpr', 'CastExpr', 'UnaryExpr', 'ValueExpr',
  11202. 'FTContainsExpr', 'SimpleMapExpr', 'PathExpr', 'RelativePathExpr', 'PostfixExpr', 'StepExpr'
  11203. ];
  11204. var ast = null;
  11205. var ptr = null;
  11206. var remains = code;
  11207. var cursor = 0;
  11208. var lineCursor = 0;
  11209. var line = 0;
  11210. function createNode(name) {
  11211. return {
  11212. name: name,
  11213. children: [],
  11214. getParent: null,
  11215. pos: {
  11216. sl: 0,
  11217. sc: 0,
  11218. el: 0,
  11219. ec: 0
  11220. }
  11221. };
  11222. }
  11223. function pushNode(name) { //begin
  11224. var node = createNode(name);
  11225. if (ast === null) {
  11226. ast = node;
  11227. ast.index = [];
  11228. ptr = node;
  11229. } else {
  11230. node.getParent = ptr;
  11231. ptr.children.push(node);
  11232. ptr = ptr.children[ptr.children.length - 1];
  11233. }
  11234. }
  11235. function popNode() {
  11236. if (ptr.children.length > 0) {
  11237. var s = ptr.children[0];
  11238. var e = null;
  11239. for (var i = ptr.children.length - 1; i >= 0; i--) {
  11240. e = ptr.children[i];
  11241. if (e.pos.el !== 0 || e.pos.ec !== 0) {
  11242. break;
  11243. }
  11244. }
  11245. ptr.pos.sl = s.pos.sl;
  11246. ptr.pos.sc = s.pos.sc;
  11247. ptr.pos.el = e.pos.el;
  11248. ptr.pos.ec = e.pos.ec;
  11249. }
  11250. if (ptr.name === 'FunctionName') {
  11251. ptr.name = 'EQName';
  11252. }
  11253. if (ptr.name === 'EQName' && ptr.value === undefined) {
  11254. ptr.value = ptr.children[0].value;
  11255. ptr.children.pop();
  11256. }
  11257. if(toBeIndex.indexOf(ptr.name) !== -1) {
  11258. ast.index.push(ptr);
  11259. }
  11260. if (ptr.getParent !== null) {
  11261. ptr = ptr.getParent;
  11262. } else {
  11263. }
  11264. if (ptr.children.length > 0) {
  11265. var lastChild = ptr.children[ptr.children.length - 1];
  11266. if (lastChild.children.length === 1 && list.indexOf(lastChild.name) !== -1) {
  11267. ptr.children[ptr.children.length - 1] = lastChild.children[0];
  11268. }
  11269. }
  11270. }
  11271. this.closeParseTree = function () {
  11272. while (ptr.getParent !== null) {
  11273. popNode();
  11274. }
  11275. popNode();
  11276. };
  11277. this.peek = function () {
  11278. return ptr;
  11279. };
  11280. this.getParseTree = function () {
  11281. return ast;
  11282. };
  11283. this.reset = function () {}; //input
  11284. this.startNonterminal = function (name, begin) {
  11285. pushNode(name, begin);
  11286. };
  11287. this.endNonterminal = function () {//name, end
  11288. popNode();
  11289. };
  11290. this.terminal = function (name, begin, end) {
  11291. name = (name.substring(0, 1) === '\'' && name.substring(name.length - 1) === '\'') ? 'TOKEN' : name;
  11292. pushNode(name, begin);
  11293. setValue(ptr, begin, end);
  11294. popNode();
  11295. };
  11296. this.whitespace = function (begin, end) {
  11297. var name = 'WS';
  11298. pushNode(name, begin);
  11299. setValue(ptr, begin, end);
  11300. popNode();
  11301. };
  11302. function setValue(node, begin, end) {
  11303. var e = end - cursor;
  11304. ptr.value = remains.substring(0, e);
  11305. remains = remains.substring(e);
  11306. cursor = end;
  11307. var sl = line;
  11308. var sc = lineCursor;
  11309. var el = sl + ptr.value.split('\n').length - 1;
  11310. var lastIdx = ptr.value.lastIndexOf('\n');
  11311. var ec = lastIdx === -1 ? sc + ptr.value.length : ptr.value.substring(lastIdx + 1).length;
  11312. line = el;
  11313. lineCursor = ec;
  11314. ptr.pos.sl = sl;
  11315. ptr.pos.sc = sc;
  11316. ptr.pos.el = el;
  11317. ptr.pos.ec = ec;
  11318. }
  11319. };
  11320. },{}],"/node_modules/xqlint/lib/parsers/JSONiqParser.js":[function(_dereq_,module,exports){
  11321. var JSONiqParser = exports.JSONiqParser = function JSONiqParser(string, parsingEventHandler)
  11322. {
  11323. init(string, parsingEventHandler);
  11324. var self = this;
  11325. this.ParseException = function(b, e, s, o, x)
  11326. {
  11327. var
  11328. begin = b,
  11329. end = e,
  11330. state = s,
  11331. offending = o,
  11332. expected = x;
  11333. this.getBegin = function() {return begin;};
  11334. this.getEnd = function() {return end;};
  11335. this.getState = function() {return state;};
  11336. this.getExpected = function() {return expected;};
  11337. this.getOffending = function() {return offending;};
  11338. this.getMessage = function()
  11339. {
  11340. return offending < 0 ? "lexical analysis failed" : "syntax error";
  11341. };
  11342. };
  11343. function init(string, parsingEventHandler)
  11344. {
  11345. eventHandler = parsingEventHandler;
  11346. input = string;
  11347. size = string.length;
  11348. reset(0, 0, 0);
  11349. }
  11350. this.getInput = function()
  11351. {
  11352. return input;
  11353. };
  11354. function reset(l, b, e)
  11355. {
  11356. b0 = b; e0 = b;
  11357. l1 = l; b1 = b; e1 = e;
  11358. l2 = 0;
  11359. end = e;
  11360. ex = -1;
  11361. memo = {};
  11362. eventHandler.reset(input);
  11363. }
  11364. this.getOffendingToken = function(e)
  11365. {
  11366. var o = e.getOffending();
  11367. return o >= 0 ? JSONiqParser.TOKEN[o] : null;
  11368. };
  11369. this.getExpectedTokenSet = function(e)
  11370. {
  11371. var expected;
  11372. if (e.getExpected() < 0)
  11373. {
  11374. expected = JSONiqParser.getTokenSet(- e.getState());
  11375. }
  11376. else
  11377. {
  11378. expected = [JSONiqParser.TOKEN[e.getExpected()]];
  11379. }
  11380. return expected;
  11381. };
  11382. this.getErrorMessage = function(e)
  11383. {
  11384. var tokenSet = this.getExpectedTokenSet(e);
  11385. var found = this.getOffendingToken(e);
  11386. var prefix = input.substring(0, e.getBegin());
  11387. var lines = prefix.split("\n");
  11388. var line = lines.length;
  11389. var column = lines[line - 1].length + 1;
  11390. var size = e.getEnd() - e.getBegin();
  11391. return e.getMessage()
  11392. + (found == null ? "" : ", found " + found)
  11393. + "\nwhile expecting "
  11394. + (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
  11395. + "\n"
  11396. + (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
  11397. + "at line " + line + ", column " + column + ":\n..."
  11398. + input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
  11399. + "...";
  11400. };
  11401. this.parse_XQuery = function()
  11402. {
  11403. eventHandler.startNonterminal("XQuery", e0);
  11404. lookahead1W(277); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  11405. whitespace();
  11406. parse_Module();
  11407. shift(25); // EOF
  11408. eventHandler.endNonterminal("XQuery", e0);
  11409. };
  11410. function parse_Module()
  11411. {
  11412. eventHandler.startNonterminal("Module", e0);
  11413. switch (l1)
  11414. {
  11415. case 170: // 'jsoniq'
  11416. lookahead2W(168); // S^WS | '#' | '(' | '(:' | 'encoding' | 'version'
  11417. break;
  11418. default:
  11419. lk = l1;
  11420. }
  11421. if (lk == 64682 // 'jsoniq' 'encoding'
  11422. || lk == 137898) // 'jsoniq' 'version'
  11423. {
  11424. parse_VersionDecl();
  11425. }
  11426. lookahead1W(277); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  11427. switch (l1)
  11428. {
  11429. case 185: // 'module'
  11430. lookahead2W(146); // S^WS | '#' | '(' | '(:' | 'namespace'
  11431. break;
  11432. default:
  11433. lk = l1;
  11434. }
  11435. switch (lk)
  11436. {
  11437. case 95929: // 'module' 'namespace'
  11438. whitespace();
  11439. parse_LibraryModule();
  11440. break;
  11441. default:
  11442. whitespace();
  11443. parse_MainModule();
  11444. }
  11445. eventHandler.endNonterminal("Module", e0);
  11446. }
  11447. function parse_VersionDecl()
  11448. {
  11449. eventHandler.startNonterminal("VersionDecl", e0);
  11450. shift(170); // 'jsoniq'
  11451. lookahead1W(120); // S^WS | '(:' | 'encoding' | 'version'
  11452. switch (l1)
  11453. {
  11454. case 126: // 'encoding'
  11455. shift(126); // 'encoding'
  11456. lookahead1W(17); // StringLiteral | S^WS | '(:'
  11457. shift(11); // StringLiteral
  11458. break;
  11459. default:
  11460. shift(269); // 'version'
  11461. lookahead1W(17); // StringLiteral | S^WS | '(:'
  11462. shift(11); // StringLiteral
  11463. lookahead1W(113); // S^WS | '(:' | ';' | 'encoding'
  11464. if (l1 == 126) // 'encoding'
  11465. {
  11466. shift(126); // 'encoding'
  11467. lookahead1W(17); // StringLiteral | S^WS | '(:'
  11468. shift(11); // StringLiteral
  11469. }
  11470. }
  11471. lookahead1W(29); // S^WS | '(:' | ';'
  11472. whitespace();
  11473. parse_Separator();
  11474. eventHandler.endNonterminal("VersionDecl", e0);
  11475. }
  11476. function parse_LibraryModule()
  11477. {
  11478. eventHandler.startNonterminal("LibraryModule", e0);
  11479. parse_ModuleDecl();
  11480. lookahead1W(142); // S^WS | EOF | '(:' | 'declare' | 'import'
  11481. whitespace();
  11482. parse_Prolog();
  11483. eventHandler.endNonterminal("LibraryModule", e0);
  11484. }
  11485. function parse_ModuleDecl()
  11486. {
  11487. eventHandler.startNonterminal("ModuleDecl", e0);
  11488. shift(185); // 'module'
  11489. lookahead1W(64); // S^WS | '(:' | 'namespace'
  11490. shift(187); // 'namespace'
  11491. lookahead1W(239); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11492. whitespace();
  11493. parse_NCName();
  11494. lookahead1W(30); // S^WS | '(:' | '='
  11495. shift(61); // '='
  11496. lookahead1W(15); // URILiteral | S^WS | '(:'
  11497. shift(7); // URILiteral
  11498. lookahead1W(29); // S^WS | '(:' | ';'
  11499. whitespace();
  11500. parse_Separator();
  11501. eventHandler.endNonterminal("ModuleDecl", e0);
  11502. }
  11503. function parse_Prolog()
  11504. {
  11505. eventHandler.startNonterminal("Prolog", e0);
  11506. for (;;)
  11507. {
  11508. lookahead1W(277); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  11509. switch (l1)
  11510. {
  11511. case 109: // 'declare'
  11512. lookahead2W(206); // S^WS | '#' | '%' | '(' | '(:' | 'base-uri' | 'boundary-space' | 'collection' |
  11513. break;
  11514. case 155: // 'import'
  11515. lookahead2W(169); // S^WS | '#' | '(' | '(:' | 'module' | 'schema'
  11516. break;
  11517. default:
  11518. lk = l1;
  11519. }
  11520. if (lk != 43117 // 'declare' 'base-uri'
  11521. && lk != 44141 // 'declare' 'boundary-space'
  11522. && lk != 50797 // 'declare' 'construction'
  11523. && lk != 53869 // 'declare' 'copy-namespaces'
  11524. && lk != 54893 // 'declare' 'decimal-format'
  11525. && lk != 56429 // 'declare' 'default'
  11526. && lk != 73325 // 'declare' 'ft-option'
  11527. && lk != 94875 // 'import' 'module'
  11528. && lk != 95853 // 'declare' 'namespace'
  11529. && lk != 106093 // 'declare' 'ordering'
  11530. && lk != 115821 // 'declare' 'revalidation'
  11531. && lk != 117403) // 'import' 'schema'
  11532. {
  11533. break;
  11534. }
  11535. switch (l1)
  11536. {
  11537. case 109: // 'declare'
  11538. lookahead2W(200); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  11539. break;
  11540. default:
  11541. lk = l1;
  11542. }
  11543. if (lk == 56429) // 'declare' 'default'
  11544. {
  11545. lk = memoized(0, e0);
  11546. if (lk == 0)
  11547. {
  11548. var b0A = b0; var e0A = e0; var l1A = l1;
  11549. var b1A = b1; var e1A = e1; var l2A = l2;
  11550. var b2A = b2; var e2A = e2;
  11551. try
  11552. {
  11553. try_DefaultNamespaceDecl();
  11554. lk = -1;
  11555. }
  11556. catch (p1A)
  11557. {
  11558. lk = -2;
  11559. }
  11560. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  11561. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  11562. b2 = b2A; e2 = e2A; end = e2A; }}
  11563. memoize(0, e0, lk);
  11564. }
  11565. }
  11566. switch (lk)
  11567. {
  11568. case -1:
  11569. whitespace();
  11570. parse_DefaultNamespaceDecl();
  11571. break;
  11572. case 95853: // 'declare' 'namespace'
  11573. whitespace();
  11574. parse_NamespaceDecl();
  11575. break;
  11576. case 155: // 'import'
  11577. whitespace();
  11578. parse_Import();
  11579. break;
  11580. case 73325: // 'declare' 'ft-option'
  11581. whitespace();
  11582. parse_FTOptionDecl();
  11583. break;
  11584. default:
  11585. whitespace();
  11586. parse_Setter();
  11587. }
  11588. lookahead1W(29); // S^WS | '(:' | ';'
  11589. whitespace();
  11590. parse_Separator();
  11591. }
  11592. for (;;)
  11593. {
  11594. lookahead1W(277); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  11595. switch (l1)
  11596. {
  11597. case 109: // 'declare'
  11598. lookahead2W(201); // S^WS | '#' | '%' | '(' | '(:' | 'collection' | 'context' | 'function' | 'index' |
  11599. break;
  11600. default:
  11601. lk = l1;
  11602. }
  11603. if (lk != 17005 // 'declare' '%'
  11604. && lk != 49261 // 'declare' 'collection'
  11605. && lk != 52333 // 'declare' 'context'
  11606. && lk != 75373 // 'declare' 'function'
  11607. && lk != 80493 // 'declare' 'index'
  11608. && lk != 83565 // 'declare' 'integrity'
  11609. && lk != 104045 // 'declare' 'option'
  11610. && lk != 134765 // 'declare' 'updating'
  11611. && lk != 137325) // 'declare' 'variable'
  11612. {
  11613. break;
  11614. }
  11615. switch (l1)
  11616. {
  11617. case 109: // 'declare'
  11618. lookahead2W(197); // S^WS | '%' | '(:' | 'collection' | 'context' | 'function' | 'index' |
  11619. break;
  11620. default:
  11621. lk = l1;
  11622. }
  11623. switch (lk)
  11624. {
  11625. case 52333: // 'declare' 'context'
  11626. whitespace();
  11627. parse_ContextItemDecl();
  11628. break;
  11629. case 104045: // 'declare' 'option'
  11630. whitespace();
  11631. parse_OptionDecl();
  11632. break;
  11633. default:
  11634. whitespace();
  11635. parse_AnnotatedDecl();
  11636. }
  11637. lookahead1W(29); // S^WS | '(:' | ';'
  11638. whitespace();
  11639. parse_Separator();
  11640. }
  11641. eventHandler.endNonterminal("Prolog", e0);
  11642. }
  11643. function parse_Separator()
  11644. {
  11645. eventHandler.startNonterminal("Separator", e0);
  11646. shift(54); // ';'
  11647. eventHandler.endNonterminal("Separator", e0);
  11648. }
  11649. function parse_Setter()
  11650. {
  11651. eventHandler.startNonterminal("Setter", e0);
  11652. switch (l1)
  11653. {
  11654. case 109: // 'declare'
  11655. lookahead2W(194); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  11656. break;
  11657. default:
  11658. lk = l1;
  11659. }
  11660. if (lk == 56429) // 'declare' 'default'
  11661. {
  11662. lk = memoized(1, e0);
  11663. if (lk == 0)
  11664. {
  11665. var b0A = b0; var e0A = e0; var l1A = l1;
  11666. var b1A = b1; var e1A = e1; var l2A = l2;
  11667. var b2A = b2; var e2A = e2;
  11668. try
  11669. {
  11670. try_DefaultCollationDecl();
  11671. lk = -2;
  11672. }
  11673. catch (p2A)
  11674. {
  11675. try
  11676. {
  11677. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  11678. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  11679. b2 = b2A; e2 = e2A; end = e2A; }}
  11680. try_EmptyOrderDecl();
  11681. lk = -6;
  11682. }
  11683. catch (p6A)
  11684. {
  11685. lk = -9;
  11686. }
  11687. }
  11688. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  11689. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  11690. b2 = b2A; e2 = e2A; end = e2A; }}
  11691. memoize(1, e0, lk);
  11692. }
  11693. }
  11694. switch (lk)
  11695. {
  11696. case 44141: // 'declare' 'boundary-space'
  11697. parse_BoundarySpaceDecl();
  11698. break;
  11699. case -2:
  11700. parse_DefaultCollationDecl();
  11701. break;
  11702. case 43117: // 'declare' 'base-uri'
  11703. parse_BaseURIDecl();
  11704. break;
  11705. case 50797: // 'declare' 'construction'
  11706. parse_ConstructionDecl();
  11707. break;
  11708. case 106093: // 'declare' 'ordering'
  11709. parse_OrderingModeDecl();
  11710. break;
  11711. case -6:
  11712. parse_EmptyOrderDecl();
  11713. break;
  11714. case 115821: // 'declare' 'revalidation'
  11715. parse_RevalidationDecl();
  11716. break;
  11717. case 53869: // 'declare' 'copy-namespaces'
  11718. parse_CopyNamespacesDecl();
  11719. break;
  11720. default:
  11721. parse_DecimalFormatDecl();
  11722. }
  11723. eventHandler.endNonterminal("Setter", e0);
  11724. }
  11725. function parse_BoundarySpaceDecl()
  11726. {
  11727. eventHandler.startNonterminal("BoundarySpaceDecl", e0);
  11728. shift(109); // 'declare'
  11729. lookahead1W(36); // S^WS | '(:' | 'boundary-space'
  11730. shift(86); // 'boundary-space'
  11731. lookahead1W(137); // S^WS | '(:' | 'preserve' | 'strip'
  11732. switch (l1)
  11733. {
  11734. case 218: // 'preserve'
  11735. shift(218); // 'preserve'
  11736. break;
  11737. default:
  11738. shift(246); // 'strip'
  11739. }
  11740. eventHandler.endNonterminal("BoundarySpaceDecl", e0);
  11741. }
  11742. function parse_DefaultCollationDecl()
  11743. {
  11744. eventHandler.startNonterminal("DefaultCollationDecl", e0);
  11745. shift(109); // 'declare'
  11746. lookahead1W(49); // S^WS | '(:' | 'default'
  11747. shift(110); // 'default'
  11748. lookahead1W(41); // S^WS | '(:' | 'collation'
  11749. shift(95); // 'collation'
  11750. lookahead1W(15); // URILiteral | S^WS | '(:'
  11751. shift(7); // URILiteral
  11752. eventHandler.endNonterminal("DefaultCollationDecl", e0);
  11753. }
  11754. function try_DefaultCollationDecl()
  11755. {
  11756. shiftT(109); // 'declare'
  11757. lookahead1W(49); // S^WS | '(:' | 'default'
  11758. shiftT(110); // 'default'
  11759. lookahead1W(41); // S^WS | '(:' | 'collation'
  11760. shiftT(95); // 'collation'
  11761. lookahead1W(15); // URILiteral | S^WS | '(:'
  11762. shiftT(7); // URILiteral
  11763. }
  11764. function parse_BaseURIDecl()
  11765. {
  11766. eventHandler.startNonterminal("BaseURIDecl", e0);
  11767. shift(109); // 'declare'
  11768. lookahead1W(35); // S^WS | '(:' | 'base-uri'
  11769. shift(84); // 'base-uri'
  11770. lookahead1W(15); // URILiteral | S^WS | '(:'
  11771. shift(7); // URILiteral
  11772. eventHandler.endNonterminal("BaseURIDecl", e0);
  11773. }
  11774. function parse_ConstructionDecl()
  11775. {
  11776. eventHandler.startNonterminal("ConstructionDecl", e0);
  11777. shift(109); // 'declare'
  11778. lookahead1W(44); // S^WS | '(:' | 'construction'
  11779. shift(99); // 'construction'
  11780. lookahead1W(137); // S^WS | '(:' | 'preserve' | 'strip'
  11781. switch (l1)
  11782. {
  11783. case 246: // 'strip'
  11784. shift(246); // 'strip'
  11785. break;
  11786. default:
  11787. shift(218); // 'preserve'
  11788. }
  11789. eventHandler.endNonterminal("ConstructionDecl", e0);
  11790. }
  11791. function parse_OrderingModeDecl()
  11792. {
  11793. eventHandler.startNonterminal("OrderingModeDecl", e0);
  11794. shift(109); // 'declare'
  11795. lookahead1W(71); // S^WS | '(:' | 'ordering'
  11796. shift(207); // 'ordering'
  11797. lookahead1W(135); // S^WS | '(:' | 'ordered' | 'unordered'
  11798. switch (l1)
  11799. {
  11800. case 206: // 'ordered'
  11801. shift(206); // 'ordered'
  11802. break;
  11803. default:
  11804. shift(262); // 'unordered'
  11805. }
  11806. eventHandler.endNonterminal("OrderingModeDecl", e0);
  11807. }
  11808. function parse_EmptyOrderDecl()
  11809. {
  11810. eventHandler.startNonterminal("EmptyOrderDecl", e0);
  11811. shift(109); // 'declare'
  11812. lookahead1W(49); // S^WS | '(:' | 'default'
  11813. shift(110); // 'default'
  11814. lookahead1W(70); // S^WS | '(:' | 'order'
  11815. shift(205); // 'order'
  11816. lookahead1W(52); // S^WS | '(:' | 'empty'
  11817. shift(124); // 'empty'
  11818. lookahead1W(125); // S^WS | '(:' | 'greatest' | 'least'
  11819. switch (l1)
  11820. {
  11821. case 149: // 'greatest'
  11822. shift(149); // 'greatest'
  11823. break;
  11824. default:
  11825. shift(176); // 'least'
  11826. }
  11827. eventHandler.endNonterminal("EmptyOrderDecl", e0);
  11828. }
  11829. function try_EmptyOrderDecl()
  11830. {
  11831. shiftT(109); // 'declare'
  11832. lookahead1W(49); // S^WS | '(:' | 'default'
  11833. shiftT(110); // 'default'
  11834. lookahead1W(70); // S^WS | '(:' | 'order'
  11835. shiftT(205); // 'order'
  11836. lookahead1W(52); // S^WS | '(:' | 'empty'
  11837. shiftT(124); // 'empty'
  11838. lookahead1W(125); // S^WS | '(:' | 'greatest' | 'least'
  11839. switch (l1)
  11840. {
  11841. case 149: // 'greatest'
  11842. shiftT(149); // 'greatest'
  11843. break;
  11844. default:
  11845. shiftT(176); // 'least'
  11846. }
  11847. }
  11848. function parse_CopyNamespacesDecl()
  11849. {
  11850. eventHandler.startNonterminal("CopyNamespacesDecl", e0);
  11851. shift(109); // 'declare'
  11852. lookahead1W(47); // S^WS | '(:' | 'copy-namespaces'
  11853. shift(105); // 'copy-namespaces'
  11854. lookahead1W(132); // S^WS | '(:' | 'no-preserve' | 'preserve'
  11855. whitespace();
  11856. parse_PreserveMode();
  11857. lookahead1W(25); // S^WS | '(:' | ','
  11858. shift(42); // ','
  11859. lookahead1W(127); // S^WS | '(:' | 'inherit' | 'no-inherit'
  11860. whitespace();
  11861. parse_InheritMode();
  11862. eventHandler.endNonterminal("CopyNamespacesDecl", e0);
  11863. }
  11864. function parse_PreserveMode()
  11865. {
  11866. eventHandler.startNonterminal("PreserveMode", e0);
  11867. switch (l1)
  11868. {
  11869. case 218: // 'preserve'
  11870. shift(218); // 'preserve'
  11871. break;
  11872. default:
  11873. shift(193); // 'no-preserve'
  11874. }
  11875. eventHandler.endNonterminal("PreserveMode", e0);
  11876. }
  11877. function parse_InheritMode()
  11878. {
  11879. eventHandler.startNonterminal("InheritMode", e0);
  11880. switch (l1)
  11881. {
  11882. case 159: // 'inherit'
  11883. shift(159); // 'inherit'
  11884. break;
  11885. default:
  11886. shift(192); // 'no-inherit'
  11887. }
  11888. eventHandler.endNonterminal("InheritMode", e0);
  11889. }
  11890. function parse_DecimalFormatDecl()
  11891. {
  11892. eventHandler.startNonterminal("DecimalFormatDecl", e0);
  11893. shift(109); // 'declare'
  11894. lookahead1W(118); // S^WS | '(:' | 'decimal-format' | 'default'
  11895. switch (l1)
  11896. {
  11897. case 107: // 'decimal-format'
  11898. shift(107); // 'decimal-format'
  11899. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11900. whitespace();
  11901. parse_EQName();
  11902. break;
  11903. default:
  11904. shift(110); // 'default'
  11905. lookahead1W(48); // S^WS | '(:' | 'decimal-format'
  11906. shift(107); // 'decimal-format'
  11907. }
  11908. for (;;)
  11909. {
  11910. lookahead1W(203); // S^WS | '(:' | ';' | 'NaN' | 'decimal-separator' | 'digit' |
  11911. if (l1 == 54) // ';'
  11912. {
  11913. break;
  11914. }
  11915. whitespace();
  11916. parse_DFPropertyName();
  11917. lookahead1W(30); // S^WS | '(:' | '='
  11918. shift(61); // '='
  11919. lookahead1W(17); // StringLiteral | S^WS | '(:'
  11920. shift(11); // StringLiteral
  11921. }
  11922. eventHandler.endNonterminal("DecimalFormatDecl", e0);
  11923. }
  11924. function parse_DFPropertyName()
  11925. {
  11926. eventHandler.startNonterminal("DFPropertyName", e0);
  11927. switch (l1)
  11928. {
  11929. case 108: // 'decimal-separator'
  11930. shift(108); // 'decimal-separator'
  11931. break;
  11932. case 151: // 'grouping-separator'
  11933. shift(151); // 'grouping-separator'
  11934. break;
  11935. case 158: // 'infinity'
  11936. shift(158); // 'infinity'
  11937. break;
  11938. case 182: // 'minus-sign'
  11939. shift(182); // 'minus-sign'
  11940. break;
  11941. case 68: // 'NaN'
  11942. shift(68); // 'NaN'
  11943. break;
  11944. case 213: // 'percent'
  11945. shift(213); // 'percent'
  11946. break;
  11947. case 212: // 'per-mille'
  11948. shift(212); // 'per-mille'
  11949. break;
  11950. case 280: // 'zero-digit'
  11951. shift(280); // 'zero-digit'
  11952. break;
  11953. case 117: // 'digit'
  11954. shift(117); // 'digit'
  11955. break;
  11956. default:
  11957. shift(211); // 'pattern-separator'
  11958. }
  11959. eventHandler.endNonterminal("DFPropertyName", e0);
  11960. }
  11961. function parse_Import()
  11962. {
  11963. eventHandler.startNonterminal("Import", e0);
  11964. switch (l1)
  11965. {
  11966. case 155: // 'import'
  11967. lookahead2W(130); // S^WS | '(:' | 'module' | 'schema'
  11968. break;
  11969. default:
  11970. lk = l1;
  11971. }
  11972. switch (lk)
  11973. {
  11974. case 117403: // 'import' 'schema'
  11975. parse_SchemaImport();
  11976. break;
  11977. default:
  11978. parse_ModuleImport();
  11979. }
  11980. eventHandler.endNonterminal("Import", e0);
  11981. }
  11982. function parse_SchemaImport()
  11983. {
  11984. eventHandler.startNonterminal("SchemaImport", e0);
  11985. shift(155); // 'import'
  11986. lookahead1W(76); // S^WS | '(:' | 'schema'
  11987. shift(229); // 'schema'
  11988. lookahead1W(141); // URILiteral | S^WS | '(:' | 'default' | 'namespace'
  11989. if (l1 != 7) // URILiteral
  11990. {
  11991. whitespace();
  11992. parse_SchemaPrefix();
  11993. }
  11994. lookahead1W(15); // URILiteral | S^WS | '(:'
  11995. shift(7); // URILiteral
  11996. lookahead1W(112); // S^WS | '(:' | ';' | 'at'
  11997. if (l1 == 82) // 'at'
  11998. {
  11999. shift(82); // 'at'
  12000. lookahead1W(15); // URILiteral | S^WS | '(:'
  12001. shift(7); // URILiteral
  12002. for (;;)
  12003. {
  12004. lookahead1W(107); // S^WS | '(:' | ',' | ';'
  12005. if (l1 != 42) // ','
  12006. {
  12007. break;
  12008. }
  12009. shift(42); // ','
  12010. lookahead1W(15); // URILiteral | S^WS | '(:'
  12011. shift(7); // URILiteral
  12012. }
  12013. }
  12014. eventHandler.endNonterminal("SchemaImport", e0);
  12015. }
  12016. function parse_SchemaPrefix()
  12017. {
  12018. eventHandler.startNonterminal("SchemaPrefix", e0);
  12019. switch (l1)
  12020. {
  12021. case 187: // 'namespace'
  12022. shift(187); // 'namespace'
  12023. lookahead1W(239); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12024. whitespace();
  12025. parse_NCName();
  12026. lookahead1W(30); // S^WS | '(:' | '='
  12027. shift(61); // '='
  12028. break;
  12029. default:
  12030. shift(110); // 'default'
  12031. lookahead1W(50); // S^WS | '(:' | 'element'
  12032. shift(122); // 'element'
  12033. lookahead1W(64); // S^WS | '(:' | 'namespace'
  12034. shift(187); // 'namespace'
  12035. }
  12036. eventHandler.endNonterminal("SchemaPrefix", e0);
  12037. }
  12038. function parse_ModuleImport()
  12039. {
  12040. eventHandler.startNonterminal("ModuleImport", e0);
  12041. shift(155); // 'import'
  12042. lookahead1W(63); // S^WS | '(:' | 'module'
  12043. shift(185); // 'module'
  12044. lookahead1W(93); // URILiteral | S^WS | '(:' | 'namespace'
  12045. if (l1 == 187) // 'namespace'
  12046. {
  12047. shift(187); // 'namespace'
  12048. lookahead1W(239); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12049. whitespace();
  12050. parse_NCName();
  12051. lookahead1W(30); // S^WS | '(:' | '='
  12052. shift(61); // '='
  12053. }
  12054. lookahead1W(15); // URILiteral | S^WS | '(:'
  12055. shift(7); // URILiteral
  12056. lookahead1W(112); // S^WS | '(:' | ';' | 'at'
  12057. if (l1 == 82) // 'at'
  12058. {
  12059. shift(82); // 'at'
  12060. lookahead1W(15); // URILiteral | S^WS | '(:'
  12061. shift(7); // URILiteral
  12062. for (;;)
  12063. {
  12064. lookahead1W(107); // S^WS | '(:' | ',' | ';'
  12065. if (l1 != 42) // ','
  12066. {
  12067. break;
  12068. }
  12069. shift(42); // ','
  12070. lookahead1W(15); // URILiteral | S^WS | '(:'
  12071. shift(7); // URILiteral
  12072. }
  12073. }
  12074. eventHandler.endNonterminal("ModuleImport", e0);
  12075. }
  12076. function parse_NamespaceDecl()
  12077. {
  12078. eventHandler.startNonterminal("NamespaceDecl", e0);
  12079. shift(109); // 'declare'
  12080. lookahead1W(64); // S^WS | '(:' | 'namespace'
  12081. shift(187); // 'namespace'
  12082. lookahead1W(239); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12083. whitespace();
  12084. parse_NCName();
  12085. lookahead1W(30); // S^WS | '(:' | '='
  12086. shift(61); // '='
  12087. lookahead1W(15); // URILiteral | S^WS | '(:'
  12088. shift(7); // URILiteral
  12089. eventHandler.endNonterminal("NamespaceDecl", e0);
  12090. }
  12091. function parse_DefaultNamespaceDecl()
  12092. {
  12093. eventHandler.startNonterminal("DefaultNamespaceDecl", e0);
  12094. shift(109); // 'declare'
  12095. lookahead1W(49); // S^WS | '(:' | 'default'
  12096. shift(110); // 'default'
  12097. lookahead1W(119); // S^WS | '(:' | 'element' | 'function'
  12098. switch (l1)
  12099. {
  12100. case 122: // 'element'
  12101. shift(122); // 'element'
  12102. break;
  12103. default:
  12104. shift(147); // 'function'
  12105. }
  12106. lookahead1W(64); // S^WS | '(:' | 'namespace'
  12107. shift(187); // 'namespace'
  12108. lookahead1W(15); // URILiteral | S^WS | '(:'
  12109. shift(7); // URILiteral
  12110. eventHandler.endNonterminal("DefaultNamespaceDecl", e0);
  12111. }
  12112. function try_DefaultNamespaceDecl()
  12113. {
  12114. shiftT(109); // 'declare'
  12115. lookahead1W(49); // S^WS | '(:' | 'default'
  12116. shiftT(110); // 'default'
  12117. lookahead1W(119); // S^WS | '(:' | 'element' | 'function'
  12118. switch (l1)
  12119. {
  12120. case 122: // 'element'
  12121. shiftT(122); // 'element'
  12122. break;
  12123. default:
  12124. shiftT(147); // 'function'
  12125. }
  12126. lookahead1W(64); // S^WS | '(:' | 'namespace'
  12127. shiftT(187); // 'namespace'
  12128. lookahead1W(15); // URILiteral | S^WS | '(:'
  12129. shiftT(7); // URILiteral
  12130. }
  12131. function parse_FTOptionDecl()
  12132. {
  12133. eventHandler.startNonterminal("FTOptionDecl", e0);
  12134. shift(109); // 'declare'
  12135. lookahead1W(55); // S^WS | '(:' | 'ft-option'
  12136. shift(143); // 'ft-option'
  12137. lookahead1W(84); // S^WS | '(:' | 'using'
  12138. whitespace();
  12139. parse_FTMatchOptions();
  12140. eventHandler.endNonterminal("FTOptionDecl", e0);
  12141. }
  12142. function parse_AnnotatedDecl()
  12143. {
  12144. eventHandler.startNonterminal("AnnotatedDecl", e0);
  12145. shift(109); // 'declare'
  12146. for (;;)
  12147. {
  12148. lookahead1W(192); // S^WS | '%' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  12149. if (l1 != 33 // '%'
  12150. && l1 != 263) // 'updating'
  12151. {
  12152. break;
  12153. }
  12154. switch (l1)
  12155. {
  12156. case 263: // 'updating'
  12157. whitespace();
  12158. parse_CompatibilityAnnotation();
  12159. break;
  12160. default:
  12161. whitespace();
  12162. parse_Annotation();
  12163. }
  12164. }
  12165. switch (l1)
  12166. {
  12167. case 268: // 'variable'
  12168. whitespace();
  12169. parse_VarDecl();
  12170. break;
  12171. case 147: // 'function'
  12172. whitespace();
  12173. parse_FunctionDecl();
  12174. break;
  12175. case 96: // 'collection'
  12176. whitespace();
  12177. parse_CollectionDecl();
  12178. break;
  12179. case 157: // 'index'
  12180. whitespace();
  12181. parse_IndexDecl();
  12182. break;
  12183. default:
  12184. whitespace();
  12185. parse_ICDecl();
  12186. }
  12187. eventHandler.endNonterminal("AnnotatedDecl", e0);
  12188. }
  12189. function parse_CompatibilityAnnotation()
  12190. {
  12191. eventHandler.startNonterminal("CompatibilityAnnotation", e0);
  12192. shift(263); // 'updating'
  12193. eventHandler.endNonterminal("CompatibilityAnnotation", e0);
  12194. }
  12195. function parse_Annotation()
  12196. {
  12197. eventHandler.startNonterminal("Annotation", e0);
  12198. shift(33); // '%'
  12199. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12200. whitespace();
  12201. parse_EQName();
  12202. lookahead1W(193); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  12203. if (l1 == 35) // '('
  12204. {
  12205. shift(35); // '('
  12206. lookahead1W(190); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:' |
  12207. whitespace();
  12208. parse_Literal();
  12209. for (;;)
  12210. {
  12211. lookahead1W(105); // S^WS | '(:' | ')' | ','
  12212. if (l1 != 42) // ','
  12213. {
  12214. break;
  12215. }
  12216. shift(42); // ','
  12217. lookahead1W(190); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:' |
  12218. whitespace();
  12219. parse_Literal();
  12220. }
  12221. shift(38); // ')'
  12222. }
  12223. eventHandler.endNonterminal("Annotation", e0);
  12224. }
  12225. function try_Annotation()
  12226. {
  12227. shiftT(33); // '%'
  12228. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12229. try_EQName();
  12230. lookahead1W(193); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  12231. if (l1 == 35) // '('
  12232. {
  12233. shiftT(35); // '('
  12234. lookahead1W(190); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:' |
  12235. try_Literal();
  12236. for (;;)
  12237. {
  12238. lookahead1W(105); // S^WS | '(:' | ')' | ','
  12239. if (l1 != 42) // ','
  12240. {
  12241. break;
  12242. }
  12243. shiftT(42); // ','
  12244. lookahead1W(190); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:' |
  12245. try_Literal();
  12246. }
  12247. shiftT(38); // ')'
  12248. }
  12249. }
  12250. function parse_VarDecl()
  12251. {
  12252. eventHandler.startNonterminal("VarDecl", e0);
  12253. shift(268); // 'variable'
  12254. lookahead1W(21); // S^WS | '$' | '(:'
  12255. shift(31); // '$'
  12256. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12257. whitespace();
  12258. parse_VarName();
  12259. lookahead1W(157); // S^WS | '(:' | ':=' | 'as' | 'external'
  12260. if (l1 == 80) // 'as'
  12261. {
  12262. whitespace();
  12263. parse_TypeDeclaration();
  12264. }
  12265. lookahead1W(110); // S^WS | '(:' | ':=' | 'external'
  12266. switch (l1)
  12267. {
  12268. case 53: // ':='
  12269. shift(53); // ':='
  12270. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12271. whitespace();
  12272. parse_VarValue();
  12273. break;
  12274. default:
  12275. shift(134); // 'external'
  12276. lookahead1W(108); // S^WS | '(:' | ':=' | ';'
  12277. if (l1 == 53) // ':='
  12278. {
  12279. shift(53); // ':='
  12280. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12281. whitespace();
  12282. parse_VarDefaultValue();
  12283. }
  12284. }
  12285. eventHandler.endNonterminal("VarDecl", e0);
  12286. }
  12287. function parse_VarValue()
  12288. {
  12289. eventHandler.startNonterminal("VarValue", e0);
  12290. parse_ExprSingle();
  12291. eventHandler.endNonterminal("VarValue", e0);
  12292. }
  12293. function parse_VarDefaultValue()
  12294. {
  12295. eventHandler.startNonterminal("VarDefaultValue", e0);
  12296. parse_ExprSingle();
  12297. eventHandler.endNonterminal("VarDefaultValue", e0);
  12298. }
  12299. function parse_ContextItemDecl()
  12300. {
  12301. eventHandler.startNonterminal("ContextItemDecl", e0);
  12302. shift(109); // 'declare'
  12303. lookahead1W(46); // S^WS | '(:' | 'context'
  12304. shift(102); // 'context'
  12305. lookahead1W(58); // S^WS | '(:' | 'item'
  12306. shift(167); // 'item'
  12307. lookahead1W(157); // S^WS | '(:' | ':=' | 'as' | 'external'
  12308. if (l1 == 80) // 'as'
  12309. {
  12310. shift(80); // 'as'
  12311. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  12312. whitespace();
  12313. parse_ItemType();
  12314. }
  12315. lookahead1W(110); // S^WS | '(:' | ':=' | 'external'
  12316. switch (l1)
  12317. {
  12318. case 53: // ':='
  12319. shift(53); // ':='
  12320. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12321. whitespace();
  12322. parse_VarValue();
  12323. break;
  12324. default:
  12325. shift(134); // 'external'
  12326. lookahead1W(108); // S^WS | '(:' | ':=' | ';'
  12327. if (l1 == 53) // ':='
  12328. {
  12329. shift(53); // ':='
  12330. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12331. whitespace();
  12332. parse_VarDefaultValue();
  12333. }
  12334. }
  12335. eventHandler.endNonterminal("ContextItemDecl", e0);
  12336. }
  12337. function parse_ParamList()
  12338. {
  12339. eventHandler.startNonterminal("ParamList", e0);
  12340. parse_Param();
  12341. for (;;)
  12342. {
  12343. lookahead1W(105); // S^WS | '(:' | ')' | ','
  12344. if (l1 != 42) // ','
  12345. {
  12346. break;
  12347. }
  12348. shift(42); // ','
  12349. lookahead1W(21); // S^WS | '$' | '(:'
  12350. whitespace();
  12351. parse_Param();
  12352. }
  12353. eventHandler.endNonterminal("ParamList", e0);
  12354. }
  12355. function try_ParamList()
  12356. {
  12357. try_Param();
  12358. for (;;)
  12359. {
  12360. lookahead1W(105); // S^WS | '(:' | ')' | ','
  12361. if (l1 != 42) // ','
  12362. {
  12363. break;
  12364. }
  12365. shiftT(42); // ','
  12366. lookahead1W(21); // S^WS | '$' | '(:'
  12367. try_Param();
  12368. }
  12369. }
  12370. function parse_Param()
  12371. {
  12372. eventHandler.startNonterminal("Param", e0);
  12373. shift(31); // '$'
  12374. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12375. whitespace();
  12376. parse_EQName();
  12377. lookahead1W(153); // S^WS | '(:' | ')' | ',' | 'as'
  12378. if (l1 == 80) // 'as'
  12379. {
  12380. whitespace();
  12381. parse_TypeDeclaration();
  12382. }
  12383. eventHandler.endNonterminal("Param", e0);
  12384. }
  12385. function try_Param()
  12386. {
  12387. shiftT(31); // '$'
  12388. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12389. try_EQName();
  12390. lookahead1W(153); // S^WS | '(:' | ')' | ',' | 'as'
  12391. if (l1 == 80) // 'as'
  12392. {
  12393. try_TypeDeclaration();
  12394. }
  12395. }
  12396. function parse_FunctionBody()
  12397. {
  12398. eventHandler.startNonterminal("FunctionBody", e0);
  12399. parse_EnclosedExpr();
  12400. eventHandler.endNonterminal("FunctionBody", e0);
  12401. }
  12402. function try_FunctionBody()
  12403. {
  12404. try_EnclosedExpr();
  12405. }
  12406. function parse_EnclosedExpr()
  12407. {
  12408. eventHandler.startNonterminal("EnclosedExpr", e0);
  12409. shift(281); // '{'
  12410. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12411. whitespace();
  12412. parse_Expr();
  12413. shift(287); // '}'
  12414. eventHandler.endNonterminal("EnclosedExpr", e0);
  12415. }
  12416. function try_EnclosedExpr()
  12417. {
  12418. shiftT(281); // '{'
  12419. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12420. try_Expr();
  12421. shiftT(287); // '}'
  12422. }
  12423. function parse_OptionDecl()
  12424. {
  12425. eventHandler.startNonterminal("OptionDecl", e0);
  12426. shift(109); // 'declare'
  12427. lookahead1W(69); // S^WS | '(:' | 'option'
  12428. shift(203); // 'option'
  12429. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12430. whitespace();
  12431. parse_EQName();
  12432. lookahead1W(17); // StringLiteral | S^WS | '(:'
  12433. shift(11); // StringLiteral
  12434. eventHandler.endNonterminal("OptionDecl", e0);
  12435. }
  12436. function parse_Expr()
  12437. {
  12438. eventHandler.startNonterminal("Expr", e0);
  12439. parse_ExprSingle();
  12440. for (;;)
  12441. {
  12442. if (l1 != 42) // ','
  12443. {
  12444. break;
  12445. }
  12446. shift(42); // ','
  12447. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12448. whitespace();
  12449. parse_ExprSingle();
  12450. }
  12451. eventHandler.endNonterminal("Expr", e0);
  12452. }
  12453. function try_Expr()
  12454. {
  12455. try_ExprSingle();
  12456. for (;;)
  12457. {
  12458. if (l1 != 42) // ','
  12459. {
  12460. break;
  12461. }
  12462. shiftT(42); // ','
  12463. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12464. try_ExprSingle();
  12465. }
  12466. }
  12467. function parse_FLWORExpr()
  12468. {
  12469. eventHandler.startNonterminal("FLWORExpr", e0);
  12470. parse_InitialClause();
  12471. for (;;)
  12472. {
  12473. lookahead1W(195); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  12474. if (l1 == 224) // 'return'
  12475. {
  12476. break;
  12477. }
  12478. whitespace();
  12479. parse_IntermediateClause();
  12480. }
  12481. whitespace();
  12482. parse_ReturnClause();
  12483. eventHandler.endNonterminal("FLWORExpr", e0);
  12484. }
  12485. function try_FLWORExpr()
  12486. {
  12487. try_InitialClause();
  12488. for (;;)
  12489. {
  12490. lookahead1W(195); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  12491. if (l1 == 224) // 'return'
  12492. {
  12493. break;
  12494. }
  12495. try_IntermediateClause();
  12496. }
  12497. try_ReturnClause();
  12498. }
  12499. function parse_InitialClause()
  12500. {
  12501. eventHandler.startNonterminal("InitialClause", e0);
  12502. switch (l1)
  12503. {
  12504. case 139: // 'for'
  12505. lookahead2W(151); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  12506. break;
  12507. default:
  12508. lk = l1;
  12509. }
  12510. switch (lk)
  12511. {
  12512. case 16011: // 'for' '$'
  12513. parse_ForClause();
  12514. break;
  12515. case 177: // 'let'
  12516. parse_LetClause();
  12517. break;
  12518. default:
  12519. parse_WindowClause();
  12520. }
  12521. eventHandler.endNonterminal("InitialClause", e0);
  12522. }
  12523. function try_InitialClause()
  12524. {
  12525. switch (l1)
  12526. {
  12527. case 139: // 'for'
  12528. lookahead2W(151); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  12529. break;
  12530. default:
  12531. lk = l1;
  12532. }
  12533. switch (lk)
  12534. {
  12535. case 16011: // 'for' '$'
  12536. try_ForClause();
  12537. break;
  12538. case 177: // 'let'
  12539. try_LetClause();
  12540. break;
  12541. default:
  12542. try_WindowClause();
  12543. }
  12544. }
  12545. function parse_IntermediateClause()
  12546. {
  12547. eventHandler.startNonterminal("IntermediateClause", e0);
  12548. switch (l1)
  12549. {
  12550. case 139: // 'for'
  12551. case 177: // 'let'
  12552. parse_InitialClause();
  12553. break;
  12554. case 272: // 'where'
  12555. parse_WhereClause();
  12556. break;
  12557. case 150: // 'group'
  12558. parse_GroupByClause();
  12559. break;
  12560. case 106: // 'count'
  12561. parse_CountClause();
  12562. break;
  12563. default:
  12564. parse_OrderByClause();
  12565. }
  12566. eventHandler.endNonterminal("IntermediateClause", e0);
  12567. }
  12568. function try_IntermediateClause()
  12569. {
  12570. switch (l1)
  12571. {
  12572. case 139: // 'for'
  12573. case 177: // 'let'
  12574. try_InitialClause();
  12575. break;
  12576. case 272: // 'where'
  12577. try_WhereClause();
  12578. break;
  12579. case 150: // 'group'
  12580. try_GroupByClause();
  12581. break;
  12582. case 106: // 'count'
  12583. try_CountClause();
  12584. break;
  12585. default:
  12586. try_OrderByClause();
  12587. }
  12588. }
  12589. function parse_ForClause()
  12590. {
  12591. eventHandler.startNonterminal("ForClause", e0);
  12592. shift(139); // 'for'
  12593. lookahead1W(21); // S^WS | '$' | '(:'
  12594. whitespace();
  12595. parse_ForBinding();
  12596. for (;;)
  12597. {
  12598. if (l1 != 42) // ','
  12599. {
  12600. break;
  12601. }
  12602. shift(42); // ','
  12603. lookahead1W(21); // S^WS | '$' | '(:'
  12604. whitespace();
  12605. parse_ForBinding();
  12606. }
  12607. eventHandler.endNonterminal("ForClause", e0);
  12608. }
  12609. function try_ForClause()
  12610. {
  12611. shiftT(139); // 'for'
  12612. lookahead1W(21); // S^WS | '$' | '(:'
  12613. try_ForBinding();
  12614. for (;;)
  12615. {
  12616. if (l1 != 42) // ','
  12617. {
  12618. break;
  12619. }
  12620. shiftT(42); // ','
  12621. lookahead1W(21); // S^WS | '$' | '(:'
  12622. try_ForBinding();
  12623. }
  12624. }
  12625. function parse_ForBinding()
  12626. {
  12627. eventHandler.startNonterminal("ForBinding", e0);
  12628. shift(31); // '$'
  12629. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12630. whitespace();
  12631. parse_VarName();
  12632. lookahead1W(182); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  12633. if (l1 == 80) // 'as'
  12634. {
  12635. whitespace();
  12636. parse_TypeDeclaration();
  12637. }
  12638. lookahead1W(173); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  12639. if (l1 == 73) // 'allowing'
  12640. {
  12641. whitespace();
  12642. parse_AllowingEmpty();
  12643. }
  12644. lookahead1W(160); // S^WS | '(:' | 'at' | 'in' | 'score'
  12645. if (l1 == 82) // 'at'
  12646. {
  12647. whitespace();
  12648. parse_PositionalVar();
  12649. }
  12650. lookahead1W(126); // S^WS | '(:' | 'in' | 'score'
  12651. if (l1 == 232) // 'score'
  12652. {
  12653. whitespace();
  12654. parse_FTScoreVar();
  12655. }
  12656. lookahead1W(56); // S^WS | '(:' | 'in'
  12657. shift(156); // 'in'
  12658. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12659. whitespace();
  12660. parse_ExprSingle();
  12661. eventHandler.endNonterminal("ForBinding", e0);
  12662. }
  12663. function try_ForBinding()
  12664. {
  12665. shiftT(31); // '$'
  12666. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12667. try_VarName();
  12668. lookahead1W(182); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  12669. if (l1 == 80) // 'as'
  12670. {
  12671. try_TypeDeclaration();
  12672. }
  12673. lookahead1W(173); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  12674. if (l1 == 73) // 'allowing'
  12675. {
  12676. try_AllowingEmpty();
  12677. }
  12678. lookahead1W(160); // S^WS | '(:' | 'at' | 'in' | 'score'
  12679. if (l1 == 82) // 'at'
  12680. {
  12681. try_PositionalVar();
  12682. }
  12683. lookahead1W(126); // S^WS | '(:' | 'in' | 'score'
  12684. if (l1 == 232) // 'score'
  12685. {
  12686. try_FTScoreVar();
  12687. }
  12688. lookahead1W(56); // S^WS | '(:' | 'in'
  12689. shiftT(156); // 'in'
  12690. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12691. try_ExprSingle();
  12692. }
  12693. function parse_AllowingEmpty()
  12694. {
  12695. eventHandler.startNonterminal("AllowingEmpty", e0);
  12696. shift(73); // 'allowing'
  12697. lookahead1W(52); // S^WS | '(:' | 'empty'
  12698. shift(124); // 'empty'
  12699. eventHandler.endNonterminal("AllowingEmpty", e0);
  12700. }
  12701. function try_AllowingEmpty()
  12702. {
  12703. shiftT(73); // 'allowing'
  12704. lookahead1W(52); // S^WS | '(:' | 'empty'
  12705. shiftT(124); // 'empty'
  12706. }
  12707. function parse_PositionalVar()
  12708. {
  12709. eventHandler.startNonterminal("PositionalVar", e0);
  12710. shift(82); // 'at'
  12711. lookahead1W(21); // S^WS | '$' | '(:'
  12712. shift(31); // '$'
  12713. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12714. whitespace();
  12715. parse_VarName();
  12716. eventHandler.endNonterminal("PositionalVar", e0);
  12717. }
  12718. function try_PositionalVar()
  12719. {
  12720. shiftT(82); // 'at'
  12721. lookahead1W(21); // S^WS | '$' | '(:'
  12722. shiftT(31); // '$'
  12723. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12724. try_VarName();
  12725. }
  12726. function parse_FTScoreVar()
  12727. {
  12728. eventHandler.startNonterminal("FTScoreVar", e0);
  12729. shift(232); // 'score'
  12730. lookahead1W(21); // S^WS | '$' | '(:'
  12731. shift(31); // '$'
  12732. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12733. whitespace();
  12734. parse_VarName();
  12735. eventHandler.endNonterminal("FTScoreVar", e0);
  12736. }
  12737. function try_FTScoreVar()
  12738. {
  12739. shiftT(232); // 'score'
  12740. lookahead1W(21); // S^WS | '$' | '(:'
  12741. shiftT(31); // '$'
  12742. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12743. try_VarName();
  12744. }
  12745. function parse_LetClause()
  12746. {
  12747. eventHandler.startNonterminal("LetClause", e0);
  12748. shift(177); // 'let'
  12749. lookahead1W(100); // S^WS | '$' | '(:' | 'score'
  12750. whitespace();
  12751. parse_LetBinding();
  12752. for (;;)
  12753. {
  12754. if (l1 != 42) // ','
  12755. {
  12756. break;
  12757. }
  12758. shift(42); // ','
  12759. lookahead1W(100); // S^WS | '$' | '(:' | 'score'
  12760. whitespace();
  12761. parse_LetBinding();
  12762. }
  12763. eventHandler.endNonterminal("LetClause", e0);
  12764. }
  12765. function try_LetClause()
  12766. {
  12767. shiftT(177); // 'let'
  12768. lookahead1W(100); // S^WS | '$' | '(:' | 'score'
  12769. try_LetBinding();
  12770. for (;;)
  12771. {
  12772. if (l1 != 42) // ','
  12773. {
  12774. break;
  12775. }
  12776. shiftT(42); // ','
  12777. lookahead1W(100); // S^WS | '$' | '(:' | 'score'
  12778. try_LetBinding();
  12779. }
  12780. }
  12781. function parse_LetBinding()
  12782. {
  12783. eventHandler.startNonterminal("LetBinding", e0);
  12784. switch (l1)
  12785. {
  12786. case 31: // '$'
  12787. shift(31); // '$'
  12788. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12789. whitespace();
  12790. parse_VarName();
  12791. lookahead1W(109); // S^WS | '(:' | ':=' | 'as'
  12792. if (l1 == 80) // 'as'
  12793. {
  12794. whitespace();
  12795. parse_TypeDeclaration();
  12796. }
  12797. break;
  12798. default:
  12799. parse_FTScoreVar();
  12800. }
  12801. lookahead1W(28); // S^WS | '(:' | ':='
  12802. shift(53); // ':='
  12803. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12804. whitespace();
  12805. parse_ExprSingle();
  12806. eventHandler.endNonterminal("LetBinding", e0);
  12807. }
  12808. function try_LetBinding()
  12809. {
  12810. switch (l1)
  12811. {
  12812. case 31: // '$'
  12813. shiftT(31); // '$'
  12814. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12815. try_VarName();
  12816. lookahead1W(109); // S^WS | '(:' | ':=' | 'as'
  12817. if (l1 == 80) // 'as'
  12818. {
  12819. try_TypeDeclaration();
  12820. }
  12821. break;
  12822. default:
  12823. try_FTScoreVar();
  12824. }
  12825. lookahead1W(28); // S^WS | '(:' | ':='
  12826. shiftT(53); // ':='
  12827. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12828. try_ExprSingle();
  12829. }
  12830. function parse_WindowClause()
  12831. {
  12832. eventHandler.startNonterminal("WindowClause", e0);
  12833. shift(139); // 'for'
  12834. lookahead1W(139); // S^WS | '(:' | 'sliding' | 'tumbling'
  12835. switch (l1)
  12836. {
  12837. case 257: // 'tumbling'
  12838. whitespace();
  12839. parse_TumblingWindowClause();
  12840. break;
  12841. default:
  12842. whitespace();
  12843. parse_SlidingWindowClause();
  12844. }
  12845. eventHandler.endNonterminal("WindowClause", e0);
  12846. }
  12847. function try_WindowClause()
  12848. {
  12849. shiftT(139); // 'for'
  12850. lookahead1W(139); // S^WS | '(:' | 'sliding' | 'tumbling'
  12851. switch (l1)
  12852. {
  12853. case 257: // 'tumbling'
  12854. try_TumblingWindowClause();
  12855. break;
  12856. default:
  12857. try_SlidingWindowClause();
  12858. }
  12859. }
  12860. function parse_TumblingWindowClause()
  12861. {
  12862. eventHandler.startNonterminal("TumblingWindowClause", e0);
  12863. shift(257); // 'tumbling'
  12864. lookahead1W(88); // S^WS | '(:' | 'window'
  12865. shift(275); // 'window'
  12866. lookahead1W(21); // S^WS | '$' | '(:'
  12867. shift(31); // '$'
  12868. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12869. whitespace();
  12870. parse_VarName();
  12871. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  12872. if (l1 == 80) // 'as'
  12873. {
  12874. whitespace();
  12875. parse_TypeDeclaration();
  12876. }
  12877. lookahead1W(56); // S^WS | '(:' | 'in'
  12878. shift(156); // 'in'
  12879. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12880. whitespace();
  12881. parse_ExprSingle();
  12882. whitespace();
  12883. parse_WindowStartCondition();
  12884. if (l1 == 127 // 'end'
  12885. || l1 == 202) // 'only'
  12886. {
  12887. whitespace();
  12888. parse_WindowEndCondition();
  12889. }
  12890. eventHandler.endNonterminal("TumblingWindowClause", e0);
  12891. }
  12892. function try_TumblingWindowClause()
  12893. {
  12894. shiftT(257); // 'tumbling'
  12895. lookahead1W(88); // S^WS | '(:' | 'window'
  12896. shiftT(275); // 'window'
  12897. lookahead1W(21); // S^WS | '$' | '(:'
  12898. shiftT(31); // '$'
  12899. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12900. try_VarName();
  12901. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  12902. if (l1 == 80) // 'as'
  12903. {
  12904. try_TypeDeclaration();
  12905. }
  12906. lookahead1W(56); // S^WS | '(:' | 'in'
  12907. shiftT(156); // 'in'
  12908. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12909. try_ExprSingle();
  12910. try_WindowStartCondition();
  12911. if (l1 == 127 // 'end'
  12912. || l1 == 202) // 'only'
  12913. {
  12914. try_WindowEndCondition();
  12915. }
  12916. }
  12917. function parse_SlidingWindowClause()
  12918. {
  12919. eventHandler.startNonterminal("SlidingWindowClause", e0);
  12920. shift(239); // 'sliding'
  12921. lookahead1W(88); // S^WS | '(:' | 'window'
  12922. shift(275); // 'window'
  12923. lookahead1W(21); // S^WS | '$' | '(:'
  12924. shift(31); // '$'
  12925. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12926. whitespace();
  12927. parse_VarName();
  12928. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  12929. if (l1 == 80) // 'as'
  12930. {
  12931. whitespace();
  12932. parse_TypeDeclaration();
  12933. }
  12934. lookahead1W(56); // S^WS | '(:' | 'in'
  12935. shift(156); // 'in'
  12936. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12937. whitespace();
  12938. parse_ExprSingle();
  12939. whitespace();
  12940. parse_WindowStartCondition();
  12941. whitespace();
  12942. parse_WindowEndCondition();
  12943. eventHandler.endNonterminal("SlidingWindowClause", e0);
  12944. }
  12945. function try_SlidingWindowClause()
  12946. {
  12947. shiftT(239); // 'sliding'
  12948. lookahead1W(88); // S^WS | '(:' | 'window'
  12949. shiftT(275); // 'window'
  12950. lookahead1W(21); // S^WS | '$' | '(:'
  12951. shiftT(31); // '$'
  12952. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12953. try_VarName();
  12954. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  12955. if (l1 == 80) // 'as'
  12956. {
  12957. try_TypeDeclaration();
  12958. }
  12959. lookahead1W(56); // S^WS | '(:' | 'in'
  12960. shiftT(156); // 'in'
  12961. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12962. try_ExprSingle();
  12963. try_WindowStartCondition();
  12964. try_WindowEndCondition();
  12965. }
  12966. function parse_WindowStartCondition()
  12967. {
  12968. eventHandler.startNonterminal("WindowStartCondition", e0);
  12969. shift(242); // 'start'
  12970. lookahead1W(181); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  12971. whitespace();
  12972. parse_WindowVars();
  12973. lookahead1W(86); // S^WS | '(:' | 'when'
  12974. shift(271); // 'when'
  12975. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12976. whitespace();
  12977. parse_ExprSingle();
  12978. eventHandler.endNonterminal("WindowStartCondition", e0);
  12979. }
  12980. function try_WindowStartCondition()
  12981. {
  12982. shiftT(242); // 'start'
  12983. lookahead1W(181); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  12984. try_WindowVars();
  12985. lookahead1W(86); // S^WS | '(:' | 'when'
  12986. shiftT(271); // 'when'
  12987. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  12988. try_ExprSingle();
  12989. }
  12990. function parse_WindowEndCondition()
  12991. {
  12992. eventHandler.startNonterminal("WindowEndCondition", e0);
  12993. if (l1 == 202) // 'only'
  12994. {
  12995. shift(202); // 'only'
  12996. }
  12997. lookahead1W(53); // S^WS | '(:' | 'end'
  12998. shift(127); // 'end'
  12999. lookahead1W(181); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  13000. whitespace();
  13001. parse_WindowVars();
  13002. lookahead1W(86); // S^WS | '(:' | 'when'
  13003. shift(271); // 'when'
  13004. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13005. whitespace();
  13006. parse_ExprSingle();
  13007. eventHandler.endNonterminal("WindowEndCondition", e0);
  13008. }
  13009. function try_WindowEndCondition()
  13010. {
  13011. if (l1 == 202) // 'only'
  13012. {
  13013. shiftT(202); // 'only'
  13014. }
  13015. lookahead1W(53); // S^WS | '(:' | 'end'
  13016. shiftT(127); // 'end'
  13017. lookahead1W(181); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  13018. try_WindowVars();
  13019. lookahead1W(86); // S^WS | '(:' | 'when'
  13020. shiftT(271); // 'when'
  13021. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13022. try_ExprSingle();
  13023. }
  13024. function parse_WindowVars()
  13025. {
  13026. eventHandler.startNonterminal("WindowVars", e0);
  13027. if (l1 == 31) // '$'
  13028. {
  13029. shift(31); // '$'
  13030. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13031. whitespace();
  13032. parse_CurrentItem();
  13033. }
  13034. lookahead1W(174); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  13035. if (l1 == 82) // 'at'
  13036. {
  13037. whitespace();
  13038. parse_PositionalVar();
  13039. }
  13040. lookahead1W(163); // S^WS | '(:' | 'next' | 'previous' | 'when'
  13041. if (l1 == 219) // 'previous'
  13042. {
  13043. shift(219); // 'previous'
  13044. lookahead1W(21); // S^WS | '$' | '(:'
  13045. shift(31); // '$'
  13046. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13047. whitespace();
  13048. parse_PreviousItem();
  13049. }
  13050. lookahead1W(131); // S^WS | '(:' | 'next' | 'when'
  13051. if (l1 == 190) // 'next'
  13052. {
  13053. shift(190); // 'next'
  13054. lookahead1W(21); // S^WS | '$' | '(:'
  13055. shift(31); // '$'
  13056. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13057. whitespace();
  13058. parse_NextItem();
  13059. }
  13060. eventHandler.endNonterminal("WindowVars", e0);
  13061. }
  13062. function try_WindowVars()
  13063. {
  13064. if (l1 == 31) // '$'
  13065. {
  13066. shiftT(31); // '$'
  13067. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13068. try_CurrentItem();
  13069. }
  13070. lookahead1W(174); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  13071. if (l1 == 82) // 'at'
  13072. {
  13073. try_PositionalVar();
  13074. }
  13075. lookahead1W(163); // S^WS | '(:' | 'next' | 'previous' | 'when'
  13076. if (l1 == 219) // 'previous'
  13077. {
  13078. shiftT(219); // 'previous'
  13079. lookahead1W(21); // S^WS | '$' | '(:'
  13080. shiftT(31); // '$'
  13081. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13082. try_PreviousItem();
  13083. }
  13084. lookahead1W(131); // S^WS | '(:' | 'next' | 'when'
  13085. if (l1 == 190) // 'next'
  13086. {
  13087. shiftT(190); // 'next'
  13088. lookahead1W(21); // S^WS | '$' | '(:'
  13089. shiftT(31); // '$'
  13090. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13091. try_NextItem();
  13092. }
  13093. }
  13094. function parse_CurrentItem()
  13095. {
  13096. eventHandler.startNonterminal("CurrentItem", e0);
  13097. parse_EQName();
  13098. eventHandler.endNonterminal("CurrentItem", e0);
  13099. }
  13100. function try_CurrentItem()
  13101. {
  13102. try_EQName();
  13103. }
  13104. function parse_PreviousItem()
  13105. {
  13106. eventHandler.startNonterminal("PreviousItem", e0);
  13107. parse_EQName();
  13108. eventHandler.endNonterminal("PreviousItem", e0);
  13109. }
  13110. function try_PreviousItem()
  13111. {
  13112. try_EQName();
  13113. }
  13114. function parse_NextItem()
  13115. {
  13116. eventHandler.startNonterminal("NextItem", e0);
  13117. parse_EQName();
  13118. eventHandler.endNonterminal("NextItem", e0);
  13119. }
  13120. function try_NextItem()
  13121. {
  13122. try_EQName();
  13123. }
  13124. function parse_CountClause()
  13125. {
  13126. eventHandler.startNonterminal("CountClause", e0);
  13127. shift(106); // 'count'
  13128. lookahead1W(21); // S^WS | '$' | '(:'
  13129. shift(31); // '$'
  13130. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13131. whitespace();
  13132. parse_VarName();
  13133. eventHandler.endNonterminal("CountClause", e0);
  13134. }
  13135. function try_CountClause()
  13136. {
  13137. shiftT(106); // 'count'
  13138. lookahead1W(21); // S^WS | '$' | '(:'
  13139. shiftT(31); // '$'
  13140. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13141. try_VarName();
  13142. }
  13143. function parse_WhereClause()
  13144. {
  13145. eventHandler.startNonterminal("WhereClause", e0);
  13146. shift(272); // 'where'
  13147. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13148. whitespace();
  13149. parse_ExprSingle();
  13150. eventHandler.endNonterminal("WhereClause", e0);
  13151. }
  13152. function try_WhereClause()
  13153. {
  13154. shiftT(272); // 'where'
  13155. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13156. try_ExprSingle();
  13157. }
  13158. function parse_GroupByClause()
  13159. {
  13160. eventHandler.startNonterminal("GroupByClause", e0);
  13161. shift(150); // 'group'
  13162. lookahead1W(37); // S^WS | '(:' | 'by'
  13163. shift(88); // 'by'
  13164. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13165. whitespace();
  13166. parse_GroupingSpecList();
  13167. eventHandler.endNonterminal("GroupByClause", e0);
  13168. }
  13169. function try_GroupByClause()
  13170. {
  13171. shiftT(150); // 'group'
  13172. lookahead1W(37); // S^WS | '(:' | 'by'
  13173. shiftT(88); // 'by'
  13174. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13175. try_GroupingSpecList();
  13176. }
  13177. function parse_GroupingSpecList()
  13178. {
  13179. eventHandler.startNonterminal("GroupingSpecList", e0);
  13180. parse_GroupingSpec();
  13181. for (;;)
  13182. {
  13183. lookahead1W(198); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  13184. if (l1 != 42) // ','
  13185. {
  13186. break;
  13187. }
  13188. shift(42); // ','
  13189. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13190. whitespace();
  13191. parse_GroupingSpec();
  13192. }
  13193. eventHandler.endNonterminal("GroupingSpecList", e0);
  13194. }
  13195. function try_GroupingSpecList()
  13196. {
  13197. try_GroupingSpec();
  13198. for (;;)
  13199. {
  13200. lookahead1W(198); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  13201. if (l1 != 42) // ','
  13202. {
  13203. break;
  13204. }
  13205. shiftT(42); // ','
  13206. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13207. try_GroupingSpec();
  13208. }
  13209. }
  13210. function parse_GroupingSpec()
  13211. {
  13212. eventHandler.startNonterminal("GroupingSpec", e0);
  13213. switch (l1)
  13214. {
  13215. case 31: // '$'
  13216. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13217. break;
  13218. default:
  13219. lk = l1;
  13220. }
  13221. if (lk == 3103 // '$' EQName^Token
  13222. || lk == 36383 // '$' 'after'
  13223. || lk == 37407 // '$' 'allowing'
  13224. || lk == 37919 // '$' 'ancestor'
  13225. || lk == 38431 // '$' 'ancestor-or-self'
  13226. || lk == 38943 // '$' 'and'
  13227. || lk == 39967 // '$' 'append'
  13228. || lk == 40479 // '$' 'array'
  13229. || lk == 40991 // '$' 'as'
  13230. || lk == 41503 // '$' 'ascending'
  13231. || lk == 42015 // '$' 'at'
  13232. || lk == 42527 // '$' 'attribute'
  13233. || lk == 43039 // '$' 'base-uri'
  13234. || lk == 43551 // '$' 'before'
  13235. || lk == 44063 // '$' 'boundary-space'
  13236. || lk == 44575 // '$' 'break'
  13237. || lk == 45599 // '$' 'case'
  13238. || lk == 46111 // '$' 'cast'
  13239. || lk == 46623 // '$' 'castable'
  13240. || lk == 47135 // '$' 'catch'
  13241. || lk == 48159 // '$' 'child'
  13242. || lk == 48671 // '$' 'collation'
  13243. || lk == 49695 // '$' 'comment'
  13244. || lk == 50207 // '$' 'constraint'
  13245. || lk == 50719 // '$' 'construction'
  13246. || lk == 52255 // '$' 'context'
  13247. || lk == 52767 // '$' 'continue'
  13248. || lk == 53279 // '$' 'copy'
  13249. || lk == 53791 // '$' 'copy-namespaces'
  13250. || lk == 54303 // '$' 'count'
  13251. || lk == 54815 // '$' 'decimal-format'
  13252. || lk == 55839 // '$' 'declare'
  13253. || lk == 56351 // '$' 'default'
  13254. || lk == 56863 // '$' 'delete'
  13255. || lk == 57375 // '$' 'descendant'
  13256. || lk == 57887 // '$' 'descendant-or-self'
  13257. || lk == 58399 // '$' 'descending'
  13258. || lk == 60959 // '$' 'div'
  13259. || lk == 61471 // '$' 'document'
  13260. || lk == 61983 // '$' 'document-node'
  13261. || lk == 62495 // '$' 'element'
  13262. || lk == 63007 // '$' 'else'
  13263. || lk == 63519 // '$' 'empty'
  13264. || lk == 64031 // '$' 'empty-sequence'
  13265. || lk == 64543 // '$' 'encoding'
  13266. || lk == 65055 // '$' 'end'
  13267. || lk == 66079 // '$' 'eq'
  13268. || lk == 66591 // '$' 'every'
  13269. || lk == 67615 // '$' 'except'
  13270. || lk == 68127 // '$' 'exit'
  13271. || lk == 68639 // '$' 'external'
  13272. || lk == 69151 // '$' 'false'
  13273. || lk == 69663 // '$' 'first'
  13274. || lk == 70175 // '$' 'following'
  13275. || lk == 70687 // '$' 'following-sibling'
  13276. || lk == 71199 // '$' 'for'
  13277. || lk == 72735 // '$' 'from'
  13278. || lk == 73247 // '$' 'ft-option'
  13279. || lk == 75295 // '$' 'function'
  13280. || lk == 75807 // '$' 'ge'
  13281. || lk == 76831 // '$' 'group'
  13282. || lk == 77855 // '$' 'gt'
  13283. || lk == 78367 // '$' 'idiv'
  13284. || lk == 78879 // '$' 'if'
  13285. || lk == 79391 // '$' 'import'
  13286. || lk == 79903 // '$' 'in'
  13287. || lk == 80415 // '$' 'index'
  13288. || lk == 82463 // '$' 'insert'
  13289. || lk == 82975 // '$' 'instance'
  13290. || lk == 83487 // '$' 'integrity'
  13291. || lk == 83999 // '$' 'intersect'
  13292. || lk == 84511 // '$' 'into'
  13293. || lk == 85023 // '$' 'is'
  13294. || lk == 85535 // '$' 'item'
  13295. || lk == 86047 // '$' 'json'
  13296. || lk == 86559 // '$' 'json-item'
  13297. || lk == 87071 // '$' 'jsoniq'
  13298. || lk == 88607 // '$' 'last'
  13299. || lk == 89119 // '$' 'lax'
  13300. || lk == 89631 // '$' 'le'
  13301. || lk == 90655 // '$' 'let'
  13302. || lk == 91679 // '$' 'loop'
  13303. || lk == 92703 // '$' 'lt'
  13304. || lk == 93727 // '$' 'mod'
  13305. || lk == 94239 // '$' 'modify'
  13306. || lk == 94751 // '$' 'module'
  13307. || lk == 95775 // '$' 'namespace'
  13308. || lk == 96287 // '$' 'namespace-node'
  13309. || lk == 96799 // '$' 'ne'
  13310. || lk == 99359 // '$' 'node'
  13311. || lk == 99871 // '$' 'nodes'
  13312. || lk == 100895 // '$' 'null'
  13313. || lk == 101407 // '$' 'object'
  13314. || lk == 103455 // '$' 'only'
  13315. || lk == 103967 // '$' 'option'
  13316. || lk == 104479 // '$' 'or'
  13317. || lk == 104991 // '$' 'order'
  13318. || lk == 105503 // '$' 'ordered'
  13319. || lk == 106015 // '$' 'ordering'
  13320. || lk == 107551 // '$' 'parent'
  13321. || lk == 110623 // '$' 'preceding'
  13322. || lk == 111135 // '$' 'preceding-sibling'
  13323. || lk == 112671 // '$' 'processing-instruction'
  13324. || lk == 113695 // '$' 'rename'
  13325. || lk == 114207 // '$' 'replace'
  13326. || lk == 114719 // '$' 'return'
  13327. || lk == 115231 // '$' 'returning'
  13328. || lk == 115743 // '$' 'revalidation'
  13329. || lk == 116767 // '$' 'satisfies'
  13330. || lk == 117279 // '$' 'schema'
  13331. || lk == 117791 // '$' 'schema-attribute'
  13332. || lk == 118303 // '$' 'schema-element'
  13333. || lk == 118815 // '$' 'score'
  13334. || lk == 119327 // '$' 'select'
  13335. || lk == 119839 // '$' 'self'
  13336. || lk == 122399 // '$' 'sliding'
  13337. || lk == 122911 // '$' 'some'
  13338. || lk == 123423 // '$' 'stable'
  13339. || lk == 123935 // '$' 'start'
  13340. || lk == 125471 // '$' 'strict'
  13341. || lk == 126495 // '$' 'structured-item'
  13342. || lk == 127007 // '$' 'switch'
  13343. || lk == 127519 // '$' 'text'
  13344. || lk == 129567 // '$' 'to'
  13345. || lk == 130079 // '$' 'treat'
  13346. || lk == 130591 // '$' 'true'
  13347. || lk == 131103 // '$' 'try'
  13348. || lk == 131615 // '$' 'tumbling'
  13349. || lk == 132127 // '$' 'type'
  13350. || lk == 132639 // '$' 'typeswitch'
  13351. || lk == 133151 // '$' 'union'
  13352. || lk == 134175 // '$' 'unordered'
  13353. || lk == 134687 // '$' 'updating'
  13354. || lk == 136223 // '$' 'validate'
  13355. || lk == 136735 // '$' 'value'
  13356. || lk == 137247 // '$' 'variable'
  13357. || lk == 137759 // '$' 'version'
  13358. || lk == 139295 // '$' 'where'
  13359. || lk == 139807 // '$' 'while'
  13360. || lk == 141343) // '$' 'with'
  13361. {
  13362. lk = memoized(2, e0);
  13363. if (lk == 0)
  13364. {
  13365. var b0A = b0; var e0A = e0; var l1A = l1;
  13366. var b1A = b1; var e1A = e1; var l2A = l2;
  13367. var b2A = b2; var e2A = e2;
  13368. try
  13369. {
  13370. try_GroupingVariable();
  13371. lookahead1W(205); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  13372. if (l1 == 53 // ':='
  13373. || l1 == 80) // 'as'
  13374. {
  13375. if (l1 == 80) // 'as'
  13376. {
  13377. try_TypeDeclaration();
  13378. }
  13379. lookahead1W(28); // S^WS | '(:' | ':='
  13380. shiftT(53); // ':='
  13381. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13382. try_ExprSingle();
  13383. }
  13384. if (l1 == 95) // 'collation'
  13385. {
  13386. shiftT(95); // 'collation'
  13387. lookahead1W(15); // URILiteral | S^WS | '(:'
  13388. shiftT(7); // URILiteral
  13389. }
  13390. lk = -1;
  13391. }
  13392. catch (p1A)
  13393. {
  13394. lk = -2;
  13395. }
  13396. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  13397. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  13398. b2 = b2A; e2 = e2A; end = e2A; }}
  13399. memoize(2, e0, lk);
  13400. }
  13401. }
  13402. switch (lk)
  13403. {
  13404. case -1:
  13405. parse_GroupingVariable();
  13406. lookahead1W(205); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  13407. if (l1 == 53 // ':='
  13408. || l1 == 80) // 'as'
  13409. {
  13410. if (l1 == 80) // 'as'
  13411. {
  13412. whitespace();
  13413. parse_TypeDeclaration();
  13414. }
  13415. lookahead1W(28); // S^WS | '(:' | ':='
  13416. shift(53); // ':='
  13417. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13418. whitespace();
  13419. parse_ExprSingle();
  13420. }
  13421. if (l1 == 95) // 'collation'
  13422. {
  13423. shift(95); // 'collation'
  13424. lookahead1W(15); // URILiteral | S^WS | '(:'
  13425. shift(7); // URILiteral
  13426. }
  13427. break;
  13428. default:
  13429. parse_ExprSingle();
  13430. }
  13431. eventHandler.endNonterminal("GroupingSpec", e0);
  13432. }
  13433. function try_GroupingSpec()
  13434. {
  13435. switch (l1)
  13436. {
  13437. case 31: // '$'
  13438. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13439. break;
  13440. default:
  13441. lk = l1;
  13442. }
  13443. if (lk == 3103 // '$' EQName^Token
  13444. || lk == 36383 // '$' 'after'
  13445. || lk == 37407 // '$' 'allowing'
  13446. || lk == 37919 // '$' 'ancestor'
  13447. || lk == 38431 // '$' 'ancestor-or-self'
  13448. || lk == 38943 // '$' 'and'
  13449. || lk == 39967 // '$' 'append'
  13450. || lk == 40479 // '$' 'array'
  13451. || lk == 40991 // '$' 'as'
  13452. || lk == 41503 // '$' 'ascending'
  13453. || lk == 42015 // '$' 'at'
  13454. || lk == 42527 // '$' 'attribute'
  13455. || lk == 43039 // '$' 'base-uri'
  13456. || lk == 43551 // '$' 'before'
  13457. || lk == 44063 // '$' 'boundary-space'
  13458. || lk == 44575 // '$' 'break'
  13459. || lk == 45599 // '$' 'case'
  13460. || lk == 46111 // '$' 'cast'
  13461. || lk == 46623 // '$' 'castable'
  13462. || lk == 47135 // '$' 'catch'
  13463. || lk == 48159 // '$' 'child'
  13464. || lk == 48671 // '$' 'collation'
  13465. || lk == 49695 // '$' 'comment'
  13466. || lk == 50207 // '$' 'constraint'
  13467. || lk == 50719 // '$' 'construction'
  13468. || lk == 52255 // '$' 'context'
  13469. || lk == 52767 // '$' 'continue'
  13470. || lk == 53279 // '$' 'copy'
  13471. || lk == 53791 // '$' 'copy-namespaces'
  13472. || lk == 54303 // '$' 'count'
  13473. || lk == 54815 // '$' 'decimal-format'
  13474. || lk == 55839 // '$' 'declare'
  13475. || lk == 56351 // '$' 'default'
  13476. || lk == 56863 // '$' 'delete'
  13477. || lk == 57375 // '$' 'descendant'
  13478. || lk == 57887 // '$' 'descendant-or-self'
  13479. || lk == 58399 // '$' 'descending'
  13480. || lk == 60959 // '$' 'div'
  13481. || lk == 61471 // '$' 'document'
  13482. || lk == 61983 // '$' 'document-node'
  13483. || lk == 62495 // '$' 'element'
  13484. || lk == 63007 // '$' 'else'
  13485. || lk == 63519 // '$' 'empty'
  13486. || lk == 64031 // '$' 'empty-sequence'
  13487. || lk == 64543 // '$' 'encoding'
  13488. || lk == 65055 // '$' 'end'
  13489. || lk == 66079 // '$' 'eq'
  13490. || lk == 66591 // '$' 'every'
  13491. || lk == 67615 // '$' 'except'
  13492. || lk == 68127 // '$' 'exit'
  13493. || lk == 68639 // '$' 'external'
  13494. || lk == 69151 // '$' 'false'
  13495. || lk == 69663 // '$' 'first'
  13496. || lk == 70175 // '$' 'following'
  13497. || lk == 70687 // '$' 'following-sibling'
  13498. || lk == 71199 // '$' 'for'
  13499. || lk == 72735 // '$' 'from'
  13500. || lk == 73247 // '$' 'ft-option'
  13501. || lk == 75295 // '$' 'function'
  13502. || lk == 75807 // '$' 'ge'
  13503. || lk == 76831 // '$' 'group'
  13504. || lk == 77855 // '$' 'gt'
  13505. || lk == 78367 // '$' 'idiv'
  13506. || lk == 78879 // '$' 'if'
  13507. || lk == 79391 // '$' 'import'
  13508. || lk == 79903 // '$' 'in'
  13509. || lk == 80415 // '$' 'index'
  13510. || lk == 82463 // '$' 'insert'
  13511. || lk == 82975 // '$' 'instance'
  13512. || lk == 83487 // '$' 'integrity'
  13513. || lk == 83999 // '$' 'intersect'
  13514. || lk == 84511 // '$' 'into'
  13515. || lk == 85023 // '$' 'is'
  13516. || lk == 85535 // '$' 'item'
  13517. || lk == 86047 // '$' 'json'
  13518. || lk == 86559 // '$' 'json-item'
  13519. || lk == 87071 // '$' 'jsoniq'
  13520. || lk == 88607 // '$' 'last'
  13521. || lk == 89119 // '$' 'lax'
  13522. || lk == 89631 // '$' 'le'
  13523. || lk == 90655 // '$' 'let'
  13524. || lk == 91679 // '$' 'loop'
  13525. || lk == 92703 // '$' 'lt'
  13526. || lk == 93727 // '$' 'mod'
  13527. || lk == 94239 // '$' 'modify'
  13528. || lk == 94751 // '$' 'module'
  13529. || lk == 95775 // '$' 'namespace'
  13530. || lk == 96287 // '$' 'namespace-node'
  13531. || lk == 96799 // '$' 'ne'
  13532. || lk == 99359 // '$' 'node'
  13533. || lk == 99871 // '$' 'nodes'
  13534. || lk == 100895 // '$' 'null'
  13535. || lk == 101407 // '$' 'object'
  13536. || lk == 103455 // '$' 'only'
  13537. || lk == 103967 // '$' 'option'
  13538. || lk == 104479 // '$' 'or'
  13539. || lk == 104991 // '$' 'order'
  13540. || lk == 105503 // '$' 'ordered'
  13541. || lk == 106015 // '$' 'ordering'
  13542. || lk == 107551 // '$' 'parent'
  13543. || lk == 110623 // '$' 'preceding'
  13544. || lk == 111135 // '$' 'preceding-sibling'
  13545. || lk == 112671 // '$' 'processing-instruction'
  13546. || lk == 113695 // '$' 'rename'
  13547. || lk == 114207 // '$' 'replace'
  13548. || lk == 114719 // '$' 'return'
  13549. || lk == 115231 // '$' 'returning'
  13550. || lk == 115743 // '$' 'revalidation'
  13551. || lk == 116767 // '$' 'satisfies'
  13552. || lk == 117279 // '$' 'schema'
  13553. || lk == 117791 // '$' 'schema-attribute'
  13554. || lk == 118303 // '$' 'schema-element'
  13555. || lk == 118815 // '$' 'score'
  13556. || lk == 119327 // '$' 'select'
  13557. || lk == 119839 // '$' 'self'
  13558. || lk == 122399 // '$' 'sliding'
  13559. || lk == 122911 // '$' 'some'
  13560. || lk == 123423 // '$' 'stable'
  13561. || lk == 123935 // '$' 'start'
  13562. || lk == 125471 // '$' 'strict'
  13563. || lk == 126495 // '$' 'structured-item'
  13564. || lk == 127007 // '$' 'switch'
  13565. || lk == 127519 // '$' 'text'
  13566. || lk == 129567 // '$' 'to'
  13567. || lk == 130079 // '$' 'treat'
  13568. || lk == 130591 // '$' 'true'
  13569. || lk == 131103 // '$' 'try'
  13570. || lk == 131615 // '$' 'tumbling'
  13571. || lk == 132127 // '$' 'type'
  13572. || lk == 132639 // '$' 'typeswitch'
  13573. || lk == 133151 // '$' 'union'
  13574. || lk == 134175 // '$' 'unordered'
  13575. || lk == 134687 // '$' 'updating'
  13576. || lk == 136223 // '$' 'validate'
  13577. || lk == 136735 // '$' 'value'
  13578. || lk == 137247 // '$' 'variable'
  13579. || lk == 137759 // '$' 'version'
  13580. || lk == 139295 // '$' 'where'
  13581. || lk == 139807 // '$' 'while'
  13582. || lk == 141343) // '$' 'with'
  13583. {
  13584. lk = memoized(2, e0);
  13585. if (lk == 0)
  13586. {
  13587. var b0A = b0; var e0A = e0; var l1A = l1;
  13588. var b1A = b1; var e1A = e1; var l2A = l2;
  13589. var b2A = b2; var e2A = e2;
  13590. try
  13591. {
  13592. try_GroupingVariable();
  13593. lookahead1W(205); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  13594. if (l1 == 53 // ':='
  13595. || l1 == 80) // 'as'
  13596. {
  13597. if (l1 == 80) // 'as'
  13598. {
  13599. try_TypeDeclaration();
  13600. }
  13601. lookahead1W(28); // S^WS | '(:' | ':='
  13602. shiftT(53); // ':='
  13603. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13604. try_ExprSingle();
  13605. }
  13606. if (l1 == 95) // 'collation'
  13607. {
  13608. shiftT(95); // 'collation'
  13609. lookahead1W(15); // URILiteral | S^WS | '(:'
  13610. shiftT(7); // URILiteral
  13611. }
  13612. memoize(2, e0A, -1);
  13613. lk = -3;
  13614. }
  13615. catch (p1A)
  13616. {
  13617. lk = -2;
  13618. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  13619. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  13620. b2 = b2A; e2 = e2A; end = e2A; }}
  13621. memoize(2, e0A, -2);
  13622. }
  13623. }
  13624. }
  13625. switch (lk)
  13626. {
  13627. case -1:
  13628. try_GroupingVariable();
  13629. lookahead1W(205); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  13630. if (l1 == 53 // ':='
  13631. || l1 == 80) // 'as'
  13632. {
  13633. if (l1 == 80) // 'as'
  13634. {
  13635. try_TypeDeclaration();
  13636. }
  13637. lookahead1W(28); // S^WS | '(:' | ':='
  13638. shiftT(53); // ':='
  13639. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13640. try_ExprSingle();
  13641. }
  13642. if (l1 == 95) // 'collation'
  13643. {
  13644. shiftT(95); // 'collation'
  13645. lookahead1W(15); // URILiteral | S^WS | '(:'
  13646. shiftT(7); // URILiteral
  13647. }
  13648. break;
  13649. case -3:
  13650. break;
  13651. default:
  13652. try_ExprSingle();
  13653. }
  13654. }
  13655. function parse_GroupingVariable()
  13656. {
  13657. eventHandler.startNonterminal("GroupingVariable", e0);
  13658. shift(31); // '$'
  13659. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13660. whitespace();
  13661. parse_VarName();
  13662. eventHandler.endNonterminal("GroupingVariable", e0);
  13663. }
  13664. function try_GroupingVariable()
  13665. {
  13666. shiftT(31); // '$'
  13667. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13668. try_VarName();
  13669. }
  13670. function parse_OrderByClause()
  13671. {
  13672. eventHandler.startNonterminal("OrderByClause", e0);
  13673. switch (l1)
  13674. {
  13675. case 205: // 'order'
  13676. shift(205); // 'order'
  13677. lookahead1W(37); // S^WS | '(:' | 'by'
  13678. shift(88); // 'by'
  13679. break;
  13680. default:
  13681. shift(241); // 'stable'
  13682. lookahead1W(70); // S^WS | '(:' | 'order'
  13683. shift(205); // 'order'
  13684. lookahead1W(37); // S^WS | '(:' | 'by'
  13685. shift(88); // 'by'
  13686. }
  13687. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13688. whitespace();
  13689. parse_OrderSpecList();
  13690. eventHandler.endNonterminal("OrderByClause", e0);
  13691. }
  13692. function try_OrderByClause()
  13693. {
  13694. switch (l1)
  13695. {
  13696. case 205: // 'order'
  13697. shiftT(205); // 'order'
  13698. lookahead1W(37); // S^WS | '(:' | 'by'
  13699. shiftT(88); // 'by'
  13700. break;
  13701. default:
  13702. shiftT(241); // 'stable'
  13703. lookahead1W(70); // S^WS | '(:' | 'order'
  13704. shiftT(205); // 'order'
  13705. lookahead1W(37); // S^WS | '(:' | 'by'
  13706. shiftT(88); // 'by'
  13707. }
  13708. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13709. try_OrderSpecList();
  13710. }
  13711. function parse_OrderSpecList()
  13712. {
  13713. eventHandler.startNonterminal("OrderSpecList", e0);
  13714. parse_OrderSpec();
  13715. for (;;)
  13716. {
  13717. lookahead1W(198); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  13718. if (l1 != 42) // ','
  13719. {
  13720. break;
  13721. }
  13722. shift(42); // ','
  13723. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13724. whitespace();
  13725. parse_OrderSpec();
  13726. }
  13727. eventHandler.endNonterminal("OrderSpecList", e0);
  13728. }
  13729. function try_OrderSpecList()
  13730. {
  13731. try_OrderSpec();
  13732. for (;;)
  13733. {
  13734. lookahead1W(198); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  13735. if (l1 != 42) // ','
  13736. {
  13737. break;
  13738. }
  13739. shiftT(42); // ','
  13740. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13741. try_OrderSpec();
  13742. }
  13743. }
  13744. function parse_OrderSpec()
  13745. {
  13746. eventHandler.startNonterminal("OrderSpec", e0);
  13747. parse_ExprSingle();
  13748. whitespace();
  13749. parse_OrderModifier();
  13750. eventHandler.endNonterminal("OrderSpec", e0);
  13751. }
  13752. function try_OrderSpec()
  13753. {
  13754. try_ExprSingle();
  13755. try_OrderModifier();
  13756. }
  13757. function parse_OrderModifier()
  13758. {
  13759. eventHandler.startNonterminal("OrderModifier", e0);
  13760. if (l1 == 81 // 'ascending'
  13761. || l1 == 114) // 'descending'
  13762. {
  13763. switch (l1)
  13764. {
  13765. case 81: // 'ascending'
  13766. shift(81); // 'ascending'
  13767. break;
  13768. default:
  13769. shift(114); // 'descending'
  13770. }
  13771. }
  13772. lookahead1W(202); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  13773. if (l1 == 124) // 'empty'
  13774. {
  13775. shift(124); // 'empty'
  13776. lookahead1W(125); // S^WS | '(:' | 'greatest' | 'least'
  13777. switch (l1)
  13778. {
  13779. case 149: // 'greatest'
  13780. shift(149); // 'greatest'
  13781. break;
  13782. default:
  13783. shift(176); // 'least'
  13784. }
  13785. }
  13786. lookahead1W(199); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  13787. if (l1 == 95) // 'collation'
  13788. {
  13789. shift(95); // 'collation'
  13790. lookahead1W(15); // URILiteral | S^WS | '(:'
  13791. shift(7); // URILiteral
  13792. }
  13793. eventHandler.endNonterminal("OrderModifier", e0);
  13794. }
  13795. function try_OrderModifier()
  13796. {
  13797. if (l1 == 81 // 'ascending'
  13798. || l1 == 114) // 'descending'
  13799. {
  13800. switch (l1)
  13801. {
  13802. case 81: // 'ascending'
  13803. shiftT(81); // 'ascending'
  13804. break;
  13805. default:
  13806. shiftT(114); // 'descending'
  13807. }
  13808. }
  13809. lookahead1W(202); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  13810. if (l1 == 124) // 'empty'
  13811. {
  13812. shiftT(124); // 'empty'
  13813. lookahead1W(125); // S^WS | '(:' | 'greatest' | 'least'
  13814. switch (l1)
  13815. {
  13816. case 149: // 'greatest'
  13817. shiftT(149); // 'greatest'
  13818. break;
  13819. default:
  13820. shiftT(176); // 'least'
  13821. }
  13822. }
  13823. lookahead1W(199); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  13824. if (l1 == 95) // 'collation'
  13825. {
  13826. shiftT(95); // 'collation'
  13827. lookahead1W(15); // URILiteral | S^WS | '(:'
  13828. shiftT(7); // URILiteral
  13829. }
  13830. }
  13831. function parse_ReturnClause()
  13832. {
  13833. eventHandler.startNonterminal("ReturnClause", e0);
  13834. shift(224); // 'return'
  13835. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13836. whitespace();
  13837. parse_ExprSingle();
  13838. eventHandler.endNonterminal("ReturnClause", e0);
  13839. }
  13840. function try_ReturnClause()
  13841. {
  13842. shiftT(224); // 'return'
  13843. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13844. try_ExprSingle();
  13845. }
  13846. function parse_QuantifiedExpr()
  13847. {
  13848. eventHandler.startNonterminal("QuantifiedExpr", e0);
  13849. switch (l1)
  13850. {
  13851. case 240: // 'some'
  13852. shift(240); // 'some'
  13853. break;
  13854. default:
  13855. shift(130); // 'every'
  13856. }
  13857. lookahead1W(21); // S^WS | '$' | '(:'
  13858. whitespace();
  13859. parse_QuantifiedVarDecl();
  13860. for (;;)
  13861. {
  13862. if (l1 != 42) // ','
  13863. {
  13864. break;
  13865. }
  13866. shift(42); // ','
  13867. lookahead1W(21); // S^WS | '$' | '(:'
  13868. whitespace();
  13869. parse_QuantifiedVarDecl();
  13870. }
  13871. shift(228); // 'satisfies'
  13872. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13873. whitespace();
  13874. parse_ExprSingle();
  13875. eventHandler.endNonterminal("QuantifiedExpr", e0);
  13876. }
  13877. function try_QuantifiedExpr()
  13878. {
  13879. switch (l1)
  13880. {
  13881. case 240: // 'some'
  13882. shiftT(240); // 'some'
  13883. break;
  13884. default:
  13885. shiftT(130); // 'every'
  13886. }
  13887. lookahead1W(21); // S^WS | '$' | '(:'
  13888. try_QuantifiedVarDecl();
  13889. for (;;)
  13890. {
  13891. if (l1 != 42) // ','
  13892. {
  13893. break;
  13894. }
  13895. shiftT(42); // ','
  13896. lookahead1W(21); // S^WS | '$' | '(:'
  13897. try_QuantifiedVarDecl();
  13898. }
  13899. shiftT(228); // 'satisfies'
  13900. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13901. try_ExprSingle();
  13902. }
  13903. function parse_QuantifiedVarDecl()
  13904. {
  13905. eventHandler.startNonterminal("QuantifiedVarDecl", e0);
  13906. shift(31); // '$'
  13907. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13908. whitespace();
  13909. parse_VarName();
  13910. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  13911. if (l1 == 80) // 'as'
  13912. {
  13913. whitespace();
  13914. parse_TypeDeclaration();
  13915. }
  13916. lookahead1W(56); // S^WS | '(:' | 'in'
  13917. shift(156); // 'in'
  13918. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13919. whitespace();
  13920. parse_ExprSingle();
  13921. eventHandler.endNonterminal("QuantifiedVarDecl", e0);
  13922. }
  13923. function try_QuantifiedVarDecl()
  13924. {
  13925. shiftT(31); // '$'
  13926. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13927. try_VarName();
  13928. lookahead1W(114); // S^WS | '(:' | 'as' | 'in'
  13929. if (l1 == 80) // 'as'
  13930. {
  13931. try_TypeDeclaration();
  13932. }
  13933. lookahead1W(56); // S^WS | '(:' | 'in'
  13934. shiftT(156); // 'in'
  13935. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13936. try_ExprSingle();
  13937. }
  13938. function parse_SwitchExpr()
  13939. {
  13940. eventHandler.startNonterminal("SwitchExpr", e0);
  13941. shift(248); // 'switch'
  13942. lookahead1W(22); // S^WS | '(' | '(:'
  13943. shift(35); // '('
  13944. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13945. whitespace();
  13946. parse_Expr();
  13947. shift(38); // ')'
  13948. for (;;)
  13949. {
  13950. lookahead1W(38); // S^WS | '(:' | 'case'
  13951. whitespace();
  13952. parse_SwitchCaseClause();
  13953. if (l1 != 89) // 'case'
  13954. {
  13955. break;
  13956. }
  13957. }
  13958. shift(110); // 'default'
  13959. lookahead1W(73); // S^WS | '(:' | 'return'
  13960. shift(224); // 'return'
  13961. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13962. whitespace();
  13963. parse_ExprSingle();
  13964. eventHandler.endNonterminal("SwitchExpr", e0);
  13965. }
  13966. function try_SwitchExpr()
  13967. {
  13968. shiftT(248); // 'switch'
  13969. lookahead1W(22); // S^WS | '(' | '(:'
  13970. shiftT(35); // '('
  13971. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13972. try_Expr();
  13973. shiftT(38); // ')'
  13974. for (;;)
  13975. {
  13976. lookahead1W(38); // S^WS | '(:' | 'case'
  13977. try_SwitchCaseClause();
  13978. if (l1 != 89) // 'case'
  13979. {
  13980. break;
  13981. }
  13982. }
  13983. shiftT(110); // 'default'
  13984. lookahead1W(73); // S^WS | '(:' | 'return'
  13985. shiftT(224); // 'return'
  13986. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13987. try_ExprSingle();
  13988. }
  13989. function parse_SwitchCaseClause()
  13990. {
  13991. eventHandler.startNonterminal("SwitchCaseClause", e0);
  13992. for (;;)
  13993. {
  13994. shift(89); // 'case'
  13995. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  13996. whitespace();
  13997. parse_SwitchCaseOperand();
  13998. if (l1 != 89) // 'case'
  13999. {
  14000. break;
  14001. }
  14002. }
  14003. shift(224); // 'return'
  14004. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14005. whitespace();
  14006. parse_ExprSingle();
  14007. eventHandler.endNonterminal("SwitchCaseClause", e0);
  14008. }
  14009. function try_SwitchCaseClause()
  14010. {
  14011. for (;;)
  14012. {
  14013. shiftT(89); // 'case'
  14014. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14015. try_SwitchCaseOperand();
  14016. if (l1 != 89) // 'case'
  14017. {
  14018. break;
  14019. }
  14020. }
  14021. shiftT(224); // 'return'
  14022. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14023. try_ExprSingle();
  14024. }
  14025. function parse_SwitchCaseOperand()
  14026. {
  14027. eventHandler.startNonterminal("SwitchCaseOperand", e0);
  14028. parse_ExprSingle();
  14029. eventHandler.endNonterminal("SwitchCaseOperand", e0);
  14030. }
  14031. function try_SwitchCaseOperand()
  14032. {
  14033. try_ExprSingle();
  14034. }
  14035. function parse_TypeswitchExpr()
  14036. {
  14037. eventHandler.startNonterminal("TypeswitchExpr", e0);
  14038. shift(259); // 'typeswitch'
  14039. lookahead1W(22); // S^WS | '(' | '(:'
  14040. shift(35); // '('
  14041. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14042. whitespace();
  14043. parse_Expr();
  14044. shift(38); // ')'
  14045. for (;;)
  14046. {
  14047. lookahead1W(38); // S^WS | '(:' | 'case'
  14048. whitespace();
  14049. parse_CaseClause();
  14050. if (l1 != 89) // 'case'
  14051. {
  14052. break;
  14053. }
  14054. }
  14055. shift(110); // 'default'
  14056. lookahead1W(99); // S^WS | '$' | '(:' | 'return'
  14057. if (l1 == 31) // '$'
  14058. {
  14059. shift(31); // '$'
  14060. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14061. whitespace();
  14062. parse_VarName();
  14063. }
  14064. lookahead1W(73); // S^WS | '(:' | 'return'
  14065. shift(224); // 'return'
  14066. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14067. whitespace();
  14068. parse_ExprSingle();
  14069. eventHandler.endNonterminal("TypeswitchExpr", e0);
  14070. }
  14071. function try_TypeswitchExpr()
  14072. {
  14073. shiftT(259); // 'typeswitch'
  14074. lookahead1W(22); // S^WS | '(' | '(:'
  14075. shiftT(35); // '('
  14076. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14077. try_Expr();
  14078. shiftT(38); // ')'
  14079. for (;;)
  14080. {
  14081. lookahead1W(38); // S^WS | '(:' | 'case'
  14082. try_CaseClause();
  14083. if (l1 != 89) // 'case'
  14084. {
  14085. break;
  14086. }
  14087. }
  14088. shiftT(110); // 'default'
  14089. lookahead1W(99); // S^WS | '$' | '(:' | 'return'
  14090. if (l1 == 31) // '$'
  14091. {
  14092. shiftT(31); // '$'
  14093. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14094. try_VarName();
  14095. }
  14096. lookahead1W(73); // S^WS | '(:' | 'return'
  14097. shiftT(224); // 'return'
  14098. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14099. try_ExprSingle();
  14100. }
  14101. function parse_CaseClause()
  14102. {
  14103. eventHandler.startNonterminal("CaseClause", e0);
  14104. shift(89); // 'case'
  14105. lookahead1W(257); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  14106. if (l1 == 31) // '$'
  14107. {
  14108. shift(31); // '$'
  14109. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14110. whitespace();
  14111. parse_VarName();
  14112. lookahead1W(33); // S^WS | '(:' | 'as'
  14113. shift(80); // 'as'
  14114. }
  14115. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14116. whitespace();
  14117. parse_SequenceTypeUnion();
  14118. shift(224); // 'return'
  14119. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14120. whitespace();
  14121. parse_ExprSingle();
  14122. eventHandler.endNonterminal("CaseClause", e0);
  14123. }
  14124. function try_CaseClause()
  14125. {
  14126. shiftT(89); // 'case'
  14127. lookahead1W(257); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  14128. if (l1 == 31) // '$'
  14129. {
  14130. shiftT(31); // '$'
  14131. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14132. try_VarName();
  14133. lookahead1W(33); // S^WS | '(:' | 'as'
  14134. shiftT(80); // 'as'
  14135. }
  14136. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14137. try_SequenceTypeUnion();
  14138. shiftT(224); // 'return'
  14139. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14140. try_ExprSingle();
  14141. }
  14142. function parse_SequenceTypeUnion()
  14143. {
  14144. eventHandler.startNonterminal("SequenceTypeUnion", e0);
  14145. parse_SequenceType();
  14146. for (;;)
  14147. {
  14148. lookahead1W(138); // S^WS | '(:' | 'return' | '|'
  14149. if (l1 != 284) // '|'
  14150. {
  14151. break;
  14152. }
  14153. shift(284); // '|'
  14154. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14155. whitespace();
  14156. parse_SequenceType();
  14157. }
  14158. eventHandler.endNonterminal("SequenceTypeUnion", e0);
  14159. }
  14160. function try_SequenceTypeUnion()
  14161. {
  14162. try_SequenceType();
  14163. for (;;)
  14164. {
  14165. lookahead1W(138); // S^WS | '(:' | 'return' | '|'
  14166. if (l1 != 284) // '|'
  14167. {
  14168. break;
  14169. }
  14170. shiftT(284); // '|'
  14171. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14172. try_SequenceType();
  14173. }
  14174. }
  14175. function parse_IfExpr()
  14176. {
  14177. eventHandler.startNonterminal("IfExpr", e0);
  14178. shift(154); // 'if'
  14179. lookahead1W(22); // S^WS | '(' | '(:'
  14180. shift(35); // '('
  14181. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14182. whitespace();
  14183. parse_Expr();
  14184. shift(38); // ')'
  14185. lookahead1W(80); // S^WS | '(:' | 'then'
  14186. shift(250); // 'then'
  14187. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14188. whitespace();
  14189. parse_ExprSingle();
  14190. shift(123); // 'else'
  14191. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14192. whitespace();
  14193. parse_ExprSingle();
  14194. eventHandler.endNonterminal("IfExpr", e0);
  14195. }
  14196. function try_IfExpr()
  14197. {
  14198. shiftT(154); // 'if'
  14199. lookahead1W(22); // S^WS | '(' | '(:'
  14200. shiftT(35); // '('
  14201. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14202. try_Expr();
  14203. shiftT(38); // ')'
  14204. lookahead1W(80); // S^WS | '(:' | 'then'
  14205. shiftT(250); // 'then'
  14206. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14207. try_ExprSingle();
  14208. shiftT(123); // 'else'
  14209. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14210. try_ExprSingle();
  14211. }
  14212. function parse_TryCatchExpr()
  14213. {
  14214. eventHandler.startNonterminal("TryCatchExpr", e0);
  14215. parse_TryClause();
  14216. for (;;)
  14217. {
  14218. lookahead1W(39); // S^WS | '(:' | 'catch'
  14219. whitespace();
  14220. parse_CatchClause();
  14221. lookahead1W(207); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  14222. if (l1 != 92) // 'catch'
  14223. {
  14224. break;
  14225. }
  14226. }
  14227. eventHandler.endNonterminal("TryCatchExpr", e0);
  14228. }
  14229. function try_TryCatchExpr()
  14230. {
  14231. try_TryClause();
  14232. for (;;)
  14233. {
  14234. lookahead1W(39); // S^WS | '(:' | 'catch'
  14235. try_CatchClause();
  14236. lookahead1W(207); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  14237. if (l1 != 92) // 'catch'
  14238. {
  14239. break;
  14240. }
  14241. }
  14242. }
  14243. function parse_TryClause()
  14244. {
  14245. eventHandler.startNonterminal("TryClause", e0);
  14246. shift(256); // 'try'
  14247. lookahead1W(90); // S^WS | '(:' | '{'
  14248. shift(281); // '{'
  14249. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14250. whitespace();
  14251. parse_TryTargetExpr();
  14252. shift(287); // '}'
  14253. eventHandler.endNonterminal("TryClause", e0);
  14254. }
  14255. function try_TryClause()
  14256. {
  14257. shiftT(256); // 'try'
  14258. lookahead1W(90); // S^WS | '(:' | '{'
  14259. shiftT(281); // '{'
  14260. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14261. try_TryTargetExpr();
  14262. shiftT(287); // '}'
  14263. }
  14264. function parse_TryTargetExpr()
  14265. {
  14266. eventHandler.startNonterminal("TryTargetExpr", e0);
  14267. parse_Expr();
  14268. eventHandler.endNonterminal("TryTargetExpr", e0);
  14269. }
  14270. function try_TryTargetExpr()
  14271. {
  14272. try_Expr();
  14273. }
  14274. function parse_CatchClause()
  14275. {
  14276. eventHandler.startNonterminal("CatchClause", e0);
  14277. shift(92); // 'catch'
  14278. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14279. whitespace();
  14280. parse_CatchErrorList();
  14281. shift(281); // '{'
  14282. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14283. whitespace();
  14284. parse_Expr();
  14285. shift(287); // '}'
  14286. eventHandler.endNonterminal("CatchClause", e0);
  14287. }
  14288. function try_CatchClause()
  14289. {
  14290. shiftT(92); // 'catch'
  14291. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14292. try_CatchErrorList();
  14293. shiftT(281); // '{'
  14294. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14295. try_Expr();
  14296. shiftT(287); // '}'
  14297. }
  14298. function parse_CatchErrorList()
  14299. {
  14300. eventHandler.startNonterminal("CatchErrorList", e0);
  14301. parse_NameTest();
  14302. for (;;)
  14303. {
  14304. lookahead1W(140); // S^WS | '(:' | '{' | '|'
  14305. if (l1 != 284) // '|'
  14306. {
  14307. break;
  14308. }
  14309. shift(284); // '|'
  14310. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14311. whitespace();
  14312. parse_NameTest();
  14313. }
  14314. eventHandler.endNonterminal("CatchErrorList", e0);
  14315. }
  14316. function try_CatchErrorList()
  14317. {
  14318. try_NameTest();
  14319. for (;;)
  14320. {
  14321. lookahead1W(140); // S^WS | '(:' | '{' | '|'
  14322. if (l1 != 284) // '|'
  14323. {
  14324. break;
  14325. }
  14326. shiftT(284); // '|'
  14327. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14328. try_NameTest();
  14329. }
  14330. }
  14331. function parse_OrExpr()
  14332. {
  14333. eventHandler.startNonterminal("OrExpr", e0);
  14334. parse_AndExpr();
  14335. for (;;)
  14336. {
  14337. if (l1 != 204) // 'or'
  14338. {
  14339. break;
  14340. }
  14341. shift(204); // 'or'
  14342. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14343. whitespace();
  14344. parse_AndExpr();
  14345. }
  14346. eventHandler.endNonterminal("OrExpr", e0);
  14347. }
  14348. function try_OrExpr()
  14349. {
  14350. try_AndExpr();
  14351. for (;;)
  14352. {
  14353. if (l1 != 204) // 'or'
  14354. {
  14355. break;
  14356. }
  14357. shiftT(204); // 'or'
  14358. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14359. try_AndExpr();
  14360. }
  14361. }
  14362. function parse_AndExpr()
  14363. {
  14364. eventHandler.startNonterminal("AndExpr", e0);
  14365. parse_NotExpr();
  14366. for (;;)
  14367. {
  14368. if (l1 != 76) // 'and'
  14369. {
  14370. break;
  14371. }
  14372. shift(76); // 'and'
  14373. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14374. whitespace();
  14375. parse_NotExpr();
  14376. }
  14377. eventHandler.endNonterminal("AndExpr", e0);
  14378. }
  14379. function try_AndExpr()
  14380. {
  14381. try_NotExpr();
  14382. for (;;)
  14383. {
  14384. if (l1 != 76) // 'and'
  14385. {
  14386. break;
  14387. }
  14388. shiftT(76); // 'and'
  14389. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14390. try_NotExpr();
  14391. }
  14392. }
  14393. function parse_NotExpr()
  14394. {
  14395. eventHandler.startNonterminal("NotExpr", e0);
  14396. if (l1 == 196) // 'not'
  14397. {
  14398. shift(196); // 'not'
  14399. }
  14400. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14401. whitespace();
  14402. parse_ComparisonExpr();
  14403. eventHandler.endNonterminal("NotExpr", e0);
  14404. }
  14405. function try_NotExpr()
  14406. {
  14407. if (l1 == 196) // 'not'
  14408. {
  14409. shiftT(196); // 'not'
  14410. }
  14411. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14412. try_ComparisonExpr();
  14413. }
  14414. function parse_ComparisonExpr()
  14415. {
  14416. eventHandler.startNonterminal("ComparisonExpr", e0);
  14417. parse_FTContainsExpr();
  14418. if (l1 == 27 // '!='
  14419. || l1 == 55 // '<'
  14420. || l1 == 58 // '<<'
  14421. || l1 == 59 // '<='
  14422. || l1 == 61 // '='
  14423. || l1 == 62 // '>'
  14424. || l1 == 63 // '>='
  14425. || l1 == 64 // '>>'
  14426. || l1 == 129 // 'eq'
  14427. || l1 == 148 // 'ge'
  14428. || l1 == 152 // 'gt'
  14429. || l1 == 166 // 'is'
  14430. || l1 == 175 // 'le'
  14431. || l1 == 181 // 'lt'
  14432. || l1 == 189) // 'ne'
  14433. {
  14434. switch (l1)
  14435. {
  14436. case 129: // 'eq'
  14437. case 148: // 'ge'
  14438. case 152: // 'gt'
  14439. case 175: // 'le'
  14440. case 181: // 'lt'
  14441. case 189: // 'ne'
  14442. whitespace();
  14443. parse_ValueComp();
  14444. break;
  14445. case 58: // '<<'
  14446. case 64: // '>>'
  14447. case 166: // 'is'
  14448. whitespace();
  14449. parse_NodeComp();
  14450. break;
  14451. default:
  14452. whitespace();
  14453. parse_GeneralComp();
  14454. }
  14455. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14456. whitespace();
  14457. parse_FTContainsExpr();
  14458. }
  14459. eventHandler.endNonterminal("ComparisonExpr", e0);
  14460. }
  14461. function try_ComparisonExpr()
  14462. {
  14463. try_FTContainsExpr();
  14464. if (l1 == 27 // '!='
  14465. || l1 == 55 // '<'
  14466. || l1 == 58 // '<<'
  14467. || l1 == 59 // '<='
  14468. || l1 == 61 // '='
  14469. || l1 == 62 // '>'
  14470. || l1 == 63 // '>='
  14471. || l1 == 64 // '>>'
  14472. || l1 == 129 // 'eq'
  14473. || l1 == 148 // 'ge'
  14474. || l1 == 152 // 'gt'
  14475. || l1 == 166 // 'is'
  14476. || l1 == 175 // 'le'
  14477. || l1 == 181 // 'lt'
  14478. || l1 == 189) // 'ne'
  14479. {
  14480. switch (l1)
  14481. {
  14482. case 129: // 'eq'
  14483. case 148: // 'ge'
  14484. case 152: // 'gt'
  14485. case 175: // 'le'
  14486. case 181: // 'lt'
  14487. case 189: // 'ne'
  14488. try_ValueComp();
  14489. break;
  14490. case 58: // '<<'
  14491. case 64: // '>>'
  14492. case 166: // 'is'
  14493. try_NodeComp();
  14494. break;
  14495. default:
  14496. try_GeneralComp();
  14497. }
  14498. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14499. try_FTContainsExpr();
  14500. }
  14501. }
  14502. function parse_FTContainsExpr()
  14503. {
  14504. eventHandler.startNonterminal("FTContainsExpr", e0);
  14505. parse_StringConcatExpr();
  14506. if (l1 == 100) // 'contains'
  14507. {
  14508. shift(100); // 'contains'
  14509. lookahead1W(79); // S^WS | '(:' | 'text'
  14510. shift(249); // 'text'
  14511. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  14512. whitespace();
  14513. parse_FTSelection();
  14514. if (l1 == 277) // 'without'
  14515. {
  14516. whitespace();
  14517. parse_FTIgnoreOption();
  14518. }
  14519. }
  14520. eventHandler.endNonterminal("FTContainsExpr", e0);
  14521. }
  14522. function try_FTContainsExpr()
  14523. {
  14524. try_StringConcatExpr();
  14525. if (l1 == 100) // 'contains'
  14526. {
  14527. shiftT(100); // 'contains'
  14528. lookahead1W(79); // S^WS | '(:' | 'text'
  14529. shiftT(249); // 'text'
  14530. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  14531. try_FTSelection();
  14532. if (l1 == 277) // 'without'
  14533. {
  14534. try_FTIgnoreOption();
  14535. }
  14536. }
  14537. }
  14538. function parse_StringConcatExpr()
  14539. {
  14540. eventHandler.startNonterminal("StringConcatExpr", e0);
  14541. parse_RangeExpr();
  14542. for (;;)
  14543. {
  14544. if (l1 != 285) // '||'
  14545. {
  14546. break;
  14547. }
  14548. shift(285); // '||'
  14549. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14550. whitespace();
  14551. parse_RangeExpr();
  14552. }
  14553. eventHandler.endNonterminal("StringConcatExpr", e0);
  14554. }
  14555. function try_StringConcatExpr()
  14556. {
  14557. try_RangeExpr();
  14558. for (;;)
  14559. {
  14560. if (l1 != 285) // '||'
  14561. {
  14562. break;
  14563. }
  14564. shiftT(285); // '||'
  14565. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14566. try_RangeExpr();
  14567. }
  14568. }
  14569. function parse_RangeExpr()
  14570. {
  14571. eventHandler.startNonterminal("RangeExpr", e0);
  14572. parse_AdditiveExpr();
  14573. if (l1 == 253) // 'to'
  14574. {
  14575. shift(253); // 'to'
  14576. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14577. whitespace();
  14578. parse_AdditiveExpr();
  14579. }
  14580. eventHandler.endNonterminal("RangeExpr", e0);
  14581. }
  14582. function try_RangeExpr()
  14583. {
  14584. try_AdditiveExpr();
  14585. if (l1 == 253) // 'to'
  14586. {
  14587. shiftT(253); // 'to'
  14588. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14589. try_AdditiveExpr();
  14590. }
  14591. }
  14592. function parse_AdditiveExpr()
  14593. {
  14594. eventHandler.startNonterminal("AdditiveExpr", e0);
  14595. parse_MultiplicativeExpr();
  14596. for (;;)
  14597. {
  14598. if (l1 != 41 // '+'
  14599. && l1 != 43) // '-'
  14600. {
  14601. break;
  14602. }
  14603. switch (l1)
  14604. {
  14605. case 41: // '+'
  14606. shift(41); // '+'
  14607. break;
  14608. default:
  14609. shift(43); // '-'
  14610. }
  14611. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14612. whitespace();
  14613. parse_MultiplicativeExpr();
  14614. }
  14615. eventHandler.endNonterminal("AdditiveExpr", e0);
  14616. }
  14617. function try_AdditiveExpr()
  14618. {
  14619. try_MultiplicativeExpr();
  14620. for (;;)
  14621. {
  14622. if (l1 != 41 // '+'
  14623. && l1 != 43) // '-'
  14624. {
  14625. break;
  14626. }
  14627. switch (l1)
  14628. {
  14629. case 41: // '+'
  14630. shiftT(41); // '+'
  14631. break;
  14632. default:
  14633. shiftT(43); // '-'
  14634. }
  14635. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14636. try_MultiplicativeExpr();
  14637. }
  14638. }
  14639. function parse_MultiplicativeExpr()
  14640. {
  14641. eventHandler.startNonterminal("MultiplicativeExpr", e0);
  14642. parse_UnionExpr();
  14643. for (;;)
  14644. {
  14645. if (l1 != 39 // '*'
  14646. && l1 != 119 // 'div'
  14647. && l1 != 153 // 'idiv'
  14648. && l1 != 183) // 'mod'
  14649. {
  14650. break;
  14651. }
  14652. switch (l1)
  14653. {
  14654. case 39: // '*'
  14655. shift(39); // '*'
  14656. break;
  14657. case 119: // 'div'
  14658. shift(119); // 'div'
  14659. break;
  14660. case 153: // 'idiv'
  14661. shift(153); // 'idiv'
  14662. break;
  14663. default:
  14664. shift(183); // 'mod'
  14665. }
  14666. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14667. whitespace();
  14668. parse_UnionExpr();
  14669. }
  14670. eventHandler.endNonterminal("MultiplicativeExpr", e0);
  14671. }
  14672. function try_MultiplicativeExpr()
  14673. {
  14674. try_UnionExpr();
  14675. for (;;)
  14676. {
  14677. if (l1 != 39 // '*'
  14678. && l1 != 119 // 'div'
  14679. && l1 != 153 // 'idiv'
  14680. && l1 != 183) // 'mod'
  14681. {
  14682. break;
  14683. }
  14684. switch (l1)
  14685. {
  14686. case 39: // '*'
  14687. shiftT(39); // '*'
  14688. break;
  14689. case 119: // 'div'
  14690. shiftT(119); // 'div'
  14691. break;
  14692. case 153: // 'idiv'
  14693. shiftT(153); // 'idiv'
  14694. break;
  14695. default:
  14696. shiftT(183); // 'mod'
  14697. }
  14698. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14699. try_UnionExpr();
  14700. }
  14701. }
  14702. function parse_UnionExpr()
  14703. {
  14704. eventHandler.startNonterminal("UnionExpr", e0);
  14705. parse_IntersectExceptExpr();
  14706. for (;;)
  14707. {
  14708. if (l1 != 260 // 'union'
  14709. && l1 != 284) // '|'
  14710. {
  14711. break;
  14712. }
  14713. switch (l1)
  14714. {
  14715. case 260: // 'union'
  14716. shift(260); // 'union'
  14717. break;
  14718. default:
  14719. shift(284); // '|'
  14720. }
  14721. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14722. whitespace();
  14723. parse_IntersectExceptExpr();
  14724. }
  14725. eventHandler.endNonterminal("UnionExpr", e0);
  14726. }
  14727. function try_UnionExpr()
  14728. {
  14729. try_IntersectExceptExpr();
  14730. for (;;)
  14731. {
  14732. if (l1 != 260 // 'union'
  14733. && l1 != 284) // '|'
  14734. {
  14735. break;
  14736. }
  14737. switch (l1)
  14738. {
  14739. case 260: // 'union'
  14740. shiftT(260); // 'union'
  14741. break;
  14742. default:
  14743. shiftT(284); // '|'
  14744. }
  14745. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14746. try_IntersectExceptExpr();
  14747. }
  14748. }
  14749. function parse_IntersectExceptExpr()
  14750. {
  14751. eventHandler.startNonterminal("IntersectExceptExpr", e0);
  14752. parse_InstanceofExpr();
  14753. for (;;)
  14754. {
  14755. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14756. if (l1 != 132 // 'except'
  14757. && l1 != 164) // 'intersect'
  14758. {
  14759. break;
  14760. }
  14761. switch (l1)
  14762. {
  14763. case 164: // 'intersect'
  14764. shift(164); // 'intersect'
  14765. break;
  14766. default:
  14767. shift(132); // 'except'
  14768. }
  14769. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14770. whitespace();
  14771. parse_InstanceofExpr();
  14772. }
  14773. eventHandler.endNonterminal("IntersectExceptExpr", e0);
  14774. }
  14775. function try_IntersectExceptExpr()
  14776. {
  14777. try_InstanceofExpr();
  14778. for (;;)
  14779. {
  14780. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14781. if (l1 != 132 // 'except'
  14782. && l1 != 164) // 'intersect'
  14783. {
  14784. break;
  14785. }
  14786. switch (l1)
  14787. {
  14788. case 164: // 'intersect'
  14789. shiftT(164); // 'intersect'
  14790. break;
  14791. default:
  14792. shiftT(132); // 'except'
  14793. }
  14794. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14795. try_InstanceofExpr();
  14796. }
  14797. }
  14798. function parse_InstanceofExpr()
  14799. {
  14800. eventHandler.startNonterminal("InstanceofExpr", e0);
  14801. parse_TreatExpr();
  14802. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14803. if (l1 == 162) // 'instance'
  14804. {
  14805. shift(162); // 'instance'
  14806. lookahead1W(67); // S^WS | '(:' | 'of'
  14807. shift(200); // 'of'
  14808. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14809. whitespace();
  14810. parse_SequenceType();
  14811. }
  14812. eventHandler.endNonterminal("InstanceofExpr", e0);
  14813. }
  14814. function try_InstanceofExpr()
  14815. {
  14816. try_TreatExpr();
  14817. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14818. if (l1 == 162) // 'instance'
  14819. {
  14820. shiftT(162); // 'instance'
  14821. lookahead1W(67); // S^WS | '(:' | 'of'
  14822. shiftT(200); // 'of'
  14823. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14824. try_SequenceType();
  14825. }
  14826. }
  14827. function parse_TreatExpr()
  14828. {
  14829. eventHandler.startNonterminal("TreatExpr", e0);
  14830. parse_CastableExpr();
  14831. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14832. if (l1 == 254) // 'treat'
  14833. {
  14834. shift(254); // 'treat'
  14835. lookahead1W(33); // S^WS | '(:' | 'as'
  14836. shift(80); // 'as'
  14837. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14838. whitespace();
  14839. parse_SequenceType();
  14840. }
  14841. eventHandler.endNonterminal("TreatExpr", e0);
  14842. }
  14843. function try_TreatExpr()
  14844. {
  14845. try_CastableExpr();
  14846. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14847. if (l1 == 254) // 'treat'
  14848. {
  14849. shiftT(254); // 'treat'
  14850. lookahead1W(33); // S^WS | '(:' | 'as'
  14851. shiftT(80); // 'as'
  14852. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14853. try_SequenceType();
  14854. }
  14855. }
  14856. function parse_CastableExpr()
  14857. {
  14858. eventHandler.startNonterminal("CastableExpr", e0);
  14859. parse_CastExpr();
  14860. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14861. if (l1 == 91) // 'castable'
  14862. {
  14863. shift(91); // 'castable'
  14864. lookahead1W(33); // S^WS | '(:' | 'as'
  14865. shift(80); // 'as'
  14866. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14867. whitespace();
  14868. parse_SingleType();
  14869. }
  14870. eventHandler.endNonterminal("CastableExpr", e0);
  14871. }
  14872. function try_CastableExpr()
  14873. {
  14874. try_CastExpr();
  14875. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14876. if (l1 == 91) // 'castable'
  14877. {
  14878. shiftT(91); // 'castable'
  14879. lookahead1W(33); // S^WS | '(:' | 'as'
  14880. shiftT(80); // 'as'
  14881. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14882. try_SingleType();
  14883. }
  14884. }
  14885. function parse_CastExpr()
  14886. {
  14887. eventHandler.startNonterminal("CastExpr", e0);
  14888. parse_UnaryExpr();
  14889. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14890. if (l1 == 90) // 'cast'
  14891. {
  14892. shift(90); // 'cast'
  14893. lookahead1W(33); // S^WS | '(:' | 'as'
  14894. shift(80); // 'as'
  14895. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14896. whitespace();
  14897. parse_SingleType();
  14898. }
  14899. eventHandler.endNonterminal("CastExpr", e0);
  14900. }
  14901. function try_CastExpr()
  14902. {
  14903. try_UnaryExpr();
  14904. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  14905. if (l1 == 90) // 'cast'
  14906. {
  14907. shiftT(90); // 'cast'
  14908. lookahead1W(33); // S^WS | '(:' | 'as'
  14909. shiftT(80); // 'as'
  14910. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14911. try_SingleType();
  14912. }
  14913. }
  14914. function parse_UnaryExpr()
  14915. {
  14916. eventHandler.startNonterminal("UnaryExpr", e0);
  14917. for (;;)
  14918. {
  14919. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14920. if (l1 != 41 // '+'
  14921. && l1 != 43) // '-'
  14922. {
  14923. break;
  14924. }
  14925. switch (l1)
  14926. {
  14927. case 43: // '-'
  14928. shift(43); // '-'
  14929. break;
  14930. default:
  14931. shift(41); // '+'
  14932. }
  14933. }
  14934. whitespace();
  14935. parse_ValueExpr();
  14936. eventHandler.endNonterminal("UnaryExpr", e0);
  14937. }
  14938. function try_UnaryExpr()
  14939. {
  14940. for (;;)
  14941. {
  14942. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  14943. if (l1 != 41 // '+'
  14944. && l1 != 43) // '-'
  14945. {
  14946. break;
  14947. }
  14948. switch (l1)
  14949. {
  14950. case 43: // '-'
  14951. shiftT(43); // '-'
  14952. break;
  14953. default:
  14954. shiftT(41); // '+'
  14955. }
  14956. }
  14957. try_ValueExpr();
  14958. }
  14959. function parse_ValueExpr()
  14960. {
  14961. eventHandler.startNonterminal("ValueExpr", e0);
  14962. switch (l1)
  14963. {
  14964. case 266: // 'validate'
  14965. lookahead2W(188); // S^WS | '#' | '(' | '(:' | 'lax' | 'strict' | 'type' | '{'
  14966. break;
  14967. default:
  14968. lk = l1;
  14969. }
  14970. switch (lk)
  14971. {
  14972. case 89354: // 'validate' 'lax'
  14973. case 125706: // 'validate' 'strict'
  14974. case 132362: // 'validate' 'type'
  14975. case 144138: // 'validate' '{'
  14976. parse_ValidateExpr();
  14977. break;
  14978. case 36: // '(#'
  14979. parse_ExtensionExpr();
  14980. break;
  14981. default:
  14982. parse_SimpleMapExpr();
  14983. }
  14984. eventHandler.endNonterminal("ValueExpr", e0);
  14985. }
  14986. function try_ValueExpr()
  14987. {
  14988. switch (l1)
  14989. {
  14990. case 266: // 'validate'
  14991. lookahead2W(188); // S^WS | '#' | '(' | '(:' | 'lax' | 'strict' | 'type' | '{'
  14992. break;
  14993. default:
  14994. lk = l1;
  14995. }
  14996. switch (lk)
  14997. {
  14998. case 89354: // 'validate' 'lax'
  14999. case 125706: // 'validate' 'strict'
  15000. case 132362: // 'validate' 'type'
  15001. case 144138: // 'validate' '{'
  15002. try_ValidateExpr();
  15003. break;
  15004. case 36: // '(#'
  15005. try_ExtensionExpr();
  15006. break;
  15007. default:
  15008. try_SimpleMapExpr();
  15009. }
  15010. }
  15011. function parse_SimpleMapExpr()
  15012. {
  15013. eventHandler.startNonterminal("SimpleMapExpr", e0);
  15014. parse_PathExpr();
  15015. for (;;)
  15016. {
  15017. if (l1 != 26) // '!'
  15018. {
  15019. break;
  15020. }
  15021. shift(26); // '!'
  15022. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15023. whitespace();
  15024. parse_PathExpr();
  15025. }
  15026. eventHandler.endNonterminal("SimpleMapExpr", e0);
  15027. }
  15028. function try_SimpleMapExpr()
  15029. {
  15030. try_PathExpr();
  15031. for (;;)
  15032. {
  15033. if (l1 != 26) // '!'
  15034. {
  15035. break;
  15036. }
  15037. shiftT(26); // '!'
  15038. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15039. try_PathExpr();
  15040. }
  15041. }
  15042. function parse_GeneralComp()
  15043. {
  15044. eventHandler.startNonterminal("GeneralComp", e0);
  15045. switch (l1)
  15046. {
  15047. case 61: // '='
  15048. shift(61); // '='
  15049. break;
  15050. case 27: // '!='
  15051. shift(27); // '!='
  15052. break;
  15053. case 55: // '<'
  15054. shift(55); // '<'
  15055. break;
  15056. case 59: // '<='
  15057. shift(59); // '<='
  15058. break;
  15059. case 62: // '>'
  15060. shift(62); // '>'
  15061. break;
  15062. default:
  15063. shift(63); // '>='
  15064. }
  15065. eventHandler.endNonterminal("GeneralComp", e0);
  15066. }
  15067. function try_GeneralComp()
  15068. {
  15069. switch (l1)
  15070. {
  15071. case 61: // '='
  15072. shiftT(61); // '='
  15073. break;
  15074. case 27: // '!='
  15075. shiftT(27); // '!='
  15076. break;
  15077. case 55: // '<'
  15078. shiftT(55); // '<'
  15079. break;
  15080. case 59: // '<='
  15081. shiftT(59); // '<='
  15082. break;
  15083. case 62: // '>'
  15084. shiftT(62); // '>'
  15085. break;
  15086. default:
  15087. shiftT(63); // '>='
  15088. }
  15089. }
  15090. function parse_ValueComp()
  15091. {
  15092. eventHandler.startNonterminal("ValueComp", e0);
  15093. switch (l1)
  15094. {
  15095. case 129: // 'eq'
  15096. shift(129); // 'eq'
  15097. break;
  15098. case 189: // 'ne'
  15099. shift(189); // 'ne'
  15100. break;
  15101. case 181: // 'lt'
  15102. shift(181); // 'lt'
  15103. break;
  15104. case 175: // 'le'
  15105. shift(175); // 'le'
  15106. break;
  15107. case 152: // 'gt'
  15108. shift(152); // 'gt'
  15109. break;
  15110. default:
  15111. shift(148); // 'ge'
  15112. }
  15113. eventHandler.endNonterminal("ValueComp", e0);
  15114. }
  15115. function try_ValueComp()
  15116. {
  15117. switch (l1)
  15118. {
  15119. case 129: // 'eq'
  15120. shiftT(129); // 'eq'
  15121. break;
  15122. case 189: // 'ne'
  15123. shiftT(189); // 'ne'
  15124. break;
  15125. case 181: // 'lt'
  15126. shiftT(181); // 'lt'
  15127. break;
  15128. case 175: // 'le'
  15129. shiftT(175); // 'le'
  15130. break;
  15131. case 152: // 'gt'
  15132. shiftT(152); // 'gt'
  15133. break;
  15134. default:
  15135. shiftT(148); // 'ge'
  15136. }
  15137. }
  15138. function parse_NodeComp()
  15139. {
  15140. eventHandler.startNonterminal("NodeComp", e0);
  15141. switch (l1)
  15142. {
  15143. case 166: // 'is'
  15144. shift(166); // 'is'
  15145. break;
  15146. case 58: // '<<'
  15147. shift(58); // '<<'
  15148. break;
  15149. default:
  15150. shift(64); // '>>'
  15151. }
  15152. eventHandler.endNonterminal("NodeComp", e0);
  15153. }
  15154. function try_NodeComp()
  15155. {
  15156. switch (l1)
  15157. {
  15158. case 166: // 'is'
  15159. shiftT(166); // 'is'
  15160. break;
  15161. case 58: // '<<'
  15162. shiftT(58); // '<<'
  15163. break;
  15164. default:
  15165. shiftT(64); // '>>'
  15166. }
  15167. }
  15168. function parse_ValidateExpr()
  15169. {
  15170. eventHandler.startNonterminal("ValidateExpr", e0);
  15171. shift(266); // 'validate'
  15172. lookahead1W(175); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  15173. if (l1 != 281) // '{'
  15174. {
  15175. switch (l1)
  15176. {
  15177. case 258: // 'type'
  15178. shift(258); // 'type'
  15179. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  15180. whitespace();
  15181. parse_TypeName();
  15182. break;
  15183. default:
  15184. whitespace();
  15185. parse_ValidationMode();
  15186. }
  15187. }
  15188. lookahead1W(90); // S^WS | '(:' | '{'
  15189. shift(281); // '{'
  15190. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15191. whitespace();
  15192. parse_Expr();
  15193. shift(287); // '}'
  15194. eventHandler.endNonterminal("ValidateExpr", e0);
  15195. }
  15196. function try_ValidateExpr()
  15197. {
  15198. shiftT(266); // 'validate'
  15199. lookahead1W(175); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  15200. if (l1 != 281) // '{'
  15201. {
  15202. switch (l1)
  15203. {
  15204. case 258: // 'type'
  15205. shiftT(258); // 'type'
  15206. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  15207. try_TypeName();
  15208. break;
  15209. default:
  15210. try_ValidationMode();
  15211. }
  15212. }
  15213. lookahead1W(90); // S^WS | '(:' | '{'
  15214. shiftT(281); // '{'
  15215. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15216. try_Expr();
  15217. shiftT(287); // '}'
  15218. }
  15219. function parse_ValidationMode()
  15220. {
  15221. eventHandler.startNonterminal("ValidationMode", e0);
  15222. switch (l1)
  15223. {
  15224. case 174: // 'lax'
  15225. shift(174); // 'lax'
  15226. break;
  15227. default:
  15228. shift(245); // 'strict'
  15229. }
  15230. eventHandler.endNonterminal("ValidationMode", e0);
  15231. }
  15232. function try_ValidationMode()
  15233. {
  15234. switch (l1)
  15235. {
  15236. case 174: // 'lax'
  15237. shiftT(174); // 'lax'
  15238. break;
  15239. default:
  15240. shiftT(245); // 'strict'
  15241. }
  15242. }
  15243. function parse_ExtensionExpr()
  15244. {
  15245. eventHandler.startNonterminal("ExtensionExpr", e0);
  15246. for (;;)
  15247. {
  15248. whitespace();
  15249. parse_Pragma();
  15250. lookahead1W(104); // S^WS | '(#' | '(:' | '{'
  15251. if (l1 != 36) // '(#'
  15252. {
  15253. break;
  15254. }
  15255. }
  15256. shift(281); // '{'
  15257. lookahead1W(274); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15258. if (l1 != 287) // '}'
  15259. {
  15260. whitespace();
  15261. parse_Expr();
  15262. }
  15263. shift(287); // '}'
  15264. eventHandler.endNonterminal("ExtensionExpr", e0);
  15265. }
  15266. function try_ExtensionExpr()
  15267. {
  15268. for (;;)
  15269. {
  15270. try_Pragma();
  15271. lookahead1W(104); // S^WS | '(#' | '(:' | '{'
  15272. if (l1 != 36) // '(#'
  15273. {
  15274. break;
  15275. }
  15276. }
  15277. shiftT(281); // '{'
  15278. lookahead1W(274); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15279. if (l1 != 287) // '}'
  15280. {
  15281. try_Expr();
  15282. }
  15283. shiftT(287); // '}'
  15284. }
  15285. function parse_Pragma()
  15286. {
  15287. eventHandler.startNonterminal("Pragma", e0);
  15288. shift(36); // '(#'
  15289. lookahead1(242); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  15290. if (l1 == 21) // S
  15291. {
  15292. shift(21); // S
  15293. }
  15294. parse_EQName();
  15295. lookahead1(10); // S | '#)'
  15296. if (l1 == 21) // S
  15297. {
  15298. shift(21); // S
  15299. lookahead1(0); // PragmaContents
  15300. shift(1); // PragmaContents
  15301. }
  15302. lookahead1(5); // '#)'
  15303. shift(30); // '#)'
  15304. eventHandler.endNonterminal("Pragma", e0);
  15305. }
  15306. function try_Pragma()
  15307. {
  15308. shiftT(36); // '(#'
  15309. lookahead1(242); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  15310. if (l1 == 21) // S
  15311. {
  15312. shiftT(21); // S
  15313. }
  15314. try_EQName();
  15315. lookahead1(10); // S | '#)'
  15316. if (l1 == 21) // S
  15317. {
  15318. shiftT(21); // S
  15319. lookahead1(0); // PragmaContents
  15320. shiftT(1); // PragmaContents
  15321. }
  15322. lookahead1(5); // '#)'
  15323. shiftT(30); // '#)'
  15324. }
  15325. function parse_PathExpr()
  15326. {
  15327. eventHandler.startNonterminal("PathExpr", e0);
  15328. switch (l1)
  15329. {
  15330. case 47: // '/'
  15331. shift(47); // '/'
  15332. lookahead1W(288); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15333. switch (l1)
  15334. {
  15335. case 25: // EOF
  15336. case 26: // '!'
  15337. case 27: // '!='
  15338. case 38: // ')'
  15339. case 39: // '*'
  15340. case 41: // '+'
  15341. case 42: // ','
  15342. case 43: // '-'
  15343. case 50: // ':'
  15344. case 54: // ';'
  15345. case 58: // '<<'
  15346. case 59: // '<='
  15347. case 61: // '='
  15348. case 62: // '>'
  15349. case 63: // '>='
  15350. case 64: // '>>'
  15351. case 70: // ']'
  15352. case 88: // 'by'
  15353. case 100: // 'contains'
  15354. case 209: // 'paragraphs'
  15355. case 237: // 'sentences'
  15356. case 252: // 'times'
  15357. case 279: // 'words'
  15358. case 284: // '|'
  15359. case 285: // '||'
  15360. case 286: // '|}'
  15361. case 287: // '}'
  15362. break;
  15363. default:
  15364. whitespace();
  15365. parse_RelativePathExpr();
  15366. }
  15367. break;
  15368. case 48: // '//'
  15369. shift(48); // '//'
  15370. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15371. whitespace();
  15372. parse_RelativePathExpr();
  15373. break;
  15374. default:
  15375. parse_RelativePathExpr();
  15376. }
  15377. eventHandler.endNonterminal("PathExpr", e0);
  15378. }
  15379. function try_PathExpr()
  15380. {
  15381. switch (l1)
  15382. {
  15383. case 47: // '/'
  15384. shiftT(47); // '/'
  15385. lookahead1W(288); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15386. switch (l1)
  15387. {
  15388. case 25: // EOF
  15389. case 26: // '!'
  15390. case 27: // '!='
  15391. case 38: // ')'
  15392. case 39: // '*'
  15393. case 41: // '+'
  15394. case 42: // ','
  15395. case 43: // '-'
  15396. case 50: // ':'
  15397. case 54: // ';'
  15398. case 58: // '<<'
  15399. case 59: // '<='
  15400. case 61: // '='
  15401. case 62: // '>'
  15402. case 63: // '>='
  15403. case 64: // '>>'
  15404. case 70: // ']'
  15405. case 88: // 'by'
  15406. case 100: // 'contains'
  15407. case 209: // 'paragraphs'
  15408. case 237: // 'sentences'
  15409. case 252: // 'times'
  15410. case 279: // 'words'
  15411. case 284: // '|'
  15412. case 285: // '||'
  15413. case 286: // '|}'
  15414. case 287: // '}'
  15415. break;
  15416. default:
  15417. try_RelativePathExpr();
  15418. }
  15419. break;
  15420. case 48: // '//'
  15421. shiftT(48); // '//'
  15422. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  15423. try_RelativePathExpr();
  15424. break;
  15425. default:
  15426. try_RelativePathExpr();
  15427. }
  15428. }
  15429. function parse_RelativePathExpr()
  15430. {
  15431. eventHandler.startNonterminal("RelativePathExpr", e0);
  15432. parse_PostfixExpr();
  15433. for (;;)
  15434. {
  15435. switch (l1)
  15436. {
  15437. case 26: // '!'
  15438. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15439. break;
  15440. default:
  15441. lk = l1;
  15442. }
  15443. if (lk != 25 // EOF
  15444. && lk != 27 // '!='
  15445. && lk != 38 // ')'
  15446. && lk != 39 // '*'
  15447. && lk != 41 // '+'
  15448. && lk != 42 // ','
  15449. && lk != 43 // '-'
  15450. && lk != 47 // '/'
  15451. && lk != 48 // '//'
  15452. && lk != 50 // ':'
  15453. && lk != 54 // ';'
  15454. && lk != 55 // '<'
  15455. && lk != 58 // '<<'
  15456. && lk != 59 // '<='
  15457. && lk != 61 // '='
  15458. && lk != 62 // '>'
  15459. && lk != 63 // '>='
  15460. && lk != 64 // '>>'
  15461. && lk != 70 // ']'
  15462. && lk != 71 // 'after'
  15463. && lk != 76 // 'and'
  15464. && lk != 80 // 'as'
  15465. && lk != 81 // 'ascending'
  15466. && lk != 82 // 'at'
  15467. && lk != 85 // 'before'
  15468. && lk != 88 // 'by'
  15469. && lk != 89 // 'case'
  15470. && lk != 90 // 'cast'
  15471. && lk != 91 // 'castable'
  15472. && lk != 95 // 'collation'
  15473. && lk != 100 // 'contains'
  15474. && lk != 106 // 'count'
  15475. && lk != 110 // 'default'
  15476. && lk != 114 // 'descending'
  15477. && lk != 119 // 'div'
  15478. && lk != 123 // 'else'
  15479. && lk != 124 // 'empty'
  15480. && lk != 127 // 'end'
  15481. && lk != 129 // 'eq'
  15482. && lk != 132 // 'except'
  15483. && lk != 139 // 'for'
  15484. && lk != 148 // 'ge'
  15485. && lk != 150 // 'group'
  15486. && lk != 152 // 'gt'
  15487. && lk != 153 // 'idiv'
  15488. && lk != 162 // 'instance'
  15489. && lk != 164 // 'intersect'
  15490. && lk != 165 // 'into'
  15491. && lk != 166 // 'is'
  15492. && lk != 175 // 'le'
  15493. && lk != 177 // 'let'
  15494. && lk != 181 // 'lt'
  15495. && lk != 183 // 'mod'
  15496. && lk != 184 // 'modify'
  15497. && lk != 189 // 'ne'
  15498. && lk != 202 // 'only'
  15499. && lk != 204 // 'or'
  15500. && lk != 205 // 'order'
  15501. && lk != 209 // 'paragraphs'
  15502. && lk != 224 // 'return'
  15503. && lk != 228 // 'satisfies'
  15504. && lk != 237 // 'sentences'
  15505. && lk != 241 // 'stable'
  15506. && lk != 242 // 'start'
  15507. && lk != 252 // 'times'
  15508. && lk != 253 // 'to'
  15509. && lk != 254 // 'treat'
  15510. && lk != 260 // 'union'
  15511. && lk != 272 // 'where'
  15512. && lk != 276 // 'with'
  15513. && lk != 279 // 'words'
  15514. && lk != 284 // '|'
  15515. && lk != 285 // '||'
  15516. && lk != 286 // '|}'
  15517. && lk != 287 // '}'
  15518. && lk != 2586 // '!' Wildcard
  15519. && lk != 23578 // '!' '..'
  15520. && lk != 24090 // '!' '/'
  15521. && lk != 24602 // '!' '//'
  15522. && lk != 34330) // '!' '@'
  15523. {
  15524. lk = memoized(3, e0);
  15525. if (lk == 0)
  15526. {
  15527. var b0A = b0; var e0A = e0; var l1A = l1;
  15528. var b1A = b1; var e1A = e1; var l2A = l2;
  15529. var b2A = b2; var e2A = e2;
  15530. try
  15531. {
  15532. switch (l1)
  15533. {
  15534. case 47: // '/'
  15535. shiftT(47); // '/'
  15536. break;
  15537. case 48: // '//'
  15538. shiftT(48); // '//'
  15539. break;
  15540. default:
  15541. shiftT(26); // '!'
  15542. }
  15543. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15544. try_StepExpr();
  15545. lk = -1;
  15546. }
  15547. catch (p1A)
  15548. {
  15549. lk = -2;
  15550. }
  15551. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  15552. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  15553. b2 = b2A; e2 = e2A; end = e2A; }}
  15554. memoize(3, e0, lk);
  15555. }
  15556. }
  15557. if (lk != -1
  15558. && lk != 47 // '/'
  15559. && lk != 48 // '//'
  15560. && lk != 2586 // '!' Wildcard
  15561. && lk != 23578 // '!' '..'
  15562. && lk != 34330) // '!' '@'
  15563. {
  15564. break;
  15565. }
  15566. switch (l1)
  15567. {
  15568. case 47: // '/'
  15569. shift(47); // '/'
  15570. break;
  15571. case 48: // '//'
  15572. shift(48); // '//'
  15573. break;
  15574. default:
  15575. shift(26); // '!'
  15576. }
  15577. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15578. whitespace();
  15579. parse_StepExpr();
  15580. }
  15581. eventHandler.endNonterminal("RelativePathExpr", e0);
  15582. }
  15583. function try_RelativePathExpr()
  15584. {
  15585. try_PostfixExpr();
  15586. for (;;)
  15587. {
  15588. switch (l1)
  15589. {
  15590. case 26: // '!'
  15591. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15592. break;
  15593. default:
  15594. lk = l1;
  15595. }
  15596. if (lk != 25 // EOF
  15597. && lk != 27 // '!='
  15598. && lk != 38 // ')'
  15599. && lk != 39 // '*'
  15600. && lk != 41 // '+'
  15601. && lk != 42 // ','
  15602. && lk != 43 // '-'
  15603. && lk != 47 // '/'
  15604. && lk != 48 // '//'
  15605. && lk != 50 // ':'
  15606. && lk != 54 // ';'
  15607. && lk != 55 // '<'
  15608. && lk != 58 // '<<'
  15609. && lk != 59 // '<='
  15610. && lk != 61 // '='
  15611. && lk != 62 // '>'
  15612. && lk != 63 // '>='
  15613. && lk != 64 // '>>'
  15614. && lk != 70 // ']'
  15615. && lk != 71 // 'after'
  15616. && lk != 76 // 'and'
  15617. && lk != 80 // 'as'
  15618. && lk != 81 // 'ascending'
  15619. && lk != 82 // 'at'
  15620. && lk != 85 // 'before'
  15621. && lk != 88 // 'by'
  15622. && lk != 89 // 'case'
  15623. && lk != 90 // 'cast'
  15624. && lk != 91 // 'castable'
  15625. && lk != 95 // 'collation'
  15626. && lk != 100 // 'contains'
  15627. && lk != 106 // 'count'
  15628. && lk != 110 // 'default'
  15629. && lk != 114 // 'descending'
  15630. && lk != 119 // 'div'
  15631. && lk != 123 // 'else'
  15632. && lk != 124 // 'empty'
  15633. && lk != 127 // 'end'
  15634. && lk != 129 // 'eq'
  15635. && lk != 132 // 'except'
  15636. && lk != 139 // 'for'
  15637. && lk != 148 // 'ge'
  15638. && lk != 150 // 'group'
  15639. && lk != 152 // 'gt'
  15640. && lk != 153 // 'idiv'
  15641. && lk != 162 // 'instance'
  15642. && lk != 164 // 'intersect'
  15643. && lk != 165 // 'into'
  15644. && lk != 166 // 'is'
  15645. && lk != 175 // 'le'
  15646. && lk != 177 // 'let'
  15647. && lk != 181 // 'lt'
  15648. && lk != 183 // 'mod'
  15649. && lk != 184 // 'modify'
  15650. && lk != 189 // 'ne'
  15651. && lk != 202 // 'only'
  15652. && lk != 204 // 'or'
  15653. && lk != 205 // 'order'
  15654. && lk != 209 // 'paragraphs'
  15655. && lk != 224 // 'return'
  15656. && lk != 228 // 'satisfies'
  15657. && lk != 237 // 'sentences'
  15658. && lk != 241 // 'stable'
  15659. && lk != 242 // 'start'
  15660. && lk != 252 // 'times'
  15661. && lk != 253 // 'to'
  15662. && lk != 254 // 'treat'
  15663. && lk != 260 // 'union'
  15664. && lk != 272 // 'where'
  15665. && lk != 276 // 'with'
  15666. && lk != 279 // 'words'
  15667. && lk != 284 // '|'
  15668. && lk != 285 // '||'
  15669. && lk != 286 // '|}'
  15670. && lk != 287 // '}'
  15671. && lk != 2586 // '!' Wildcard
  15672. && lk != 23578 // '!' '..'
  15673. && lk != 24090 // '!' '/'
  15674. && lk != 24602 // '!' '//'
  15675. && lk != 34330) // '!' '@'
  15676. {
  15677. lk = memoized(3, e0);
  15678. if (lk == 0)
  15679. {
  15680. var b0A = b0; var e0A = e0; var l1A = l1;
  15681. var b1A = b1; var e1A = e1; var l2A = l2;
  15682. var b2A = b2; var e2A = e2;
  15683. try
  15684. {
  15685. switch (l1)
  15686. {
  15687. case 47: // '/'
  15688. shiftT(47); // '/'
  15689. break;
  15690. case 48: // '//'
  15691. shiftT(48); // '//'
  15692. break;
  15693. default:
  15694. shiftT(26); // '!'
  15695. }
  15696. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15697. try_StepExpr();
  15698. memoize(3, e0A, -1);
  15699. continue;
  15700. }
  15701. catch (p1A)
  15702. {
  15703. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  15704. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  15705. b2 = b2A; e2 = e2A; end = e2A; }}
  15706. memoize(3, e0A, -2);
  15707. break;
  15708. }
  15709. }
  15710. }
  15711. if (lk != -1
  15712. && lk != 47 // '/'
  15713. && lk != 48 // '//'
  15714. && lk != 2586 // '!' Wildcard
  15715. && lk != 23578 // '!' '..'
  15716. && lk != 34330) // '!' '@'
  15717. {
  15718. break;
  15719. }
  15720. switch (l1)
  15721. {
  15722. case 47: // '/'
  15723. shiftT(47); // '/'
  15724. break;
  15725. case 48: // '//'
  15726. shiftT(48); // '//'
  15727. break;
  15728. default:
  15729. shiftT(26); // '!'
  15730. }
  15731. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15732. try_StepExpr();
  15733. }
  15734. }
  15735. function parse_StepExpr()
  15736. {
  15737. eventHandler.startNonterminal("StepExpr", e0);
  15738. switch (l1)
  15739. {
  15740. case 83: // 'attribute'
  15741. lookahead2W(287); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  15742. break;
  15743. case 122: // 'element'
  15744. lookahead2W(286); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  15745. break;
  15746. case 187: // 'namespace'
  15747. case 220: // 'processing-instruction'
  15748. lookahead2W(284); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  15749. break;
  15750. case 135: // 'false'
  15751. case 197: // 'null'
  15752. case 255: // 'true'
  15753. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' |
  15754. break;
  15755. case 97: // 'comment'
  15756. case 120: // 'document'
  15757. case 206: // 'ordered'
  15758. case 249: // 'text'
  15759. case 262: // 'unordered'
  15760. lookahead2W(238); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  15761. break;
  15762. case 79: // 'array'
  15763. case 125: // 'empty-sequence'
  15764. case 154: // 'if'
  15765. case 167: // 'item'
  15766. case 169: // 'json-item'
  15767. case 247: // 'structured-item'
  15768. case 248: // 'switch'
  15769. case 259: // 'typeswitch'
  15770. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  15771. break;
  15772. case 74: // 'ancestor'
  15773. case 75: // 'ancestor-or-self'
  15774. case 94: // 'child'
  15775. case 112: // 'descendant'
  15776. case 113: // 'descendant-or-self'
  15777. case 137: // 'following'
  15778. case 138: // 'following-sibling'
  15779. case 210: // 'parent'
  15780. case 216: // 'preceding'
  15781. case 217: // 'preceding-sibling'
  15782. case 234: // 'self'
  15783. lookahead2W(237); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  15784. break;
  15785. case 6: // EQName^Token
  15786. case 71: // 'after'
  15787. case 73: // 'allowing'
  15788. case 76: // 'and'
  15789. case 78: // 'append'
  15790. case 80: // 'as'
  15791. case 81: // 'ascending'
  15792. case 82: // 'at'
  15793. case 84: // 'base-uri'
  15794. case 85: // 'before'
  15795. case 86: // 'boundary-space'
  15796. case 87: // 'break'
  15797. case 89: // 'case'
  15798. case 90: // 'cast'
  15799. case 91: // 'castable'
  15800. case 92: // 'catch'
  15801. case 95: // 'collation'
  15802. case 98: // 'constraint'
  15803. case 99: // 'construction'
  15804. case 102: // 'context'
  15805. case 103: // 'continue'
  15806. case 104: // 'copy'
  15807. case 105: // 'copy-namespaces'
  15808. case 106: // 'count'
  15809. case 107: // 'decimal-format'
  15810. case 109: // 'declare'
  15811. case 110: // 'default'
  15812. case 111: // 'delete'
  15813. case 114: // 'descending'
  15814. case 119: // 'div'
  15815. case 121: // 'document-node'
  15816. case 123: // 'else'
  15817. case 124: // 'empty'
  15818. case 126: // 'encoding'
  15819. case 127: // 'end'
  15820. case 129: // 'eq'
  15821. case 130: // 'every'
  15822. case 132: // 'except'
  15823. case 133: // 'exit'
  15824. case 134: // 'external'
  15825. case 136: // 'first'
  15826. case 139: // 'for'
  15827. case 142: // 'from'
  15828. case 143: // 'ft-option'
  15829. case 147: // 'function'
  15830. case 148: // 'ge'
  15831. case 150: // 'group'
  15832. case 152: // 'gt'
  15833. case 153: // 'idiv'
  15834. case 155: // 'import'
  15835. case 156: // 'in'
  15836. case 157: // 'index'
  15837. case 161: // 'insert'
  15838. case 162: // 'instance'
  15839. case 163: // 'integrity'
  15840. case 164: // 'intersect'
  15841. case 165: // 'into'
  15842. case 166: // 'is'
  15843. case 168: // 'json'
  15844. case 170: // 'jsoniq'
  15845. case 173: // 'last'
  15846. case 174: // 'lax'
  15847. case 175: // 'le'
  15848. case 177: // 'let'
  15849. case 179: // 'loop'
  15850. case 181: // 'lt'
  15851. case 183: // 'mod'
  15852. case 184: // 'modify'
  15853. case 185: // 'module'
  15854. case 188: // 'namespace-node'
  15855. case 189: // 'ne'
  15856. case 194: // 'node'
  15857. case 195: // 'nodes'
  15858. case 198: // 'object'
  15859. case 202: // 'only'
  15860. case 203: // 'option'
  15861. case 204: // 'or'
  15862. case 205: // 'order'
  15863. case 207: // 'ordering'
  15864. case 222: // 'rename'
  15865. case 223: // 'replace'
  15866. case 224: // 'return'
  15867. case 225: // 'returning'
  15868. case 226: // 'revalidation'
  15869. case 228: // 'satisfies'
  15870. case 229: // 'schema'
  15871. case 230: // 'schema-attribute'
  15872. case 231: // 'schema-element'
  15873. case 232: // 'score'
  15874. case 233: // 'select'
  15875. case 239: // 'sliding'
  15876. case 240: // 'some'
  15877. case 241: // 'stable'
  15878. case 242: // 'start'
  15879. case 245: // 'strict'
  15880. case 253: // 'to'
  15881. case 254: // 'treat'
  15882. case 256: // 'try'
  15883. case 257: // 'tumbling'
  15884. case 258: // 'type'
  15885. case 260: // 'union'
  15886. case 263: // 'updating'
  15887. case 266: // 'validate'
  15888. case 267: // 'value'
  15889. case 268: // 'variable'
  15890. case 269: // 'version'
  15891. case 272: // 'where'
  15892. case 273: // 'while'
  15893. case 276: // 'with'
  15894. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  15895. break;
  15896. default:
  15897. lk = l1;
  15898. }
  15899. if (lk == 12935 // 'false' EOF
  15900. || lk == 12997 // 'null' EOF
  15901. || lk == 13055 // 'true' EOF
  15902. || lk == 13447 // 'false' '!'
  15903. || lk == 13509 // 'null' '!'
  15904. || lk == 13567 // 'true' '!'
  15905. || lk == 13959 // 'false' '!='
  15906. || lk == 14021 // 'null' '!='
  15907. || lk == 14079 // 'true' '!='
  15908. || lk == 19591 // 'false' ')'
  15909. || lk == 19653 // 'null' ')'
  15910. || lk == 19711 // 'true' ')'
  15911. || lk == 20103 // 'false' '*'
  15912. || lk == 20165 // 'null' '*'
  15913. || lk == 20223 // 'true' '*'
  15914. || lk == 21127 // 'false' '+'
  15915. || lk == 21189 // 'null' '+'
  15916. || lk == 21247 // 'true' '+'
  15917. || lk == 21639 // 'false' ','
  15918. || lk == 21701 // 'null' ','
  15919. || lk == 21759 // 'true' ','
  15920. || lk == 22151 // 'false' '-'
  15921. || lk == 22213 // 'null' '-'
  15922. || lk == 22271 // 'true' '-'
  15923. || lk == 24199 // 'false' '/'
  15924. || lk == 24261 // 'null' '/'
  15925. || lk == 24319 // 'true' '/'
  15926. || lk == 24711 // 'false' '//'
  15927. || lk == 24773 // 'null' '//'
  15928. || lk == 24831 // 'true' '//'
  15929. || lk == 25735 // 'false' ':'
  15930. || lk == 25797 // 'null' ':'
  15931. || lk == 25855 // 'true' ':'
  15932. || lk == 27783 // 'false' ';'
  15933. || lk == 27845 // 'null' ';'
  15934. || lk == 27903 // 'true' ';'
  15935. || lk == 28295 // 'false' '<'
  15936. || lk == 28357 // 'null' '<'
  15937. || lk == 28415 // 'true' '<'
  15938. || lk == 29831 // 'false' '<<'
  15939. || lk == 29893 // 'null' '<<'
  15940. || lk == 29951 // 'true' '<<'
  15941. || lk == 30343 // 'false' '<='
  15942. || lk == 30405 // 'null' '<='
  15943. || lk == 30463 // 'true' '<='
  15944. || lk == 31367 // 'false' '='
  15945. || lk == 31429 // 'null' '='
  15946. || lk == 31487 // 'true' '='
  15947. || lk == 31879 // 'false' '>'
  15948. || lk == 31941 // 'null' '>'
  15949. || lk == 31999 // 'true' '>'
  15950. || lk == 32391 // 'false' '>='
  15951. || lk == 32453 // 'null' '>='
  15952. || lk == 32511 // 'true' '>='
  15953. || lk == 32903 // 'false' '>>'
  15954. || lk == 32965 // 'null' '>>'
  15955. || lk == 33023 // 'true' '>>'
  15956. || lk == 35463 // 'false' '['
  15957. || lk == 35525 // 'null' '['
  15958. || lk == 35583 // 'true' '['
  15959. || lk == 35975 // 'false' ']'
  15960. || lk == 36037 // 'null' ']'
  15961. || lk == 36095 // 'true' ']'
  15962. || lk == 36435 // 'attribute' 'after'
  15963. || lk == 36474 // 'element' 'after'
  15964. || lk == 36487 // 'false' 'after'
  15965. || lk == 36539 // 'namespace' 'after'
  15966. || lk == 36549 // 'null' 'after'
  15967. || lk == 36572 // 'processing-instruction' 'after'
  15968. || lk == 36607 // 'true' 'after'
  15969. || lk == 38995 // 'attribute' 'and'
  15970. || lk == 39034 // 'element' 'and'
  15971. || lk == 39047 // 'false' 'and'
  15972. || lk == 39099 // 'namespace' 'and'
  15973. || lk == 39109 // 'null' 'and'
  15974. || lk == 39132 // 'processing-instruction' 'and'
  15975. || lk == 39167 // 'true' 'and'
  15976. || lk == 41043 // 'attribute' 'as'
  15977. || lk == 41082 // 'element' 'as'
  15978. || lk == 41095 // 'false' 'as'
  15979. || lk == 41147 // 'namespace' 'as'
  15980. || lk == 41157 // 'null' 'as'
  15981. || lk == 41180 // 'processing-instruction' 'as'
  15982. || lk == 41215 // 'true' 'as'
  15983. || lk == 41555 // 'attribute' 'ascending'
  15984. || lk == 41594 // 'element' 'ascending'
  15985. || lk == 41607 // 'false' 'ascending'
  15986. || lk == 41659 // 'namespace' 'ascending'
  15987. || lk == 41669 // 'null' 'ascending'
  15988. || lk == 41692 // 'processing-instruction' 'ascending'
  15989. || lk == 41727 // 'true' 'ascending'
  15990. || lk == 42067 // 'attribute' 'at'
  15991. || lk == 42106 // 'element' 'at'
  15992. || lk == 42119 // 'false' 'at'
  15993. || lk == 42171 // 'namespace' 'at'
  15994. || lk == 42181 // 'null' 'at'
  15995. || lk == 42204 // 'processing-instruction' 'at'
  15996. || lk == 42239 // 'true' 'at'
  15997. || lk == 43603 // 'attribute' 'before'
  15998. || lk == 43642 // 'element' 'before'
  15999. || lk == 43655 // 'false' 'before'
  16000. || lk == 43707 // 'namespace' 'before'
  16001. || lk == 43717 // 'null' 'before'
  16002. || lk == 43740 // 'processing-instruction' 'before'
  16003. || lk == 43775 // 'true' 'before'
  16004. || lk == 45191 // 'false' 'by'
  16005. || lk == 45253 // 'null' 'by'
  16006. || lk == 45311 // 'true' 'by'
  16007. || lk == 45651 // 'attribute' 'case'
  16008. || lk == 45690 // 'element' 'case'
  16009. || lk == 45703 // 'false' 'case'
  16010. || lk == 45755 // 'namespace' 'case'
  16011. || lk == 45765 // 'null' 'case'
  16012. || lk == 45788 // 'processing-instruction' 'case'
  16013. || lk == 45823 // 'true' 'case'
  16014. || lk == 46163 // 'attribute' 'cast'
  16015. || lk == 46202 // 'element' 'cast'
  16016. || lk == 46215 // 'false' 'cast'
  16017. || lk == 46267 // 'namespace' 'cast'
  16018. || lk == 46277 // 'null' 'cast'
  16019. || lk == 46300 // 'processing-instruction' 'cast'
  16020. || lk == 46335 // 'true' 'cast'
  16021. || lk == 46675 // 'attribute' 'castable'
  16022. || lk == 46714 // 'element' 'castable'
  16023. || lk == 46727 // 'false' 'castable'
  16024. || lk == 46779 // 'namespace' 'castable'
  16025. || lk == 46789 // 'null' 'castable'
  16026. || lk == 46812 // 'processing-instruction' 'castable'
  16027. || lk == 46847 // 'true' 'castable'
  16028. || lk == 48723 // 'attribute' 'collation'
  16029. || lk == 48762 // 'element' 'collation'
  16030. || lk == 48775 // 'false' 'collation'
  16031. || lk == 48827 // 'namespace' 'collation'
  16032. || lk == 48837 // 'null' 'collation'
  16033. || lk == 48860 // 'processing-instruction' 'collation'
  16034. || lk == 48895 // 'true' 'collation'
  16035. || lk == 51335 // 'false' 'contains'
  16036. || lk == 51397 // 'null' 'contains'
  16037. || lk == 51455 // 'true' 'contains'
  16038. || lk == 54355 // 'attribute' 'count'
  16039. || lk == 54394 // 'element' 'count'
  16040. || lk == 54407 // 'false' 'count'
  16041. || lk == 54459 // 'namespace' 'count'
  16042. || lk == 54469 // 'null' 'count'
  16043. || lk == 54492 // 'processing-instruction' 'count'
  16044. || lk == 54527 // 'true' 'count'
  16045. || lk == 56403 // 'attribute' 'default'
  16046. || lk == 56442 // 'element' 'default'
  16047. || lk == 56455 // 'false' 'default'
  16048. || lk == 56507 // 'namespace' 'default'
  16049. || lk == 56517 // 'null' 'default'
  16050. || lk == 56540 // 'processing-instruction' 'default'
  16051. || lk == 56575 // 'true' 'default'
  16052. || lk == 58451 // 'attribute' 'descending'
  16053. || lk == 58490 // 'element' 'descending'
  16054. || lk == 58503 // 'false' 'descending'
  16055. || lk == 58555 // 'namespace' 'descending'
  16056. || lk == 58565 // 'null' 'descending'
  16057. || lk == 58588 // 'processing-instruction' 'descending'
  16058. || lk == 58623 // 'true' 'descending'
  16059. || lk == 61011 // 'attribute' 'div'
  16060. || lk == 61050 // 'element' 'div'
  16061. || lk == 61063 // 'false' 'div'
  16062. || lk == 61115 // 'namespace' 'div'
  16063. || lk == 61125 // 'null' 'div'
  16064. || lk == 61148 // 'processing-instruction' 'div'
  16065. || lk == 61183 // 'true' 'div'
  16066. || lk == 63059 // 'attribute' 'else'
  16067. || lk == 63098 // 'element' 'else'
  16068. || lk == 63111 // 'false' 'else'
  16069. || lk == 63163 // 'namespace' 'else'
  16070. || lk == 63173 // 'null' 'else'
  16071. || lk == 63196 // 'processing-instruction' 'else'
  16072. || lk == 63231 // 'true' 'else'
  16073. || lk == 63571 // 'attribute' 'empty'
  16074. || lk == 63610 // 'element' 'empty'
  16075. || lk == 63623 // 'false' 'empty'
  16076. || lk == 63675 // 'namespace' 'empty'
  16077. || lk == 63685 // 'null' 'empty'
  16078. || lk == 63708 // 'processing-instruction' 'empty'
  16079. || lk == 63743 // 'true' 'empty'
  16080. || lk == 65107 // 'attribute' 'end'
  16081. || lk == 65146 // 'element' 'end'
  16082. || lk == 65159 // 'false' 'end'
  16083. || lk == 65211 // 'namespace' 'end'
  16084. || lk == 65221 // 'null' 'end'
  16085. || lk == 65244 // 'processing-instruction' 'end'
  16086. || lk == 65279 // 'true' 'end'
  16087. || lk == 66131 // 'attribute' 'eq'
  16088. || lk == 66170 // 'element' 'eq'
  16089. || lk == 66183 // 'false' 'eq'
  16090. || lk == 66235 // 'namespace' 'eq'
  16091. || lk == 66245 // 'null' 'eq'
  16092. || lk == 66268 // 'processing-instruction' 'eq'
  16093. || lk == 66303 // 'true' 'eq'
  16094. || lk == 67667 // 'attribute' 'except'
  16095. || lk == 67706 // 'element' 'except'
  16096. || lk == 67719 // 'false' 'except'
  16097. || lk == 67771 // 'namespace' 'except'
  16098. || lk == 67781 // 'null' 'except'
  16099. || lk == 67804 // 'processing-instruction' 'except'
  16100. || lk == 67839 // 'true' 'except'
  16101. || lk == 71251 // 'attribute' 'for'
  16102. || lk == 71290 // 'element' 'for'
  16103. || lk == 71303 // 'false' 'for'
  16104. || lk == 71355 // 'namespace' 'for'
  16105. || lk == 71365 // 'null' 'for'
  16106. || lk == 71388 // 'processing-instruction' 'for'
  16107. || lk == 71423 // 'true' 'for'
  16108. || lk == 75859 // 'attribute' 'ge'
  16109. || lk == 75898 // 'element' 'ge'
  16110. || lk == 75911 // 'false' 'ge'
  16111. || lk == 75963 // 'namespace' 'ge'
  16112. || lk == 75973 // 'null' 'ge'
  16113. || lk == 75996 // 'processing-instruction' 'ge'
  16114. || lk == 76031 // 'true' 'ge'
  16115. || lk == 76883 // 'attribute' 'group'
  16116. || lk == 76922 // 'element' 'group'
  16117. || lk == 76935 // 'false' 'group'
  16118. || lk == 76987 // 'namespace' 'group'
  16119. || lk == 76997 // 'null' 'group'
  16120. || lk == 77020 // 'processing-instruction' 'group'
  16121. || lk == 77055 // 'true' 'group'
  16122. || lk == 77907 // 'attribute' 'gt'
  16123. || lk == 77946 // 'element' 'gt'
  16124. || lk == 77959 // 'false' 'gt'
  16125. || lk == 78011 // 'namespace' 'gt'
  16126. || lk == 78021 // 'null' 'gt'
  16127. || lk == 78044 // 'processing-instruction' 'gt'
  16128. || lk == 78079 // 'true' 'gt'
  16129. || lk == 78419 // 'attribute' 'idiv'
  16130. || lk == 78458 // 'element' 'idiv'
  16131. || lk == 78471 // 'false' 'idiv'
  16132. || lk == 78523 // 'namespace' 'idiv'
  16133. || lk == 78533 // 'null' 'idiv'
  16134. || lk == 78556 // 'processing-instruction' 'idiv'
  16135. || lk == 78591 // 'true' 'idiv'
  16136. || lk == 83027 // 'attribute' 'instance'
  16137. || lk == 83066 // 'element' 'instance'
  16138. || lk == 83079 // 'false' 'instance'
  16139. || lk == 83131 // 'namespace' 'instance'
  16140. || lk == 83141 // 'null' 'instance'
  16141. || lk == 83164 // 'processing-instruction' 'instance'
  16142. || lk == 83199 // 'true' 'instance'
  16143. || lk == 84051 // 'attribute' 'intersect'
  16144. || lk == 84090 // 'element' 'intersect'
  16145. || lk == 84103 // 'false' 'intersect'
  16146. || lk == 84155 // 'namespace' 'intersect'
  16147. || lk == 84165 // 'null' 'intersect'
  16148. || lk == 84188 // 'processing-instruction' 'intersect'
  16149. || lk == 84223 // 'true' 'intersect'
  16150. || lk == 84563 // 'attribute' 'into'
  16151. || lk == 84602 // 'element' 'into'
  16152. || lk == 84615 // 'false' 'into'
  16153. || lk == 84667 // 'namespace' 'into'
  16154. || lk == 84677 // 'null' 'into'
  16155. || lk == 84700 // 'processing-instruction' 'into'
  16156. || lk == 84735 // 'true' 'into'
  16157. || lk == 85075 // 'attribute' 'is'
  16158. || lk == 85114 // 'element' 'is'
  16159. || lk == 85127 // 'false' 'is'
  16160. || lk == 85179 // 'namespace' 'is'
  16161. || lk == 85189 // 'null' 'is'
  16162. || lk == 85212 // 'processing-instruction' 'is'
  16163. || lk == 85247 // 'true' 'is'
  16164. || lk == 89683 // 'attribute' 'le'
  16165. || lk == 89722 // 'element' 'le'
  16166. || lk == 89735 // 'false' 'le'
  16167. || lk == 89787 // 'namespace' 'le'
  16168. || lk == 89797 // 'null' 'le'
  16169. || lk == 89820 // 'processing-instruction' 'le'
  16170. || lk == 89855 // 'true' 'le'
  16171. || lk == 90707 // 'attribute' 'let'
  16172. || lk == 90746 // 'element' 'let'
  16173. || lk == 90759 // 'false' 'let'
  16174. || lk == 90811 // 'namespace' 'let'
  16175. || lk == 90821 // 'null' 'let'
  16176. || lk == 90844 // 'processing-instruction' 'let'
  16177. || lk == 90879 // 'true' 'let'
  16178. || lk == 92755 // 'attribute' 'lt'
  16179. || lk == 92794 // 'element' 'lt'
  16180. || lk == 92807 // 'false' 'lt'
  16181. || lk == 92859 // 'namespace' 'lt'
  16182. || lk == 92869 // 'null' 'lt'
  16183. || lk == 92892 // 'processing-instruction' 'lt'
  16184. || lk == 92927 // 'true' 'lt'
  16185. || lk == 93779 // 'attribute' 'mod'
  16186. || lk == 93818 // 'element' 'mod'
  16187. || lk == 93831 // 'false' 'mod'
  16188. || lk == 93883 // 'namespace' 'mod'
  16189. || lk == 93893 // 'null' 'mod'
  16190. || lk == 93916 // 'processing-instruction' 'mod'
  16191. || lk == 93951 // 'true' 'mod'
  16192. || lk == 94291 // 'attribute' 'modify'
  16193. || lk == 94330 // 'element' 'modify'
  16194. || lk == 94343 // 'false' 'modify'
  16195. || lk == 94395 // 'namespace' 'modify'
  16196. || lk == 94405 // 'null' 'modify'
  16197. || lk == 94428 // 'processing-instruction' 'modify'
  16198. || lk == 94463 // 'true' 'modify'
  16199. || lk == 96851 // 'attribute' 'ne'
  16200. || lk == 96890 // 'element' 'ne'
  16201. || lk == 96903 // 'false' 'ne'
  16202. || lk == 96955 // 'namespace' 'ne'
  16203. || lk == 96965 // 'null' 'ne'
  16204. || lk == 96988 // 'processing-instruction' 'ne'
  16205. || lk == 97023 // 'true' 'ne'
  16206. || lk == 103507 // 'attribute' 'only'
  16207. || lk == 103546 // 'element' 'only'
  16208. || lk == 103559 // 'false' 'only'
  16209. || lk == 103611 // 'namespace' 'only'
  16210. || lk == 103621 // 'null' 'only'
  16211. || lk == 103644 // 'processing-instruction' 'only'
  16212. || lk == 103679 // 'true' 'only'
  16213. || lk == 104531 // 'attribute' 'or'
  16214. || lk == 104570 // 'element' 'or'
  16215. || lk == 104583 // 'false' 'or'
  16216. || lk == 104635 // 'namespace' 'or'
  16217. || lk == 104645 // 'null' 'or'
  16218. || lk == 104668 // 'processing-instruction' 'or'
  16219. || lk == 104703 // 'true' 'or'
  16220. || lk == 105043 // 'attribute' 'order'
  16221. || lk == 105082 // 'element' 'order'
  16222. || lk == 105095 // 'false' 'order'
  16223. || lk == 105147 // 'namespace' 'order'
  16224. || lk == 105157 // 'null' 'order'
  16225. || lk == 105180 // 'processing-instruction' 'order'
  16226. || lk == 105215 // 'true' 'order'
  16227. || lk == 107143 // 'false' 'paragraphs'
  16228. || lk == 107205 // 'null' 'paragraphs'
  16229. || lk == 107263 // 'true' 'paragraphs'
  16230. || lk == 114771 // 'attribute' 'return'
  16231. || lk == 114810 // 'element' 'return'
  16232. || lk == 114823 // 'false' 'return'
  16233. || lk == 114875 // 'namespace' 'return'
  16234. || lk == 114885 // 'null' 'return'
  16235. || lk == 114908 // 'processing-instruction' 'return'
  16236. || lk == 114943 // 'true' 'return'
  16237. || lk == 116819 // 'attribute' 'satisfies'
  16238. || lk == 116858 // 'element' 'satisfies'
  16239. || lk == 116871 // 'false' 'satisfies'
  16240. || lk == 116923 // 'namespace' 'satisfies'
  16241. || lk == 116933 // 'null' 'satisfies'
  16242. || lk == 116956 // 'processing-instruction' 'satisfies'
  16243. || lk == 116991 // 'true' 'satisfies'
  16244. || lk == 121479 // 'false' 'sentences'
  16245. || lk == 121541 // 'null' 'sentences'
  16246. || lk == 121599 // 'true' 'sentences'
  16247. || lk == 123475 // 'attribute' 'stable'
  16248. || lk == 123514 // 'element' 'stable'
  16249. || lk == 123527 // 'false' 'stable'
  16250. || lk == 123579 // 'namespace' 'stable'
  16251. || lk == 123589 // 'null' 'stable'
  16252. || lk == 123612 // 'processing-instruction' 'stable'
  16253. || lk == 123647 // 'true' 'stable'
  16254. || lk == 123987 // 'attribute' 'start'
  16255. || lk == 124026 // 'element' 'start'
  16256. || lk == 124039 // 'false' 'start'
  16257. || lk == 124091 // 'namespace' 'start'
  16258. || lk == 124101 // 'null' 'start'
  16259. || lk == 124124 // 'processing-instruction' 'start'
  16260. || lk == 124159 // 'true' 'start'
  16261. || lk == 129159 // 'false' 'times'
  16262. || lk == 129221 // 'null' 'times'
  16263. || lk == 129279 // 'true' 'times'
  16264. || lk == 129619 // 'attribute' 'to'
  16265. || lk == 129658 // 'element' 'to'
  16266. || lk == 129671 // 'false' 'to'
  16267. || lk == 129723 // 'namespace' 'to'
  16268. || lk == 129733 // 'null' 'to'
  16269. || lk == 129756 // 'processing-instruction' 'to'
  16270. || lk == 129791 // 'true' 'to'
  16271. || lk == 130131 // 'attribute' 'treat'
  16272. || lk == 130170 // 'element' 'treat'
  16273. || lk == 130183 // 'false' 'treat'
  16274. || lk == 130235 // 'namespace' 'treat'
  16275. || lk == 130245 // 'null' 'treat'
  16276. || lk == 130268 // 'processing-instruction' 'treat'
  16277. || lk == 130303 // 'true' 'treat'
  16278. || lk == 133203 // 'attribute' 'union'
  16279. || lk == 133242 // 'element' 'union'
  16280. || lk == 133255 // 'false' 'union'
  16281. || lk == 133307 // 'namespace' 'union'
  16282. || lk == 133317 // 'null' 'union'
  16283. || lk == 133340 // 'processing-instruction' 'union'
  16284. || lk == 133375 // 'true' 'union'
  16285. || lk == 139347 // 'attribute' 'where'
  16286. || lk == 139386 // 'element' 'where'
  16287. || lk == 139399 // 'false' 'where'
  16288. || lk == 139451 // 'namespace' 'where'
  16289. || lk == 139461 // 'null' 'where'
  16290. || lk == 139484 // 'processing-instruction' 'where'
  16291. || lk == 139519 // 'true' 'where'
  16292. || lk == 141395 // 'attribute' 'with'
  16293. || lk == 141434 // 'element' 'with'
  16294. || lk == 141447 // 'false' 'with'
  16295. || lk == 141499 // 'namespace' 'with'
  16296. || lk == 141509 // 'null' 'with'
  16297. || lk == 141532 // 'processing-instruction' 'with'
  16298. || lk == 141567 // 'true' 'with'
  16299. || lk == 142983 // 'false' 'words'
  16300. || lk == 143045 // 'null' 'words'
  16301. || lk == 143103 // 'true' 'words'
  16302. || lk == 145543 // 'false' '|'
  16303. || lk == 145605 // 'null' '|'
  16304. || lk == 145663 // 'true' '|'
  16305. || lk == 146055 // 'false' '||'
  16306. || lk == 146117 // 'null' '||'
  16307. || lk == 146175 // 'true' '||'
  16308. || lk == 146567 // 'false' '|}'
  16309. || lk == 146629 // 'null' '|}'
  16310. || lk == 146687 // 'true' '|}'
  16311. || lk == 147079 // 'false' '}'
  16312. || lk == 147141 // 'null' '}'
  16313. || lk == 147199) // 'true' '}'
  16314. {
  16315. lk = memoized(4, e0);
  16316. if (lk == 0)
  16317. {
  16318. var b0A = b0; var e0A = e0; var l1A = l1;
  16319. var b1A = b1; var e1A = e1; var l2A = l2;
  16320. var b2A = b2; var e2A = e2;
  16321. try
  16322. {
  16323. try_PostfixExpr();
  16324. lk = -1;
  16325. }
  16326. catch (p1A)
  16327. {
  16328. lk = -2;
  16329. }
  16330. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  16331. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  16332. b2 = b2A; e2 = e2A; end = e2A; }}
  16333. memoize(4, e0, lk);
  16334. }
  16335. }
  16336. switch (lk)
  16337. {
  16338. case -1:
  16339. case 8: // IntegerLiteral
  16340. case 9: // DecimalLiteral
  16341. case 10: // DoubleLiteral
  16342. case 11: // StringLiteral
  16343. case 31: // '$'
  16344. case 32: // '$$'
  16345. case 33: // '%'
  16346. case 35: // '('
  16347. case 55: // '<'
  16348. case 56: // '<!--'
  16349. case 60: // '<?'
  16350. case 69: // '['
  16351. case 281: // '{'
  16352. case 283: // '{|'
  16353. case 3155: // 'attribute' EQName^Token
  16354. case 3194: // 'element' EQName^Token
  16355. case 9915: // 'namespace' NCName^Token
  16356. case 9948: // 'processing-instruction' NCName^Token
  16357. case 14854: // EQName^Token '#'
  16358. case 14919: // 'after' '#'
  16359. case 14921: // 'allowing' '#'
  16360. case 14922: // 'ancestor' '#'
  16361. case 14923: // 'ancestor-or-self' '#'
  16362. case 14924: // 'and' '#'
  16363. case 14926: // 'append' '#'
  16364. case 14927: // 'array' '#'
  16365. case 14928: // 'as' '#'
  16366. case 14929: // 'ascending' '#'
  16367. case 14930: // 'at' '#'
  16368. case 14931: // 'attribute' '#'
  16369. case 14932: // 'base-uri' '#'
  16370. case 14933: // 'before' '#'
  16371. case 14934: // 'boundary-space' '#'
  16372. case 14935: // 'break' '#'
  16373. case 14937: // 'case' '#'
  16374. case 14938: // 'cast' '#'
  16375. case 14939: // 'castable' '#'
  16376. case 14940: // 'catch' '#'
  16377. case 14942: // 'child' '#'
  16378. case 14943: // 'collation' '#'
  16379. case 14945: // 'comment' '#'
  16380. case 14946: // 'constraint' '#'
  16381. case 14947: // 'construction' '#'
  16382. case 14950: // 'context' '#'
  16383. case 14951: // 'continue' '#'
  16384. case 14952: // 'copy' '#'
  16385. case 14953: // 'copy-namespaces' '#'
  16386. case 14954: // 'count' '#'
  16387. case 14955: // 'decimal-format' '#'
  16388. case 14957: // 'declare' '#'
  16389. case 14958: // 'default' '#'
  16390. case 14959: // 'delete' '#'
  16391. case 14960: // 'descendant' '#'
  16392. case 14961: // 'descendant-or-self' '#'
  16393. case 14962: // 'descending' '#'
  16394. case 14967: // 'div' '#'
  16395. case 14968: // 'document' '#'
  16396. case 14969: // 'document-node' '#'
  16397. case 14970: // 'element' '#'
  16398. case 14971: // 'else' '#'
  16399. case 14972: // 'empty' '#'
  16400. case 14973: // 'empty-sequence' '#'
  16401. case 14974: // 'encoding' '#'
  16402. case 14975: // 'end' '#'
  16403. case 14977: // 'eq' '#'
  16404. case 14978: // 'every' '#'
  16405. case 14980: // 'except' '#'
  16406. case 14981: // 'exit' '#'
  16407. case 14982: // 'external' '#'
  16408. case 14983: // 'false' '#'
  16409. case 14984: // 'first' '#'
  16410. case 14985: // 'following' '#'
  16411. case 14986: // 'following-sibling' '#'
  16412. case 14987: // 'for' '#'
  16413. case 14990: // 'from' '#'
  16414. case 14991: // 'ft-option' '#'
  16415. case 14995: // 'function' '#'
  16416. case 14996: // 'ge' '#'
  16417. case 14998: // 'group' '#'
  16418. case 15000: // 'gt' '#'
  16419. case 15001: // 'idiv' '#'
  16420. case 15002: // 'if' '#'
  16421. case 15003: // 'import' '#'
  16422. case 15004: // 'in' '#'
  16423. case 15005: // 'index' '#'
  16424. case 15009: // 'insert' '#'
  16425. case 15010: // 'instance' '#'
  16426. case 15011: // 'integrity' '#'
  16427. case 15012: // 'intersect' '#'
  16428. case 15013: // 'into' '#'
  16429. case 15014: // 'is' '#'
  16430. case 15015: // 'item' '#'
  16431. case 15016: // 'json' '#'
  16432. case 15017: // 'json-item' '#'
  16433. case 15018: // 'jsoniq' '#'
  16434. case 15021: // 'last' '#'
  16435. case 15022: // 'lax' '#'
  16436. case 15023: // 'le' '#'
  16437. case 15025: // 'let' '#'
  16438. case 15027: // 'loop' '#'
  16439. case 15029: // 'lt' '#'
  16440. case 15031: // 'mod' '#'
  16441. case 15032: // 'modify' '#'
  16442. case 15033: // 'module' '#'
  16443. case 15035: // 'namespace' '#'
  16444. case 15036: // 'namespace-node' '#'
  16445. case 15037: // 'ne' '#'
  16446. case 15042: // 'node' '#'
  16447. case 15043: // 'nodes' '#'
  16448. case 15045: // 'null' '#'
  16449. case 15046: // 'object' '#'
  16450. case 15050: // 'only' '#'
  16451. case 15051: // 'option' '#'
  16452. case 15052: // 'or' '#'
  16453. case 15053: // 'order' '#'
  16454. case 15054: // 'ordered' '#'
  16455. case 15055: // 'ordering' '#'
  16456. case 15058: // 'parent' '#'
  16457. case 15064: // 'preceding' '#'
  16458. case 15065: // 'preceding-sibling' '#'
  16459. case 15068: // 'processing-instruction' '#'
  16460. case 15070: // 'rename' '#'
  16461. case 15071: // 'replace' '#'
  16462. case 15072: // 'return' '#'
  16463. case 15073: // 'returning' '#'
  16464. case 15074: // 'revalidation' '#'
  16465. case 15076: // 'satisfies' '#'
  16466. case 15077: // 'schema' '#'
  16467. case 15078: // 'schema-attribute' '#'
  16468. case 15079: // 'schema-element' '#'
  16469. case 15080: // 'score' '#'
  16470. case 15081: // 'select' '#'
  16471. case 15082: // 'self' '#'
  16472. case 15087: // 'sliding' '#'
  16473. case 15088: // 'some' '#'
  16474. case 15089: // 'stable' '#'
  16475. case 15090: // 'start' '#'
  16476. case 15093: // 'strict' '#'
  16477. case 15095: // 'structured-item' '#'
  16478. case 15096: // 'switch' '#'
  16479. case 15097: // 'text' '#'
  16480. case 15101: // 'to' '#'
  16481. case 15102: // 'treat' '#'
  16482. case 15103: // 'true' '#'
  16483. case 15104: // 'try' '#'
  16484. case 15105: // 'tumbling' '#'
  16485. case 15106: // 'type' '#'
  16486. case 15107: // 'typeswitch' '#'
  16487. case 15108: // 'union' '#'
  16488. case 15110: // 'unordered' '#'
  16489. case 15111: // 'updating' '#'
  16490. case 15114: // 'validate' '#'
  16491. case 15115: // 'value' '#'
  16492. case 15116: // 'variable' '#'
  16493. case 15117: // 'version' '#'
  16494. case 15120: // 'where' '#'
  16495. case 15121: // 'while' '#'
  16496. case 15124: // 'with' '#'
  16497. case 17926: // EQName^Token '('
  16498. case 17991: // 'after' '('
  16499. case 17993: // 'allowing' '('
  16500. case 17994: // 'ancestor' '('
  16501. case 17995: // 'ancestor-or-self' '('
  16502. case 17996: // 'and' '('
  16503. case 17998: // 'append' '('
  16504. case 18000: // 'as' '('
  16505. case 18001: // 'ascending' '('
  16506. case 18002: // 'at' '('
  16507. case 18004: // 'base-uri' '('
  16508. case 18005: // 'before' '('
  16509. case 18006: // 'boundary-space' '('
  16510. case 18007: // 'break' '('
  16511. case 18009: // 'case' '('
  16512. case 18010: // 'cast' '('
  16513. case 18011: // 'castable' '('
  16514. case 18012: // 'catch' '('
  16515. case 18014: // 'child' '('
  16516. case 18015: // 'collation' '('
  16517. case 18018: // 'constraint' '('
  16518. case 18019: // 'construction' '('
  16519. case 18022: // 'context' '('
  16520. case 18023: // 'continue' '('
  16521. case 18024: // 'copy' '('
  16522. case 18025: // 'copy-namespaces' '('
  16523. case 18026: // 'count' '('
  16524. case 18027: // 'decimal-format' '('
  16525. case 18029: // 'declare' '('
  16526. case 18030: // 'default' '('
  16527. case 18031: // 'delete' '('
  16528. case 18032: // 'descendant' '('
  16529. case 18033: // 'descendant-or-self' '('
  16530. case 18034: // 'descending' '('
  16531. case 18039: // 'div' '('
  16532. case 18040: // 'document' '('
  16533. case 18043: // 'else' '('
  16534. case 18044: // 'empty' '('
  16535. case 18046: // 'encoding' '('
  16536. case 18047: // 'end' '('
  16537. case 18049: // 'eq' '('
  16538. case 18050: // 'every' '('
  16539. case 18052: // 'except' '('
  16540. case 18053: // 'exit' '('
  16541. case 18054: // 'external' '('
  16542. case 18055: // 'false' '('
  16543. case 18056: // 'first' '('
  16544. case 18057: // 'following' '('
  16545. case 18058: // 'following-sibling' '('
  16546. case 18059: // 'for' '('
  16547. case 18062: // 'from' '('
  16548. case 18063: // 'ft-option' '('
  16549. case 18067: // 'function' '('
  16550. case 18068: // 'ge' '('
  16551. case 18070: // 'group' '('
  16552. case 18072: // 'gt' '('
  16553. case 18073: // 'idiv' '('
  16554. case 18075: // 'import' '('
  16555. case 18076: // 'in' '('
  16556. case 18077: // 'index' '('
  16557. case 18081: // 'insert' '('
  16558. case 18082: // 'instance' '('
  16559. case 18083: // 'integrity' '('
  16560. case 18084: // 'intersect' '('
  16561. case 18085: // 'into' '('
  16562. case 18086: // 'is' '('
  16563. case 18088: // 'json' '('
  16564. case 18090: // 'jsoniq' '('
  16565. case 18093: // 'last' '('
  16566. case 18094: // 'lax' '('
  16567. case 18095: // 'le' '('
  16568. case 18097: // 'let' '('
  16569. case 18099: // 'loop' '('
  16570. case 18101: // 'lt' '('
  16571. case 18103: // 'mod' '('
  16572. case 18104: // 'modify' '('
  16573. case 18105: // 'module' '('
  16574. case 18107: // 'namespace' '('
  16575. case 18109: // 'ne' '('
  16576. case 18115: // 'nodes' '('
  16577. case 18117: // 'null' '('
  16578. case 18118: // 'object' '('
  16579. case 18122: // 'only' '('
  16580. case 18123: // 'option' '('
  16581. case 18124: // 'or' '('
  16582. case 18125: // 'order' '('
  16583. case 18126: // 'ordered' '('
  16584. case 18127: // 'ordering' '('
  16585. case 18130: // 'parent' '('
  16586. case 18136: // 'preceding' '('
  16587. case 18137: // 'preceding-sibling' '('
  16588. case 18142: // 'rename' '('
  16589. case 18143: // 'replace' '('
  16590. case 18144: // 'return' '('
  16591. case 18145: // 'returning' '('
  16592. case 18146: // 'revalidation' '('
  16593. case 18148: // 'satisfies' '('
  16594. case 18149: // 'schema' '('
  16595. case 18152: // 'score' '('
  16596. case 18153: // 'select' '('
  16597. case 18154: // 'self' '('
  16598. case 18159: // 'sliding' '('
  16599. case 18160: // 'some' '('
  16600. case 18161: // 'stable' '('
  16601. case 18162: // 'start' '('
  16602. case 18165: // 'strict' '('
  16603. case 18173: // 'to' '('
  16604. case 18174: // 'treat' '('
  16605. case 18175: // 'true' '('
  16606. case 18176: // 'try' '('
  16607. case 18177: // 'tumbling' '('
  16608. case 18178: // 'type' '('
  16609. case 18180: // 'union' '('
  16610. case 18182: // 'unordered' '('
  16611. case 18183: // 'updating' '('
  16612. case 18186: // 'validate' '('
  16613. case 18187: // 'value' '('
  16614. case 18188: // 'variable' '('
  16615. case 18189: // 'version' '('
  16616. case 18192: // 'where' '('
  16617. case 18193: // 'while' '('
  16618. case 18196: // 'with' '('
  16619. case 23175: // 'false' '.'
  16620. case 23237: // 'null' '.'
  16621. case 23295: // 'true' '.'
  16622. case 37459: // 'attribute' 'allowing'
  16623. case 37498: // 'element' 'allowing'
  16624. case 37563: // 'namespace' 'allowing'
  16625. case 37596: // 'processing-instruction' 'allowing'
  16626. case 37971: // 'attribute' 'ancestor'
  16627. case 38010: // 'element' 'ancestor'
  16628. case 38075: // 'namespace' 'ancestor'
  16629. case 38108: // 'processing-instruction' 'ancestor'
  16630. case 38483: // 'attribute' 'ancestor-or-self'
  16631. case 38522: // 'element' 'ancestor-or-self'
  16632. case 38587: // 'namespace' 'ancestor-or-self'
  16633. case 38620: // 'processing-instruction' 'ancestor-or-self'
  16634. case 40019: // 'attribute' 'append'
  16635. case 40058: // 'element' 'append'
  16636. case 40123: // 'namespace' 'append'
  16637. case 40156: // 'processing-instruction' 'append'
  16638. case 40531: // 'attribute' 'array'
  16639. case 40570: // 'element' 'array'
  16640. case 42579: // 'attribute' 'attribute'
  16641. case 42618: // 'element' 'attribute'
  16642. case 42683: // 'namespace' 'attribute'
  16643. case 42716: // 'processing-instruction' 'attribute'
  16644. case 43091: // 'attribute' 'base-uri'
  16645. case 43130: // 'element' 'base-uri'
  16646. case 43195: // 'namespace' 'base-uri'
  16647. case 43228: // 'processing-instruction' 'base-uri'
  16648. case 44115: // 'attribute' 'boundary-space'
  16649. case 44154: // 'element' 'boundary-space'
  16650. case 44219: // 'namespace' 'boundary-space'
  16651. case 44252: // 'processing-instruction' 'boundary-space'
  16652. case 44627: // 'attribute' 'break'
  16653. case 44666: // 'element' 'break'
  16654. case 44731: // 'namespace' 'break'
  16655. case 44764: // 'processing-instruction' 'break'
  16656. case 47187: // 'attribute' 'catch'
  16657. case 47226: // 'element' 'catch'
  16658. case 47291: // 'namespace' 'catch'
  16659. case 47324: // 'processing-instruction' 'catch'
  16660. case 48211: // 'attribute' 'child'
  16661. case 48250: // 'element' 'child'
  16662. case 48315: // 'namespace' 'child'
  16663. case 48348: // 'processing-instruction' 'child'
  16664. case 49747: // 'attribute' 'comment'
  16665. case 49786: // 'element' 'comment'
  16666. case 49851: // 'namespace' 'comment'
  16667. case 49884: // 'processing-instruction' 'comment'
  16668. case 50259: // 'attribute' 'constraint'
  16669. case 50298: // 'element' 'constraint'
  16670. case 50363: // 'namespace' 'constraint'
  16671. case 50396: // 'processing-instruction' 'constraint'
  16672. case 50771: // 'attribute' 'construction'
  16673. case 50810: // 'element' 'construction'
  16674. case 50875: // 'namespace' 'construction'
  16675. case 50908: // 'processing-instruction' 'construction'
  16676. case 52307: // 'attribute' 'context'
  16677. case 52346: // 'element' 'context'
  16678. case 52411: // 'namespace' 'context'
  16679. case 52444: // 'processing-instruction' 'context'
  16680. case 52819: // 'attribute' 'continue'
  16681. case 52858: // 'element' 'continue'
  16682. case 52923: // 'namespace' 'continue'
  16683. case 52956: // 'processing-instruction' 'continue'
  16684. case 53331: // 'attribute' 'copy'
  16685. case 53370: // 'element' 'copy'
  16686. case 53435: // 'namespace' 'copy'
  16687. case 53468: // 'processing-instruction' 'copy'
  16688. case 53843: // 'attribute' 'copy-namespaces'
  16689. case 53882: // 'element' 'copy-namespaces'
  16690. case 53947: // 'namespace' 'copy-namespaces'
  16691. case 53980: // 'processing-instruction' 'copy-namespaces'
  16692. case 54867: // 'attribute' 'decimal-format'
  16693. case 54906: // 'element' 'decimal-format'
  16694. case 54971: // 'namespace' 'decimal-format'
  16695. case 55004: // 'processing-instruction' 'decimal-format'
  16696. case 55891: // 'attribute' 'declare'
  16697. case 55930: // 'element' 'declare'
  16698. case 55995: // 'namespace' 'declare'
  16699. case 56028: // 'processing-instruction' 'declare'
  16700. case 56915: // 'attribute' 'delete'
  16701. case 56954: // 'element' 'delete'
  16702. case 57019: // 'namespace' 'delete'
  16703. case 57052: // 'processing-instruction' 'delete'
  16704. case 57427: // 'attribute' 'descendant'
  16705. case 57466: // 'element' 'descendant'
  16706. case 57531: // 'namespace' 'descendant'
  16707. case 57564: // 'processing-instruction' 'descendant'
  16708. case 57939: // 'attribute' 'descendant-or-self'
  16709. case 57978: // 'element' 'descendant-or-self'
  16710. case 58043: // 'namespace' 'descendant-or-self'
  16711. case 58076: // 'processing-instruction' 'descendant-or-self'
  16712. case 61523: // 'attribute' 'document'
  16713. case 61562: // 'element' 'document'
  16714. case 61627: // 'namespace' 'document'
  16715. case 61660: // 'processing-instruction' 'document'
  16716. case 62035: // 'attribute' 'document-node'
  16717. case 62074: // 'element' 'document-node'
  16718. case 62139: // 'namespace' 'document-node'
  16719. case 62172: // 'processing-instruction' 'document-node'
  16720. case 62547: // 'attribute' 'element'
  16721. case 62586: // 'element' 'element'
  16722. case 62651: // 'namespace' 'element'
  16723. case 62684: // 'processing-instruction' 'element'
  16724. case 64083: // 'attribute' 'empty-sequence'
  16725. case 64122: // 'element' 'empty-sequence'
  16726. case 64187: // 'namespace' 'empty-sequence'
  16727. case 64220: // 'processing-instruction' 'empty-sequence'
  16728. case 64595: // 'attribute' 'encoding'
  16729. case 64634: // 'element' 'encoding'
  16730. case 64699: // 'namespace' 'encoding'
  16731. case 64732: // 'processing-instruction' 'encoding'
  16732. case 66643: // 'attribute' 'every'
  16733. case 66682: // 'element' 'every'
  16734. case 66747: // 'namespace' 'every'
  16735. case 66780: // 'processing-instruction' 'every'
  16736. case 68179: // 'attribute' 'exit'
  16737. case 68218: // 'element' 'exit'
  16738. case 68283: // 'namespace' 'exit'
  16739. case 68316: // 'processing-instruction' 'exit'
  16740. case 68691: // 'attribute' 'external'
  16741. case 68730: // 'element' 'external'
  16742. case 68795: // 'namespace' 'external'
  16743. case 68828: // 'processing-instruction' 'external'
  16744. case 69203: // 'attribute' 'false'
  16745. case 69242: // 'element' 'false'
  16746. case 69307: // 'namespace' 'false'
  16747. case 69340: // 'processing-instruction' 'false'
  16748. case 69715: // 'attribute' 'first'
  16749. case 69754: // 'element' 'first'
  16750. case 69819: // 'namespace' 'first'
  16751. case 69852: // 'processing-instruction' 'first'
  16752. case 70227: // 'attribute' 'following'
  16753. case 70266: // 'element' 'following'
  16754. case 70331: // 'namespace' 'following'
  16755. case 70364: // 'processing-instruction' 'following'
  16756. case 70739: // 'attribute' 'following-sibling'
  16757. case 70778: // 'element' 'following-sibling'
  16758. case 70843: // 'namespace' 'following-sibling'
  16759. case 70876: // 'processing-instruction' 'following-sibling'
  16760. case 72787: // 'attribute' 'from'
  16761. case 72826: // 'element' 'from'
  16762. case 72891: // 'namespace' 'from'
  16763. case 72924: // 'processing-instruction' 'from'
  16764. case 73299: // 'attribute' 'ft-option'
  16765. case 73338: // 'element' 'ft-option'
  16766. case 73403: // 'namespace' 'ft-option'
  16767. case 73436: // 'processing-instruction' 'ft-option'
  16768. case 75347: // 'attribute' 'function'
  16769. case 75386: // 'element' 'function'
  16770. case 75451: // 'namespace' 'function'
  16771. case 75484: // 'processing-instruction' 'function'
  16772. case 78931: // 'attribute' 'if'
  16773. case 78970: // 'element' 'if'
  16774. case 79035: // 'namespace' 'if'
  16775. case 79068: // 'processing-instruction' 'if'
  16776. case 79443: // 'attribute' 'import'
  16777. case 79482: // 'element' 'import'
  16778. case 79547: // 'namespace' 'import'
  16779. case 79580: // 'processing-instruction' 'import'
  16780. case 79955: // 'attribute' 'in'
  16781. case 79994: // 'element' 'in'
  16782. case 80059: // 'namespace' 'in'
  16783. case 80092: // 'processing-instruction' 'in'
  16784. case 80467: // 'attribute' 'index'
  16785. case 80506: // 'element' 'index'
  16786. case 80571: // 'namespace' 'index'
  16787. case 80604: // 'processing-instruction' 'index'
  16788. case 82515: // 'attribute' 'insert'
  16789. case 82554: // 'element' 'insert'
  16790. case 82619: // 'namespace' 'insert'
  16791. case 82652: // 'processing-instruction' 'insert'
  16792. case 83539: // 'attribute' 'integrity'
  16793. case 83578: // 'element' 'integrity'
  16794. case 83643: // 'namespace' 'integrity'
  16795. case 83676: // 'processing-instruction' 'integrity'
  16796. case 85587: // 'attribute' 'item'
  16797. case 85626: // 'element' 'item'
  16798. case 85691: // 'namespace' 'item'
  16799. case 85724: // 'processing-instruction' 'item'
  16800. case 86099: // 'attribute' 'json'
  16801. case 86138: // 'element' 'json'
  16802. case 86203: // 'namespace' 'json'
  16803. case 86236: // 'processing-instruction' 'json'
  16804. case 86611: // 'attribute' 'json-item'
  16805. case 86650: // 'element' 'json-item'
  16806. case 87123: // 'attribute' 'jsoniq'
  16807. case 87162: // 'element' 'jsoniq'
  16808. case 87227: // 'namespace' 'jsoniq'
  16809. case 87260: // 'processing-instruction' 'jsoniq'
  16810. case 88659: // 'attribute' 'last'
  16811. case 88698: // 'element' 'last'
  16812. case 88763: // 'namespace' 'last'
  16813. case 88796: // 'processing-instruction' 'last'
  16814. case 89171: // 'attribute' 'lax'
  16815. case 89210: // 'element' 'lax'
  16816. case 89275: // 'namespace' 'lax'
  16817. case 89308: // 'processing-instruction' 'lax'
  16818. case 91731: // 'attribute' 'loop'
  16819. case 91770: // 'element' 'loop'
  16820. case 91835: // 'namespace' 'loop'
  16821. case 91868: // 'processing-instruction' 'loop'
  16822. case 94803: // 'attribute' 'module'
  16823. case 94842: // 'element' 'module'
  16824. case 94907: // 'namespace' 'module'
  16825. case 94940: // 'processing-instruction' 'module'
  16826. case 95827: // 'attribute' 'namespace'
  16827. case 95866: // 'element' 'namespace'
  16828. case 95931: // 'namespace' 'namespace'
  16829. case 95964: // 'processing-instruction' 'namespace'
  16830. case 96339: // 'attribute' 'namespace-node'
  16831. case 96378: // 'element' 'namespace-node'
  16832. case 96443: // 'namespace' 'namespace-node'
  16833. case 96476: // 'processing-instruction' 'namespace-node'
  16834. case 99411: // 'attribute' 'node'
  16835. case 99450: // 'element' 'node'
  16836. case 99515: // 'namespace' 'node'
  16837. case 99548: // 'processing-instruction' 'node'
  16838. case 99923: // 'attribute' 'nodes'
  16839. case 99962: // 'element' 'nodes'
  16840. case 100027: // 'namespace' 'nodes'
  16841. case 100060: // 'processing-instruction' 'nodes'
  16842. case 100947: // 'attribute' 'null'
  16843. case 100986: // 'element' 'null'
  16844. case 101051: // 'namespace' 'null'
  16845. case 101084: // 'processing-instruction' 'null'
  16846. case 101459: // 'attribute' 'object'
  16847. case 101498: // 'element' 'object'
  16848. case 101563: // 'namespace' 'object'
  16849. case 101596: // 'processing-instruction' 'object'
  16850. case 104019: // 'attribute' 'option'
  16851. case 104058: // 'element' 'option'
  16852. case 104123: // 'namespace' 'option'
  16853. case 104156: // 'processing-instruction' 'option'
  16854. case 105555: // 'attribute' 'ordered'
  16855. case 105594: // 'element' 'ordered'
  16856. case 105659: // 'namespace' 'ordered'
  16857. case 105692: // 'processing-instruction' 'ordered'
  16858. case 106067: // 'attribute' 'ordering'
  16859. case 106106: // 'element' 'ordering'
  16860. case 106171: // 'namespace' 'ordering'
  16861. case 106204: // 'processing-instruction' 'ordering'
  16862. case 107603: // 'attribute' 'parent'
  16863. case 107642: // 'element' 'parent'
  16864. case 107707: // 'namespace' 'parent'
  16865. case 107740: // 'processing-instruction' 'parent'
  16866. case 110675: // 'attribute' 'preceding'
  16867. case 110714: // 'element' 'preceding'
  16868. case 110779: // 'namespace' 'preceding'
  16869. case 110812: // 'processing-instruction' 'preceding'
  16870. case 111187: // 'attribute' 'preceding-sibling'
  16871. case 111226: // 'element' 'preceding-sibling'
  16872. case 111291: // 'namespace' 'preceding-sibling'
  16873. case 111324: // 'processing-instruction' 'preceding-sibling'
  16874. case 112723: // 'attribute' 'processing-instruction'
  16875. case 112762: // 'element' 'processing-instruction'
  16876. case 112827: // 'namespace' 'processing-instruction'
  16877. case 112860: // 'processing-instruction' 'processing-instruction'
  16878. case 113747: // 'attribute' 'rename'
  16879. case 113786: // 'element' 'rename'
  16880. case 113851: // 'namespace' 'rename'
  16881. case 113884: // 'processing-instruction' 'rename'
  16882. case 114259: // 'attribute' 'replace'
  16883. case 114298: // 'element' 'replace'
  16884. case 114363: // 'namespace' 'replace'
  16885. case 114396: // 'processing-instruction' 'replace'
  16886. case 115283: // 'attribute' 'returning'
  16887. case 115322: // 'element' 'returning'
  16888. case 115387: // 'namespace' 'returning'
  16889. case 115420: // 'processing-instruction' 'returning'
  16890. case 115795: // 'attribute' 'revalidation'
  16891. case 115834: // 'element' 'revalidation'
  16892. case 115899: // 'namespace' 'revalidation'
  16893. case 115932: // 'processing-instruction' 'revalidation'
  16894. case 117331: // 'attribute' 'schema'
  16895. case 117370: // 'element' 'schema'
  16896. case 117435: // 'namespace' 'schema'
  16897. case 117468: // 'processing-instruction' 'schema'
  16898. case 117843: // 'attribute' 'schema-attribute'
  16899. case 117882: // 'element' 'schema-attribute'
  16900. case 117947: // 'namespace' 'schema-attribute'
  16901. case 117980: // 'processing-instruction' 'schema-attribute'
  16902. case 118355: // 'attribute' 'schema-element'
  16903. case 118394: // 'element' 'schema-element'
  16904. case 118459: // 'namespace' 'schema-element'
  16905. case 118492: // 'processing-instruction' 'schema-element'
  16906. case 118867: // 'attribute' 'score'
  16907. case 118906: // 'element' 'score'
  16908. case 118971: // 'namespace' 'score'
  16909. case 119004: // 'processing-instruction' 'score'
  16910. case 119379: // 'attribute' 'select'
  16911. case 119418: // 'element' 'select'
  16912. case 119483: // 'namespace' 'select'
  16913. case 119516: // 'processing-instruction' 'select'
  16914. case 119891: // 'attribute' 'self'
  16915. case 119930: // 'element' 'self'
  16916. case 119995: // 'namespace' 'self'
  16917. case 120028: // 'processing-instruction' 'self'
  16918. case 122451: // 'attribute' 'sliding'
  16919. case 122490: // 'element' 'sliding'
  16920. case 122555: // 'namespace' 'sliding'
  16921. case 122588: // 'processing-instruction' 'sliding'
  16922. case 122963: // 'attribute' 'some'
  16923. case 123002: // 'element' 'some'
  16924. case 123067: // 'namespace' 'some'
  16925. case 123100: // 'processing-instruction' 'some'
  16926. case 125523: // 'attribute' 'strict'
  16927. case 125562: // 'element' 'strict'
  16928. case 125627: // 'namespace' 'strict'
  16929. case 125660: // 'processing-instruction' 'strict'
  16930. case 126547: // 'attribute' 'structured-item'
  16931. case 126586: // 'element' 'structured-item'
  16932. case 127059: // 'attribute' 'switch'
  16933. case 127098: // 'element' 'switch'
  16934. case 127163: // 'namespace' 'switch'
  16935. case 127196: // 'processing-instruction' 'switch'
  16936. case 127571: // 'attribute' 'text'
  16937. case 127610: // 'element' 'text'
  16938. case 127675: // 'namespace' 'text'
  16939. case 127708: // 'processing-instruction' 'text'
  16940. case 130643: // 'attribute' 'true'
  16941. case 130682: // 'element' 'true'
  16942. case 130747: // 'namespace' 'true'
  16943. case 130780: // 'processing-instruction' 'true'
  16944. case 131155: // 'attribute' 'try'
  16945. case 131194: // 'element' 'try'
  16946. case 131259: // 'namespace' 'try'
  16947. case 131292: // 'processing-instruction' 'try'
  16948. case 131667: // 'attribute' 'tumbling'
  16949. case 131706: // 'element' 'tumbling'
  16950. case 131771: // 'namespace' 'tumbling'
  16951. case 131804: // 'processing-instruction' 'tumbling'
  16952. case 132179: // 'attribute' 'type'
  16953. case 132218: // 'element' 'type'
  16954. case 132283: // 'namespace' 'type'
  16955. case 132316: // 'processing-instruction' 'type'
  16956. case 132691: // 'attribute' 'typeswitch'
  16957. case 132730: // 'element' 'typeswitch'
  16958. case 132795: // 'namespace' 'typeswitch'
  16959. case 132828: // 'processing-instruction' 'typeswitch'
  16960. case 134227: // 'attribute' 'unordered'
  16961. case 134266: // 'element' 'unordered'
  16962. case 134331: // 'namespace' 'unordered'
  16963. case 134364: // 'processing-instruction' 'unordered'
  16964. case 134739: // 'attribute' 'updating'
  16965. case 134778: // 'element' 'updating'
  16966. case 134843: // 'namespace' 'updating'
  16967. case 134876: // 'processing-instruction' 'updating'
  16968. case 136275: // 'attribute' 'validate'
  16969. case 136314: // 'element' 'validate'
  16970. case 136379: // 'namespace' 'validate'
  16971. case 136412: // 'processing-instruction' 'validate'
  16972. case 136787: // 'attribute' 'value'
  16973. case 136826: // 'element' 'value'
  16974. case 136891: // 'namespace' 'value'
  16975. case 136924: // 'processing-instruction' 'value'
  16976. case 137299: // 'attribute' 'variable'
  16977. case 137338: // 'element' 'variable'
  16978. case 137403: // 'namespace' 'variable'
  16979. case 137436: // 'processing-instruction' 'variable'
  16980. case 137811: // 'attribute' 'version'
  16981. case 137850: // 'element' 'version'
  16982. case 137915: // 'namespace' 'version'
  16983. case 137948: // 'processing-instruction' 'version'
  16984. case 139859: // 'attribute' 'while'
  16985. case 139898: // 'element' 'while'
  16986. case 139963: // 'namespace' 'while'
  16987. case 139996: // 'processing-instruction' 'while'
  16988. case 143955: // 'attribute' '{'
  16989. case 143969: // 'comment' '{'
  16990. case 143992: // 'document' '{'
  16991. case 143994: // 'element' '{'
  16992. case 144059: // 'namespace' '{'
  16993. case 144078: // 'ordered' '{'
  16994. case 144092: // 'processing-instruction' '{'
  16995. case 144121: // 'text' '{'
  16996. case 144134: // 'unordered' '{'
  16997. parse_PostfixExpr();
  16998. break;
  16999. default:
  17000. parse_AxisStep();
  17001. }
  17002. eventHandler.endNonterminal("StepExpr", e0);
  17003. }
  17004. function try_StepExpr()
  17005. {
  17006. switch (l1)
  17007. {
  17008. case 83: // 'attribute'
  17009. lookahead2W(287); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  17010. break;
  17011. case 122: // 'element'
  17012. lookahead2W(286); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  17013. break;
  17014. case 187: // 'namespace'
  17015. case 220: // 'processing-instruction'
  17016. lookahead2W(284); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  17017. break;
  17018. case 135: // 'false'
  17019. case 197: // 'null'
  17020. case 255: // 'true'
  17021. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' |
  17022. break;
  17023. case 97: // 'comment'
  17024. case 120: // 'document'
  17025. case 206: // 'ordered'
  17026. case 249: // 'text'
  17027. case 262: // 'unordered'
  17028. lookahead2W(238); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  17029. break;
  17030. case 79: // 'array'
  17031. case 125: // 'empty-sequence'
  17032. case 154: // 'if'
  17033. case 167: // 'item'
  17034. case 169: // 'json-item'
  17035. case 247: // 'structured-item'
  17036. case 248: // 'switch'
  17037. case 259: // 'typeswitch'
  17038. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  17039. break;
  17040. case 74: // 'ancestor'
  17041. case 75: // 'ancestor-or-self'
  17042. case 94: // 'child'
  17043. case 112: // 'descendant'
  17044. case 113: // 'descendant-or-self'
  17045. case 137: // 'following'
  17046. case 138: // 'following-sibling'
  17047. case 210: // 'parent'
  17048. case 216: // 'preceding'
  17049. case 217: // 'preceding-sibling'
  17050. case 234: // 'self'
  17051. lookahead2W(237); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  17052. break;
  17053. case 6: // EQName^Token
  17054. case 71: // 'after'
  17055. case 73: // 'allowing'
  17056. case 76: // 'and'
  17057. case 78: // 'append'
  17058. case 80: // 'as'
  17059. case 81: // 'ascending'
  17060. case 82: // 'at'
  17061. case 84: // 'base-uri'
  17062. case 85: // 'before'
  17063. case 86: // 'boundary-space'
  17064. case 87: // 'break'
  17065. case 89: // 'case'
  17066. case 90: // 'cast'
  17067. case 91: // 'castable'
  17068. case 92: // 'catch'
  17069. case 95: // 'collation'
  17070. case 98: // 'constraint'
  17071. case 99: // 'construction'
  17072. case 102: // 'context'
  17073. case 103: // 'continue'
  17074. case 104: // 'copy'
  17075. case 105: // 'copy-namespaces'
  17076. case 106: // 'count'
  17077. case 107: // 'decimal-format'
  17078. case 109: // 'declare'
  17079. case 110: // 'default'
  17080. case 111: // 'delete'
  17081. case 114: // 'descending'
  17082. case 119: // 'div'
  17083. case 121: // 'document-node'
  17084. case 123: // 'else'
  17085. case 124: // 'empty'
  17086. case 126: // 'encoding'
  17087. case 127: // 'end'
  17088. case 129: // 'eq'
  17089. case 130: // 'every'
  17090. case 132: // 'except'
  17091. case 133: // 'exit'
  17092. case 134: // 'external'
  17093. case 136: // 'first'
  17094. case 139: // 'for'
  17095. case 142: // 'from'
  17096. case 143: // 'ft-option'
  17097. case 147: // 'function'
  17098. case 148: // 'ge'
  17099. case 150: // 'group'
  17100. case 152: // 'gt'
  17101. case 153: // 'idiv'
  17102. case 155: // 'import'
  17103. case 156: // 'in'
  17104. case 157: // 'index'
  17105. case 161: // 'insert'
  17106. case 162: // 'instance'
  17107. case 163: // 'integrity'
  17108. case 164: // 'intersect'
  17109. case 165: // 'into'
  17110. case 166: // 'is'
  17111. case 168: // 'json'
  17112. case 170: // 'jsoniq'
  17113. case 173: // 'last'
  17114. case 174: // 'lax'
  17115. case 175: // 'le'
  17116. case 177: // 'let'
  17117. case 179: // 'loop'
  17118. case 181: // 'lt'
  17119. case 183: // 'mod'
  17120. case 184: // 'modify'
  17121. case 185: // 'module'
  17122. case 188: // 'namespace-node'
  17123. case 189: // 'ne'
  17124. case 194: // 'node'
  17125. case 195: // 'nodes'
  17126. case 198: // 'object'
  17127. case 202: // 'only'
  17128. case 203: // 'option'
  17129. case 204: // 'or'
  17130. case 205: // 'order'
  17131. case 207: // 'ordering'
  17132. case 222: // 'rename'
  17133. case 223: // 'replace'
  17134. case 224: // 'return'
  17135. case 225: // 'returning'
  17136. case 226: // 'revalidation'
  17137. case 228: // 'satisfies'
  17138. case 229: // 'schema'
  17139. case 230: // 'schema-attribute'
  17140. case 231: // 'schema-element'
  17141. case 232: // 'score'
  17142. case 233: // 'select'
  17143. case 239: // 'sliding'
  17144. case 240: // 'some'
  17145. case 241: // 'stable'
  17146. case 242: // 'start'
  17147. case 245: // 'strict'
  17148. case 253: // 'to'
  17149. case 254: // 'treat'
  17150. case 256: // 'try'
  17151. case 257: // 'tumbling'
  17152. case 258: // 'type'
  17153. case 260: // 'union'
  17154. case 263: // 'updating'
  17155. case 266: // 'validate'
  17156. case 267: // 'value'
  17157. case 268: // 'variable'
  17158. case 269: // 'version'
  17159. case 272: // 'where'
  17160. case 273: // 'while'
  17161. case 276: // 'with'
  17162. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  17163. break;
  17164. default:
  17165. lk = l1;
  17166. }
  17167. if (lk == 12935 // 'false' EOF
  17168. || lk == 12997 // 'null' EOF
  17169. || lk == 13055 // 'true' EOF
  17170. || lk == 13447 // 'false' '!'
  17171. || lk == 13509 // 'null' '!'
  17172. || lk == 13567 // 'true' '!'
  17173. || lk == 13959 // 'false' '!='
  17174. || lk == 14021 // 'null' '!='
  17175. || lk == 14079 // 'true' '!='
  17176. || lk == 19591 // 'false' ')'
  17177. || lk == 19653 // 'null' ')'
  17178. || lk == 19711 // 'true' ')'
  17179. || lk == 20103 // 'false' '*'
  17180. || lk == 20165 // 'null' '*'
  17181. || lk == 20223 // 'true' '*'
  17182. || lk == 21127 // 'false' '+'
  17183. || lk == 21189 // 'null' '+'
  17184. || lk == 21247 // 'true' '+'
  17185. || lk == 21639 // 'false' ','
  17186. || lk == 21701 // 'null' ','
  17187. || lk == 21759 // 'true' ','
  17188. || lk == 22151 // 'false' '-'
  17189. || lk == 22213 // 'null' '-'
  17190. || lk == 22271 // 'true' '-'
  17191. || lk == 24199 // 'false' '/'
  17192. || lk == 24261 // 'null' '/'
  17193. || lk == 24319 // 'true' '/'
  17194. || lk == 24711 // 'false' '//'
  17195. || lk == 24773 // 'null' '//'
  17196. || lk == 24831 // 'true' '//'
  17197. || lk == 25735 // 'false' ':'
  17198. || lk == 25797 // 'null' ':'
  17199. || lk == 25855 // 'true' ':'
  17200. || lk == 27783 // 'false' ';'
  17201. || lk == 27845 // 'null' ';'
  17202. || lk == 27903 // 'true' ';'
  17203. || lk == 28295 // 'false' '<'
  17204. || lk == 28357 // 'null' '<'
  17205. || lk == 28415 // 'true' '<'
  17206. || lk == 29831 // 'false' '<<'
  17207. || lk == 29893 // 'null' '<<'
  17208. || lk == 29951 // 'true' '<<'
  17209. || lk == 30343 // 'false' '<='
  17210. || lk == 30405 // 'null' '<='
  17211. || lk == 30463 // 'true' '<='
  17212. || lk == 31367 // 'false' '='
  17213. || lk == 31429 // 'null' '='
  17214. || lk == 31487 // 'true' '='
  17215. || lk == 31879 // 'false' '>'
  17216. || lk == 31941 // 'null' '>'
  17217. || lk == 31999 // 'true' '>'
  17218. || lk == 32391 // 'false' '>='
  17219. || lk == 32453 // 'null' '>='
  17220. || lk == 32511 // 'true' '>='
  17221. || lk == 32903 // 'false' '>>'
  17222. || lk == 32965 // 'null' '>>'
  17223. || lk == 33023 // 'true' '>>'
  17224. || lk == 35463 // 'false' '['
  17225. || lk == 35525 // 'null' '['
  17226. || lk == 35583 // 'true' '['
  17227. || lk == 35975 // 'false' ']'
  17228. || lk == 36037 // 'null' ']'
  17229. || lk == 36095 // 'true' ']'
  17230. || lk == 36435 // 'attribute' 'after'
  17231. || lk == 36474 // 'element' 'after'
  17232. || lk == 36487 // 'false' 'after'
  17233. || lk == 36539 // 'namespace' 'after'
  17234. || lk == 36549 // 'null' 'after'
  17235. || lk == 36572 // 'processing-instruction' 'after'
  17236. || lk == 36607 // 'true' 'after'
  17237. || lk == 38995 // 'attribute' 'and'
  17238. || lk == 39034 // 'element' 'and'
  17239. || lk == 39047 // 'false' 'and'
  17240. || lk == 39099 // 'namespace' 'and'
  17241. || lk == 39109 // 'null' 'and'
  17242. || lk == 39132 // 'processing-instruction' 'and'
  17243. || lk == 39167 // 'true' 'and'
  17244. || lk == 41043 // 'attribute' 'as'
  17245. || lk == 41082 // 'element' 'as'
  17246. || lk == 41095 // 'false' 'as'
  17247. || lk == 41147 // 'namespace' 'as'
  17248. || lk == 41157 // 'null' 'as'
  17249. || lk == 41180 // 'processing-instruction' 'as'
  17250. || lk == 41215 // 'true' 'as'
  17251. || lk == 41555 // 'attribute' 'ascending'
  17252. || lk == 41594 // 'element' 'ascending'
  17253. || lk == 41607 // 'false' 'ascending'
  17254. || lk == 41659 // 'namespace' 'ascending'
  17255. || lk == 41669 // 'null' 'ascending'
  17256. || lk == 41692 // 'processing-instruction' 'ascending'
  17257. || lk == 41727 // 'true' 'ascending'
  17258. || lk == 42067 // 'attribute' 'at'
  17259. || lk == 42106 // 'element' 'at'
  17260. || lk == 42119 // 'false' 'at'
  17261. || lk == 42171 // 'namespace' 'at'
  17262. || lk == 42181 // 'null' 'at'
  17263. || lk == 42204 // 'processing-instruction' 'at'
  17264. || lk == 42239 // 'true' 'at'
  17265. || lk == 43603 // 'attribute' 'before'
  17266. || lk == 43642 // 'element' 'before'
  17267. || lk == 43655 // 'false' 'before'
  17268. || lk == 43707 // 'namespace' 'before'
  17269. || lk == 43717 // 'null' 'before'
  17270. || lk == 43740 // 'processing-instruction' 'before'
  17271. || lk == 43775 // 'true' 'before'
  17272. || lk == 45191 // 'false' 'by'
  17273. || lk == 45253 // 'null' 'by'
  17274. || lk == 45311 // 'true' 'by'
  17275. || lk == 45651 // 'attribute' 'case'
  17276. || lk == 45690 // 'element' 'case'
  17277. || lk == 45703 // 'false' 'case'
  17278. || lk == 45755 // 'namespace' 'case'
  17279. || lk == 45765 // 'null' 'case'
  17280. || lk == 45788 // 'processing-instruction' 'case'
  17281. || lk == 45823 // 'true' 'case'
  17282. || lk == 46163 // 'attribute' 'cast'
  17283. || lk == 46202 // 'element' 'cast'
  17284. || lk == 46215 // 'false' 'cast'
  17285. || lk == 46267 // 'namespace' 'cast'
  17286. || lk == 46277 // 'null' 'cast'
  17287. || lk == 46300 // 'processing-instruction' 'cast'
  17288. || lk == 46335 // 'true' 'cast'
  17289. || lk == 46675 // 'attribute' 'castable'
  17290. || lk == 46714 // 'element' 'castable'
  17291. || lk == 46727 // 'false' 'castable'
  17292. || lk == 46779 // 'namespace' 'castable'
  17293. || lk == 46789 // 'null' 'castable'
  17294. || lk == 46812 // 'processing-instruction' 'castable'
  17295. || lk == 46847 // 'true' 'castable'
  17296. || lk == 48723 // 'attribute' 'collation'
  17297. || lk == 48762 // 'element' 'collation'
  17298. || lk == 48775 // 'false' 'collation'
  17299. || lk == 48827 // 'namespace' 'collation'
  17300. || lk == 48837 // 'null' 'collation'
  17301. || lk == 48860 // 'processing-instruction' 'collation'
  17302. || lk == 48895 // 'true' 'collation'
  17303. || lk == 51335 // 'false' 'contains'
  17304. || lk == 51397 // 'null' 'contains'
  17305. || lk == 51455 // 'true' 'contains'
  17306. || lk == 54355 // 'attribute' 'count'
  17307. || lk == 54394 // 'element' 'count'
  17308. || lk == 54407 // 'false' 'count'
  17309. || lk == 54459 // 'namespace' 'count'
  17310. || lk == 54469 // 'null' 'count'
  17311. || lk == 54492 // 'processing-instruction' 'count'
  17312. || lk == 54527 // 'true' 'count'
  17313. || lk == 56403 // 'attribute' 'default'
  17314. || lk == 56442 // 'element' 'default'
  17315. || lk == 56455 // 'false' 'default'
  17316. || lk == 56507 // 'namespace' 'default'
  17317. || lk == 56517 // 'null' 'default'
  17318. || lk == 56540 // 'processing-instruction' 'default'
  17319. || lk == 56575 // 'true' 'default'
  17320. || lk == 58451 // 'attribute' 'descending'
  17321. || lk == 58490 // 'element' 'descending'
  17322. || lk == 58503 // 'false' 'descending'
  17323. || lk == 58555 // 'namespace' 'descending'
  17324. || lk == 58565 // 'null' 'descending'
  17325. || lk == 58588 // 'processing-instruction' 'descending'
  17326. || lk == 58623 // 'true' 'descending'
  17327. || lk == 61011 // 'attribute' 'div'
  17328. || lk == 61050 // 'element' 'div'
  17329. || lk == 61063 // 'false' 'div'
  17330. || lk == 61115 // 'namespace' 'div'
  17331. || lk == 61125 // 'null' 'div'
  17332. || lk == 61148 // 'processing-instruction' 'div'
  17333. || lk == 61183 // 'true' 'div'
  17334. || lk == 63059 // 'attribute' 'else'
  17335. || lk == 63098 // 'element' 'else'
  17336. || lk == 63111 // 'false' 'else'
  17337. || lk == 63163 // 'namespace' 'else'
  17338. || lk == 63173 // 'null' 'else'
  17339. || lk == 63196 // 'processing-instruction' 'else'
  17340. || lk == 63231 // 'true' 'else'
  17341. || lk == 63571 // 'attribute' 'empty'
  17342. || lk == 63610 // 'element' 'empty'
  17343. || lk == 63623 // 'false' 'empty'
  17344. || lk == 63675 // 'namespace' 'empty'
  17345. || lk == 63685 // 'null' 'empty'
  17346. || lk == 63708 // 'processing-instruction' 'empty'
  17347. || lk == 63743 // 'true' 'empty'
  17348. || lk == 65107 // 'attribute' 'end'
  17349. || lk == 65146 // 'element' 'end'
  17350. || lk == 65159 // 'false' 'end'
  17351. || lk == 65211 // 'namespace' 'end'
  17352. || lk == 65221 // 'null' 'end'
  17353. || lk == 65244 // 'processing-instruction' 'end'
  17354. || lk == 65279 // 'true' 'end'
  17355. || lk == 66131 // 'attribute' 'eq'
  17356. || lk == 66170 // 'element' 'eq'
  17357. || lk == 66183 // 'false' 'eq'
  17358. || lk == 66235 // 'namespace' 'eq'
  17359. || lk == 66245 // 'null' 'eq'
  17360. || lk == 66268 // 'processing-instruction' 'eq'
  17361. || lk == 66303 // 'true' 'eq'
  17362. || lk == 67667 // 'attribute' 'except'
  17363. || lk == 67706 // 'element' 'except'
  17364. || lk == 67719 // 'false' 'except'
  17365. || lk == 67771 // 'namespace' 'except'
  17366. || lk == 67781 // 'null' 'except'
  17367. || lk == 67804 // 'processing-instruction' 'except'
  17368. || lk == 67839 // 'true' 'except'
  17369. || lk == 71251 // 'attribute' 'for'
  17370. || lk == 71290 // 'element' 'for'
  17371. || lk == 71303 // 'false' 'for'
  17372. || lk == 71355 // 'namespace' 'for'
  17373. || lk == 71365 // 'null' 'for'
  17374. || lk == 71388 // 'processing-instruction' 'for'
  17375. || lk == 71423 // 'true' 'for'
  17376. || lk == 75859 // 'attribute' 'ge'
  17377. || lk == 75898 // 'element' 'ge'
  17378. || lk == 75911 // 'false' 'ge'
  17379. || lk == 75963 // 'namespace' 'ge'
  17380. || lk == 75973 // 'null' 'ge'
  17381. || lk == 75996 // 'processing-instruction' 'ge'
  17382. || lk == 76031 // 'true' 'ge'
  17383. || lk == 76883 // 'attribute' 'group'
  17384. || lk == 76922 // 'element' 'group'
  17385. || lk == 76935 // 'false' 'group'
  17386. || lk == 76987 // 'namespace' 'group'
  17387. || lk == 76997 // 'null' 'group'
  17388. || lk == 77020 // 'processing-instruction' 'group'
  17389. || lk == 77055 // 'true' 'group'
  17390. || lk == 77907 // 'attribute' 'gt'
  17391. || lk == 77946 // 'element' 'gt'
  17392. || lk == 77959 // 'false' 'gt'
  17393. || lk == 78011 // 'namespace' 'gt'
  17394. || lk == 78021 // 'null' 'gt'
  17395. || lk == 78044 // 'processing-instruction' 'gt'
  17396. || lk == 78079 // 'true' 'gt'
  17397. || lk == 78419 // 'attribute' 'idiv'
  17398. || lk == 78458 // 'element' 'idiv'
  17399. || lk == 78471 // 'false' 'idiv'
  17400. || lk == 78523 // 'namespace' 'idiv'
  17401. || lk == 78533 // 'null' 'idiv'
  17402. || lk == 78556 // 'processing-instruction' 'idiv'
  17403. || lk == 78591 // 'true' 'idiv'
  17404. || lk == 83027 // 'attribute' 'instance'
  17405. || lk == 83066 // 'element' 'instance'
  17406. || lk == 83079 // 'false' 'instance'
  17407. || lk == 83131 // 'namespace' 'instance'
  17408. || lk == 83141 // 'null' 'instance'
  17409. || lk == 83164 // 'processing-instruction' 'instance'
  17410. || lk == 83199 // 'true' 'instance'
  17411. || lk == 84051 // 'attribute' 'intersect'
  17412. || lk == 84090 // 'element' 'intersect'
  17413. || lk == 84103 // 'false' 'intersect'
  17414. || lk == 84155 // 'namespace' 'intersect'
  17415. || lk == 84165 // 'null' 'intersect'
  17416. || lk == 84188 // 'processing-instruction' 'intersect'
  17417. || lk == 84223 // 'true' 'intersect'
  17418. || lk == 84563 // 'attribute' 'into'
  17419. || lk == 84602 // 'element' 'into'
  17420. || lk == 84615 // 'false' 'into'
  17421. || lk == 84667 // 'namespace' 'into'
  17422. || lk == 84677 // 'null' 'into'
  17423. || lk == 84700 // 'processing-instruction' 'into'
  17424. || lk == 84735 // 'true' 'into'
  17425. || lk == 85075 // 'attribute' 'is'
  17426. || lk == 85114 // 'element' 'is'
  17427. || lk == 85127 // 'false' 'is'
  17428. || lk == 85179 // 'namespace' 'is'
  17429. || lk == 85189 // 'null' 'is'
  17430. || lk == 85212 // 'processing-instruction' 'is'
  17431. || lk == 85247 // 'true' 'is'
  17432. || lk == 89683 // 'attribute' 'le'
  17433. || lk == 89722 // 'element' 'le'
  17434. || lk == 89735 // 'false' 'le'
  17435. || lk == 89787 // 'namespace' 'le'
  17436. || lk == 89797 // 'null' 'le'
  17437. || lk == 89820 // 'processing-instruction' 'le'
  17438. || lk == 89855 // 'true' 'le'
  17439. || lk == 90707 // 'attribute' 'let'
  17440. || lk == 90746 // 'element' 'let'
  17441. || lk == 90759 // 'false' 'let'
  17442. || lk == 90811 // 'namespace' 'let'
  17443. || lk == 90821 // 'null' 'let'
  17444. || lk == 90844 // 'processing-instruction' 'let'
  17445. || lk == 90879 // 'true' 'let'
  17446. || lk == 92755 // 'attribute' 'lt'
  17447. || lk == 92794 // 'element' 'lt'
  17448. || lk == 92807 // 'false' 'lt'
  17449. || lk == 92859 // 'namespace' 'lt'
  17450. || lk == 92869 // 'null' 'lt'
  17451. || lk == 92892 // 'processing-instruction' 'lt'
  17452. || lk == 92927 // 'true' 'lt'
  17453. || lk == 93779 // 'attribute' 'mod'
  17454. || lk == 93818 // 'element' 'mod'
  17455. || lk == 93831 // 'false' 'mod'
  17456. || lk == 93883 // 'namespace' 'mod'
  17457. || lk == 93893 // 'null' 'mod'
  17458. || lk == 93916 // 'processing-instruction' 'mod'
  17459. || lk == 93951 // 'true' 'mod'
  17460. || lk == 94291 // 'attribute' 'modify'
  17461. || lk == 94330 // 'element' 'modify'
  17462. || lk == 94343 // 'false' 'modify'
  17463. || lk == 94395 // 'namespace' 'modify'
  17464. || lk == 94405 // 'null' 'modify'
  17465. || lk == 94428 // 'processing-instruction' 'modify'
  17466. || lk == 94463 // 'true' 'modify'
  17467. || lk == 96851 // 'attribute' 'ne'
  17468. || lk == 96890 // 'element' 'ne'
  17469. || lk == 96903 // 'false' 'ne'
  17470. || lk == 96955 // 'namespace' 'ne'
  17471. || lk == 96965 // 'null' 'ne'
  17472. || lk == 96988 // 'processing-instruction' 'ne'
  17473. || lk == 97023 // 'true' 'ne'
  17474. || lk == 103507 // 'attribute' 'only'
  17475. || lk == 103546 // 'element' 'only'
  17476. || lk == 103559 // 'false' 'only'
  17477. || lk == 103611 // 'namespace' 'only'
  17478. || lk == 103621 // 'null' 'only'
  17479. || lk == 103644 // 'processing-instruction' 'only'
  17480. || lk == 103679 // 'true' 'only'
  17481. || lk == 104531 // 'attribute' 'or'
  17482. || lk == 104570 // 'element' 'or'
  17483. || lk == 104583 // 'false' 'or'
  17484. || lk == 104635 // 'namespace' 'or'
  17485. || lk == 104645 // 'null' 'or'
  17486. || lk == 104668 // 'processing-instruction' 'or'
  17487. || lk == 104703 // 'true' 'or'
  17488. || lk == 105043 // 'attribute' 'order'
  17489. || lk == 105082 // 'element' 'order'
  17490. || lk == 105095 // 'false' 'order'
  17491. || lk == 105147 // 'namespace' 'order'
  17492. || lk == 105157 // 'null' 'order'
  17493. || lk == 105180 // 'processing-instruction' 'order'
  17494. || lk == 105215 // 'true' 'order'
  17495. || lk == 107143 // 'false' 'paragraphs'
  17496. || lk == 107205 // 'null' 'paragraphs'
  17497. || lk == 107263 // 'true' 'paragraphs'
  17498. || lk == 114771 // 'attribute' 'return'
  17499. || lk == 114810 // 'element' 'return'
  17500. || lk == 114823 // 'false' 'return'
  17501. || lk == 114875 // 'namespace' 'return'
  17502. || lk == 114885 // 'null' 'return'
  17503. || lk == 114908 // 'processing-instruction' 'return'
  17504. || lk == 114943 // 'true' 'return'
  17505. || lk == 116819 // 'attribute' 'satisfies'
  17506. || lk == 116858 // 'element' 'satisfies'
  17507. || lk == 116871 // 'false' 'satisfies'
  17508. || lk == 116923 // 'namespace' 'satisfies'
  17509. || lk == 116933 // 'null' 'satisfies'
  17510. || lk == 116956 // 'processing-instruction' 'satisfies'
  17511. || lk == 116991 // 'true' 'satisfies'
  17512. || lk == 121479 // 'false' 'sentences'
  17513. || lk == 121541 // 'null' 'sentences'
  17514. || lk == 121599 // 'true' 'sentences'
  17515. || lk == 123475 // 'attribute' 'stable'
  17516. || lk == 123514 // 'element' 'stable'
  17517. || lk == 123527 // 'false' 'stable'
  17518. || lk == 123579 // 'namespace' 'stable'
  17519. || lk == 123589 // 'null' 'stable'
  17520. || lk == 123612 // 'processing-instruction' 'stable'
  17521. || lk == 123647 // 'true' 'stable'
  17522. || lk == 123987 // 'attribute' 'start'
  17523. || lk == 124026 // 'element' 'start'
  17524. || lk == 124039 // 'false' 'start'
  17525. || lk == 124091 // 'namespace' 'start'
  17526. || lk == 124101 // 'null' 'start'
  17527. || lk == 124124 // 'processing-instruction' 'start'
  17528. || lk == 124159 // 'true' 'start'
  17529. || lk == 129159 // 'false' 'times'
  17530. || lk == 129221 // 'null' 'times'
  17531. || lk == 129279 // 'true' 'times'
  17532. || lk == 129619 // 'attribute' 'to'
  17533. || lk == 129658 // 'element' 'to'
  17534. || lk == 129671 // 'false' 'to'
  17535. || lk == 129723 // 'namespace' 'to'
  17536. || lk == 129733 // 'null' 'to'
  17537. || lk == 129756 // 'processing-instruction' 'to'
  17538. || lk == 129791 // 'true' 'to'
  17539. || lk == 130131 // 'attribute' 'treat'
  17540. || lk == 130170 // 'element' 'treat'
  17541. || lk == 130183 // 'false' 'treat'
  17542. || lk == 130235 // 'namespace' 'treat'
  17543. || lk == 130245 // 'null' 'treat'
  17544. || lk == 130268 // 'processing-instruction' 'treat'
  17545. || lk == 130303 // 'true' 'treat'
  17546. || lk == 133203 // 'attribute' 'union'
  17547. || lk == 133242 // 'element' 'union'
  17548. || lk == 133255 // 'false' 'union'
  17549. || lk == 133307 // 'namespace' 'union'
  17550. || lk == 133317 // 'null' 'union'
  17551. || lk == 133340 // 'processing-instruction' 'union'
  17552. || lk == 133375 // 'true' 'union'
  17553. || lk == 139347 // 'attribute' 'where'
  17554. || lk == 139386 // 'element' 'where'
  17555. || lk == 139399 // 'false' 'where'
  17556. || lk == 139451 // 'namespace' 'where'
  17557. || lk == 139461 // 'null' 'where'
  17558. || lk == 139484 // 'processing-instruction' 'where'
  17559. || lk == 139519 // 'true' 'where'
  17560. || lk == 141395 // 'attribute' 'with'
  17561. || lk == 141434 // 'element' 'with'
  17562. || lk == 141447 // 'false' 'with'
  17563. || lk == 141499 // 'namespace' 'with'
  17564. || lk == 141509 // 'null' 'with'
  17565. || lk == 141532 // 'processing-instruction' 'with'
  17566. || lk == 141567 // 'true' 'with'
  17567. || lk == 142983 // 'false' 'words'
  17568. || lk == 143045 // 'null' 'words'
  17569. || lk == 143103 // 'true' 'words'
  17570. || lk == 145543 // 'false' '|'
  17571. || lk == 145605 // 'null' '|'
  17572. || lk == 145663 // 'true' '|'
  17573. || lk == 146055 // 'false' '||'
  17574. || lk == 146117 // 'null' '||'
  17575. || lk == 146175 // 'true' '||'
  17576. || lk == 146567 // 'false' '|}'
  17577. || lk == 146629 // 'null' '|}'
  17578. || lk == 146687 // 'true' '|}'
  17579. || lk == 147079 // 'false' '}'
  17580. || lk == 147141 // 'null' '}'
  17581. || lk == 147199) // 'true' '}'
  17582. {
  17583. lk = memoized(4, e0);
  17584. if (lk == 0)
  17585. {
  17586. var b0A = b0; var e0A = e0; var l1A = l1;
  17587. var b1A = b1; var e1A = e1; var l2A = l2;
  17588. var b2A = b2; var e2A = e2;
  17589. try
  17590. {
  17591. try_PostfixExpr();
  17592. memoize(4, e0A, -1);
  17593. lk = -3;
  17594. }
  17595. catch (p1A)
  17596. {
  17597. lk = -2;
  17598. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  17599. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  17600. b2 = b2A; e2 = e2A; end = e2A; }}
  17601. memoize(4, e0A, -2);
  17602. }
  17603. }
  17604. }
  17605. switch (lk)
  17606. {
  17607. case -1:
  17608. case 8: // IntegerLiteral
  17609. case 9: // DecimalLiteral
  17610. case 10: // DoubleLiteral
  17611. case 11: // StringLiteral
  17612. case 31: // '$'
  17613. case 32: // '$$'
  17614. case 33: // '%'
  17615. case 35: // '('
  17616. case 55: // '<'
  17617. case 56: // '<!--'
  17618. case 60: // '<?'
  17619. case 69: // '['
  17620. case 281: // '{'
  17621. case 283: // '{|'
  17622. case 3155: // 'attribute' EQName^Token
  17623. case 3194: // 'element' EQName^Token
  17624. case 9915: // 'namespace' NCName^Token
  17625. case 9948: // 'processing-instruction' NCName^Token
  17626. case 14854: // EQName^Token '#'
  17627. case 14919: // 'after' '#'
  17628. case 14921: // 'allowing' '#'
  17629. case 14922: // 'ancestor' '#'
  17630. case 14923: // 'ancestor-or-self' '#'
  17631. case 14924: // 'and' '#'
  17632. case 14926: // 'append' '#'
  17633. case 14927: // 'array' '#'
  17634. case 14928: // 'as' '#'
  17635. case 14929: // 'ascending' '#'
  17636. case 14930: // 'at' '#'
  17637. case 14931: // 'attribute' '#'
  17638. case 14932: // 'base-uri' '#'
  17639. case 14933: // 'before' '#'
  17640. case 14934: // 'boundary-space' '#'
  17641. case 14935: // 'break' '#'
  17642. case 14937: // 'case' '#'
  17643. case 14938: // 'cast' '#'
  17644. case 14939: // 'castable' '#'
  17645. case 14940: // 'catch' '#'
  17646. case 14942: // 'child' '#'
  17647. case 14943: // 'collation' '#'
  17648. case 14945: // 'comment' '#'
  17649. case 14946: // 'constraint' '#'
  17650. case 14947: // 'construction' '#'
  17651. case 14950: // 'context' '#'
  17652. case 14951: // 'continue' '#'
  17653. case 14952: // 'copy' '#'
  17654. case 14953: // 'copy-namespaces' '#'
  17655. case 14954: // 'count' '#'
  17656. case 14955: // 'decimal-format' '#'
  17657. case 14957: // 'declare' '#'
  17658. case 14958: // 'default' '#'
  17659. case 14959: // 'delete' '#'
  17660. case 14960: // 'descendant' '#'
  17661. case 14961: // 'descendant-or-self' '#'
  17662. case 14962: // 'descending' '#'
  17663. case 14967: // 'div' '#'
  17664. case 14968: // 'document' '#'
  17665. case 14969: // 'document-node' '#'
  17666. case 14970: // 'element' '#'
  17667. case 14971: // 'else' '#'
  17668. case 14972: // 'empty' '#'
  17669. case 14973: // 'empty-sequence' '#'
  17670. case 14974: // 'encoding' '#'
  17671. case 14975: // 'end' '#'
  17672. case 14977: // 'eq' '#'
  17673. case 14978: // 'every' '#'
  17674. case 14980: // 'except' '#'
  17675. case 14981: // 'exit' '#'
  17676. case 14982: // 'external' '#'
  17677. case 14983: // 'false' '#'
  17678. case 14984: // 'first' '#'
  17679. case 14985: // 'following' '#'
  17680. case 14986: // 'following-sibling' '#'
  17681. case 14987: // 'for' '#'
  17682. case 14990: // 'from' '#'
  17683. case 14991: // 'ft-option' '#'
  17684. case 14995: // 'function' '#'
  17685. case 14996: // 'ge' '#'
  17686. case 14998: // 'group' '#'
  17687. case 15000: // 'gt' '#'
  17688. case 15001: // 'idiv' '#'
  17689. case 15002: // 'if' '#'
  17690. case 15003: // 'import' '#'
  17691. case 15004: // 'in' '#'
  17692. case 15005: // 'index' '#'
  17693. case 15009: // 'insert' '#'
  17694. case 15010: // 'instance' '#'
  17695. case 15011: // 'integrity' '#'
  17696. case 15012: // 'intersect' '#'
  17697. case 15013: // 'into' '#'
  17698. case 15014: // 'is' '#'
  17699. case 15015: // 'item' '#'
  17700. case 15016: // 'json' '#'
  17701. case 15017: // 'json-item' '#'
  17702. case 15018: // 'jsoniq' '#'
  17703. case 15021: // 'last' '#'
  17704. case 15022: // 'lax' '#'
  17705. case 15023: // 'le' '#'
  17706. case 15025: // 'let' '#'
  17707. case 15027: // 'loop' '#'
  17708. case 15029: // 'lt' '#'
  17709. case 15031: // 'mod' '#'
  17710. case 15032: // 'modify' '#'
  17711. case 15033: // 'module' '#'
  17712. case 15035: // 'namespace' '#'
  17713. case 15036: // 'namespace-node' '#'
  17714. case 15037: // 'ne' '#'
  17715. case 15042: // 'node' '#'
  17716. case 15043: // 'nodes' '#'
  17717. case 15045: // 'null' '#'
  17718. case 15046: // 'object' '#'
  17719. case 15050: // 'only' '#'
  17720. case 15051: // 'option' '#'
  17721. case 15052: // 'or' '#'
  17722. case 15053: // 'order' '#'
  17723. case 15054: // 'ordered' '#'
  17724. case 15055: // 'ordering' '#'
  17725. case 15058: // 'parent' '#'
  17726. case 15064: // 'preceding' '#'
  17727. case 15065: // 'preceding-sibling' '#'
  17728. case 15068: // 'processing-instruction' '#'
  17729. case 15070: // 'rename' '#'
  17730. case 15071: // 'replace' '#'
  17731. case 15072: // 'return' '#'
  17732. case 15073: // 'returning' '#'
  17733. case 15074: // 'revalidation' '#'
  17734. case 15076: // 'satisfies' '#'
  17735. case 15077: // 'schema' '#'
  17736. case 15078: // 'schema-attribute' '#'
  17737. case 15079: // 'schema-element' '#'
  17738. case 15080: // 'score' '#'
  17739. case 15081: // 'select' '#'
  17740. case 15082: // 'self' '#'
  17741. case 15087: // 'sliding' '#'
  17742. case 15088: // 'some' '#'
  17743. case 15089: // 'stable' '#'
  17744. case 15090: // 'start' '#'
  17745. case 15093: // 'strict' '#'
  17746. case 15095: // 'structured-item' '#'
  17747. case 15096: // 'switch' '#'
  17748. case 15097: // 'text' '#'
  17749. case 15101: // 'to' '#'
  17750. case 15102: // 'treat' '#'
  17751. case 15103: // 'true' '#'
  17752. case 15104: // 'try' '#'
  17753. case 15105: // 'tumbling' '#'
  17754. case 15106: // 'type' '#'
  17755. case 15107: // 'typeswitch' '#'
  17756. case 15108: // 'union' '#'
  17757. case 15110: // 'unordered' '#'
  17758. case 15111: // 'updating' '#'
  17759. case 15114: // 'validate' '#'
  17760. case 15115: // 'value' '#'
  17761. case 15116: // 'variable' '#'
  17762. case 15117: // 'version' '#'
  17763. case 15120: // 'where' '#'
  17764. case 15121: // 'while' '#'
  17765. case 15124: // 'with' '#'
  17766. case 17926: // EQName^Token '('
  17767. case 17991: // 'after' '('
  17768. case 17993: // 'allowing' '('
  17769. case 17994: // 'ancestor' '('
  17770. case 17995: // 'ancestor-or-self' '('
  17771. case 17996: // 'and' '('
  17772. case 17998: // 'append' '('
  17773. case 18000: // 'as' '('
  17774. case 18001: // 'ascending' '('
  17775. case 18002: // 'at' '('
  17776. case 18004: // 'base-uri' '('
  17777. case 18005: // 'before' '('
  17778. case 18006: // 'boundary-space' '('
  17779. case 18007: // 'break' '('
  17780. case 18009: // 'case' '('
  17781. case 18010: // 'cast' '('
  17782. case 18011: // 'castable' '('
  17783. case 18012: // 'catch' '('
  17784. case 18014: // 'child' '('
  17785. case 18015: // 'collation' '('
  17786. case 18018: // 'constraint' '('
  17787. case 18019: // 'construction' '('
  17788. case 18022: // 'context' '('
  17789. case 18023: // 'continue' '('
  17790. case 18024: // 'copy' '('
  17791. case 18025: // 'copy-namespaces' '('
  17792. case 18026: // 'count' '('
  17793. case 18027: // 'decimal-format' '('
  17794. case 18029: // 'declare' '('
  17795. case 18030: // 'default' '('
  17796. case 18031: // 'delete' '('
  17797. case 18032: // 'descendant' '('
  17798. case 18033: // 'descendant-or-self' '('
  17799. case 18034: // 'descending' '('
  17800. case 18039: // 'div' '('
  17801. case 18040: // 'document' '('
  17802. case 18043: // 'else' '('
  17803. case 18044: // 'empty' '('
  17804. case 18046: // 'encoding' '('
  17805. case 18047: // 'end' '('
  17806. case 18049: // 'eq' '('
  17807. case 18050: // 'every' '('
  17808. case 18052: // 'except' '('
  17809. case 18053: // 'exit' '('
  17810. case 18054: // 'external' '('
  17811. case 18055: // 'false' '('
  17812. case 18056: // 'first' '('
  17813. case 18057: // 'following' '('
  17814. case 18058: // 'following-sibling' '('
  17815. case 18059: // 'for' '('
  17816. case 18062: // 'from' '('
  17817. case 18063: // 'ft-option' '('
  17818. case 18067: // 'function' '('
  17819. case 18068: // 'ge' '('
  17820. case 18070: // 'group' '('
  17821. case 18072: // 'gt' '('
  17822. case 18073: // 'idiv' '('
  17823. case 18075: // 'import' '('
  17824. case 18076: // 'in' '('
  17825. case 18077: // 'index' '('
  17826. case 18081: // 'insert' '('
  17827. case 18082: // 'instance' '('
  17828. case 18083: // 'integrity' '('
  17829. case 18084: // 'intersect' '('
  17830. case 18085: // 'into' '('
  17831. case 18086: // 'is' '('
  17832. case 18088: // 'json' '('
  17833. case 18090: // 'jsoniq' '('
  17834. case 18093: // 'last' '('
  17835. case 18094: // 'lax' '('
  17836. case 18095: // 'le' '('
  17837. case 18097: // 'let' '('
  17838. case 18099: // 'loop' '('
  17839. case 18101: // 'lt' '('
  17840. case 18103: // 'mod' '('
  17841. case 18104: // 'modify' '('
  17842. case 18105: // 'module' '('
  17843. case 18107: // 'namespace' '('
  17844. case 18109: // 'ne' '('
  17845. case 18115: // 'nodes' '('
  17846. case 18117: // 'null' '('
  17847. case 18118: // 'object' '('
  17848. case 18122: // 'only' '('
  17849. case 18123: // 'option' '('
  17850. case 18124: // 'or' '('
  17851. case 18125: // 'order' '('
  17852. case 18126: // 'ordered' '('
  17853. case 18127: // 'ordering' '('
  17854. case 18130: // 'parent' '('
  17855. case 18136: // 'preceding' '('
  17856. case 18137: // 'preceding-sibling' '('
  17857. case 18142: // 'rename' '('
  17858. case 18143: // 'replace' '('
  17859. case 18144: // 'return' '('
  17860. case 18145: // 'returning' '('
  17861. case 18146: // 'revalidation' '('
  17862. case 18148: // 'satisfies' '('
  17863. case 18149: // 'schema' '('
  17864. case 18152: // 'score' '('
  17865. case 18153: // 'select' '('
  17866. case 18154: // 'self' '('
  17867. case 18159: // 'sliding' '('
  17868. case 18160: // 'some' '('
  17869. case 18161: // 'stable' '('
  17870. case 18162: // 'start' '('
  17871. case 18165: // 'strict' '('
  17872. case 18173: // 'to' '('
  17873. case 18174: // 'treat' '('
  17874. case 18175: // 'true' '('
  17875. case 18176: // 'try' '('
  17876. case 18177: // 'tumbling' '('
  17877. case 18178: // 'type' '('
  17878. case 18180: // 'union' '('
  17879. case 18182: // 'unordered' '('
  17880. case 18183: // 'updating' '('
  17881. case 18186: // 'validate' '('
  17882. case 18187: // 'value' '('
  17883. case 18188: // 'variable' '('
  17884. case 18189: // 'version' '('
  17885. case 18192: // 'where' '('
  17886. case 18193: // 'while' '('
  17887. case 18196: // 'with' '('
  17888. case 23175: // 'false' '.'
  17889. case 23237: // 'null' '.'
  17890. case 23295: // 'true' '.'
  17891. case 37459: // 'attribute' 'allowing'
  17892. case 37498: // 'element' 'allowing'
  17893. case 37563: // 'namespace' 'allowing'
  17894. case 37596: // 'processing-instruction' 'allowing'
  17895. case 37971: // 'attribute' 'ancestor'
  17896. case 38010: // 'element' 'ancestor'
  17897. case 38075: // 'namespace' 'ancestor'
  17898. case 38108: // 'processing-instruction' 'ancestor'
  17899. case 38483: // 'attribute' 'ancestor-or-self'
  17900. case 38522: // 'element' 'ancestor-or-self'
  17901. case 38587: // 'namespace' 'ancestor-or-self'
  17902. case 38620: // 'processing-instruction' 'ancestor-or-self'
  17903. case 40019: // 'attribute' 'append'
  17904. case 40058: // 'element' 'append'
  17905. case 40123: // 'namespace' 'append'
  17906. case 40156: // 'processing-instruction' 'append'
  17907. case 40531: // 'attribute' 'array'
  17908. case 40570: // 'element' 'array'
  17909. case 42579: // 'attribute' 'attribute'
  17910. case 42618: // 'element' 'attribute'
  17911. case 42683: // 'namespace' 'attribute'
  17912. case 42716: // 'processing-instruction' 'attribute'
  17913. case 43091: // 'attribute' 'base-uri'
  17914. case 43130: // 'element' 'base-uri'
  17915. case 43195: // 'namespace' 'base-uri'
  17916. case 43228: // 'processing-instruction' 'base-uri'
  17917. case 44115: // 'attribute' 'boundary-space'
  17918. case 44154: // 'element' 'boundary-space'
  17919. case 44219: // 'namespace' 'boundary-space'
  17920. case 44252: // 'processing-instruction' 'boundary-space'
  17921. case 44627: // 'attribute' 'break'
  17922. case 44666: // 'element' 'break'
  17923. case 44731: // 'namespace' 'break'
  17924. case 44764: // 'processing-instruction' 'break'
  17925. case 47187: // 'attribute' 'catch'
  17926. case 47226: // 'element' 'catch'
  17927. case 47291: // 'namespace' 'catch'
  17928. case 47324: // 'processing-instruction' 'catch'
  17929. case 48211: // 'attribute' 'child'
  17930. case 48250: // 'element' 'child'
  17931. case 48315: // 'namespace' 'child'
  17932. case 48348: // 'processing-instruction' 'child'
  17933. case 49747: // 'attribute' 'comment'
  17934. case 49786: // 'element' 'comment'
  17935. case 49851: // 'namespace' 'comment'
  17936. case 49884: // 'processing-instruction' 'comment'
  17937. case 50259: // 'attribute' 'constraint'
  17938. case 50298: // 'element' 'constraint'
  17939. case 50363: // 'namespace' 'constraint'
  17940. case 50396: // 'processing-instruction' 'constraint'
  17941. case 50771: // 'attribute' 'construction'
  17942. case 50810: // 'element' 'construction'
  17943. case 50875: // 'namespace' 'construction'
  17944. case 50908: // 'processing-instruction' 'construction'
  17945. case 52307: // 'attribute' 'context'
  17946. case 52346: // 'element' 'context'
  17947. case 52411: // 'namespace' 'context'
  17948. case 52444: // 'processing-instruction' 'context'
  17949. case 52819: // 'attribute' 'continue'
  17950. case 52858: // 'element' 'continue'
  17951. case 52923: // 'namespace' 'continue'
  17952. case 52956: // 'processing-instruction' 'continue'
  17953. case 53331: // 'attribute' 'copy'
  17954. case 53370: // 'element' 'copy'
  17955. case 53435: // 'namespace' 'copy'
  17956. case 53468: // 'processing-instruction' 'copy'
  17957. case 53843: // 'attribute' 'copy-namespaces'
  17958. case 53882: // 'element' 'copy-namespaces'
  17959. case 53947: // 'namespace' 'copy-namespaces'
  17960. case 53980: // 'processing-instruction' 'copy-namespaces'
  17961. case 54867: // 'attribute' 'decimal-format'
  17962. case 54906: // 'element' 'decimal-format'
  17963. case 54971: // 'namespace' 'decimal-format'
  17964. case 55004: // 'processing-instruction' 'decimal-format'
  17965. case 55891: // 'attribute' 'declare'
  17966. case 55930: // 'element' 'declare'
  17967. case 55995: // 'namespace' 'declare'
  17968. case 56028: // 'processing-instruction' 'declare'
  17969. case 56915: // 'attribute' 'delete'
  17970. case 56954: // 'element' 'delete'
  17971. case 57019: // 'namespace' 'delete'
  17972. case 57052: // 'processing-instruction' 'delete'
  17973. case 57427: // 'attribute' 'descendant'
  17974. case 57466: // 'element' 'descendant'
  17975. case 57531: // 'namespace' 'descendant'
  17976. case 57564: // 'processing-instruction' 'descendant'
  17977. case 57939: // 'attribute' 'descendant-or-self'
  17978. case 57978: // 'element' 'descendant-or-self'
  17979. case 58043: // 'namespace' 'descendant-or-self'
  17980. case 58076: // 'processing-instruction' 'descendant-or-self'
  17981. case 61523: // 'attribute' 'document'
  17982. case 61562: // 'element' 'document'
  17983. case 61627: // 'namespace' 'document'
  17984. case 61660: // 'processing-instruction' 'document'
  17985. case 62035: // 'attribute' 'document-node'
  17986. case 62074: // 'element' 'document-node'
  17987. case 62139: // 'namespace' 'document-node'
  17988. case 62172: // 'processing-instruction' 'document-node'
  17989. case 62547: // 'attribute' 'element'
  17990. case 62586: // 'element' 'element'
  17991. case 62651: // 'namespace' 'element'
  17992. case 62684: // 'processing-instruction' 'element'
  17993. case 64083: // 'attribute' 'empty-sequence'
  17994. case 64122: // 'element' 'empty-sequence'
  17995. case 64187: // 'namespace' 'empty-sequence'
  17996. case 64220: // 'processing-instruction' 'empty-sequence'
  17997. case 64595: // 'attribute' 'encoding'
  17998. case 64634: // 'element' 'encoding'
  17999. case 64699: // 'namespace' 'encoding'
  18000. case 64732: // 'processing-instruction' 'encoding'
  18001. case 66643: // 'attribute' 'every'
  18002. case 66682: // 'element' 'every'
  18003. case 66747: // 'namespace' 'every'
  18004. case 66780: // 'processing-instruction' 'every'
  18005. case 68179: // 'attribute' 'exit'
  18006. case 68218: // 'element' 'exit'
  18007. case 68283: // 'namespace' 'exit'
  18008. case 68316: // 'processing-instruction' 'exit'
  18009. case 68691: // 'attribute' 'external'
  18010. case 68730: // 'element' 'external'
  18011. case 68795: // 'namespace' 'external'
  18012. case 68828: // 'processing-instruction' 'external'
  18013. case 69203: // 'attribute' 'false'
  18014. case 69242: // 'element' 'false'
  18015. case 69307: // 'namespace' 'false'
  18016. case 69340: // 'processing-instruction' 'false'
  18017. case 69715: // 'attribute' 'first'
  18018. case 69754: // 'element' 'first'
  18019. case 69819: // 'namespace' 'first'
  18020. case 69852: // 'processing-instruction' 'first'
  18021. case 70227: // 'attribute' 'following'
  18022. case 70266: // 'element' 'following'
  18023. case 70331: // 'namespace' 'following'
  18024. case 70364: // 'processing-instruction' 'following'
  18025. case 70739: // 'attribute' 'following-sibling'
  18026. case 70778: // 'element' 'following-sibling'
  18027. case 70843: // 'namespace' 'following-sibling'
  18028. case 70876: // 'processing-instruction' 'following-sibling'
  18029. case 72787: // 'attribute' 'from'
  18030. case 72826: // 'element' 'from'
  18031. case 72891: // 'namespace' 'from'
  18032. case 72924: // 'processing-instruction' 'from'
  18033. case 73299: // 'attribute' 'ft-option'
  18034. case 73338: // 'element' 'ft-option'
  18035. case 73403: // 'namespace' 'ft-option'
  18036. case 73436: // 'processing-instruction' 'ft-option'
  18037. case 75347: // 'attribute' 'function'
  18038. case 75386: // 'element' 'function'
  18039. case 75451: // 'namespace' 'function'
  18040. case 75484: // 'processing-instruction' 'function'
  18041. case 78931: // 'attribute' 'if'
  18042. case 78970: // 'element' 'if'
  18043. case 79035: // 'namespace' 'if'
  18044. case 79068: // 'processing-instruction' 'if'
  18045. case 79443: // 'attribute' 'import'
  18046. case 79482: // 'element' 'import'
  18047. case 79547: // 'namespace' 'import'
  18048. case 79580: // 'processing-instruction' 'import'
  18049. case 79955: // 'attribute' 'in'
  18050. case 79994: // 'element' 'in'
  18051. case 80059: // 'namespace' 'in'
  18052. case 80092: // 'processing-instruction' 'in'
  18053. case 80467: // 'attribute' 'index'
  18054. case 80506: // 'element' 'index'
  18055. case 80571: // 'namespace' 'index'
  18056. case 80604: // 'processing-instruction' 'index'
  18057. case 82515: // 'attribute' 'insert'
  18058. case 82554: // 'element' 'insert'
  18059. case 82619: // 'namespace' 'insert'
  18060. case 82652: // 'processing-instruction' 'insert'
  18061. case 83539: // 'attribute' 'integrity'
  18062. case 83578: // 'element' 'integrity'
  18063. case 83643: // 'namespace' 'integrity'
  18064. case 83676: // 'processing-instruction' 'integrity'
  18065. case 85587: // 'attribute' 'item'
  18066. case 85626: // 'element' 'item'
  18067. case 85691: // 'namespace' 'item'
  18068. case 85724: // 'processing-instruction' 'item'
  18069. case 86099: // 'attribute' 'json'
  18070. case 86138: // 'element' 'json'
  18071. case 86203: // 'namespace' 'json'
  18072. case 86236: // 'processing-instruction' 'json'
  18073. case 86611: // 'attribute' 'json-item'
  18074. case 86650: // 'element' 'json-item'
  18075. case 87123: // 'attribute' 'jsoniq'
  18076. case 87162: // 'element' 'jsoniq'
  18077. case 87227: // 'namespace' 'jsoniq'
  18078. case 87260: // 'processing-instruction' 'jsoniq'
  18079. case 88659: // 'attribute' 'last'
  18080. case 88698: // 'element' 'last'
  18081. case 88763: // 'namespace' 'last'
  18082. case 88796: // 'processing-instruction' 'last'
  18083. case 89171: // 'attribute' 'lax'
  18084. case 89210: // 'element' 'lax'
  18085. case 89275: // 'namespace' 'lax'
  18086. case 89308: // 'processing-instruction' 'lax'
  18087. case 91731: // 'attribute' 'loop'
  18088. case 91770: // 'element' 'loop'
  18089. case 91835: // 'namespace' 'loop'
  18090. case 91868: // 'processing-instruction' 'loop'
  18091. case 94803: // 'attribute' 'module'
  18092. case 94842: // 'element' 'module'
  18093. case 94907: // 'namespace' 'module'
  18094. case 94940: // 'processing-instruction' 'module'
  18095. case 95827: // 'attribute' 'namespace'
  18096. case 95866: // 'element' 'namespace'
  18097. case 95931: // 'namespace' 'namespace'
  18098. case 95964: // 'processing-instruction' 'namespace'
  18099. case 96339: // 'attribute' 'namespace-node'
  18100. case 96378: // 'element' 'namespace-node'
  18101. case 96443: // 'namespace' 'namespace-node'
  18102. case 96476: // 'processing-instruction' 'namespace-node'
  18103. case 99411: // 'attribute' 'node'
  18104. case 99450: // 'element' 'node'
  18105. case 99515: // 'namespace' 'node'
  18106. case 99548: // 'processing-instruction' 'node'
  18107. case 99923: // 'attribute' 'nodes'
  18108. case 99962: // 'element' 'nodes'
  18109. case 100027: // 'namespace' 'nodes'
  18110. case 100060: // 'processing-instruction' 'nodes'
  18111. case 100947: // 'attribute' 'null'
  18112. case 100986: // 'element' 'null'
  18113. case 101051: // 'namespace' 'null'
  18114. case 101084: // 'processing-instruction' 'null'
  18115. case 101459: // 'attribute' 'object'
  18116. case 101498: // 'element' 'object'
  18117. case 101563: // 'namespace' 'object'
  18118. case 101596: // 'processing-instruction' 'object'
  18119. case 104019: // 'attribute' 'option'
  18120. case 104058: // 'element' 'option'
  18121. case 104123: // 'namespace' 'option'
  18122. case 104156: // 'processing-instruction' 'option'
  18123. case 105555: // 'attribute' 'ordered'
  18124. case 105594: // 'element' 'ordered'
  18125. case 105659: // 'namespace' 'ordered'
  18126. case 105692: // 'processing-instruction' 'ordered'
  18127. case 106067: // 'attribute' 'ordering'
  18128. case 106106: // 'element' 'ordering'
  18129. case 106171: // 'namespace' 'ordering'
  18130. case 106204: // 'processing-instruction' 'ordering'
  18131. case 107603: // 'attribute' 'parent'
  18132. case 107642: // 'element' 'parent'
  18133. case 107707: // 'namespace' 'parent'
  18134. case 107740: // 'processing-instruction' 'parent'
  18135. case 110675: // 'attribute' 'preceding'
  18136. case 110714: // 'element' 'preceding'
  18137. case 110779: // 'namespace' 'preceding'
  18138. case 110812: // 'processing-instruction' 'preceding'
  18139. case 111187: // 'attribute' 'preceding-sibling'
  18140. case 111226: // 'element' 'preceding-sibling'
  18141. case 111291: // 'namespace' 'preceding-sibling'
  18142. case 111324: // 'processing-instruction' 'preceding-sibling'
  18143. case 112723: // 'attribute' 'processing-instruction'
  18144. case 112762: // 'element' 'processing-instruction'
  18145. case 112827: // 'namespace' 'processing-instruction'
  18146. case 112860: // 'processing-instruction' 'processing-instruction'
  18147. case 113747: // 'attribute' 'rename'
  18148. case 113786: // 'element' 'rename'
  18149. case 113851: // 'namespace' 'rename'
  18150. case 113884: // 'processing-instruction' 'rename'
  18151. case 114259: // 'attribute' 'replace'
  18152. case 114298: // 'element' 'replace'
  18153. case 114363: // 'namespace' 'replace'
  18154. case 114396: // 'processing-instruction' 'replace'
  18155. case 115283: // 'attribute' 'returning'
  18156. case 115322: // 'element' 'returning'
  18157. case 115387: // 'namespace' 'returning'
  18158. case 115420: // 'processing-instruction' 'returning'
  18159. case 115795: // 'attribute' 'revalidation'
  18160. case 115834: // 'element' 'revalidation'
  18161. case 115899: // 'namespace' 'revalidation'
  18162. case 115932: // 'processing-instruction' 'revalidation'
  18163. case 117331: // 'attribute' 'schema'
  18164. case 117370: // 'element' 'schema'
  18165. case 117435: // 'namespace' 'schema'
  18166. case 117468: // 'processing-instruction' 'schema'
  18167. case 117843: // 'attribute' 'schema-attribute'
  18168. case 117882: // 'element' 'schema-attribute'
  18169. case 117947: // 'namespace' 'schema-attribute'
  18170. case 117980: // 'processing-instruction' 'schema-attribute'
  18171. case 118355: // 'attribute' 'schema-element'
  18172. case 118394: // 'element' 'schema-element'
  18173. case 118459: // 'namespace' 'schema-element'
  18174. case 118492: // 'processing-instruction' 'schema-element'
  18175. case 118867: // 'attribute' 'score'
  18176. case 118906: // 'element' 'score'
  18177. case 118971: // 'namespace' 'score'
  18178. case 119004: // 'processing-instruction' 'score'
  18179. case 119379: // 'attribute' 'select'
  18180. case 119418: // 'element' 'select'
  18181. case 119483: // 'namespace' 'select'
  18182. case 119516: // 'processing-instruction' 'select'
  18183. case 119891: // 'attribute' 'self'
  18184. case 119930: // 'element' 'self'
  18185. case 119995: // 'namespace' 'self'
  18186. case 120028: // 'processing-instruction' 'self'
  18187. case 122451: // 'attribute' 'sliding'
  18188. case 122490: // 'element' 'sliding'
  18189. case 122555: // 'namespace' 'sliding'
  18190. case 122588: // 'processing-instruction' 'sliding'
  18191. case 122963: // 'attribute' 'some'
  18192. case 123002: // 'element' 'some'
  18193. case 123067: // 'namespace' 'some'
  18194. case 123100: // 'processing-instruction' 'some'
  18195. case 125523: // 'attribute' 'strict'
  18196. case 125562: // 'element' 'strict'
  18197. case 125627: // 'namespace' 'strict'
  18198. case 125660: // 'processing-instruction' 'strict'
  18199. case 126547: // 'attribute' 'structured-item'
  18200. case 126586: // 'element' 'structured-item'
  18201. case 127059: // 'attribute' 'switch'
  18202. case 127098: // 'element' 'switch'
  18203. case 127163: // 'namespace' 'switch'
  18204. case 127196: // 'processing-instruction' 'switch'
  18205. case 127571: // 'attribute' 'text'
  18206. case 127610: // 'element' 'text'
  18207. case 127675: // 'namespace' 'text'
  18208. case 127708: // 'processing-instruction' 'text'
  18209. case 130643: // 'attribute' 'true'
  18210. case 130682: // 'element' 'true'
  18211. case 130747: // 'namespace' 'true'
  18212. case 130780: // 'processing-instruction' 'true'
  18213. case 131155: // 'attribute' 'try'
  18214. case 131194: // 'element' 'try'
  18215. case 131259: // 'namespace' 'try'
  18216. case 131292: // 'processing-instruction' 'try'
  18217. case 131667: // 'attribute' 'tumbling'
  18218. case 131706: // 'element' 'tumbling'
  18219. case 131771: // 'namespace' 'tumbling'
  18220. case 131804: // 'processing-instruction' 'tumbling'
  18221. case 132179: // 'attribute' 'type'
  18222. case 132218: // 'element' 'type'
  18223. case 132283: // 'namespace' 'type'
  18224. case 132316: // 'processing-instruction' 'type'
  18225. case 132691: // 'attribute' 'typeswitch'
  18226. case 132730: // 'element' 'typeswitch'
  18227. case 132795: // 'namespace' 'typeswitch'
  18228. case 132828: // 'processing-instruction' 'typeswitch'
  18229. case 134227: // 'attribute' 'unordered'
  18230. case 134266: // 'element' 'unordered'
  18231. case 134331: // 'namespace' 'unordered'
  18232. case 134364: // 'processing-instruction' 'unordered'
  18233. case 134739: // 'attribute' 'updating'
  18234. case 134778: // 'element' 'updating'
  18235. case 134843: // 'namespace' 'updating'
  18236. case 134876: // 'processing-instruction' 'updating'
  18237. case 136275: // 'attribute' 'validate'
  18238. case 136314: // 'element' 'validate'
  18239. case 136379: // 'namespace' 'validate'
  18240. case 136412: // 'processing-instruction' 'validate'
  18241. case 136787: // 'attribute' 'value'
  18242. case 136826: // 'element' 'value'
  18243. case 136891: // 'namespace' 'value'
  18244. case 136924: // 'processing-instruction' 'value'
  18245. case 137299: // 'attribute' 'variable'
  18246. case 137338: // 'element' 'variable'
  18247. case 137403: // 'namespace' 'variable'
  18248. case 137436: // 'processing-instruction' 'variable'
  18249. case 137811: // 'attribute' 'version'
  18250. case 137850: // 'element' 'version'
  18251. case 137915: // 'namespace' 'version'
  18252. case 137948: // 'processing-instruction' 'version'
  18253. case 139859: // 'attribute' 'while'
  18254. case 139898: // 'element' 'while'
  18255. case 139963: // 'namespace' 'while'
  18256. case 139996: // 'processing-instruction' 'while'
  18257. case 143955: // 'attribute' '{'
  18258. case 143969: // 'comment' '{'
  18259. case 143992: // 'document' '{'
  18260. case 143994: // 'element' '{'
  18261. case 144059: // 'namespace' '{'
  18262. case 144078: // 'ordered' '{'
  18263. case 144092: // 'processing-instruction' '{'
  18264. case 144121: // 'text' '{'
  18265. case 144134: // 'unordered' '{'
  18266. try_PostfixExpr();
  18267. break;
  18268. case -3:
  18269. break;
  18270. default:
  18271. try_AxisStep();
  18272. }
  18273. }
  18274. function parse_AxisStep()
  18275. {
  18276. eventHandler.startNonterminal("AxisStep", e0);
  18277. switch (l1)
  18278. {
  18279. case 74: // 'ancestor'
  18280. case 75: // 'ancestor-or-self'
  18281. case 210: // 'parent'
  18282. case 216: // 'preceding'
  18283. case 217: // 'preceding-sibling'
  18284. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18285. break;
  18286. default:
  18287. lk = l1;
  18288. }
  18289. switch (lk)
  18290. {
  18291. case 46: // '..'
  18292. case 26698: // 'ancestor' '::'
  18293. case 26699: // 'ancestor-or-self' '::'
  18294. case 26834: // 'parent' '::'
  18295. case 26840: // 'preceding' '::'
  18296. case 26841: // 'preceding-sibling' '::'
  18297. parse_ReverseStep();
  18298. break;
  18299. default:
  18300. parse_ForwardStep();
  18301. }
  18302. lookahead1W(227); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18303. whitespace();
  18304. parse_PredicateList();
  18305. eventHandler.endNonterminal("AxisStep", e0);
  18306. }
  18307. function try_AxisStep()
  18308. {
  18309. switch (l1)
  18310. {
  18311. case 74: // 'ancestor'
  18312. case 75: // 'ancestor-or-self'
  18313. case 210: // 'parent'
  18314. case 216: // 'preceding'
  18315. case 217: // 'preceding-sibling'
  18316. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18317. break;
  18318. default:
  18319. lk = l1;
  18320. }
  18321. switch (lk)
  18322. {
  18323. case 46: // '..'
  18324. case 26698: // 'ancestor' '::'
  18325. case 26699: // 'ancestor-or-self' '::'
  18326. case 26834: // 'parent' '::'
  18327. case 26840: // 'preceding' '::'
  18328. case 26841: // 'preceding-sibling' '::'
  18329. try_ReverseStep();
  18330. break;
  18331. default:
  18332. try_ForwardStep();
  18333. }
  18334. lookahead1W(227); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18335. try_PredicateList();
  18336. }
  18337. function parse_ForwardStep()
  18338. {
  18339. eventHandler.startNonterminal("ForwardStep", e0);
  18340. switch (l1)
  18341. {
  18342. case 83: // 'attribute'
  18343. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  18344. break;
  18345. case 94: // 'child'
  18346. case 112: // 'descendant'
  18347. case 113: // 'descendant-or-self'
  18348. case 137: // 'following'
  18349. case 138: // 'following-sibling'
  18350. case 234: // 'self'
  18351. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18352. break;
  18353. default:
  18354. lk = l1;
  18355. }
  18356. switch (lk)
  18357. {
  18358. case 26707: // 'attribute' '::'
  18359. case 26718: // 'child' '::'
  18360. case 26736: // 'descendant' '::'
  18361. case 26737: // 'descendant-or-self' '::'
  18362. case 26761: // 'following' '::'
  18363. case 26762: // 'following-sibling' '::'
  18364. case 26858: // 'self' '::'
  18365. parse_ForwardAxis();
  18366. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18367. whitespace();
  18368. parse_NodeTest();
  18369. break;
  18370. default:
  18371. parse_AbbrevForwardStep();
  18372. }
  18373. eventHandler.endNonterminal("ForwardStep", e0);
  18374. }
  18375. function try_ForwardStep()
  18376. {
  18377. switch (l1)
  18378. {
  18379. case 83: // 'attribute'
  18380. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  18381. break;
  18382. case 94: // 'child'
  18383. case 112: // 'descendant'
  18384. case 113: // 'descendant-or-self'
  18385. case 137: // 'following'
  18386. case 138: // 'following-sibling'
  18387. case 234: // 'self'
  18388. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18389. break;
  18390. default:
  18391. lk = l1;
  18392. }
  18393. switch (lk)
  18394. {
  18395. case 26707: // 'attribute' '::'
  18396. case 26718: // 'child' '::'
  18397. case 26736: // 'descendant' '::'
  18398. case 26737: // 'descendant-or-self' '::'
  18399. case 26761: // 'following' '::'
  18400. case 26762: // 'following-sibling' '::'
  18401. case 26858: // 'self' '::'
  18402. try_ForwardAxis();
  18403. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18404. try_NodeTest();
  18405. break;
  18406. default:
  18407. try_AbbrevForwardStep();
  18408. }
  18409. }
  18410. function parse_ForwardAxis()
  18411. {
  18412. eventHandler.startNonterminal("ForwardAxis", e0);
  18413. switch (l1)
  18414. {
  18415. case 94: // 'child'
  18416. shift(94); // 'child'
  18417. lookahead1W(27); // S^WS | '(:' | '::'
  18418. shift(52); // '::'
  18419. break;
  18420. case 112: // 'descendant'
  18421. shift(112); // 'descendant'
  18422. lookahead1W(27); // S^WS | '(:' | '::'
  18423. shift(52); // '::'
  18424. break;
  18425. case 83: // 'attribute'
  18426. shift(83); // 'attribute'
  18427. lookahead1W(27); // S^WS | '(:' | '::'
  18428. shift(52); // '::'
  18429. break;
  18430. case 234: // 'self'
  18431. shift(234); // 'self'
  18432. lookahead1W(27); // S^WS | '(:' | '::'
  18433. shift(52); // '::'
  18434. break;
  18435. case 113: // 'descendant-or-self'
  18436. shift(113); // 'descendant-or-self'
  18437. lookahead1W(27); // S^WS | '(:' | '::'
  18438. shift(52); // '::'
  18439. break;
  18440. case 138: // 'following-sibling'
  18441. shift(138); // 'following-sibling'
  18442. lookahead1W(27); // S^WS | '(:' | '::'
  18443. shift(52); // '::'
  18444. break;
  18445. default:
  18446. shift(137); // 'following'
  18447. lookahead1W(27); // S^WS | '(:' | '::'
  18448. shift(52); // '::'
  18449. }
  18450. eventHandler.endNonterminal("ForwardAxis", e0);
  18451. }
  18452. function try_ForwardAxis()
  18453. {
  18454. switch (l1)
  18455. {
  18456. case 94: // 'child'
  18457. shiftT(94); // 'child'
  18458. lookahead1W(27); // S^WS | '(:' | '::'
  18459. shiftT(52); // '::'
  18460. break;
  18461. case 112: // 'descendant'
  18462. shiftT(112); // 'descendant'
  18463. lookahead1W(27); // S^WS | '(:' | '::'
  18464. shiftT(52); // '::'
  18465. break;
  18466. case 83: // 'attribute'
  18467. shiftT(83); // 'attribute'
  18468. lookahead1W(27); // S^WS | '(:' | '::'
  18469. shiftT(52); // '::'
  18470. break;
  18471. case 234: // 'self'
  18472. shiftT(234); // 'self'
  18473. lookahead1W(27); // S^WS | '(:' | '::'
  18474. shiftT(52); // '::'
  18475. break;
  18476. case 113: // 'descendant-or-self'
  18477. shiftT(113); // 'descendant-or-self'
  18478. lookahead1W(27); // S^WS | '(:' | '::'
  18479. shiftT(52); // '::'
  18480. break;
  18481. case 138: // 'following-sibling'
  18482. shiftT(138); // 'following-sibling'
  18483. lookahead1W(27); // S^WS | '(:' | '::'
  18484. shiftT(52); // '::'
  18485. break;
  18486. default:
  18487. shiftT(137); // 'following'
  18488. lookahead1W(27); // S^WS | '(:' | '::'
  18489. shiftT(52); // '::'
  18490. }
  18491. }
  18492. function parse_AbbrevForwardStep()
  18493. {
  18494. eventHandler.startNonterminal("AbbrevForwardStep", e0);
  18495. if (l1 == 67) // '@'
  18496. {
  18497. shift(67); // '@'
  18498. }
  18499. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18500. whitespace();
  18501. parse_NodeTest();
  18502. eventHandler.endNonterminal("AbbrevForwardStep", e0);
  18503. }
  18504. function try_AbbrevForwardStep()
  18505. {
  18506. if (l1 == 67) // '@'
  18507. {
  18508. shiftT(67); // '@'
  18509. }
  18510. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18511. try_NodeTest();
  18512. }
  18513. function parse_ReverseStep()
  18514. {
  18515. eventHandler.startNonterminal("ReverseStep", e0);
  18516. switch (l1)
  18517. {
  18518. case 46: // '..'
  18519. parse_AbbrevReverseStep();
  18520. break;
  18521. default:
  18522. parse_ReverseAxis();
  18523. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18524. whitespace();
  18525. parse_NodeTest();
  18526. }
  18527. eventHandler.endNonterminal("ReverseStep", e0);
  18528. }
  18529. function try_ReverseStep()
  18530. {
  18531. switch (l1)
  18532. {
  18533. case 46: // '..'
  18534. try_AbbrevReverseStep();
  18535. break;
  18536. default:
  18537. try_ReverseAxis();
  18538. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  18539. try_NodeTest();
  18540. }
  18541. }
  18542. function parse_ReverseAxis()
  18543. {
  18544. eventHandler.startNonterminal("ReverseAxis", e0);
  18545. switch (l1)
  18546. {
  18547. case 210: // 'parent'
  18548. shift(210); // 'parent'
  18549. lookahead1W(27); // S^WS | '(:' | '::'
  18550. shift(52); // '::'
  18551. break;
  18552. case 74: // 'ancestor'
  18553. shift(74); // 'ancestor'
  18554. lookahead1W(27); // S^WS | '(:' | '::'
  18555. shift(52); // '::'
  18556. break;
  18557. case 217: // 'preceding-sibling'
  18558. shift(217); // 'preceding-sibling'
  18559. lookahead1W(27); // S^WS | '(:' | '::'
  18560. shift(52); // '::'
  18561. break;
  18562. case 216: // 'preceding'
  18563. shift(216); // 'preceding'
  18564. lookahead1W(27); // S^WS | '(:' | '::'
  18565. shift(52); // '::'
  18566. break;
  18567. default:
  18568. shift(75); // 'ancestor-or-self'
  18569. lookahead1W(27); // S^WS | '(:' | '::'
  18570. shift(52); // '::'
  18571. }
  18572. eventHandler.endNonterminal("ReverseAxis", e0);
  18573. }
  18574. function try_ReverseAxis()
  18575. {
  18576. switch (l1)
  18577. {
  18578. case 210: // 'parent'
  18579. shiftT(210); // 'parent'
  18580. lookahead1W(27); // S^WS | '(:' | '::'
  18581. shiftT(52); // '::'
  18582. break;
  18583. case 74: // 'ancestor'
  18584. shiftT(74); // 'ancestor'
  18585. lookahead1W(27); // S^WS | '(:' | '::'
  18586. shiftT(52); // '::'
  18587. break;
  18588. case 217: // 'preceding-sibling'
  18589. shiftT(217); // 'preceding-sibling'
  18590. lookahead1W(27); // S^WS | '(:' | '::'
  18591. shiftT(52); // '::'
  18592. break;
  18593. case 216: // 'preceding'
  18594. shiftT(216); // 'preceding'
  18595. lookahead1W(27); // S^WS | '(:' | '::'
  18596. shiftT(52); // '::'
  18597. break;
  18598. default:
  18599. shiftT(75); // 'ancestor-or-self'
  18600. lookahead1W(27); // S^WS | '(:' | '::'
  18601. shiftT(52); // '::'
  18602. }
  18603. }
  18604. function parse_AbbrevReverseStep()
  18605. {
  18606. eventHandler.startNonterminal("AbbrevReverseStep", e0);
  18607. shift(46); // '..'
  18608. eventHandler.endNonterminal("AbbrevReverseStep", e0);
  18609. }
  18610. function try_AbbrevReverseStep()
  18611. {
  18612. shiftT(46); // '..'
  18613. }
  18614. function parse_NodeTest()
  18615. {
  18616. eventHandler.startNonterminal("NodeTest", e0);
  18617. switch (l1)
  18618. {
  18619. case 83: // 'attribute'
  18620. case 97: // 'comment'
  18621. case 121: // 'document-node'
  18622. case 122: // 'element'
  18623. case 188: // 'namespace-node'
  18624. case 194: // 'node'
  18625. case 220: // 'processing-instruction'
  18626. case 230: // 'schema-attribute'
  18627. case 231: // 'schema-element'
  18628. case 249: // 'text'
  18629. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  18630. break;
  18631. default:
  18632. lk = l1;
  18633. }
  18634. switch (lk)
  18635. {
  18636. case 18003: // 'attribute' '('
  18637. case 18017: // 'comment' '('
  18638. case 18041: // 'document-node' '('
  18639. case 18042: // 'element' '('
  18640. case 18108: // 'namespace-node' '('
  18641. case 18114: // 'node' '('
  18642. case 18140: // 'processing-instruction' '('
  18643. case 18150: // 'schema-attribute' '('
  18644. case 18151: // 'schema-element' '('
  18645. case 18169: // 'text' '('
  18646. parse_KindTest();
  18647. break;
  18648. default:
  18649. parse_NameTest();
  18650. }
  18651. eventHandler.endNonterminal("NodeTest", e0);
  18652. }
  18653. function try_NodeTest()
  18654. {
  18655. switch (l1)
  18656. {
  18657. case 83: // 'attribute'
  18658. case 97: // 'comment'
  18659. case 121: // 'document-node'
  18660. case 122: // 'element'
  18661. case 188: // 'namespace-node'
  18662. case 194: // 'node'
  18663. case 220: // 'processing-instruction'
  18664. case 230: // 'schema-attribute'
  18665. case 231: // 'schema-element'
  18666. case 249: // 'text'
  18667. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  18668. break;
  18669. default:
  18670. lk = l1;
  18671. }
  18672. switch (lk)
  18673. {
  18674. case 18003: // 'attribute' '('
  18675. case 18017: // 'comment' '('
  18676. case 18041: // 'document-node' '('
  18677. case 18042: // 'element' '('
  18678. case 18108: // 'namespace-node' '('
  18679. case 18114: // 'node' '('
  18680. case 18140: // 'processing-instruction' '('
  18681. case 18150: // 'schema-attribute' '('
  18682. case 18151: // 'schema-element' '('
  18683. case 18169: // 'text' '('
  18684. try_KindTest();
  18685. break;
  18686. default:
  18687. try_NameTest();
  18688. }
  18689. }
  18690. function parse_NameTest()
  18691. {
  18692. eventHandler.startNonterminal("NameTest", e0);
  18693. switch (l1)
  18694. {
  18695. case 5: // Wildcard
  18696. shift(5); // Wildcard
  18697. break;
  18698. default:
  18699. parse_EQName();
  18700. }
  18701. eventHandler.endNonterminal("NameTest", e0);
  18702. }
  18703. function try_NameTest()
  18704. {
  18705. switch (l1)
  18706. {
  18707. case 5: // Wildcard
  18708. shiftT(5); // Wildcard
  18709. break;
  18710. default:
  18711. try_EQName();
  18712. }
  18713. }
  18714. function parse_PostfixExpr()
  18715. {
  18716. eventHandler.startNonterminal("PostfixExpr", e0);
  18717. parse_PrimaryExpr();
  18718. for (;;)
  18719. {
  18720. lookahead1W(234); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' | '/' |
  18721. if (l1 != 35 // '('
  18722. && l1 != 45 // '.'
  18723. && l1 != 69) // '['
  18724. {
  18725. break;
  18726. }
  18727. switch (l1)
  18728. {
  18729. case 69: // '['
  18730. lookahead2W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18731. break;
  18732. default:
  18733. lk = l1;
  18734. }
  18735. if (lk == 35397) // '[' '['
  18736. {
  18737. lk = memoized(5, e0);
  18738. if (lk == 0)
  18739. {
  18740. var b0A = b0; var e0A = e0; var l1A = l1;
  18741. var b1A = b1; var e1A = e1; var l2A = l2;
  18742. var b2A = b2; var e2A = e2;
  18743. try
  18744. {
  18745. try_Predicate();
  18746. lk = -1;
  18747. }
  18748. catch (p1A)
  18749. {
  18750. lk = -4;
  18751. }
  18752. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  18753. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  18754. b2 = b2A; e2 = e2A; end = e2A; }}
  18755. memoize(5, e0, lk);
  18756. }
  18757. }
  18758. switch (lk)
  18759. {
  18760. case 35: // '('
  18761. whitespace();
  18762. parse_ArgumentList();
  18763. break;
  18764. case 45: // '.'
  18765. whitespace();
  18766. parse_ObjectLookup();
  18767. break;
  18768. case -4:
  18769. whitespace();
  18770. parse_ArrayLookup();
  18771. break;
  18772. case 35909: // '[' ']'
  18773. whitespace();
  18774. parse_ArrayUnboxing();
  18775. break;
  18776. default:
  18777. whitespace();
  18778. parse_Predicate();
  18779. }
  18780. }
  18781. eventHandler.endNonterminal("PostfixExpr", e0);
  18782. }
  18783. function try_PostfixExpr()
  18784. {
  18785. try_PrimaryExpr();
  18786. for (;;)
  18787. {
  18788. lookahead1W(234); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' | '/' |
  18789. if (l1 != 35 // '('
  18790. && l1 != 45 // '.'
  18791. && l1 != 69) // '['
  18792. {
  18793. break;
  18794. }
  18795. switch (l1)
  18796. {
  18797. case 69: // '['
  18798. lookahead2W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18799. break;
  18800. default:
  18801. lk = l1;
  18802. }
  18803. if (lk == 35397) // '[' '['
  18804. {
  18805. lk = memoized(5, e0);
  18806. if (lk == 0)
  18807. {
  18808. var b0A = b0; var e0A = e0; var l1A = l1;
  18809. var b1A = b1; var e1A = e1; var l2A = l2;
  18810. var b2A = b2; var e2A = e2;
  18811. try
  18812. {
  18813. try_Predicate();
  18814. memoize(5, e0A, -1);
  18815. lk = -6;
  18816. }
  18817. catch (p1A)
  18818. {
  18819. lk = -4;
  18820. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  18821. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  18822. b2 = b2A; e2 = e2A; end = e2A; }}
  18823. memoize(5, e0A, -4);
  18824. }
  18825. }
  18826. }
  18827. switch (lk)
  18828. {
  18829. case 35: // '('
  18830. try_ArgumentList();
  18831. break;
  18832. case 45: // '.'
  18833. try_ObjectLookup();
  18834. break;
  18835. case -4:
  18836. try_ArrayLookup();
  18837. break;
  18838. case 35909: // '[' ']'
  18839. try_ArrayUnboxing();
  18840. break;
  18841. case -6:
  18842. break;
  18843. default:
  18844. try_Predicate();
  18845. }
  18846. }
  18847. }
  18848. function parse_ObjectLookup()
  18849. {
  18850. eventHandler.startNonterminal("ObjectLookup", e0);
  18851. shift(45); // '.'
  18852. lookahead1W(250); // StringLiteral | NCName^Token | S^WS | '$' | '$$' | '(' | '(:' | 'after' |
  18853. switch (l1)
  18854. {
  18855. case 11: // StringLiteral
  18856. shift(11); // StringLiteral
  18857. break;
  18858. case 35: // '('
  18859. whitespace();
  18860. parse_ParenthesizedExpr();
  18861. break;
  18862. case 31: // '$'
  18863. whitespace();
  18864. parse_VarRef();
  18865. break;
  18866. case 32: // '$$'
  18867. whitespace();
  18868. parse_ContextItemExpr();
  18869. break;
  18870. default:
  18871. whitespace();
  18872. parse_NCName();
  18873. }
  18874. eventHandler.endNonterminal("ObjectLookup", e0);
  18875. }
  18876. function try_ObjectLookup()
  18877. {
  18878. shiftT(45); // '.'
  18879. lookahead1W(250); // StringLiteral | NCName^Token | S^WS | '$' | '$$' | '(' | '(:' | 'after' |
  18880. switch (l1)
  18881. {
  18882. case 11: // StringLiteral
  18883. shiftT(11); // StringLiteral
  18884. break;
  18885. case 35: // '('
  18886. try_ParenthesizedExpr();
  18887. break;
  18888. case 31: // '$'
  18889. try_VarRef();
  18890. break;
  18891. case 32: // '$$'
  18892. try_ContextItemExpr();
  18893. break;
  18894. default:
  18895. try_NCName();
  18896. }
  18897. }
  18898. function parse_ArrayLookup()
  18899. {
  18900. eventHandler.startNonterminal("ArrayLookup", e0);
  18901. shift(69); // '['
  18902. lookahead1W(31); // S^WS | '(:' | '['
  18903. shift(69); // '['
  18904. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18905. whitespace();
  18906. parse_Expr();
  18907. shift(70); // ']'
  18908. lookahead1W(32); // S^WS | '(:' | ']'
  18909. shift(70); // ']'
  18910. eventHandler.endNonterminal("ArrayLookup", e0);
  18911. }
  18912. function try_ArrayLookup()
  18913. {
  18914. shiftT(69); // '['
  18915. lookahead1W(31); // S^WS | '(:' | '['
  18916. shiftT(69); // '['
  18917. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18918. try_Expr();
  18919. shiftT(70); // ']'
  18920. lookahead1W(32); // S^WS | '(:' | ']'
  18921. shiftT(70); // ']'
  18922. }
  18923. function parse_ArrayUnboxing()
  18924. {
  18925. eventHandler.startNonterminal("ArrayUnboxing", e0);
  18926. shift(69); // '['
  18927. lookahead1W(32); // S^WS | '(:' | ']'
  18928. shift(70); // ']'
  18929. eventHandler.endNonterminal("ArrayUnboxing", e0);
  18930. }
  18931. function try_ArrayUnboxing()
  18932. {
  18933. shiftT(69); // '['
  18934. lookahead1W(32); // S^WS | '(:' | ']'
  18935. shiftT(70); // ']'
  18936. }
  18937. function parse_ArgumentList()
  18938. {
  18939. eventHandler.startNonterminal("ArgumentList", e0);
  18940. shift(35); // '('
  18941. lookahead1W(279); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18942. if (l1 != 38) // ')'
  18943. {
  18944. whitespace();
  18945. parse_Argument();
  18946. for (;;)
  18947. {
  18948. lookahead1W(105); // S^WS | '(:' | ')' | ','
  18949. if (l1 != 42) // ','
  18950. {
  18951. break;
  18952. }
  18953. shift(42); // ','
  18954. lookahead1W(271); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18955. whitespace();
  18956. parse_Argument();
  18957. }
  18958. }
  18959. shift(38); // ')'
  18960. eventHandler.endNonterminal("ArgumentList", e0);
  18961. }
  18962. function try_ArgumentList()
  18963. {
  18964. shiftT(35); // '('
  18965. lookahead1W(279); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18966. if (l1 != 38) // ')'
  18967. {
  18968. try_Argument();
  18969. for (;;)
  18970. {
  18971. lookahead1W(105); // S^WS | '(:' | ')' | ','
  18972. if (l1 != 42) // ','
  18973. {
  18974. break;
  18975. }
  18976. shiftT(42); // ','
  18977. lookahead1W(271); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  18978. try_Argument();
  18979. }
  18980. }
  18981. shiftT(38); // ')'
  18982. }
  18983. function parse_PredicateList()
  18984. {
  18985. eventHandler.startNonterminal("PredicateList", e0);
  18986. for (;;)
  18987. {
  18988. lookahead1W(227); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  18989. if (l1 != 69) // '['
  18990. {
  18991. break;
  18992. }
  18993. whitespace();
  18994. parse_Predicate();
  18995. }
  18996. eventHandler.endNonterminal("PredicateList", e0);
  18997. }
  18998. function try_PredicateList()
  18999. {
  19000. for (;;)
  19001. {
  19002. lookahead1W(227); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  19003. if (l1 != 69) // '['
  19004. {
  19005. break;
  19006. }
  19007. try_Predicate();
  19008. }
  19009. }
  19010. function parse_Predicate()
  19011. {
  19012. eventHandler.startNonterminal("Predicate", e0);
  19013. shift(69); // '['
  19014. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19015. whitespace();
  19016. parse_Expr();
  19017. shift(70); // ']'
  19018. eventHandler.endNonterminal("Predicate", e0);
  19019. }
  19020. function try_Predicate()
  19021. {
  19022. shiftT(69); // '['
  19023. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19024. try_Expr();
  19025. shiftT(70); // ']'
  19026. }
  19027. function parse_Literal()
  19028. {
  19029. eventHandler.startNonterminal("Literal", e0);
  19030. switch (l1)
  19031. {
  19032. case 11: // StringLiteral
  19033. shift(11); // StringLiteral
  19034. break;
  19035. case 135: // 'false'
  19036. case 255: // 'true'
  19037. parse_BooleanLiteral();
  19038. break;
  19039. case 197: // 'null'
  19040. parse_NullLiteral();
  19041. break;
  19042. default:
  19043. parse_NumericLiteral();
  19044. }
  19045. eventHandler.endNonterminal("Literal", e0);
  19046. }
  19047. function try_Literal()
  19048. {
  19049. switch (l1)
  19050. {
  19051. case 11: // StringLiteral
  19052. shiftT(11); // StringLiteral
  19053. break;
  19054. case 135: // 'false'
  19055. case 255: // 'true'
  19056. try_BooleanLiteral();
  19057. break;
  19058. case 197: // 'null'
  19059. try_NullLiteral();
  19060. break;
  19061. default:
  19062. try_NumericLiteral();
  19063. }
  19064. }
  19065. function parse_BooleanLiteral()
  19066. {
  19067. eventHandler.startNonterminal("BooleanLiteral", e0);
  19068. switch (l1)
  19069. {
  19070. case 255: // 'true'
  19071. shift(255); // 'true'
  19072. break;
  19073. default:
  19074. shift(135); // 'false'
  19075. }
  19076. eventHandler.endNonterminal("BooleanLiteral", e0);
  19077. }
  19078. function try_BooleanLiteral()
  19079. {
  19080. switch (l1)
  19081. {
  19082. case 255: // 'true'
  19083. shiftT(255); // 'true'
  19084. break;
  19085. default:
  19086. shiftT(135); // 'false'
  19087. }
  19088. }
  19089. function parse_NullLiteral()
  19090. {
  19091. eventHandler.startNonterminal("NullLiteral", e0);
  19092. shift(197); // 'null'
  19093. eventHandler.endNonterminal("NullLiteral", e0);
  19094. }
  19095. function try_NullLiteral()
  19096. {
  19097. shiftT(197); // 'null'
  19098. }
  19099. function parse_NumericLiteral()
  19100. {
  19101. eventHandler.startNonterminal("NumericLiteral", e0);
  19102. switch (l1)
  19103. {
  19104. case 8: // IntegerLiteral
  19105. shift(8); // IntegerLiteral
  19106. break;
  19107. case 9: // DecimalLiteral
  19108. shift(9); // DecimalLiteral
  19109. break;
  19110. default:
  19111. shift(10); // DoubleLiteral
  19112. }
  19113. eventHandler.endNonterminal("NumericLiteral", e0);
  19114. }
  19115. function try_NumericLiteral()
  19116. {
  19117. switch (l1)
  19118. {
  19119. case 8: // IntegerLiteral
  19120. shiftT(8); // IntegerLiteral
  19121. break;
  19122. case 9: // DecimalLiteral
  19123. shiftT(9); // DecimalLiteral
  19124. break;
  19125. default:
  19126. shiftT(10); // DoubleLiteral
  19127. }
  19128. }
  19129. function parse_VarRef()
  19130. {
  19131. eventHandler.startNonterminal("VarRef", e0);
  19132. shift(31); // '$'
  19133. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19134. whitespace();
  19135. parse_VarName();
  19136. eventHandler.endNonterminal("VarRef", e0);
  19137. }
  19138. function try_VarRef()
  19139. {
  19140. shiftT(31); // '$'
  19141. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19142. try_VarName();
  19143. }
  19144. function parse_VarName()
  19145. {
  19146. eventHandler.startNonterminal("VarName", e0);
  19147. parse_EQName();
  19148. eventHandler.endNonterminal("VarName", e0);
  19149. }
  19150. function try_VarName()
  19151. {
  19152. try_EQName();
  19153. }
  19154. function parse_ParenthesizedExpr()
  19155. {
  19156. eventHandler.startNonterminal("ParenthesizedExpr", e0);
  19157. shift(35); // '('
  19158. lookahead1W(269); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19159. if (l1 != 38) // ')'
  19160. {
  19161. whitespace();
  19162. parse_Expr();
  19163. }
  19164. shift(38); // ')'
  19165. eventHandler.endNonterminal("ParenthesizedExpr", e0);
  19166. }
  19167. function try_ParenthesizedExpr()
  19168. {
  19169. shiftT(35); // '('
  19170. lookahead1W(269); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19171. if (l1 != 38) // ')'
  19172. {
  19173. try_Expr();
  19174. }
  19175. shiftT(38); // ')'
  19176. }
  19177. function parse_ContextItemExpr()
  19178. {
  19179. eventHandler.startNonterminal("ContextItemExpr", e0);
  19180. shift(32); // '$$'
  19181. eventHandler.endNonterminal("ContextItemExpr", e0);
  19182. }
  19183. function try_ContextItemExpr()
  19184. {
  19185. shiftT(32); // '$$'
  19186. }
  19187. function parse_OrderedExpr()
  19188. {
  19189. eventHandler.startNonterminal("OrderedExpr", e0);
  19190. shift(206); // 'ordered'
  19191. lookahead1W(90); // S^WS | '(:' | '{'
  19192. shift(281); // '{'
  19193. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19194. whitespace();
  19195. parse_Expr();
  19196. shift(287); // '}'
  19197. eventHandler.endNonterminal("OrderedExpr", e0);
  19198. }
  19199. function try_OrderedExpr()
  19200. {
  19201. shiftT(206); // 'ordered'
  19202. lookahead1W(90); // S^WS | '(:' | '{'
  19203. shiftT(281); // '{'
  19204. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19205. try_Expr();
  19206. shiftT(287); // '}'
  19207. }
  19208. function parse_UnorderedExpr()
  19209. {
  19210. eventHandler.startNonterminal("UnorderedExpr", e0);
  19211. shift(262); // 'unordered'
  19212. lookahead1W(90); // S^WS | '(:' | '{'
  19213. shift(281); // '{'
  19214. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19215. whitespace();
  19216. parse_Expr();
  19217. shift(287); // '}'
  19218. eventHandler.endNonterminal("UnorderedExpr", e0);
  19219. }
  19220. function try_UnorderedExpr()
  19221. {
  19222. shiftT(262); // 'unordered'
  19223. lookahead1W(90); // S^WS | '(:' | '{'
  19224. shiftT(281); // '{'
  19225. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19226. try_Expr();
  19227. shiftT(287); // '}'
  19228. }
  19229. function parse_FunctionCall()
  19230. {
  19231. eventHandler.startNonterminal("FunctionCall", e0);
  19232. parse_FunctionName();
  19233. lookahead1W(22); // S^WS | '(' | '(:'
  19234. whitespace();
  19235. parse_ArgumentList();
  19236. eventHandler.endNonterminal("FunctionCall", e0);
  19237. }
  19238. function try_FunctionCall()
  19239. {
  19240. try_FunctionName();
  19241. lookahead1W(22); // S^WS | '(' | '(:'
  19242. try_ArgumentList();
  19243. }
  19244. function parse_Argument()
  19245. {
  19246. eventHandler.startNonterminal("Argument", e0);
  19247. switch (l1)
  19248. {
  19249. case 65: // '?'
  19250. parse_ArgumentPlaceholder();
  19251. break;
  19252. default:
  19253. parse_ExprSingle();
  19254. }
  19255. eventHandler.endNonterminal("Argument", e0);
  19256. }
  19257. function try_Argument()
  19258. {
  19259. switch (l1)
  19260. {
  19261. case 65: // '?'
  19262. try_ArgumentPlaceholder();
  19263. break;
  19264. default:
  19265. try_ExprSingle();
  19266. }
  19267. }
  19268. function parse_ArgumentPlaceholder()
  19269. {
  19270. eventHandler.startNonterminal("ArgumentPlaceholder", e0);
  19271. shift(65); // '?'
  19272. eventHandler.endNonterminal("ArgumentPlaceholder", e0);
  19273. }
  19274. function try_ArgumentPlaceholder()
  19275. {
  19276. shiftT(65); // '?'
  19277. }
  19278. function parse_Constructor()
  19279. {
  19280. eventHandler.startNonterminal("Constructor", e0);
  19281. switch (l1)
  19282. {
  19283. case 55: // '<'
  19284. case 56: // '<!--'
  19285. case 60: // '<?'
  19286. parse_DirectConstructor();
  19287. break;
  19288. default:
  19289. parse_ComputedConstructor();
  19290. }
  19291. eventHandler.endNonterminal("Constructor", e0);
  19292. }
  19293. function try_Constructor()
  19294. {
  19295. switch (l1)
  19296. {
  19297. case 55: // '<'
  19298. case 56: // '<!--'
  19299. case 60: // '<?'
  19300. try_DirectConstructor();
  19301. break;
  19302. default:
  19303. try_ComputedConstructor();
  19304. }
  19305. }
  19306. function parse_DirectConstructor()
  19307. {
  19308. eventHandler.startNonterminal("DirectConstructor", e0);
  19309. switch (l1)
  19310. {
  19311. case 55: // '<'
  19312. parse_DirElemConstructor();
  19313. break;
  19314. case 56: // '<!--'
  19315. parse_DirCommentConstructor();
  19316. break;
  19317. default:
  19318. parse_DirPIConstructor();
  19319. }
  19320. eventHandler.endNonterminal("DirectConstructor", e0);
  19321. }
  19322. function try_DirectConstructor()
  19323. {
  19324. switch (l1)
  19325. {
  19326. case 55: // '<'
  19327. try_DirElemConstructor();
  19328. break;
  19329. case 56: // '<!--'
  19330. try_DirCommentConstructor();
  19331. break;
  19332. default:
  19333. try_DirPIConstructor();
  19334. }
  19335. }
  19336. function parse_DirElemConstructor()
  19337. {
  19338. eventHandler.startNonterminal("DirElemConstructor", e0);
  19339. shift(55); // '<'
  19340. lookahead1(4); // QName
  19341. shift(20); // QName
  19342. parse_DirAttributeList();
  19343. switch (l1)
  19344. {
  19345. case 49: // '/>'
  19346. shift(49); // '/>'
  19347. break;
  19348. default:
  19349. shift(62); // '>'
  19350. for (;;)
  19351. {
  19352. lookahead1(196); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  19353. if (l1 == 57) // '</'
  19354. {
  19355. break;
  19356. }
  19357. parse_DirElemContent();
  19358. }
  19359. shift(57); // '</'
  19360. lookahead1(4); // QName
  19361. shift(20); // QName
  19362. lookahead1(12); // S | '>'
  19363. if (l1 == 21) // S
  19364. {
  19365. shift(21); // S
  19366. }
  19367. lookahead1(8); // '>'
  19368. shift(62); // '>'
  19369. }
  19370. eventHandler.endNonterminal("DirElemConstructor", e0);
  19371. }
  19372. function try_DirElemConstructor()
  19373. {
  19374. shiftT(55); // '<'
  19375. lookahead1(4); // QName
  19376. shiftT(20); // QName
  19377. try_DirAttributeList();
  19378. switch (l1)
  19379. {
  19380. case 49: // '/>'
  19381. shiftT(49); // '/>'
  19382. break;
  19383. default:
  19384. shiftT(62); // '>'
  19385. for (;;)
  19386. {
  19387. lookahead1(196); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  19388. if (l1 == 57) // '</'
  19389. {
  19390. break;
  19391. }
  19392. try_DirElemContent();
  19393. }
  19394. shiftT(57); // '</'
  19395. lookahead1(4); // QName
  19396. shiftT(20); // QName
  19397. lookahead1(12); // S | '>'
  19398. if (l1 == 21) // S
  19399. {
  19400. shiftT(21); // S
  19401. }
  19402. lookahead1(8); // '>'
  19403. shiftT(62); // '>'
  19404. }
  19405. }
  19406. function parse_DirAttributeList()
  19407. {
  19408. eventHandler.startNonterminal("DirAttributeList", e0);
  19409. for (;;)
  19410. {
  19411. lookahead1(19); // S | '/>' | '>'
  19412. if (l1 != 21) // S
  19413. {
  19414. break;
  19415. }
  19416. shift(21); // S
  19417. lookahead1(94); // QName | S | '/>' | '>'
  19418. if (l1 == 20) // QName
  19419. {
  19420. shift(20); // QName
  19421. lookahead1(11); // S | '='
  19422. if (l1 == 21) // S
  19423. {
  19424. shift(21); // S
  19425. }
  19426. lookahead1(7); // '='
  19427. shift(61); // '='
  19428. lookahead1(18); // S | '"' | "'"
  19429. if (l1 == 21) // S
  19430. {
  19431. shift(21); // S
  19432. }
  19433. parse_DirAttributeValue();
  19434. }
  19435. }
  19436. eventHandler.endNonterminal("DirAttributeList", e0);
  19437. }
  19438. function try_DirAttributeList()
  19439. {
  19440. for (;;)
  19441. {
  19442. lookahead1(19); // S | '/>' | '>'
  19443. if (l1 != 21) // S
  19444. {
  19445. break;
  19446. }
  19447. shiftT(21); // S
  19448. lookahead1(94); // QName | S | '/>' | '>'
  19449. if (l1 == 20) // QName
  19450. {
  19451. shiftT(20); // QName
  19452. lookahead1(11); // S | '='
  19453. if (l1 == 21) // S
  19454. {
  19455. shiftT(21); // S
  19456. }
  19457. lookahead1(7); // '='
  19458. shiftT(61); // '='
  19459. lookahead1(18); // S | '"' | "'"
  19460. if (l1 == 21) // S
  19461. {
  19462. shiftT(21); // S
  19463. }
  19464. try_DirAttributeValue();
  19465. }
  19466. }
  19467. }
  19468. function parse_DirAttributeValue()
  19469. {
  19470. eventHandler.startNonterminal("DirAttributeValue", e0);
  19471. lookahead1(14); // '"' | "'"
  19472. switch (l1)
  19473. {
  19474. case 28: // '"'
  19475. shift(28); // '"'
  19476. for (;;)
  19477. {
  19478. lookahead1(185); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  19479. if (l1 == 28) // '"'
  19480. {
  19481. break;
  19482. }
  19483. switch (l1)
  19484. {
  19485. case 13: // EscapeQuot
  19486. shift(13); // EscapeQuot
  19487. break;
  19488. default:
  19489. parse_QuotAttrValueContent();
  19490. }
  19491. }
  19492. shift(28); // '"'
  19493. break;
  19494. default:
  19495. shift(34); // "'"
  19496. for (;;)
  19497. {
  19498. lookahead1(186); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  19499. if (l1 == 34) // "'"
  19500. {
  19501. break;
  19502. }
  19503. switch (l1)
  19504. {
  19505. case 14: // EscapeApos
  19506. shift(14); // EscapeApos
  19507. break;
  19508. default:
  19509. parse_AposAttrValueContent();
  19510. }
  19511. }
  19512. shift(34); // "'"
  19513. }
  19514. eventHandler.endNonterminal("DirAttributeValue", e0);
  19515. }
  19516. function try_DirAttributeValue()
  19517. {
  19518. lookahead1(14); // '"' | "'"
  19519. switch (l1)
  19520. {
  19521. case 28: // '"'
  19522. shiftT(28); // '"'
  19523. for (;;)
  19524. {
  19525. lookahead1(185); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  19526. if (l1 == 28) // '"'
  19527. {
  19528. break;
  19529. }
  19530. switch (l1)
  19531. {
  19532. case 13: // EscapeQuot
  19533. shiftT(13); // EscapeQuot
  19534. break;
  19535. default:
  19536. try_QuotAttrValueContent();
  19537. }
  19538. }
  19539. shiftT(28); // '"'
  19540. break;
  19541. default:
  19542. shiftT(34); // "'"
  19543. for (;;)
  19544. {
  19545. lookahead1(186); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  19546. if (l1 == 34) // "'"
  19547. {
  19548. break;
  19549. }
  19550. switch (l1)
  19551. {
  19552. case 14: // EscapeApos
  19553. shiftT(14); // EscapeApos
  19554. break;
  19555. default:
  19556. try_AposAttrValueContent();
  19557. }
  19558. }
  19559. shiftT(34); // "'"
  19560. }
  19561. }
  19562. function parse_QuotAttrValueContent()
  19563. {
  19564. eventHandler.startNonterminal("QuotAttrValueContent", e0);
  19565. switch (l1)
  19566. {
  19567. case 16: // QuotAttrContentChar
  19568. shift(16); // QuotAttrContentChar
  19569. break;
  19570. default:
  19571. parse_CommonContent();
  19572. }
  19573. eventHandler.endNonterminal("QuotAttrValueContent", e0);
  19574. }
  19575. function try_QuotAttrValueContent()
  19576. {
  19577. switch (l1)
  19578. {
  19579. case 16: // QuotAttrContentChar
  19580. shiftT(16); // QuotAttrContentChar
  19581. break;
  19582. default:
  19583. try_CommonContent();
  19584. }
  19585. }
  19586. function parse_AposAttrValueContent()
  19587. {
  19588. eventHandler.startNonterminal("AposAttrValueContent", e0);
  19589. switch (l1)
  19590. {
  19591. case 17: // AposAttrContentChar
  19592. shift(17); // AposAttrContentChar
  19593. break;
  19594. default:
  19595. parse_CommonContent();
  19596. }
  19597. eventHandler.endNonterminal("AposAttrValueContent", e0);
  19598. }
  19599. function try_AposAttrValueContent()
  19600. {
  19601. switch (l1)
  19602. {
  19603. case 17: // AposAttrContentChar
  19604. shiftT(17); // AposAttrContentChar
  19605. break;
  19606. default:
  19607. try_CommonContent();
  19608. }
  19609. }
  19610. function parse_DirElemContent()
  19611. {
  19612. eventHandler.startNonterminal("DirElemContent", e0);
  19613. switch (l1)
  19614. {
  19615. case 55: // '<'
  19616. case 56: // '<!--'
  19617. case 60: // '<?'
  19618. parse_DirectConstructor();
  19619. break;
  19620. case 4: // CDataSection
  19621. shift(4); // CDataSection
  19622. break;
  19623. case 15: // ElementContentChar
  19624. shift(15); // ElementContentChar
  19625. break;
  19626. default:
  19627. parse_CommonContent();
  19628. }
  19629. eventHandler.endNonterminal("DirElemContent", e0);
  19630. }
  19631. function try_DirElemContent()
  19632. {
  19633. switch (l1)
  19634. {
  19635. case 55: // '<'
  19636. case 56: // '<!--'
  19637. case 60: // '<?'
  19638. try_DirectConstructor();
  19639. break;
  19640. case 4: // CDataSection
  19641. shiftT(4); // CDataSection
  19642. break;
  19643. case 15: // ElementContentChar
  19644. shiftT(15); // ElementContentChar
  19645. break;
  19646. default:
  19647. try_CommonContent();
  19648. }
  19649. }
  19650. function parse_DirCommentConstructor()
  19651. {
  19652. eventHandler.startNonterminal("DirCommentConstructor", e0);
  19653. shift(56); // '<!--'
  19654. lookahead1(1); // DirCommentContents
  19655. shift(2); // DirCommentContents
  19656. lookahead1(6); // '-->'
  19657. shift(44); // '-->'
  19658. eventHandler.endNonterminal("DirCommentConstructor", e0);
  19659. }
  19660. function try_DirCommentConstructor()
  19661. {
  19662. shiftT(56); // '<!--'
  19663. lookahead1(1); // DirCommentContents
  19664. shiftT(2); // DirCommentContents
  19665. lookahead1(6); // '-->'
  19666. shiftT(44); // '-->'
  19667. }
  19668. function parse_DirPIConstructor()
  19669. {
  19670. eventHandler.startNonterminal("DirPIConstructor", e0);
  19671. shift(60); // '<?'
  19672. lookahead1(3); // PITarget
  19673. shift(18); // PITarget
  19674. lookahead1(13); // S | '?>'
  19675. if (l1 == 21) // S
  19676. {
  19677. shift(21); // S
  19678. lookahead1(2); // DirPIContents
  19679. shift(3); // DirPIContents
  19680. }
  19681. lookahead1(9); // '?>'
  19682. shift(66); // '?>'
  19683. eventHandler.endNonterminal("DirPIConstructor", e0);
  19684. }
  19685. function try_DirPIConstructor()
  19686. {
  19687. shiftT(60); // '<?'
  19688. lookahead1(3); // PITarget
  19689. shiftT(18); // PITarget
  19690. lookahead1(13); // S | '?>'
  19691. if (l1 == 21) // S
  19692. {
  19693. shiftT(21); // S
  19694. lookahead1(2); // DirPIContents
  19695. shiftT(3); // DirPIContents
  19696. }
  19697. lookahead1(9); // '?>'
  19698. shiftT(66); // '?>'
  19699. }
  19700. function parse_ComputedConstructor()
  19701. {
  19702. eventHandler.startNonterminal("ComputedConstructor", e0);
  19703. switch (l1)
  19704. {
  19705. case 120: // 'document'
  19706. parse_CompDocConstructor();
  19707. break;
  19708. case 122: // 'element'
  19709. parse_CompElemConstructor();
  19710. break;
  19711. case 83: // 'attribute'
  19712. parse_CompAttrConstructor();
  19713. break;
  19714. case 187: // 'namespace'
  19715. parse_CompNamespaceConstructor();
  19716. break;
  19717. case 249: // 'text'
  19718. parse_CompTextConstructor();
  19719. break;
  19720. case 97: // 'comment'
  19721. parse_CompCommentConstructor();
  19722. break;
  19723. default:
  19724. parse_CompPIConstructor();
  19725. }
  19726. eventHandler.endNonterminal("ComputedConstructor", e0);
  19727. }
  19728. function try_ComputedConstructor()
  19729. {
  19730. switch (l1)
  19731. {
  19732. case 120: // 'document'
  19733. try_CompDocConstructor();
  19734. break;
  19735. case 122: // 'element'
  19736. try_CompElemConstructor();
  19737. break;
  19738. case 83: // 'attribute'
  19739. try_CompAttrConstructor();
  19740. break;
  19741. case 187: // 'namespace'
  19742. try_CompNamespaceConstructor();
  19743. break;
  19744. case 249: // 'text'
  19745. try_CompTextConstructor();
  19746. break;
  19747. case 97: // 'comment'
  19748. try_CompCommentConstructor();
  19749. break;
  19750. default:
  19751. try_CompPIConstructor();
  19752. }
  19753. }
  19754. function parse_CompElemConstructor()
  19755. {
  19756. eventHandler.startNonterminal("CompElemConstructor", e0);
  19757. shift(122); // 'element'
  19758. lookahead1W(249); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19759. switch (l1)
  19760. {
  19761. case 281: // '{'
  19762. shift(281); // '{'
  19763. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19764. whitespace();
  19765. parse_Expr();
  19766. shift(287); // '}'
  19767. break;
  19768. default:
  19769. whitespace();
  19770. parse_EQName();
  19771. }
  19772. lookahead1W(90); // S^WS | '(:' | '{'
  19773. shift(281); // '{'
  19774. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19775. if (l1 != 287) // '}'
  19776. {
  19777. whitespace();
  19778. parse_ContentExpr();
  19779. }
  19780. shift(287); // '}'
  19781. eventHandler.endNonterminal("CompElemConstructor", e0);
  19782. }
  19783. function try_CompElemConstructor()
  19784. {
  19785. shiftT(122); // 'element'
  19786. lookahead1W(249); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19787. switch (l1)
  19788. {
  19789. case 281: // '{'
  19790. shiftT(281); // '{'
  19791. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19792. try_Expr();
  19793. shiftT(287); // '}'
  19794. break;
  19795. default:
  19796. try_EQName();
  19797. }
  19798. lookahead1W(90); // S^WS | '(:' | '{'
  19799. shiftT(281); // '{'
  19800. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19801. if (l1 != 287) // '}'
  19802. {
  19803. try_ContentExpr();
  19804. }
  19805. shiftT(287); // '}'
  19806. }
  19807. function parse_CompNamespaceConstructor()
  19808. {
  19809. eventHandler.startNonterminal("CompNamespaceConstructor", e0);
  19810. shift(187); // 'namespace'
  19811. lookahead1W(241); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19812. switch (l1)
  19813. {
  19814. case 281: // '{'
  19815. shift(281); // '{'
  19816. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19817. whitespace();
  19818. parse_PrefixExpr();
  19819. shift(287); // '}'
  19820. break;
  19821. default:
  19822. whitespace();
  19823. parse_Prefix();
  19824. }
  19825. lookahead1W(90); // S^WS | '(:' | '{'
  19826. shift(281); // '{'
  19827. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19828. whitespace();
  19829. parse_URIExpr();
  19830. shift(287); // '}'
  19831. eventHandler.endNonterminal("CompNamespaceConstructor", e0);
  19832. }
  19833. function try_CompNamespaceConstructor()
  19834. {
  19835. shiftT(187); // 'namespace'
  19836. lookahead1W(241); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19837. switch (l1)
  19838. {
  19839. case 281: // '{'
  19840. shiftT(281); // '{'
  19841. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19842. try_PrefixExpr();
  19843. shiftT(287); // '}'
  19844. break;
  19845. default:
  19846. try_Prefix();
  19847. }
  19848. lookahead1W(90); // S^WS | '(:' | '{'
  19849. shiftT(281); // '{'
  19850. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  19851. try_URIExpr();
  19852. shiftT(287); // '}'
  19853. }
  19854. function parse_Prefix()
  19855. {
  19856. eventHandler.startNonterminal("Prefix", e0);
  19857. parse_NCName();
  19858. eventHandler.endNonterminal("Prefix", e0);
  19859. }
  19860. function try_Prefix()
  19861. {
  19862. try_NCName();
  19863. }
  19864. function parse_PrefixExpr()
  19865. {
  19866. eventHandler.startNonterminal("PrefixExpr", e0);
  19867. parse_Expr();
  19868. eventHandler.endNonterminal("PrefixExpr", e0);
  19869. }
  19870. function try_PrefixExpr()
  19871. {
  19872. try_Expr();
  19873. }
  19874. function parse_URIExpr()
  19875. {
  19876. eventHandler.startNonterminal("URIExpr", e0);
  19877. parse_Expr();
  19878. eventHandler.endNonterminal("URIExpr", e0);
  19879. }
  19880. function try_URIExpr()
  19881. {
  19882. try_Expr();
  19883. }
  19884. function parse_FunctionItemExpr()
  19885. {
  19886. eventHandler.startNonterminal("FunctionItemExpr", e0);
  19887. switch (l1)
  19888. {
  19889. case 147: // 'function'
  19890. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  19891. break;
  19892. default:
  19893. lk = l1;
  19894. }
  19895. switch (lk)
  19896. {
  19897. case 33: // '%'
  19898. case 18067: // 'function' '('
  19899. parse_InlineFunctionExpr();
  19900. break;
  19901. default:
  19902. parse_NamedFunctionRef();
  19903. }
  19904. eventHandler.endNonterminal("FunctionItemExpr", e0);
  19905. }
  19906. function try_FunctionItemExpr()
  19907. {
  19908. switch (l1)
  19909. {
  19910. case 147: // 'function'
  19911. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  19912. break;
  19913. default:
  19914. lk = l1;
  19915. }
  19916. switch (lk)
  19917. {
  19918. case 33: // '%'
  19919. case 18067: // 'function' '('
  19920. try_InlineFunctionExpr();
  19921. break;
  19922. default:
  19923. try_NamedFunctionRef();
  19924. }
  19925. }
  19926. function parse_NamedFunctionRef()
  19927. {
  19928. eventHandler.startNonterminal("NamedFunctionRef", e0);
  19929. parse_EQName();
  19930. lookahead1W(20); // S^WS | '#' | '(:'
  19931. shift(29); // '#'
  19932. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  19933. shift(8); // IntegerLiteral
  19934. eventHandler.endNonterminal("NamedFunctionRef", e0);
  19935. }
  19936. function try_NamedFunctionRef()
  19937. {
  19938. try_EQName();
  19939. lookahead1W(20); // S^WS | '#' | '(:'
  19940. shiftT(29); // '#'
  19941. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  19942. shiftT(8); // IntegerLiteral
  19943. }
  19944. function parse_InlineFunctionExpr()
  19945. {
  19946. eventHandler.startNonterminal("InlineFunctionExpr", e0);
  19947. for (;;)
  19948. {
  19949. lookahead1W(101); // S^WS | '%' | '(:' | 'function'
  19950. if (l1 != 33) // '%'
  19951. {
  19952. break;
  19953. }
  19954. whitespace();
  19955. parse_Annotation();
  19956. }
  19957. shift(147); // 'function'
  19958. lookahead1W(22); // S^WS | '(' | '(:'
  19959. shift(35); // '('
  19960. lookahead1W(98); // S^WS | '$' | '(:' | ')'
  19961. if (l1 == 31) // '$'
  19962. {
  19963. whitespace();
  19964. parse_ParamList();
  19965. }
  19966. shift(38); // ')'
  19967. lookahead1W(115); // S^WS | '(:' | 'as' | '{'
  19968. if (l1 == 80) // 'as'
  19969. {
  19970. shift(80); // 'as'
  19971. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  19972. whitespace();
  19973. parse_SequenceType();
  19974. }
  19975. lookahead1W(90); // S^WS | '(:' | '{'
  19976. whitespace();
  19977. parse_FunctionBody();
  19978. eventHandler.endNonterminal("InlineFunctionExpr", e0);
  19979. }
  19980. function try_InlineFunctionExpr()
  19981. {
  19982. for (;;)
  19983. {
  19984. lookahead1W(101); // S^WS | '%' | '(:' | 'function'
  19985. if (l1 != 33) // '%'
  19986. {
  19987. break;
  19988. }
  19989. try_Annotation();
  19990. }
  19991. shiftT(147); // 'function'
  19992. lookahead1W(22); // S^WS | '(' | '(:'
  19993. shiftT(35); // '('
  19994. lookahead1W(98); // S^WS | '$' | '(:' | ')'
  19995. if (l1 == 31) // '$'
  19996. {
  19997. try_ParamList();
  19998. }
  19999. shiftT(38); // ')'
  20000. lookahead1W(115); // S^WS | '(:' | 'as' | '{'
  20001. if (l1 == 80) // 'as'
  20002. {
  20003. shiftT(80); // 'as'
  20004. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  20005. try_SequenceType();
  20006. }
  20007. lookahead1W(90); // S^WS | '(:' | '{'
  20008. try_FunctionBody();
  20009. }
  20010. function parse_SingleType()
  20011. {
  20012. eventHandler.startNonterminal("SingleType", e0);
  20013. parse_SimpleTypeName();
  20014. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  20015. if (l1 == 65) // '?'
  20016. {
  20017. shift(65); // '?'
  20018. }
  20019. eventHandler.endNonterminal("SingleType", e0);
  20020. }
  20021. function try_SingleType()
  20022. {
  20023. try_SimpleTypeName();
  20024. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  20025. if (l1 == 65) // '?'
  20026. {
  20027. shiftT(65); // '?'
  20028. }
  20029. }
  20030. function parse_TypeDeclaration()
  20031. {
  20032. eventHandler.startNonterminal("TypeDeclaration", e0);
  20033. shift(80); // 'as'
  20034. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  20035. whitespace();
  20036. parse_SequenceType();
  20037. eventHandler.endNonterminal("TypeDeclaration", e0);
  20038. }
  20039. function try_TypeDeclaration()
  20040. {
  20041. shiftT(80); // 'as'
  20042. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  20043. try_SequenceType();
  20044. }
  20045. function parse_SequenceType()
  20046. {
  20047. eventHandler.startNonterminal("SequenceType", e0);
  20048. switch (l1)
  20049. {
  20050. case 35: // '('
  20051. lookahead2W(258); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  20052. break;
  20053. case 125: // 'empty-sequence'
  20054. lookahead2W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  20055. break;
  20056. default:
  20057. lk = l1;
  20058. }
  20059. switch (lk)
  20060. {
  20061. case 18045: // 'empty-sequence' '('
  20062. case 19491: // '(' ')'
  20063. if (l1 == 125) // 'empty-sequence'
  20064. {
  20065. shift(125); // 'empty-sequence'
  20066. }
  20067. lookahead1W(22); // S^WS | '(' | '(:'
  20068. shift(35); // '('
  20069. lookahead1W(23); // S^WS | '(:' | ')'
  20070. shift(38); // ')'
  20071. break;
  20072. default:
  20073. parse_ItemType();
  20074. lookahead1W(228); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  20075. switch (l1)
  20076. {
  20077. case 40: // '*'
  20078. case 41: // '+'
  20079. case 65: // '?'
  20080. whitespace();
  20081. parse_OccurrenceIndicator();
  20082. break;
  20083. default:
  20084. break;
  20085. }
  20086. }
  20087. eventHandler.endNonterminal("SequenceType", e0);
  20088. }
  20089. function try_SequenceType()
  20090. {
  20091. switch (l1)
  20092. {
  20093. case 35: // '('
  20094. lookahead2W(258); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  20095. break;
  20096. case 125: // 'empty-sequence'
  20097. lookahead2W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  20098. break;
  20099. default:
  20100. lk = l1;
  20101. }
  20102. switch (lk)
  20103. {
  20104. case 18045: // 'empty-sequence' '('
  20105. case 19491: // '(' ')'
  20106. if (l1 == 125) // 'empty-sequence'
  20107. {
  20108. shiftT(125); // 'empty-sequence'
  20109. }
  20110. lookahead1W(22); // S^WS | '(' | '(:'
  20111. shiftT(35); // '('
  20112. lookahead1W(23); // S^WS | '(:' | ')'
  20113. shiftT(38); // ')'
  20114. break;
  20115. default:
  20116. try_ItemType();
  20117. lookahead1W(228); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  20118. switch (l1)
  20119. {
  20120. case 40: // '*'
  20121. case 41: // '+'
  20122. case 65: // '?'
  20123. try_OccurrenceIndicator();
  20124. break;
  20125. default:
  20126. break;
  20127. }
  20128. }
  20129. }
  20130. function parse_OccurrenceIndicator()
  20131. {
  20132. eventHandler.startNonterminal("OccurrenceIndicator", e0);
  20133. switch (l1)
  20134. {
  20135. case 65: // '?'
  20136. shift(65); // '?'
  20137. break;
  20138. case 40: // '*'
  20139. shift(40); // '*'
  20140. break;
  20141. default:
  20142. shift(41); // '+'
  20143. }
  20144. eventHandler.endNonterminal("OccurrenceIndicator", e0);
  20145. }
  20146. function try_OccurrenceIndicator()
  20147. {
  20148. switch (l1)
  20149. {
  20150. case 65: // '?'
  20151. shiftT(65); // '?'
  20152. break;
  20153. case 40: // '*'
  20154. shiftT(40); // '*'
  20155. break;
  20156. default:
  20157. shiftT(41); // '+'
  20158. }
  20159. }
  20160. function parse_ItemType()
  20161. {
  20162. eventHandler.startNonterminal("ItemType", e0);
  20163. switch (l1)
  20164. {
  20165. case 79: // 'array'
  20166. case 83: // 'attribute'
  20167. case 97: // 'comment'
  20168. case 121: // 'document-node'
  20169. case 122: // 'element'
  20170. case 147: // 'function'
  20171. case 167: // 'item'
  20172. case 169: // 'json-item'
  20173. case 188: // 'namespace-node'
  20174. case 194: // 'node'
  20175. case 198: // 'object'
  20176. case 220: // 'processing-instruction'
  20177. case 230: // 'schema-attribute'
  20178. case 231: // 'schema-element'
  20179. case 247: // 'structured-item'
  20180. case 249: // 'text'
  20181. lookahead2W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  20182. break;
  20183. default:
  20184. lk = l1;
  20185. }
  20186. if (lk == 12879 // 'array' EOF
  20187. || lk == 12969 // 'json-item' EOF
  20188. || lk == 12998 // 'object' EOF
  20189. || lk == 13047 // 'structured-item' EOF
  20190. || lk == 13903 // 'array' '!='
  20191. || lk == 13993 // 'json-item' '!='
  20192. || lk == 14022 // 'object' '!='
  20193. || lk == 14071 // 'structured-item' '!='
  20194. || lk == 19535 // 'array' ')'
  20195. || lk == 19625 // 'json-item' ')'
  20196. || lk == 19654 // 'object' ')'
  20197. || lk == 19703 // 'structured-item' ')'
  20198. || lk == 20047 // 'array' '*'
  20199. || lk == 20137 // 'json-item' '*'
  20200. || lk == 20166 // 'object' '*'
  20201. || lk == 20215 // 'structured-item' '*'
  20202. || lk == 20559 // 'array' '*'
  20203. || lk == 20649 // 'json-item' '*'
  20204. || lk == 20678 // 'object' '*'
  20205. || lk == 20727 // 'structured-item' '*'
  20206. || lk == 21071 // 'array' '+'
  20207. || lk == 21161 // 'json-item' '+'
  20208. || lk == 21190 // 'object' '+'
  20209. || lk == 21239 // 'structured-item' '+'
  20210. || lk == 21583 // 'array' ','
  20211. || lk == 21673 // 'json-item' ','
  20212. || lk == 21702 // 'object' ','
  20213. || lk == 21751 // 'structured-item' ','
  20214. || lk == 22095 // 'array' '-'
  20215. || lk == 22185 // 'json-item' '-'
  20216. || lk == 22214 // 'object' '-'
  20217. || lk == 22263 // 'structured-item' '-'
  20218. || lk == 25679 // 'array' ':'
  20219. || lk == 25769 // 'json-item' ':'
  20220. || lk == 25798 // 'object' ':'
  20221. || lk == 25847 // 'structured-item' ':'
  20222. || lk == 27215 // 'array' ':='
  20223. || lk == 27305 // 'json-item' ':='
  20224. || lk == 27334 // 'object' ':='
  20225. || lk == 27383 // 'structured-item' ':='
  20226. || lk == 27727 // 'array' ';'
  20227. || lk == 27817 // 'json-item' ';'
  20228. || lk == 27846 // 'object' ';'
  20229. || lk == 27895 // 'structured-item' ';'
  20230. || lk == 28239 // 'array' '<'
  20231. || lk == 28329 // 'json-item' '<'
  20232. || lk == 28358 // 'object' '<'
  20233. || lk == 28407 // 'structured-item' '<'
  20234. || lk == 29775 // 'array' '<<'
  20235. || lk == 29865 // 'json-item' '<<'
  20236. || lk == 29894 // 'object' '<<'
  20237. || lk == 29943 // 'structured-item' '<<'
  20238. || lk == 30287 // 'array' '<='
  20239. || lk == 30377 // 'json-item' '<='
  20240. || lk == 30406 // 'object' '<='
  20241. || lk == 30455 // 'structured-item' '<='
  20242. || lk == 31311 // 'array' '='
  20243. || lk == 31401 // 'json-item' '='
  20244. || lk == 31430 // 'object' '='
  20245. || lk == 31479 // 'structured-item' '='
  20246. || lk == 31823 // 'array' '>'
  20247. || lk == 31913 // 'json-item' '>'
  20248. || lk == 31942 // 'object' '>'
  20249. || lk == 31991 // 'structured-item' '>'
  20250. || lk == 32335 // 'array' '>='
  20251. || lk == 32425 // 'json-item' '>='
  20252. || lk == 32454 // 'object' '>='
  20253. || lk == 32503 // 'structured-item' '>='
  20254. || lk == 32847 // 'array' '>>'
  20255. || lk == 32937 // 'json-item' '>>'
  20256. || lk == 32966 // 'object' '>>'
  20257. || lk == 33015 // 'structured-item' '>>'
  20258. || lk == 33359 // 'array' '?'
  20259. || lk == 33449 // 'json-item' '?'
  20260. || lk == 33478 // 'object' '?'
  20261. || lk == 33527 // 'structured-item' '?'
  20262. || lk == 35919 // 'array' ']'
  20263. || lk == 36009 // 'json-item' ']'
  20264. || lk == 36038 // 'object' ']'
  20265. || lk == 36087 // 'structured-item' ']'
  20266. || lk == 36431 // 'array' 'after'
  20267. || lk == 36521 // 'json-item' 'after'
  20268. || lk == 36550 // 'object' 'after'
  20269. || lk == 36599 // 'structured-item' 'after'
  20270. || lk == 37455 // 'array' 'allowing'
  20271. || lk == 37545 // 'json-item' 'allowing'
  20272. || lk == 37574 // 'object' 'allowing'
  20273. || lk == 37623 // 'structured-item' 'allowing'
  20274. || lk == 38991 // 'array' 'and'
  20275. || lk == 39081 // 'json-item' 'and'
  20276. || lk == 39110 // 'object' 'and'
  20277. || lk == 39159 // 'structured-item' 'and'
  20278. || lk == 41039 // 'array' 'as'
  20279. || lk == 41129 // 'json-item' 'as'
  20280. || lk == 41158 // 'object' 'as'
  20281. || lk == 41207 // 'structured-item' 'as'
  20282. || lk == 41551 // 'array' 'ascending'
  20283. || lk == 41641 // 'json-item' 'ascending'
  20284. || lk == 41670 // 'object' 'ascending'
  20285. || lk == 41719 // 'structured-item' 'ascending'
  20286. || lk == 42063 // 'array' 'at'
  20287. || lk == 42153 // 'json-item' 'at'
  20288. || lk == 42182 // 'object' 'at'
  20289. || lk == 42231 // 'structured-item' 'at'
  20290. || lk == 43599 // 'array' 'before'
  20291. || lk == 43689 // 'json-item' 'before'
  20292. || lk == 43718 // 'object' 'before'
  20293. || lk == 43767 // 'structured-item' 'before'
  20294. || lk == 45647 // 'array' 'case'
  20295. || lk == 45737 // 'json-item' 'case'
  20296. || lk == 45766 // 'object' 'case'
  20297. || lk == 45815 // 'structured-item' 'case'
  20298. || lk == 48719 // 'array' 'collation'
  20299. || lk == 48809 // 'json-item' 'collation'
  20300. || lk == 48838 // 'object' 'collation'
  20301. || lk == 48887 // 'structured-item' 'collation'
  20302. || lk == 51279 // 'array' 'contains'
  20303. || lk == 51369 // 'json-item' 'contains'
  20304. || lk == 51398 // 'object' 'contains'
  20305. || lk == 51447 // 'structured-item' 'contains'
  20306. || lk == 54351 // 'array' 'count'
  20307. || lk == 54441 // 'json-item' 'count'
  20308. || lk == 54470 // 'object' 'count'
  20309. || lk == 54519 // 'structured-item' 'count'
  20310. || lk == 56399 // 'array' 'default'
  20311. || lk == 56489 // 'json-item' 'default'
  20312. || lk == 56518 // 'object' 'default'
  20313. || lk == 56567 // 'structured-item' 'default'
  20314. || lk == 58447 // 'array' 'descending'
  20315. || lk == 58537 // 'json-item' 'descending'
  20316. || lk == 58566 // 'object' 'descending'
  20317. || lk == 58615 // 'structured-item' 'descending'
  20318. || lk == 61007 // 'array' 'div'
  20319. || lk == 61097 // 'json-item' 'div'
  20320. || lk == 61126 // 'object' 'div'
  20321. || lk == 61175 // 'structured-item' 'div'
  20322. || lk == 63055 // 'array' 'else'
  20323. || lk == 63145 // 'json-item' 'else'
  20324. || lk == 63174 // 'object' 'else'
  20325. || lk == 63223 // 'structured-item' 'else'
  20326. || lk == 63567 // 'array' 'empty'
  20327. || lk == 63657 // 'json-item' 'empty'
  20328. || lk == 63686 // 'object' 'empty'
  20329. || lk == 63735 // 'structured-item' 'empty'
  20330. || lk == 65103 // 'array' 'end'
  20331. || lk == 65193 // 'json-item' 'end'
  20332. || lk == 65222 // 'object' 'end'
  20333. || lk == 65271 // 'structured-item' 'end'
  20334. || lk == 66127 // 'array' 'eq'
  20335. || lk == 66217 // 'json-item' 'eq'
  20336. || lk == 66246 // 'object' 'eq'
  20337. || lk == 66295 // 'structured-item' 'eq'
  20338. || lk == 67663 // 'array' 'except'
  20339. || lk == 67753 // 'json-item' 'except'
  20340. || lk == 67782 // 'object' 'except'
  20341. || lk == 67831 // 'structured-item' 'except'
  20342. || lk == 68687 // 'array' 'external'
  20343. || lk == 68777 // 'json-item' 'external'
  20344. || lk == 68806 // 'object' 'external'
  20345. || lk == 68855 // 'structured-item' 'external'
  20346. || lk == 71247 // 'array' 'for'
  20347. || lk == 71337 // 'json-item' 'for'
  20348. || lk == 71366 // 'object' 'for'
  20349. || lk == 71415 // 'structured-item' 'for'
  20350. || lk == 75855 // 'array' 'ge'
  20351. || lk == 75945 // 'json-item' 'ge'
  20352. || lk == 75974 // 'object' 'ge'
  20353. || lk == 76023 // 'structured-item' 'ge'
  20354. || lk == 76879 // 'array' 'group'
  20355. || lk == 76969 // 'json-item' 'group'
  20356. || lk == 76998 // 'object' 'group'
  20357. || lk == 77047 // 'structured-item' 'group'
  20358. || lk == 77903 // 'array' 'gt'
  20359. || lk == 77993 // 'json-item' 'gt'
  20360. || lk == 78022 // 'object' 'gt'
  20361. || lk == 78071 // 'structured-item' 'gt'
  20362. || lk == 78415 // 'array' 'idiv'
  20363. || lk == 78505 // 'json-item' 'idiv'
  20364. || lk == 78534 // 'object' 'idiv'
  20365. || lk == 78583 // 'structured-item' 'idiv'
  20366. || lk == 79951 // 'array' 'in'
  20367. || lk == 80041 // 'json-item' 'in'
  20368. || lk == 80070 // 'object' 'in'
  20369. || lk == 80119 // 'structured-item' 'in'
  20370. || lk == 83023 // 'array' 'instance'
  20371. || lk == 83113 // 'json-item' 'instance'
  20372. || lk == 83142 // 'object' 'instance'
  20373. || lk == 83191 // 'structured-item' 'instance'
  20374. || lk == 84047 // 'array' 'intersect'
  20375. || lk == 84137 // 'json-item' 'intersect'
  20376. || lk == 84166 // 'object' 'intersect'
  20377. || lk == 84215 // 'structured-item' 'intersect'
  20378. || lk == 84559 // 'array' 'into'
  20379. || lk == 84649 // 'json-item' 'into'
  20380. || lk == 84678 // 'object' 'into'
  20381. || lk == 84727 // 'structured-item' 'into'
  20382. || lk == 85071 // 'array' 'is'
  20383. || lk == 85161 // 'json-item' 'is'
  20384. || lk == 85190 // 'object' 'is'
  20385. || lk == 85239 // 'structured-item' 'is'
  20386. || lk == 89679 // 'array' 'le'
  20387. || lk == 89769 // 'json-item' 'le'
  20388. || lk == 89798 // 'object' 'le'
  20389. || lk == 89847 // 'structured-item' 'le'
  20390. || lk == 90703 // 'array' 'let'
  20391. || lk == 90793 // 'json-item' 'let'
  20392. || lk == 90822 // 'object' 'let'
  20393. || lk == 90871 // 'structured-item' 'let'
  20394. || lk == 92751 // 'array' 'lt'
  20395. || lk == 92841 // 'json-item' 'lt'
  20396. || lk == 92870 // 'object' 'lt'
  20397. || lk == 92919 // 'structured-item' 'lt'
  20398. || lk == 93775 // 'array' 'mod'
  20399. || lk == 93865 // 'json-item' 'mod'
  20400. || lk == 93894 // 'object' 'mod'
  20401. || lk == 93943 // 'structured-item' 'mod'
  20402. || lk == 94287 // 'array' 'modify'
  20403. || lk == 94377 // 'json-item' 'modify'
  20404. || lk == 94406 // 'object' 'modify'
  20405. || lk == 94455 // 'structured-item' 'modify'
  20406. || lk == 96847 // 'array' 'ne'
  20407. || lk == 96937 // 'json-item' 'ne'
  20408. || lk == 96966 // 'object' 'ne'
  20409. || lk == 97015 // 'structured-item' 'ne'
  20410. || lk == 103503 // 'array' 'only'
  20411. || lk == 103593 // 'json-item' 'only'
  20412. || lk == 103622 // 'object' 'only'
  20413. || lk == 103671 // 'structured-item' 'only'
  20414. || lk == 104527 // 'array' 'or'
  20415. || lk == 104617 // 'json-item' 'or'
  20416. || lk == 104646 // 'object' 'or'
  20417. || lk == 104695 // 'structured-item' 'or'
  20418. || lk == 105039 // 'array' 'order'
  20419. || lk == 105129 // 'json-item' 'order'
  20420. || lk == 105158 // 'object' 'order'
  20421. || lk == 105207 // 'structured-item' 'order'
  20422. || lk == 107087 // 'array' 'paragraphs'
  20423. || lk == 107177 // 'json-item' 'paragraphs'
  20424. || lk == 107206 // 'object' 'paragraphs'
  20425. || lk == 107255 // 'structured-item' 'paragraphs'
  20426. || lk == 114767 // 'array' 'return'
  20427. || lk == 114857 // 'json-item' 'return'
  20428. || lk == 114886 // 'object' 'return'
  20429. || lk == 114935 // 'structured-item' 'return'
  20430. || lk == 116815 // 'array' 'satisfies'
  20431. || lk == 116905 // 'json-item' 'satisfies'
  20432. || lk == 116934 // 'object' 'satisfies'
  20433. || lk == 116983 // 'structured-item' 'satisfies'
  20434. || lk == 118863 // 'array' 'score'
  20435. || lk == 118953 // 'json-item' 'score'
  20436. || lk == 118982 // 'object' 'score'
  20437. || lk == 119031 // 'structured-item' 'score'
  20438. || lk == 121423 // 'array' 'sentences'
  20439. || lk == 121513 // 'json-item' 'sentences'
  20440. || lk == 121542 // 'object' 'sentences'
  20441. || lk == 121591 // 'structured-item' 'sentences'
  20442. || lk == 123471 // 'array' 'stable'
  20443. || lk == 123561 // 'json-item' 'stable'
  20444. || lk == 123590 // 'object' 'stable'
  20445. || lk == 123639 // 'structured-item' 'stable'
  20446. || lk == 123983 // 'array' 'start'
  20447. || lk == 124073 // 'json-item' 'start'
  20448. || lk == 124102 // 'object' 'start'
  20449. || lk == 124151 // 'structured-item' 'start'
  20450. || lk == 129103 // 'array' 'times'
  20451. || lk == 129193 // 'json-item' 'times'
  20452. || lk == 129222 // 'object' 'times'
  20453. || lk == 129271 // 'structured-item' 'times'
  20454. || lk == 129615 // 'array' 'to'
  20455. || lk == 129705 // 'json-item' 'to'
  20456. || lk == 129734 // 'object' 'to'
  20457. || lk == 129783 // 'structured-item' 'to'
  20458. || lk == 133199 // 'array' 'union'
  20459. || lk == 133289 // 'json-item' 'union'
  20460. || lk == 133318 // 'object' 'union'
  20461. || lk == 133367 // 'structured-item' 'union'
  20462. || lk == 139343 // 'array' 'where'
  20463. || lk == 139433 // 'json-item' 'where'
  20464. || lk == 139462 // 'object' 'where'
  20465. || lk == 139511 // 'structured-item' 'where'
  20466. || lk == 141391 // 'array' 'with'
  20467. || lk == 141481 // 'json-item' 'with'
  20468. || lk == 141510 // 'object' 'with'
  20469. || lk == 141559 // 'structured-item' 'with'
  20470. || lk == 142927 // 'array' 'words'
  20471. || lk == 143017 // 'json-item' 'words'
  20472. || lk == 143046 // 'object' 'words'
  20473. || lk == 143095 // 'structured-item' 'words'
  20474. || lk == 143951 // 'array' '{'
  20475. || lk == 144041 // 'json-item' '{'
  20476. || lk == 144070 // 'object' '{'
  20477. || lk == 144119 // 'structured-item' '{'
  20478. || lk == 145487 // 'array' '|'
  20479. || lk == 145577 // 'json-item' '|'
  20480. || lk == 145606 // 'object' '|'
  20481. || lk == 145655 // 'structured-item' '|'
  20482. || lk == 145999 // 'array' '||'
  20483. || lk == 146089 // 'json-item' '||'
  20484. || lk == 146118 // 'object' '||'
  20485. || lk == 146167 // 'structured-item' '||'
  20486. || lk == 146511 // 'array' '|}'
  20487. || lk == 146601 // 'json-item' '|}'
  20488. || lk == 146630 // 'object' '|}'
  20489. || lk == 146679 // 'structured-item' '|}'
  20490. || lk == 147023 // 'array' '}'
  20491. || lk == 147113 // 'json-item' '}'
  20492. || lk == 147142 // 'object' '}'
  20493. || lk == 147191) // 'structured-item' '}'
  20494. {
  20495. lk = memoized(6, e0);
  20496. if (lk == 0)
  20497. {
  20498. var b0A = b0; var e0A = e0; var l1A = l1;
  20499. var b1A = b1; var e1A = e1; var l2A = l2;
  20500. var b2A = b2; var e2A = e2;
  20501. try
  20502. {
  20503. try_AtomicOrUnionType();
  20504. lk = -4;
  20505. }
  20506. catch (p4A)
  20507. {
  20508. try
  20509. {
  20510. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  20511. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  20512. b2 = b2A; e2 = e2A; end = e2A; }}
  20513. try_JSONTest();
  20514. lk = -6;
  20515. }
  20516. catch (p6A)
  20517. {
  20518. lk = -7;
  20519. }
  20520. }
  20521. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  20522. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  20523. b2 = b2A; e2 = e2A; end = e2A; }}
  20524. memoize(6, e0, lk);
  20525. }
  20526. }
  20527. switch (lk)
  20528. {
  20529. case 18003: // 'attribute' '('
  20530. case 18017: // 'comment' '('
  20531. case 18041: // 'document-node' '('
  20532. case 18042: // 'element' '('
  20533. case 18108: // 'namespace-node' '('
  20534. case 18114: // 'node' '('
  20535. case 18140: // 'processing-instruction' '('
  20536. case 18150: // 'schema-attribute' '('
  20537. case 18151: // 'schema-element' '('
  20538. case 18169: // 'text' '('
  20539. parse_KindTest();
  20540. break;
  20541. case 18087: // 'item' '('
  20542. shift(167); // 'item'
  20543. lookahead1W(22); // S^WS | '(' | '(:'
  20544. shift(35); // '('
  20545. lookahead1W(23); // S^WS | '(:' | ')'
  20546. shift(38); // ')'
  20547. break;
  20548. case 33: // '%'
  20549. case 18067: // 'function' '('
  20550. parse_FunctionTest();
  20551. break;
  20552. case 35: // '('
  20553. parse_ParenthesizedItemType();
  20554. break;
  20555. case -6:
  20556. case 17999: // 'array' '('
  20557. case 18089: // 'json-item' '('
  20558. case 18118: // 'object' '('
  20559. parse_JSONTest();
  20560. break;
  20561. case -7:
  20562. case 18167: // 'structured-item' '('
  20563. parse_StructuredItemTest();
  20564. break;
  20565. default:
  20566. parse_AtomicOrUnionType();
  20567. }
  20568. eventHandler.endNonterminal("ItemType", e0);
  20569. }
  20570. function try_ItemType()
  20571. {
  20572. switch (l1)
  20573. {
  20574. case 79: // 'array'
  20575. case 83: // 'attribute'
  20576. case 97: // 'comment'
  20577. case 121: // 'document-node'
  20578. case 122: // 'element'
  20579. case 147: // 'function'
  20580. case 167: // 'item'
  20581. case 169: // 'json-item'
  20582. case 188: // 'namespace-node'
  20583. case 194: // 'node'
  20584. case 198: // 'object'
  20585. case 220: // 'processing-instruction'
  20586. case 230: // 'schema-attribute'
  20587. case 231: // 'schema-element'
  20588. case 247: // 'structured-item'
  20589. case 249: // 'text'
  20590. lookahead2W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  20591. break;
  20592. default:
  20593. lk = l1;
  20594. }
  20595. if (lk == 12879 // 'array' EOF
  20596. || lk == 12969 // 'json-item' EOF
  20597. || lk == 12998 // 'object' EOF
  20598. || lk == 13047 // 'structured-item' EOF
  20599. || lk == 13903 // 'array' '!='
  20600. || lk == 13993 // 'json-item' '!='
  20601. || lk == 14022 // 'object' '!='
  20602. || lk == 14071 // 'structured-item' '!='
  20603. || lk == 19535 // 'array' ')'
  20604. || lk == 19625 // 'json-item' ')'
  20605. || lk == 19654 // 'object' ')'
  20606. || lk == 19703 // 'structured-item' ')'
  20607. || lk == 20047 // 'array' '*'
  20608. || lk == 20137 // 'json-item' '*'
  20609. || lk == 20166 // 'object' '*'
  20610. || lk == 20215 // 'structured-item' '*'
  20611. || lk == 20559 // 'array' '*'
  20612. || lk == 20649 // 'json-item' '*'
  20613. || lk == 20678 // 'object' '*'
  20614. || lk == 20727 // 'structured-item' '*'
  20615. || lk == 21071 // 'array' '+'
  20616. || lk == 21161 // 'json-item' '+'
  20617. || lk == 21190 // 'object' '+'
  20618. || lk == 21239 // 'structured-item' '+'
  20619. || lk == 21583 // 'array' ','
  20620. || lk == 21673 // 'json-item' ','
  20621. || lk == 21702 // 'object' ','
  20622. || lk == 21751 // 'structured-item' ','
  20623. || lk == 22095 // 'array' '-'
  20624. || lk == 22185 // 'json-item' '-'
  20625. || lk == 22214 // 'object' '-'
  20626. || lk == 22263 // 'structured-item' '-'
  20627. || lk == 25679 // 'array' ':'
  20628. || lk == 25769 // 'json-item' ':'
  20629. || lk == 25798 // 'object' ':'
  20630. || lk == 25847 // 'structured-item' ':'
  20631. || lk == 27215 // 'array' ':='
  20632. || lk == 27305 // 'json-item' ':='
  20633. || lk == 27334 // 'object' ':='
  20634. || lk == 27383 // 'structured-item' ':='
  20635. || lk == 27727 // 'array' ';'
  20636. || lk == 27817 // 'json-item' ';'
  20637. || lk == 27846 // 'object' ';'
  20638. || lk == 27895 // 'structured-item' ';'
  20639. || lk == 28239 // 'array' '<'
  20640. || lk == 28329 // 'json-item' '<'
  20641. || lk == 28358 // 'object' '<'
  20642. || lk == 28407 // 'structured-item' '<'
  20643. || lk == 29775 // 'array' '<<'
  20644. || lk == 29865 // 'json-item' '<<'
  20645. || lk == 29894 // 'object' '<<'
  20646. || lk == 29943 // 'structured-item' '<<'
  20647. || lk == 30287 // 'array' '<='
  20648. || lk == 30377 // 'json-item' '<='
  20649. || lk == 30406 // 'object' '<='
  20650. || lk == 30455 // 'structured-item' '<='
  20651. || lk == 31311 // 'array' '='
  20652. || lk == 31401 // 'json-item' '='
  20653. || lk == 31430 // 'object' '='
  20654. || lk == 31479 // 'structured-item' '='
  20655. || lk == 31823 // 'array' '>'
  20656. || lk == 31913 // 'json-item' '>'
  20657. || lk == 31942 // 'object' '>'
  20658. || lk == 31991 // 'structured-item' '>'
  20659. || lk == 32335 // 'array' '>='
  20660. || lk == 32425 // 'json-item' '>='
  20661. || lk == 32454 // 'object' '>='
  20662. || lk == 32503 // 'structured-item' '>='
  20663. || lk == 32847 // 'array' '>>'
  20664. || lk == 32937 // 'json-item' '>>'
  20665. || lk == 32966 // 'object' '>>'
  20666. || lk == 33015 // 'structured-item' '>>'
  20667. || lk == 33359 // 'array' '?'
  20668. || lk == 33449 // 'json-item' '?'
  20669. || lk == 33478 // 'object' '?'
  20670. || lk == 33527 // 'structured-item' '?'
  20671. || lk == 35919 // 'array' ']'
  20672. || lk == 36009 // 'json-item' ']'
  20673. || lk == 36038 // 'object' ']'
  20674. || lk == 36087 // 'structured-item' ']'
  20675. || lk == 36431 // 'array' 'after'
  20676. || lk == 36521 // 'json-item' 'after'
  20677. || lk == 36550 // 'object' 'after'
  20678. || lk == 36599 // 'structured-item' 'after'
  20679. || lk == 37455 // 'array' 'allowing'
  20680. || lk == 37545 // 'json-item' 'allowing'
  20681. || lk == 37574 // 'object' 'allowing'
  20682. || lk == 37623 // 'structured-item' 'allowing'
  20683. || lk == 38991 // 'array' 'and'
  20684. || lk == 39081 // 'json-item' 'and'
  20685. || lk == 39110 // 'object' 'and'
  20686. || lk == 39159 // 'structured-item' 'and'
  20687. || lk == 41039 // 'array' 'as'
  20688. || lk == 41129 // 'json-item' 'as'
  20689. || lk == 41158 // 'object' 'as'
  20690. || lk == 41207 // 'structured-item' 'as'
  20691. || lk == 41551 // 'array' 'ascending'
  20692. || lk == 41641 // 'json-item' 'ascending'
  20693. || lk == 41670 // 'object' 'ascending'
  20694. || lk == 41719 // 'structured-item' 'ascending'
  20695. || lk == 42063 // 'array' 'at'
  20696. || lk == 42153 // 'json-item' 'at'
  20697. || lk == 42182 // 'object' 'at'
  20698. || lk == 42231 // 'structured-item' 'at'
  20699. || lk == 43599 // 'array' 'before'
  20700. || lk == 43689 // 'json-item' 'before'
  20701. || lk == 43718 // 'object' 'before'
  20702. || lk == 43767 // 'structured-item' 'before'
  20703. || lk == 45647 // 'array' 'case'
  20704. || lk == 45737 // 'json-item' 'case'
  20705. || lk == 45766 // 'object' 'case'
  20706. || lk == 45815 // 'structured-item' 'case'
  20707. || lk == 48719 // 'array' 'collation'
  20708. || lk == 48809 // 'json-item' 'collation'
  20709. || lk == 48838 // 'object' 'collation'
  20710. || lk == 48887 // 'structured-item' 'collation'
  20711. || lk == 51279 // 'array' 'contains'
  20712. || lk == 51369 // 'json-item' 'contains'
  20713. || lk == 51398 // 'object' 'contains'
  20714. || lk == 51447 // 'structured-item' 'contains'
  20715. || lk == 54351 // 'array' 'count'
  20716. || lk == 54441 // 'json-item' 'count'
  20717. || lk == 54470 // 'object' 'count'
  20718. || lk == 54519 // 'structured-item' 'count'
  20719. || lk == 56399 // 'array' 'default'
  20720. || lk == 56489 // 'json-item' 'default'
  20721. || lk == 56518 // 'object' 'default'
  20722. || lk == 56567 // 'structured-item' 'default'
  20723. || lk == 58447 // 'array' 'descending'
  20724. || lk == 58537 // 'json-item' 'descending'
  20725. || lk == 58566 // 'object' 'descending'
  20726. || lk == 58615 // 'structured-item' 'descending'
  20727. || lk == 61007 // 'array' 'div'
  20728. || lk == 61097 // 'json-item' 'div'
  20729. || lk == 61126 // 'object' 'div'
  20730. || lk == 61175 // 'structured-item' 'div'
  20731. || lk == 63055 // 'array' 'else'
  20732. || lk == 63145 // 'json-item' 'else'
  20733. || lk == 63174 // 'object' 'else'
  20734. || lk == 63223 // 'structured-item' 'else'
  20735. || lk == 63567 // 'array' 'empty'
  20736. || lk == 63657 // 'json-item' 'empty'
  20737. || lk == 63686 // 'object' 'empty'
  20738. || lk == 63735 // 'structured-item' 'empty'
  20739. || lk == 65103 // 'array' 'end'
  20740. || lk == 65193 // 'json-item' 'end'
  20741. || lk == 65222 // 'object' 'end'
  20742. || lk == 65271 // 'structured-item' 'end'
  20743. || lk == 66127 // 'array' 'eq'
  20744. || lk == 66217 // 'json-item' 'eq'
  20745. || lk == 66246 // 'object' 'eq'
  20746. || lk == 66295 // 'structured-item' 'eq'
  20747. || lk == 67663 // 'array' 'except'
  20748. || lk == 67753 // 'json-item' 'except'
  20749. || lk == 67782 // 'object' 'except'
  20750. || lk == 67831 // 'structured-item' 'except'
  20751. || lk == 68687 // 'array' 'external'
  20752. || lk == 68777 // 'json-item' 'external'
  20753. || lk == 68806 // 'object' 'external'
  20754. || lk == 68855 // 'structured-item' 'external'
  20755. || lk == 71247 // 'array' 'for'
  20756. || lk == 71337 // 'json-item' 'for'
  20757. || lk == 71366 // 'object' 'for'
  20758. || lk == 71415 // 'structured-item' 'for'
  20759. || lk == 75855 // 'array' 'ge'
  20760. || lk == 75945 // 'json-item' 'ge'
  20761. || lk == 75974 // 'object' 'ge'
  20762. || lk == 76023 // 'structured-item' 'ge'
  20763. || lk == 76879 // 'array' 'group'
  20764. || lk == 76969 // 'json-item' 'group'
  20765. || lk == 76998 // 'object' 'group'
  20766. || lk == 77047 // 'structured-item' 'group'
  20767. || lk == 77903 // 'array' 'gt'
  20768. || lk == 77993 // 'json-item' 'gt'
  20769. || lk == 78022 // 'object' 'gt'
  20770. || lk == 78071 // 'structured-item' 'gt'
  20771. || lk == 78415 // 'array' 'idiv'
  20772. || lk == 78505 // 'json-item' 'idiv'
  20773. || lk == 78534 // 'object' 'idiv'
  20774. || lk == 78583 // 'structured-item' 'idiv'
  20775. || lk == 79951 // 'array' 'in'
  20776. || lk == 80041 // 'json-item' 'in'
  20777. || lk == 80070 // 'object' 'in'
  20778. || lk == 80119 // 'structured-item' 'in'
  20779. || lk == 83023 // 'array' 'instance'
  20780. || lk == 83113 // 'json-item' 'instance'
  20781. || lk == 83142 // 'object' 'instance'
  20782. || lk == 83191 // 'structured-item' 'instance'
  20783. || lk == 84047 // 'array' 'intersect'
  20784. || lk == 84137 // 'json-item' 'intersect'
  20785. || lk == 84166 // 'object' 'intersect'
  20786. || lk == 84215 // 'structured-item' 'intersect'
  20787. || lk == 84559 // 'array' 'into'
  20788. || lk == 84649 // 'json-item' 'into'
  20789. || lk == 84678 // 'object' 'into'
  20790. || lk == 84727 // 'structured-item' 'into'
  20791. || lk == 85071 // 'array' 'is'
  20792. || lk == 85161 // 'json-item' 'is'
  20793. || lk == 85190 // 'object' 'is'
  20794. || lk == 85239 // 'structured-item' 'is'
  20795. || lk == 89679 // 'array' 'le'
  20796. || lk == 89769 // 'json-item' 'le'
  20797. || lk == 89798 // 'object' 'le'
  20798. || lk == 89847 // 'structured-item' 'le'
  20799. || lk == 90703 // 'array' 'let'
  20800. || lk == 90793 // 'json-item' 'let'
  20801. || lk == 90822 // 'object' 'let'
  20802. || lk == 90871 // 'structured-item' 'let'
  20803. || lk == 92751 // 'array' 'lt'
  20804. || lk == 92841 // 'json-item' 'lt'
  20805. || lk == 92870 // 'object' 'lt'
  20806. || lk == 92919 // 'structured-item' 'lt'
  20807. || lk == 93775 // 'array' 'mod'
  20808. || lk == 93865 // 'json-item' 'mod'
  20809. || lk == 93894 // 'object' 'mod'
  20810. || lk == 93943 // 'structured-item' 'mod'
  20811. || lk == 94287 // 'array' 'modify'
  20812. || lk == 94377 // 'json-item' 'modify'
  20813. || lk == 94406 // 'object' 'modify'
  20814. || lk == 94455 // 'structured-item' 'modify'
  20815. || lk == 96847 // 'array' 'ne'
  20816. || lk == 96937 // 'json-item' 'ne'
  20817. || lk == 96966 // 'object' 'ne'
  20818. || lk == 97015 // 'structured-item' 'ne'
  20819. || lk == 103503 // 'array' 'only'
  20820. || lk == 103593 // 'json-item' 'only'
  20821. || lk == 103622 // 'object' 'only'
  20822. || lk == 103671 // 'structured-item' 'only'
  20823. || lk == 104527 // 'array' 'or'
  20824. || lk == 104617 // 'json-item' 'or'
  20825. || lk == 104646 // 'object' 'or'
  20826. || lk == 104695 // 'structured-item' 'or'
  20827. || lk == 105039 // 'array' 'order'
  20828. || lk == 105129 // 'json-item' 'order'
  20829. || lk == 105158 // 'object' 'order'
  20830. || lk == 105207 // 'structured-item' 'order'
  20831. || lk == 107087 // 'array' 'paragraphs'
  20832. || lk == 107177 // 'json-item' 'paragraphs'
  20833. || lk == 107206 // 'object' 'paragraphs'
  20834. || lk == 107255 // 'structured-item' 'paragraphs'
  20835. || lk == 114767 // 'array' 'return'
  20836. || lk == 114857 // 'json-item' 'return'
  20837. || lk == 114886 // 'object' 'return'
  20838. || lk == 114935 // 'structured-item' 'return'
  20839. || lk == 116815 // 'array' 'satisfies'
  20840. || lk == 116905 // 'json-item' 'satisfies'
  20841. || lk == 116934 // 'object' 'satisfies'
  20842. || lk == 116983 // 'structured-item' 'satisfies'
  20843. || lk == 118863 // 'array' 'score'
  20844. || lk == 118953 // 'json-item' 'score'
  20845. || lk == 118982 // 'object' 'score'
  20846. || lk == 119031 // 'structured-item' 'score'
  20847. || lk == 121423 // 'array' 'sentences'
  20848. || lk == 121513 // 'json-item' 'sentences'
  20849. || lk == 121542 // 'object' 'sentences'
  20850. || lk == 121591 // 'structured-item' 'sentences'
  20851. || lk == 123471 // 'array' 'stable'
  20852. || lk == 123561 // 'json-item' 'stable'
  20853. || lk == 123590 // 'object' 'stable'
  20854. || lk == 123639 // 'structured-item' 'stable'
  20855. || lk == 123983 // 'array' 'start'
  20856. || lk == 124073 // 'json-item' 'start'
  20857. || lk == 124102 // 'object' 'start'
  20858. || lk == 124151 // 'structured-item' 'start'
  20859. || lk == 129103 // 'array' 'times'
  20860. || lk == 129193 // 'json-item' 'times'
  20861. || lk == 129222 // 'object' 'times'
  20862. || lk == 129271 // 'structured-item' 'times'
  20863. || lk == 129615 // 'array' 'to'
  20864. || lk == 129705 // 'json-item' 'to'
  20865. || lk == 129734 // 'object' 'to'
  20866. || lk == 129783 // 'structured-item' 'to'
  20867. || lk == 133199 // 'array' 'union'
  20868. || lk == 133289 // 'json-item' 'union'
  20869. || lk == 133318 // 'object' 'union'
  20870. || lk == 133367 // 'structured-item' 'union'
  20871. || lk == 139343 // 'array' 'where'
  20872. || lk == 139433 // 'json-item' 'where'
  20873. || lk == 139462 // 'object' 'where'
  20874. || lk == 139511 // 'structured-item' 'where'
  20875. || lk == 141391 // 'array' 'with'
  20876. || lk == 141481 // 'json-item' 'with'
  20877. || lk == 141510 // 'object' 'with'
  20878. || lk == 141559 // 'structured-item' 'with'
  20879. || lk == 142927 // 'array' 'words'
  20880. || lk == 143017 // 'json-item' 'words'
  20881. || lk == 143046 // 'object' 'words'
  20882. || lk == 143095 // 'structured-item' 'words'
  20883. || lk == 143951 // 'array' '{'
  20884. || lk == 144041 // 'json-item' '{'
  20885. || lk == 144070 // 'object' '{'
  20886. || lk == 144119 // 'structured-item' '{'
  20887. || lk == 145487 // 'array' '|'
  20888. || lk == 145577 // 'json-item' '|'
  20889. || lk == 145606 // 'object' '|'
  20890. || lk == 145655 // 'structured-item' '|'
  20891. || lk == 145999 // 'array' '||'
  20892. || lk == 146089 // 'json-item' '||'
  20893. || lk == 146118 // 'object' '||'
  20894. || lk == 146167 // 'structured-item' '||'
  20895. || lk == 146511 // 'array' '|}'
  20896. || lk == 146601 // 'json-item' '|}'
  20897. || lk == 146630 // 'object' '|}'
  20898. || lk == 146679 // 'structured-item' '|}'
  20899. || lk == 147023 // 'array' '}'
  20900. || lk == 147113 // 'json-item' '}'
  20901. || lk == 147142 // 'object' '}'
  20902. || lk == 147191) // 'structured-item' '}'
  20903. {
  20904. lk = memoized(6, e0);
  20905. if (lk == 0)
  20906. {
  20907. var b0A = b0; var e0A = e0; var l1A = l1;
  20908. var b1A = b1; var e1A = e1; var l2A = l2;
  20909. var b2A = b2; var e2A = e2;
  20910. try
  20911. {
  20912. try_AtomicOrUnionType();
  20913. memoize(6, e0A, -4);
  20914. lk = -8;
  20915. }
  20916. catch (p4A)
  20917. {
  20918. try
  20919. {
  20920. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  20921. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  20922. b2 = b2A; e2 = e2A; end = e2A; }}
  20923. try_JSONTest();
  20924. memoize(6, e0A, -6);
  20925. lk = -8;
  20926. }
  20927. catch (p6A)
  20928. {
  20929. lk = -7;
  20930. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  20931. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  20932. b2 = b2A; e2 = e2A; end = e2A; }}
  20933. memoize(6, e0A, -7);
  20934. }
  20935. }
  20936. }
  20937. }
  20938. switch (lk)
  20939. {
  20940. case 18003: // 'attribute' '('
  20941. case 18017: // 'comment' '('
  20942. case 18041: // 'document-node' '('
  20943. case 18042: // 'element' '('
  20944. case 18108: // 'namespace-node' '('
  20945. case 18114: // 'node' '('
  20946. case 18140: // 'processing-instruction' '('
  20947. case 18150: // 'schema-attribute' '('
  20948. case 18151: // 'schema-element' '('
  20949. case 18169: // 'text' '('
  20950. try_KindTest();
  20951. break;
  20952. case 18087: // 'item' '('
  20953. shiftT(167); // 'item'
  20954. lookahead1W(22); // S^WS | '(' | '(:'
  20955. shiftT(35); // '('
  20956. lookahead1W(23); // S^WS | '(:' | ')'
  20957. shiftT(38); // ')'
  20958. break;
  20959. case 33: // '%'
  20960. case 18067: // 'function' '('
  20961. try_FunctionTest();
  20962. break;
  20963. case 35: // '('
  20964. try_ParenthesizedItemType();
  20965. break;
  20966. case -6:
  20967. case 17999: // 'array' '('
  20968. case 18089: // 'json-item' '('
  20969. case 18118: // 'object' '('
  20970. try_JSONTest();
  20971. break;
  20972. case -7:
  20973. case 18167: // 'structured-item' '('
  20974. try_StructuredItemTest();
  20975. break;
  20976. case -8:
  20977. break;
  20978. default:
  20979. try_AtomicOrUnionType();
  20980. }
  20981. }
  20982. function parse_JSONTest()
  20983. {
  20984. eventHandler.startNonterminal("JSONTest", e0);
  20985. switch (l1)
  20986. {
  20987. case 169: // 'json-item'
  20988. parse_JSONItemTest();
  20989. break;
  20990. case 198: // 'object'
  20991. parse_JSONObjectTest();
  20992. break;
  20993. default:
  20994. parse_JSONArrayTest();
  20995. }
  20996. eventHandler.endNonterminal("JSONTest", e0);
  20997. }
  20998. function try_JSONTest()
  20999. {
  21000. switch (l1)
  21001. {
  21002. case 169: // 'json-item'
  21003. try_JSONItemTest();
  21004. break;
  21005. case 198: // 'object'
  21006. try_JSONObjectTest();
  21007. break;
  21008. default:
  21009. try_JSONArrayTest();
  21010. }
  21011. }
  21012. function parse_StructuredItemTest()
  21013. {
  21014. eventHandler.startNonterminal("StructuredItemTest", e0);
  21015. shift(247); // 'structured-item'
  21016. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21017. if (l1 == 35) // '('
  21018. {
  21019. shift(35); // '('
  21020. lookahead1W(23); // S^WS | '(:' | ')'
  21021. shift(38); // ')'
  21022. }
  21023. eventHandler.endNonterminal("StructuredItemTest", e0);
  21024. }
  21025. function try_StructuredItemTest()
  21026. {
  21027. shiftT(247); // 'structured-item'
  21028. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21029. if (l1 == 35) // '('
  21030. {
  21031. shiftT(35); // '('
  21032. lookahead1W(23); // S^WS | '(:' | ')'
  21033. shiftT(38); // ')'
  21034. }
  21035. }
  21036. function parse_JSONItemTest()
  21037. {
  21038. eventHandler.startNonterminal("JSONItemTest", e0);
  21039. shift(169); // 'json-item'
  21040. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21041. if (l1 == 35) // '('
  21042. {
  21043. shift(35); // '('
  21044. lookahead1W(23); // S^WS | '(:' | ')'
  21045. shift(38); // ')'
  21046. }
  21047. eventHandler.endNonterminal("JSONItemTest", e0);
  21048. }
  21049. function try_JSONItemTest()
  21050. {
  21051. shiftT(169); // 'json-item'
  21052. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21053. if (l1 == 35) // '('
  21054. {
  21055. shiftT(35); // '('
  21056. lookahead1W(23); // S^WS | '(:' | ')'
  21057. shiftT(38); // ')'
  21058. }
  21059. }
  21060. function parse_JSONObjectTest()
  21061. {
  21062. eventHandler.startNonterminal("JSONObjectTest", e0);
  21063. shift(198); // 'object'
  21064. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21065. if (l1 == 35) // '('
  21066. {
  21067. shift(35); // '('
  21068. lookahead1W(23); // S^WS | '(:' | ')'
  21069. shift(38); // ')'
  21070. }
  21071. eventHandler.endNonterminal("JSONObjectTest", e0);
  21072. }
  21073. function try_JSONObjectTest()
  21074. {
  21075. shiftT(198); // 'object'
  21076. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21077. if (l1 == 35) // '('
  21078. {
  21079. shiftT(35); // '('
  21080. lookahead1W(23); // S^WS | '(:' | ')'
  21081. shiftT(38); // ')'
  21082. }
  21083. }
  21084. function parse_JSONArrayTest()
  21085. {
  21086. eventHandler.startNonterminal("JSONArrayTest", e0);
  21087. shift(79); // 'array'
  21088. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21089. if (l1 == 35) // '('
  21090. {
  21091. shift(35); // '('
  21092. lookahead1W(23); // S^WS | '(:' | ')'
  21093. shift(38); // ')'
  21094. }
  21095. eventHandler.endNonterminal("JSONArrayTest", e0);
  21096. }
  21097. function try_JSONArrayTest()
  21098. {
  21099. shiftT(79); // 'array'
  21100. lookahead1W(232); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  21101. if (l1 == 35) // '('
  21102. {
  21103. shiftT(35); // '('
  21104. lookahead1W(23); // S^WS | '(:' | ')'
  21105. shiftT(38); // ')'
  21106. }
  21107. }
  21108. function parse_AtomicOrUnionType()
  21109. {
  21110. eventHandler.startNonterminal("AtomicOrUnionType", e0);
  21111. parse_EQName();
  21112. eventHandler.endNonterminal("AtomicOrUnionType", e0);
  21113. }
  21114. function try_AtomicOrUnionType()
  21115. {
  21116. try_EQName();
  21117. }
  21118. function parse_KindTest()
  21119. {
  21120. eventHandler.startNonterminal("KindTest", e0);
  21121. switch (l1)
  21122. {
  21123. case 121: // 'document-node'
  21124. parse_DocumentTest();
  21125. break;
  21126. case 122: // 'element'
  21127. parse_ElementTest();
  21128. break;
  21129. case 83: // 'attribute'
  21130. parse_AttributeTest();
  21131. break;
  21132. case 231: // 'schema-element'
  21133. parse_SchemaElementTest();
  21134. break;
  21135. case 230: // 'schema-attribute'
  21136. parse_SchemaAttributeTest();
  21137. break;
  21138. case 220: // 'processing-instruction'
  21139. parse_PITest();
  21140. break;
  21141. case 97: // 'comment'
  21142. parse_CommentTest();
  21143. break;
  21144. case 249: // 'text'
  21145. parse_TextTest();
  21146. break;
  21147. case 188: // 'namespace-node'
  21148. parse_NamespaceNodeTest();
  21149. break;
  21150. default:
  21151. parse_AnyKindTest();
  21152. }
  21153. eventHandler.endNonterminal("KindTest", e0);
  21154. }
  21155. function try_KindTest()
  21156. {
  21157. switch (l1)
  21158. {
  21159. case 121: // 'document-node'
  21160. try_DocumentTest();
  21161. break;
  21162. case 122: // 'element'
  21163. try_ElementTest();
  21164. break;
  21165. case 83: // 'attribute'
  21166. try_AttributeTest();
  21167. break;
  21168. case 231: // 'schema-element'
  21169. try_SchemaElementTest();
  21170. break;
  21171. case 230: // 'schema-attribute'
  21172. try_SchemaAttributeTest();
  21173. break;
  21174. case 220: // 'processing-instruction'
  21175. try_PITest();
  21176. break;
  21177. case 97: // 'comment'
  21178. try_CommentTest();
  21179. break;
  21180. case 249: // 'text'
  21181. try_TextTest();
  21182. break;
  21183. case 188: // 'namespace-node'
  21184. try_NamespaceNodeTest();
  21185. break;
  21186. default:
  21187. try_AnyKindTest();
  21188. }
  21189. }
  21190. function parse_AnyKindTest()
  21191. {
  21192. eventHandler.startNonterminal("AnyKindTest", e0);
  21193. shift(194); // 'node'
  21194. lookahead1W(22); // S^WS | '(' | '(:'
  21195. shift(35); // '('
  21196. lookahead1W(23); // S^WS | '(:' | ')'
  21197. shift(38); // ')'
  21198. eventHandler.endNonterminal("AnyKindTest", e0);
  21199. }
  21200. function try_AnyKindTest()
  21201. {
  21202. shiftT(194); // 'node'
  21203. lookahead1W(22); // S^WS | '(' | '(:'
  21204. shiftT(35); // '('
  21205. lookahead1W(23); // S^WS | '(:' | ')'
  21206. shiftT(38); // ')'
  21207. }
  21208. function parse_DocumentTest()
  21209. {
  21210. eventHandler.startNonterminal("DocumentTest", e0);
  21211. shift(121); // 'document-node'
  21212. lookahead1W(22); // S^WS | '(' | '(:'
  21213. shift(35); // '('
  21214. lookahead1W(154); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  21215. if (l1 != 38) // ')'
  21216. {
  21217. switch (l1)
  21218. {
  21219. case 122: // 'element'
  21220. whitespace();
  21221. parse_ElementTest();
  21222. break;
  21223. default:
  21224. whitespace();
  21225. parse_SchemaElementTest();
  21226. }
  21227. }
  21228. lookahead1W(23); // S^WS | '(:' | ')'
  21229. shift(38); // ')'
  21230. eventHandler.endNonterminal("DocumentTest", e0);
  21231. }
  21232. function try_DocumentTest()
  21233. {
  21234. shiftT(121); // 'document-node'
  21235. lookahead1W(22); // S^WS | '(' | '(:'
  21236. shiftT(35); // '('
  21237. lookahead1W(154); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  21238. if (l1 != 38) // ')'
  21239. {
  21240. switch (l1)
  21241. {
  21242. case 122: // 'element'
  21243. try_ElementTest();
  21244. break;
  21245. default:
  21246. try_SchemaElementTest();
  21247. }
  21248. }
  21249. lookahead1W(23); // S^WS | '(:' | ')'
  21250. shiftT(38); // ')'
  21251. }
  21252. function parse_TextTest()
  21253. {
  21254. eventHandler.startNonterminal("TextTest", e0);
  21255. shift(249); // 'text'
  21256. lookahead1W(22); // S^WS | '(' | '(:'
  21257. shift(35); // '('
  21258. lookahead1W(23); // S^WS | '(:' | ')'
  21259. shift(38); // ')'
  21260. eventHandler.endNonterminal("TextTest", e0);
  21261. }
  21262. function try_TextTest()
  21263. {
  21264. shiftT(249); // 'text'
  21265. lookahead1W(22); // S^WS | '(' | '(:'
  21266. shiftT(35); // '('
  21267. lookahead1W(23); // S^WS | '(:' | ')'
  21268. shiftT(38); // ')'
  21269. }
  21270. function parse_CommentTest()
  21271. {
  21272. eventHandler.startNonterminal("CommentTest", e0);
  21273. shift(97); // 'comment'
  21274. lookahead1W(22); // S^WS | '(' | '(:'
  21275. shift(35); // '('
  21276. lookahead1W(23); // S^WS | '(:' | ')'
  21277. shift(38); // ')'
  21278. eventHandler.endNonterminal("CommentTest", e0);
  21279. }
  21280. function try_CommentTest()
  21281. {
  21282. shiftT(97); // 'comment'
  21283. lookahead1W(22); // S^WS | '(' | '(:'
  21284. shiftT(35); // '('
  21285. lookahead1W(23); // S^WS | '(:' | ')'
  21286. shiftT(38); // ')'
  21287. }
  21288. function parse_NamespaceNodeTest()
  21289. {
  21290. eventHandler.startNonterminal("NamespaceNodeTest", e0);
  21291. shift(188); // 'namespace-node'
  21292. lookahead1W(22); // S^WS | '(' | '(:'
  21293. shift(35); // '('
  21294. lookahead1W(23); // S^WS | '(:' | ')'
  21295. shift(38); // ')'
  21296. eventHandler.endNonterminal("NamespaceNodeTest", e0);
  21297. }
  21298. function try_NamespaceNodeTest()
  21299. {
  21300. shiftT(188); // 'namespace-node'
  21301. lookahead1W(22); // S^WS | '(' | '(:'
  21302. shiftT(35); // '('
  21303. lookahead1W(23); // S^WS | '(:' | ')'
  21304. shiftT(38); // ')'
  21305. }
  21306. function parse_PITest()
  21307. {
  21308. eventHandler.startNonterminal("PITest", e0);
  21309. shift(220); // 'processing-instruction'
  21310. lookahead1W(22); // S^WS | '(' | '(:'
  21311. shift(35); // '('
  21312. lookahead1W(243); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  21313. if (l1 != 38) // ')'
  21314. {
  21315. switch (l1)
  21316. {
  21317. case 11: // StringLiteral
  21318. shift(11); // StringLiteral
  21319. break;
  21320. default:
  21321. whitespace();
  21322. parse_NCName();
  21323. }
  21324. }
  21325. lookahead1W(23); // S^WS | '(:' | ')'
  21326. shift(38); // ')'
  21327. eventHandler.endNonterminal("PITest", e0);
  21328. }
  21329. function try_PITest()
  21330. {
  21331. shiftT(220); // 'processing-instruction'
  21332. lookahead1W(22); // S^WS | '(' | '(:'
  21333. shiftT(35); // '('
  21334. lookahead1W(243); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  21335. if (l1 != 38) // ')'
  21336. {
  21337. switch (l1)
  21338. {
  21339. case 11: // StringLiteral
  21340. shiftT(11); // StringLiteral
  21341. break;
  21342. default:
  21343. try_NCName();
  21344. }
  21345. }
  21346. lookahead1W(23); // S^WS | '(:' | ')'
  21347. shiftT(38); // ')'
  21348. }
  21349. function parse_AttributeTest()
  21350. {
  21351. eventHandler.startNonterminal("AttributeTest", e0);
  21352. shift(83); // 'attribute'
  21353. lookahead1W(22); // S^WS | '(' | '(:'
  21354. shift(35); // '('
  21355. lookahead1W(254); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  21356. if (l1 != 38) // ')'
  21357. {
  21358. whitespace();
  21359. parse_AttribNameOrWildcard();
  21360. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21361. if (l1 == 42) // ','
  21362. {
  21363. shift(42); // ','
  21364. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21365. whitespace();
  21366. parse_TypeName();
  21367. }
  21368. }
  21369. lookahead1W(23); // S^WS | '(:' | ')'
  21370. shift(38); // ')'
  21371. eventHandler.endNonterminal("AttributeTest", e0);
  21372. }
  21373. function try_AttributeTest()
  21374. {
  21375. shiftT(83); // 'attribute'
  21376. lookahead1W(22); // S^WS | '(' | '(:'
  21377. shiftT(35); // '('
  21378. lookahead1W(254); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  21379. if (l1 != 38) // ')'
  21380. {
  21381. try_AttribNameOrWildcard();
  21382. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21383. if (l1 == 42) // ','
  21384. {
  21385. shiftT(42); // ','
  21386. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21387. try_TypeName();
  21388. }
  21389. }
  21390. lookahead1W(23); // S^WS | '(:' | ')'
  21391. shiftT(38); // ')'
  21392. }
  21393. function parse_AttribNameOrWildcard()
  21394. {
  21395. eventHandler.startNonterminal("AttribNameOrWildcard", e0);
  21396. switch (l1)
  21397. {
  21398. case 39: // '*'
  21399. shift(39); // '*'
  21400. break;
  21401. default:
  21402. parse_AttributeName();
  21403. }
  21404. eventHandler.endNonterminal("AttribNameOrWildcard", e0);
  21405. }
  21406. function try_AttribNameOrWildcard()
  21407. {
  21408. switch (l1)
  21409. {
  21410. case 39: // '*'
  21411. shiftT(39); // '*'
  21412. break;
  21413. default:
  21414. try_AttributeName();
  21415. }
  21416. }
  21417. function parse_SchemaAttributeTest()
  21418. {
  21419. eventHandler.startNonterminal("SchemaAttributeTest", e0);
  21420. shift(230); // 'schema-attribute'
  21421. lookahead1W(22); // S^WS | '(' | '(:'
  21422. shift(35); // '('
  21423. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21424. whitespace();
  21425. parse_AttributeDeclaration();
  21426. lookahead1W(23); // S^WS | '(:' | ')'
  21427. shift(38); // ')'
  21428. eventHandler.endNonterminal("SchemaAttributeTest", e0);
  21429. }
  21430. function try_SchemaAttributeTest()
  21431. {
  21432. shiftT(230); // 'schema-attribute'
  21433. lookahead1W(22); // S^WS | '(' | '(:'
  21434. shiftT(35); // '('
  21435. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21436. try_AttributeDeclaration();
  21437. lookahead1W(23); // S^WS | '(:' | ')'
  21438. shiftT(38); // ')'
  21439. }
  21440. function parse_AttributeDeclaration()
  21441. {
  21442. eventHandler.startNonterminal("AttributeDeclaration", e0);
  21443. parse_AttributeName();
  21444. eventHandler.endNonterminal("AttributeDeclaration", e0);
  21445. }
  21446. function try_AttributeDeclaration()
  21447. {
  21448. try_AttributeName();
  21449. }
  21450. function parse_ElementTest()
  21451. {
  21452. eventHandler.startNonterminal("ElementTest", e0);
  21453. shift(122); // 'element'
  21454. lookahead1W(22); // S^WS | '(' | '(:'
  21455. shift(35); // '('
  21456. lookahead1W(254); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  21457. if (l1 != 38) // ')'
  21458. {
  21459. whitespace();
  21460. parse_ElementNameOrWildcard();
  21461. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21462. if (l1 == 42) // ','
  21463. {
  21464. shift(42); // ','
  21465. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21466. whitespace();
  21467. parse_TypeName();
  21468. lookahead1W(106); // S^WS | '(:' | ')' | '?'
  21469. if (l1 == 65) // '?'
  21470. {
  21471. shift(65); // '?'
  21472. }
  21473. }
  21474. }
  21475. lookahead1W(23); // S^WS | '(:' | ')'
  21476. shift(38); // ')'
  21477. eventHandler.endNonterminal("ElementTest", e0);
  21478. }
  21479. function try_ElementTest()
  21480. {
  21481. shiftT(122); // 'element'
  21482. lookahead1W(22); // S^WS | '(' | '(:'
  21483. shiftT(35); // '('
  21484. lookahead1W(254); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  21485. if (l1 != 38) // ')'
  21486. {
  21487. try_ElementNameOrWildcard();
  21488. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21489. if (l1 == 42) // ','
  21490. {
  21491. shiftT(42); // ','
  21492. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21493. try_TypeName();
  21494. lookahead1W(106); // S^WS | '(:' | ')' | '?'
  21495. if (l1 == 65) // '?'
  21496. {
  21497. shiftT(65); // '?'
  21498. }
  21499. }
  21500. }
  21501. lookahead1W(23); // S^WS | '(:' | ')'
  21502. shiftT(38); // ')'
  21503. }
  21504. function parse_ElementNameOrWildcard()
  21505. {
  21506. eventHandler.startNonterminal("ElementNameOrWildcard", e0);
  21507. switch (l1)
  21508. {
  21509. case 39: // '*'
  21510. shift(39); // '*'
  21511. break;
  21512. default:
  21513. parse_ElementName();
  21514. }
  21515. eventHandler.endNonterminal("ElementNameOrWildcard", e0);
  21516. }
  21517. function try_ElementNameOrWildcard()
  21518. {
  21519. switch (l1)
  21520. {
  21521. case 39: // '*'
  21522. shiftT(39); // '*'
  21523. break;
  21524. default:
  21525. try_ElementName();
  21526. }
  21527. }
  21528. function parse_SchemaElementTest()
  21529. {
  21530. eventHandler.startNonterminal("SchemaElementTest", e0);
  21531. shift(231); // 'schema-element'
  21532. lookahead1W(22); // S^WS | '(' | '(:'
  21533. shift(35); // '('
  21534. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21535. whitespace();
  21536. parse_ElementDeclaration();
  21537. lookahead1W(23); // S^WS | '(:' | ')'
  21538. shift(38); // ')'
  21539. eventHandler.endNonterminal("SchemaElementTest", e0);
  21540. }
  21541. function try_SchemaElementTest()
  21542. {
  21543. shiftT(231); // 'schema-element'
  21544. lookahead1W(22); // S^WS | '(' | '(:'
  21545. shiftT(35); // '('
  21546. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21547. try_ElementDeclaration();
  21548. lookahead1W(23); // S^WS | '(:' | ')'
  21549. shiftT(38); // ')'
  21550. }
  21551. function parse_ElementDeclaration()
  21552. {
  21553. eventHandler.startNonterminal("ElementDeclaration", e0);
  21554. parse_ElementName();
  21555. eventHandler.endNonterminal("ElementDeclaration", e0);
  21556. }
  21557. function try_ElementDeclaration()
  21558. {
  21559. try_ElementName();
  21560. }
  21561. function parse_AttributeName()
  21562. {
  21563. eventHandler.startNonterminal("AttributeName", e0);
  21564. parse_EQName();
  21565. eventHandler.endNonterminal("AttributeName", e0);
  21566. }
  21567. function try_AttributeName()
  21568. {
  21569. try_EQName();
  21570. }
  21571. function parse_ElementName()
  21572. {
  21573. eventHandler.startNonterminal("ElementName", e0);
  21574. parse_EQName();
  21575. eventHandler.endNonterminal("ElementName", e0);
  21576. }
  21577. function try_ElementName()
  21578. {
  21579. try_EQName();
  21580. }
  21581. function parse_SimpleTypeName()
  21582. {
  21583. eventHandler.startNonterminal("SimpleTypeName", e0);
  21584. parse_TypeName();
  21585. eventHandler.endNonterminal("SimpleTypeName", e0);
  21586. }
  21587. function try_SimpleTypeName()
  21588. {
  21589. try_TypeName();
  21590. }
  21591. function parse_TypeName()
  21592. {
  21593. eventHandler.startNonterminal("TypeName", e0);
  21594. parse_EQName();
  21595. eventHandler.endNonterminal("TypeName", e0);
  21596. }
  21597. function try_TypeName()
  21598. {
  21599. try_EQName();
  21600. }
  21601. function parse_FunctionTest()
  21602. {
  21603. eventHandler.startNonterminal("FunctionTest", e0);
  21604. for (;;)
  21605. {
  21606. lookahead1W(101); // S^WS | '%' | '(:' | 'function'
  21607. if (l1 != 33) // '%'
  21608. {
  21609. break;
  21610. }
  21611. whitespace();
  21612. parse_Annotation();
  21613. }
  21614. switch (l1)
  21615. {
  21616. case 147: // 'function'
  21617. lookahead2W(22); // S^WS | '(' | '(:'
  21618. break;
  21619. default:
  21620. lk = l1;
  21621. }
  21622. lk = memoized(7, e0);
  21623. if (lk == 0)
  21624. {
  21625. var b0A = b0; var e0A = e0; var l1A = l1;
  21626. var b1A = b1; var e1A = e1; var l2A = l2;
  21627. var b2A = b2; var e2A = e2;
  21628. try
  21629. {
  21630. try_AnyFunctionTest();
  21631. lk = -1;
  21632. }
  21633. catch (p1A)
  21634. {
  21635. lk = -2;
  21636. }
  21637. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  21638. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  21639. b2 = b2A; e2 = e2A; end = e2A; }}
  21640. memoize(7, e0, lk);
  21641. }
  21642. switch (lk)
  21643. {
  21644. case -1:
  21645. whitespace();
  21646. parse_AnyFunctionTest();
  21647. break;
  21648. default:
  21649. whitespace();
  21650. parse_TypedFunctionTest();
  21651. }
  21652. eventHandler.endNonterminal("FunctionTest", e0);
  21653. }
  21654. function try_FunctionTest()
  21655. {
  21656. for (;;)
  21657. {
  21658. lookahead1W(101); // S^WS | '%' | '(:' | 'function'
  21659. if (l1 != 33) // '%'
  21660. {
  21661. break;
  21662. }
  21663. try_Annotation();
  21664. }
  21665. switch (l1)
  21666. {
  21667. case 147: // 'function'
  21668. lookahead2W(22); // S^WS | '(' | '(:'
  21669. break;
  21670. default:
  21671. lk = l1;
  21672. }
  21673. lk = memoized(7, e0);
  21674. if (lk == 0)
  21675. {
  21676. var b0A = b0; var e0A = e0; var l1A = l1;
  21677. var b1A = b1; var e1A = e1; var l2A = l2;
  21678. var b2A = b2; var e2A = e2;
  21679. try
  21680. {
  21681. try_AnyFunctionTest();
  21682. memoize(7, e0A, -1);
  21683. lk = -3;
  21684. }
  21685. catch (p1A)
  21686. {
  21687. lk = -2;
  21688. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  21689. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  21690. b2 = b2A; e2 = e2A; end = e2A; }}
  21691. memoize(7, e0A, -2);
  21692. }
  21693. }
  21694. switch (lk)
  21695. {
  21696. case -1:
  21697. try_AnyFunctionTest();
  21698. break;
  21699. case -3:
  21700. break;
  21701. default:
  21702. try_TypedFunctionTest();
  21703. }
  21704. }
  21705. function parse_AnyFunctionTest()
  21706. {
  21707. eventHandler.startNonterminal("AnyFunctionTest", e0);
  21708. shift(147); // 'function'
  21709. lookahead1W(22); // S^WS | '(' | '(:'
  21710. shift(35); // '('
  21711. lookahead1W(24); // S^WS | '(:' | '*'
  21712. shift(39); // '*'
  21713. lookahead1W(23); // S^WS | '(:' | ')'
  21714. shift(38); // ')'
  21715. eventHandler.endNonterminal("AnyFunctionTest", e0);
  21716. }
  21717. function try_AnyFunctionTest()
  21718. {
  21719. shiftT(147); // 'function'
  21720. lookahead1W(22); // S^WS | '(' | '(:'
  21721. shiftT(35); // '('
  21722. lookahead1W(24); // S^WS | '(:' | '*'
  21723. shiftT(39); // '*'
  21724. lookahead1W(23); // S^WS | '(:' | ')'
  21725. shiftT(38); // ')'
  21726. }
  21727. function parse_TypedFunctionTest()
  21728. {
  21729. eventHandler.startNonterminal("TypedFunctionTest", e0);
  21730. shift(147); // 'function'
  21731. lookahead1W(22); // S^WS | '(' | '(:'
  21732. shift(35); // '('
  21733. lookahead1W(258); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  21734. if (l1 != 38) // ')'
  21735. {
  21736. whitespace();
  21737. parse_SequenceType();
  21738. for (;;)
  21739. {
  21740. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21741. if (l1 != 42) // ','
  21742. {
  21743. break;
  21744. }
  21745. shift(42); // ','
  21746. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21747. whitespace();
  21748. parse_SequenceType();
  21749. }
  21750. }
  21751. shift(38); // ')'
  21752. lookahead1W(33); // S^WS | '(:' | 'as'
  21753. shift(80); // 'as'
  21754. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21755. whitespace();
  21756. parse_SequenceType();
  21757. eventHandler.endNonterminal("TypedFunctionTest", e0);
  21758. }
  21759. function try_TypedFunctionTest()
  21760. {
  21761. shiftT(147); // 'function'
  21762. lookahead1W(22); // S^WS | '(' | '(:'
  21763. shiftT(35); // '('
  21764. lookahead1W(258); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  21765. if (l1 != 38) // ')'
  21766. {
  21767. try_SequenceType();
  21768. for (;;)
  21769. {
  21770. lookahead1W(105); // S^WS | '(:' | ')' | ','
  21771. if (l1 != 42) // ','
  21772. {
  21773. break;
  21774. }
  21775. shiftT(42); // ','
  21776. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21777. try_SequenceType();
  21778. }
  21779. }
  21780. shiftT(38); // ')'
  21781. lookahead1W(33); // S^WS | '(:' | 'as'
  21782. shiftT(80); // 'as'
  21783. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21784. try_SequenceType();
  21785. }
  21786. function parse_ParenthesizedItemType()
  21787. {
  21788. eventHandler.startNonterminal("ParenthesizedItemType", e0);
  21789. shift(35); // '('
  21790. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21791. whitespace();
  21792. parse_ItemType();
  21793. lookahead1W(23); // S^WS | '(:' | ')'
  21794. shift(38); // ')'
  21795. eventHandler.endNonterminal("ParenthesizedItemType", e0);
  21796. }
  21797. function try_ParenthesizedItemType()
  21798. {
  21799. shiftT(35); // '('
  21800. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  21801. try_ItemType();
  21802. lookahead1W(23); // S^WS | '(:' | ')'
  21803. shiftT(38); // ')'
  21804. }
  21805. function parse_RevalidationDecl()
  21806. {
  21807. eventHandler.startNonterminal("RevalidationDecl", e0);
  21808. shift(109); // 'declare'
  21809. lookahead1W(75); // S^WS | '(:' | 'revalidation'
  21810. shift(226); // 'revalidation'
  21811. lookahead1W(162); // S^WS | '(:' | 'lax' | 'skip' | 'strict'
  21812. switch (l1)
  21813. {
  21814. case 245: // 'strict'
  21815. shift(245); // 'strict'
  21816. break;
  21817. case 174: // 'lax'
  21818. shift(174); // 'lax'
  21819. break;
  21820. default:
  21821. shift(238); // 'skip'
  21822. }
  21823. eventHandler.endNonterminal("RevalidationDecl", e0);
  21824. }
  21825. function parse_InsertExprTargetChoice()
  21826. {
  21827. eventHandler.startNonterminal("InsertExprTargetChoice", e0);
  21828. switch (l1)
  21829. {
  21830. case 71: // 'after'
  21831. shift(71); // 'after'
  21832. break;
  21833. case 85: // 'before'
  21834. shift(85); // 'before'
  21835. break;
  21836. default:
  21837. if (l1 == 80) // 'as'
  21838. {
  21839. shift(80); // 'as'
  21840. lookahead1W(123); // S^WS | '(:' | 'first' | 'last'
  21841. switch (l1)
  21842. {
  21843. case 136: // 'first'
  21844. shift(136); // 'first'
  21845. break;
  21846. default:
  21847. shift(173); // 'last'
  21848. }
  21849. }
  21850. lookahead1W(57); // S^WS | '(:' | 'into'
  21851. shift(165); // 'into'
  21852. }
  21853. eventHandler.endNonterminal("InsertExprTargetChoice", e0);
  21854. }
  21855. function try_InsertExprTargetChoice()
  21856. {
  21857. switch (l1)
  21858. {
  21859. case 71: // 'after'
  21860. shiftT(71); // 'after'
  21861. break;
  21862. case 85: // 'before'
  21863. shiftT(85); // 'before'
  21864. break;
  21865. default:
  21866. if (l1 == 80) // 'as'
  21867. {
  21868. shiftT(80); // 'as'
  21869. lookahead1W(123); // S^WS | '(:' | 'first' | 'last'
  21870. switch (l1)
  21871. {
  21872. case 136: // 'first'
  21873. shiftT(136); // 'first'
  21874. break;
  21875. default:
  21876. shiftT(173); // 'last'
  21877. }
  21878. }
  21879. lookahead1W(57); // S^WS | '(:' | 'into'
  21880. shiftT(165); // 'into'
  21881. }
  21882. }
  21883. function parse_InsertExpr()
  21884. {
  21885. eventHandler.startNonterminal("InsertExpr", e0);
  21886. shift(161); // 'insert'
  21887. lookahead1W(133); // S^WS | '(:' | 'node' | 'nodes'
  21888. switch (l1)
  21889. {
  21890. case 194: // 'node'
  21891. shift(194); // 'node'
  21892. break;
  21893. default:
  21894. shift(195); // 'nodes'
  21895. }
  21896. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21897. whitespace();
  21898. parse_SourceExpr();
  21899. whitespace();
  21900. parse_InsertExprTargetChoice();
  21901. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21902. whitespace();
  21903. parse_TargetExpr();
  21904. eventHandler.endNonterminal("InsertExpr", e0);
  21905. }
  21906. function try_InsertExpr()
  21907. {
  21908. shiftT(161); // 'insert'
  21909. lookahead1W(133); // S^WS | '(:' | 'node' | 'nodes'
  21910. switch (l1)
  21911. {
  21912. case 194: // 'node'
  21913. shiftT(194); // 'node'
  21914. break;
  21915. default:
  21916. shiftT(195); // 'nodes'
  21917. }
  21918. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21919. try_SourceExpr();
  21920. try_InsertExprTargetChoice();
  21921. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21922. try_TargetExpr();
  21923. }
  21924. function parse_DeleteExpr()
  21925. {
  21926. eventHandler.startNonterminal("DeleteExpr", e0);
  21927. shift(111); // 'delete'
  21928. lookahead1W(133); // S^WS | '(:' | 'node' | 'nodes'
  21929. switch (l1)
  21930. {
  21931. case 194: // 'node'
  21932. shift(194); // 'node'
  21933. break;
  21934. default:
  21935. shift(195); // 'nodes'
  21936. }
  21937. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21938. whitespace();
  21939. parse_TargetExpr();
  21940. eventHandler.endNonterminal("DeleteExpr", e0);
  21941. }
  21942. function try_DeleteExpr()
  21943. {
  21944. shiftT(111); // 'delete'
  21945. lookahead1W(133); // S^WS | '(:' | 'node' | 'nodes'
  21946. switch (l1)
  21947. {
  21948. case 194: // 'node'
  21949. shiftT(194); // 'node'
  21950. break;
  21951. default:
  21952. shiftT(195); // 'nodes'
  21953. }
  21954. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21955. try_TargetExpr();
  21956. }
  21957. function parse_ReplaceExpr()
  21958. {
  21959. eventHandler.startNonterminal("ReplaceExpr", e0);
  21960. shift(223); // 'replace'
  21961. lookahead1W(134); // S^WS | '(:' | 'node' | 'value'
  21962. if (l1 == 267) // 'value'
  21963. {
  21964. shift(267); // 'value'
  21965. lookahead1W(67); // S^WS | '(:' | 'of'
  21966. shift(200); // 'of'
  21967. }
  21968. lookahead1W(65); // S^WS | '(:' | 'node'
  21969. shift(194); // 'node'
  21970. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21971. whitespace();
  21972. parse_TargetExpr();
  21973. shift(276); // 'with'
  21974. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21975. whitespace();
  21976. parse_ExprSingle();
  21977. eventHandler.endNonterminal("ReplaceExpr", e0);
  21978. }
  21979. function try_ReplaceExpr()
  21980. {
  21981. shiftT(223); // 'replace'
  21982. lookahead1W(134); // S^WS | '(:' | 'node' | 'value'
  21983. if (l1 == 267) // 'value'
  21984. {
  21985. shiftT(267); // 'value'
  21986. lookahead1W(67); // S^WS | '(:' | 'of'
  21987. shiftT(200); // 'of'
  21988. }
  21989. lookahead1W(65); // S^WS | '(:' | 'node'
  21990. shiftT(194); // 'node'
  21991. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21992. try_TargetExpr();
  21993. shiftT(276); // 'with'
  21994. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  21995. try_ExprSingle();
  21996. }
  21997. function parse_RenameExpr()
  21998. {
  21999. eventHandler.startNonterminal("RenameExpr", e0);
  22000. shift(222); // 'rename'
  22001. lookahead1W(65); // S^WS | '(:' | 'node'
  22002. shift(194); // 'node'
  22003. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22004. whitespace();
  22005. parse_TargetExpr();
  22006. shift(80); // 'as'
  22007. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22008. whitespace();
  22009. parse_NewNameExpr();
  22010. eventHandler.endNonterminal("RenameExpr", e0);
  22011. }
  22012. function try_RenameExpr()
  22013. {
  22014. shiftT(222); // 'rename'
  22015. lookahead1W(65); // S^WS | '(:' | 'node'
  22016. shiftT(194); // 'node'
  22017. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22018. try_TargetExpr();
  22019. shiftT(80); // 'as'
  22020. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22021. try_NewNameExpr();
  22022. }
  22023. function parse_SourceExpr()
  22024. {
  22025. eventHandler.startNonterminal("SourceExpr", e0);
  22026. parse_ExprSingle();
  22027. eventHandler.endNonterminal("SourceExpr", e0);
  22028. }
  22029. function try_SourceExpr()
  22030. {
  22031. try_ExprSingle();
  22032. }
  22033. function parse_TargetExpr()
  22034. {
  22035. eventHandler.startNonterminal("TargetExpr", e0);
  22036. parse_ExprSingle();
  22037. eventHandler.endNonterminal("TargetExpr", e0);
  22038. }
  22039. function try_TargetExpr()
  22040. {
  22041. try_ExprSingle();
  22042. }
  22043. function parse_NewNameExpr()
  22044. {
  22045. eventHandler.startNonterminal("NewNameExpr", e0);
  22046. parse_ExprSingle();
  22047. eventHandler.endNonterminal("NewNameExpr", e0);
  22048. }
  22049. function try_NewNameExpr()
  22050. {
  22051. try_ExprSingle();
  22052. }
  22053. function parse_TransformExpr()
  22054. {
  22055. eventHandler.startNonterminal("TransformExpr", e0);
  22056. shift(104); // 'copy'
  22057. lookahead1W(21); // S^WS | '$' | '(:'
  22058. whitespace();
  22059. parse_TransformSpec();
  22060. for (;;)
  22061. {
  22062. if (l1 != 42) // ','
  22063. {
  22064. break;
  22065. }
  22066. shift(42); // ','
  22067. lookahead1W(21); // S^WS | '$' | '(:'
  22068. whitespace();
  22069. parse_TransformSpec();
  22070. }
  22071. shift(184); // 'modify'
  22072. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22073. whitespace();
  22074. parse_ExprSingle();
  22075. shift(224); // 'return'
  22076. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22077. whitespace();
  22078. parse_ExprSingle();
  22079. eventHandler.endNonterminal("TransformExpr", e0);
  22080. }
  22081. function try_TransformExpr()
  22082. {
  22083. shiftT(104); // 'copy'
  22084. lookahead1W(21); // S^WS | '$' | '(:'
  22085. try_TransformSpec();
  22086. for (;;)
  22087. {
  22088. if (l1 != 42) // ','
  22089. {
  22090. break;
  22091. }
  22092. shiftT(42); // ','
  22093. lookahead1W(21); // S^WS | '$' | '(:'
  22094. try_TransformSpec();
  22095. }
  22096. shiftT(184); // 'modify'
  22097. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22098. try_ExprSingle();
  22099. shiftT(224); // 'return'
  22100. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22101. try_ExprSingle();
  22102. }
  22103. function parse_TransformSpec()
  22104. {
  22105. eventHandler.startNonterminal("TransformSpec", e0);
  22106. shift(31); // '$'
  22107. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  22108. whitespace();
  22109. parse_VarName();
  22110. lookahead1W(28); // S^WS | '(:' | ':='
  22111. shift(53); // ':='
  22112. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22113. whitespace();
  22114. parse_ExprSingle();
  22115. eventHandler.endNonterminal("TransformSpec", e0);
  22116. }
  22117. function try_TransformSpec()
  22118. {
  22119. shiftT(31); // '$'
  22120. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  22121. try_VarName();
  22122. lookahead1W(28); // S^WS | '(:' | ':='
  22123. shiftT(53); // ':='
  22124. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22125. try_ExprSingle();
  22126. }
  22127. function parse_FTSelection()
  22128. {
  22129. eventHandler.startNonterminal("FTSelection", e0);
  22130. parse_FTOr();
  22131. for (;;)
  22132. {
  22133. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22134. switch (l1)
  22135. {
  22136. case 82: // 'at'
  22137. lookahead2W(161); // S^WS | '(:' | 'end' | 'position' | 'start'
  22138. break;
  22139. default:
  22140. lk = l1;
  22141. }
  22142. if (lk != 116 // 'different'
  22143. && lk != 118 // 'distance'
  22144. && lk != 128 // 'entire'
  22145. && lk != 206 // 'ordered'
  22146. && lk != 227 // 'same'
  22147. && lk != 275 // 'window'
  22148. && lk != 65106 // 'at' 'end'
  22149. && lk != 123986) // 'at' 'start'
  22150. {
  22151. break;
  22152. }
  22153. whitespace();
  22154. parse_FTPosFilter();
  22155. }
  22156. eventHandler.endNonterminal("FTSelection", e0);
  22157. }
  22158. function try_FTSelection()
  22159. {
  22160. try_FTOr();
  22161. for (;;)
  22162. {
  22163. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22164. switch (l1)
  22165. {
  22166. case 82: // 'at'
  22167. lookahead2W(161); // S^WS | '(:' | 'end' | 'position' | 'start'
  22168. break;
  22169. default:
  22170. lk = l1;
  22171. }
  22172. if (lk != 116 // 'different'
  22173. && lk != 118 // 'distance'
  22174. && lk != 128 // 'entire'
  22175. && lk != 206 // 'ordered'
  22176. && lk != 227 // 'same'
  22177. && lk != 275 // 'window'
  22178. && lk != 65106 // 'at' 'end'
  22179. && lk != 123986) // 'at' 'start'
  22180. {
  22181. break;
  22182. }
  22183. try_FTPosFilter();
  22184. }
  22185. }
  22186. function parse_FTWeight()
  22187. {
  22188. eventHandler.startNonterminal("FTWeight", e0);
  22189. shift(270); // 'weight'
  22190. lookahead1W(90); // S^WS | '(:' | '{'
  22191. shift(281); // '{'
  22192. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22193. whitespace();
  22194. parse_Expr();
  22195. shift(287); // '}'
  22196. eventHandler.endNonterminal("FTWeight", e0);
  22197. }
  22198. function try_FTWeight()
  22199. {
  22200. shiftT(270); // 'weight'
  22201. lookahead1W(90); // S^WS | '(:' | '{'
  22202. shiftT(281); // '{'
  22203. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22204. try_Expr();
  22205. shiftT(287); // '}'
  22206. }
  22207. function parse_FTOr()
  22208. {
  22209. eventHandler.startNonterminal("FTOr", e0);
  22210. parse_FTAnd();
  22211. for (;;)
  22212. {
  22213. if (l1 != 146) // 'ftor'
  22214. {
  22215. break;
  22216. }
  22217. shift(146); // 'ftor'
  22218. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22219. whitespace();
  22220. parse_FTAnd();
  22221. }
  22222. eventHandler.endNonterminal("FTOr", e0);
  22223. }
  22224. function try_FTOr()
  22225. {
  22226. try_FTAnd();
  22227. for (;;)
  22228. {
  22229. if (l1 != 146) // 'ftor'
  22230. {
  22231. break;
  22232. }
  22233. shiftT(146); // 'ftor'
  22234. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22235. try_FTAnd();
  22236. }
  22237. }
  22238. function parse_FTAnd()
  22239. {
  22240. eventHandler.startNonterminal("FTAnd", e0);
  22241. parse_FTMildNot();
  22242. for (;;)
  22243. {
  22244. if (l1 != 144) // 'ftand'
  22245. {
  22246. break;
  22247. }
  22248. shift(144); // 'ftand'
  22249. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22250. whitespace();
  22251. parse_FTMildNot();
  22252. }
  22253. eventHandler.endNonterminal("FTAnd", e0);
  22254. }
  22255. function try_FTAnd()
  22256. {
  22257. try_FTMildNot();
  22258. for (;;)
  22259. {
  22260. if (l1 != 144) // 'ftand'
  22261. {
  22262. break;
  22263. }
  22264. shiftT(144); // 'ftand'
  22265. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22266. try_FTMildNot();
  22267. }
  22268. }
  22269. function parse_FTMildNot()
  22270. {
  22271. eventHandler.startNonterminal("FTMildNot", e0);
  22272. parse_FTUnaryNot();
  22273. for (;;)
  22274. {
  22275. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22276. if (l1 != 196) // 'not'
  22277. {
  22278. break;
  22279. }
  22280. shift(196); // 'not'
  22281. lookahead1W(56); // S^WS | '(:' | 'in'
  22282. shift(156); // 'in'
  22283. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22284. whitespace();
  22285. parse_FTUnaryNot();
  22286. }
  22287. eventHandler.endNonterminal("FTMildNot", e0);
  22288. }
  22289. function try_FTMildNot()
  22290. {
  22291. try_FTUnaryNot();
  22292. for (;;)
  22293. {
  22294. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22295. if (l1 != 196) // 'not'
  22296. {
  22297. break;
  22298. }
  22299. shiftT(196); // 'not'
  22300. lookahead1W(56); // S^WS | '(:' | 'in'
  22301. shiftT(156); // 'in'
  22302. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22303. try_FTUnaryNot();
  22304. }
  22305. }
  22306. function parse_FTUnaryNot()
  22307. {
  22308. eventHandler.startNonterminal("FTUnaryNot", e0);
  22309. if (l1 == 145) // 'ftnot'
  22310. {
  22311. shift(145); // 'ftnot'
  22312. }
  22313. lookahead1W(164); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  22314. whitespace();
  22315. parse_FTPrimaryWithOptions();
  22316. eventHandler.endNonterminal("FTUnaryNot", e0);
  22317. }
  22318. function try_FTUnaryNot()
  22319. {
  22320. if (l1 == 145) // 'ftnot'
  22321. {
  22322. shiftT(145); // 'ftnot'
  22323. }
  22324. lookahead1W(164); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  22325. try_FTPrimaryWithOptions();
  22326. }
  22327. function parse_FTPrimaryWithOptions()
  22328. {
  22329. eventHandler.startNonterminal("FTPrimaryWithOptions", e0);
  22330. parse_FTPrimary();
  22331. lookahead1W(213); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22332. if (l1 == 265) // 'using'
  22333. {
  22334. whitespace();
  22335. parse_FTMatchOptions();
  22336. }
  22337. if (l1 == 270) // 'weight'
  22338. {
  22339. whitespace();
  22340. parse_FTWeight();
  22341. }
  22342. eventHandler.endNonterminal("FTPrimaryWithOptions", e0);
  22343. }
  22344. function try_FTPrimaryWithOptions()
  22345. {
  22346. try_FTPrimary();
  22347. lookahead1W(213); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22348. if (l1 == 265) // 'using'
  22349. {
  22350. try_FTMatchOptions();
  22351. }
  22352. if (l1 == 270) // 'weight'
  22353. {
  22354. try_FTWeight();
  22355. }
  22356. }
  22357. function parse_FTPrimary()
  22358. {
  22359. eventHandler.startNonterminal("FTPrimary", e0);
  22360. switch (l1)
  22361. {
  22362. case 35: // '('
  22363. shift(35); // '('
  22364. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22365. whitespace();
  22366. parse_FTSelection();
  22367. shift(38); // ')'
  22368. break;
  22369. case 36: // '(#'
  22370. parse_FTExtensionSelection();
  22371. break;
  22372. default:
  22373. parse_FTWords();
  22374. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22375. if (l1 == 199) // 'occurs'
  22376. {
  22377. whitespace();
  22378. parse_FTTimes();
  22379. }
  22380. }
  22381. eventHandler.endNonterminal("FTPrimary", e0);
  22382. }
  22383. function try_FTPrimary()
  22384. {
  22385. switch (l1)
  22386. {
  22387. case 35: // '('
  22388. shiftT(35); // '('
  22389. lookahead1W(177); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  22390. try_FTSelection();
  22391. shiftT(38); // ')'
  22392. break;
  22393. case 36: // '(#'
  22394. try_FTExtensionSelection();
  22395. break;
  22396. default:
  22397. try_FTWords();
  22398. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22399. if (l1 == 199) // 'occurs'
  22400. {
  22401. try_FTTimes();
  22402. }
  22403. }
  22404. }
  22405. function parse_FTWords()
  22406. {
  22407. eventHandler.startNonterminal("FTWords", e0);
  22408. parse_FTWordsValue();
  22409. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22410. if (l1 == 72 // 'all'
  22411. || l1 == 77 // 'any'
  22412. || l1 == 214) // 'phrase'
  22413. {
  22414. whitespace();
  22415. parse_FTAnyallOption();
  22416. }
  22417. eventHandler.endNonterminal("FTWords", e0);
  22418. }
  22419. function try_FTWords()
  22420. {
  22421. try_FTWordsValue();
  22422. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22423. if (l1 == 72 // 'all'
  22424. || l1 == 77 // 'any'
  22425. || l1 == 214) // 'phrase'
  22426. {
  22427. try_FTAnyallOption();
  22428. }
  22429. }
  22430. function parse_FTWordsValue()
  22431. {
  22432. eventHandler.startNonterminal("FTWordsValue", e0);
  22433. switch (l1)
  22434. {
  22435. case 11: // StringLiteral
  22436. shift(11); // StringLiteral
  22437. break;
  22438. default:
  22439. shift(281); // '{'
  22440. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22441. whitespace();
  22442. parse_Expr();
  22443. shift(287); // '}'
  22444. }
  22445. eventHandler.endNonterminal("FTWordsValue", e0);
  22446. }
  22447. function try_FTWordsValue()
  22448. {
  22449. switch (l1)
  22450. {
  22451. case 11: // StringLiteral
  22452. shiftT(11); // StringLiteral
  22453. break;
  22454. default:
  22455. shiftT(281); // '{'
  22456. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22457. try_Expr();
  22458. shiftT(287); // '}'
  22459. }
  22460. }
  22461. function parse_FTExtensionSelection()
  22462. {
  22463. eventHandler.startNonterminal("FTExtensionSelection", e0);
  22464. for (;;)
  22465. {
  22466. whitespace();
  22467. parse_Pragma();
  22468. lookahead1W(104); // S^WS | '(#' | '(:' | '{'
  22469. if (l1 != 36) // '(#'
  22470. {
  22471. break;
  22472. }
  22473. }
  22474. shift(281); // '{'
  22475. lookahead1W(184); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  22476. if (l1 != 287) // '}'
  22477. {
  22478. whitespace();
  22479. parse_FTSelection();
  22480. }
  22481. shift(287); // '}'
  22482. eventHandler.endNonterminal("FTExtensionSelection", e0);
  22483. }
  22484. function try_FTExtensionSelection()
  22485. {
  22486. for (;;)
  22487. {
  22488. try_Pragma();
  22489. lookahead1W(104); // S^WS | '(#' | '(:' | '{'
  22490. if (l1 != 36) // '(#'
  22491. {
  22492. break;
  22493. }
  22494. }
  22495. shiftT(281); // '{'
  22496. lookahead1W(184); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  22497. if (l1 != 287) // '}'
  22498. {
  22499. try_FTSelection();
  22500. }
  22501. shiftT(287); // '}'
  22502. }
  22503. function parse_FTAnyallOption()
  22504. {
  22505. eventHandler.startNonterminal("FTAnyallOption", e0);
  22506. switch (l1)
  22507. {
  22508. case 77: // 'any'
  22509. shift(77); // 'any'
  22510. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22511. if (l1 == 278) // 'word'
  22512. {
  22513. shift(278); // 'word'
  22514. }
  22515. break;
  22516. case 72: // 'all'
  22517. shift(72); // 'all'
  22518. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22519. if (l1 == 279) // 'words'
  22520. {
  22521. shift(279); // 'words'
  22522. }
  22523. break;
  22524. default:
  22525. shift(214); // 'phrase'
  22526. }
  22527. eventHandler.endNonterminal("FTAnyallOption", e0);
  22528. }
  22529. function try_FTAnyallOption()
  22530. {
  22531. switch (l1)
  22532. {
  22533. case 77: // 'any'
  22534. shiftT(77); // 'any'
  22535. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22536. if (l1 == 278) // 'word'
  22537. {
  22538. shiftT(278); // 'word'
  22539. }
  22540. break;
  22541. case 72: // 'all'
  22542. shiftT(72); // 'all'
  22543. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22544. if (l1 == 279) // 'words'
  22545. {
  22546. shiftT(279); // 'words'
  22547. }
  22548. break;
  22549. default:
  22550. shiftT(214); // 'phrase'
  22551. }
  22552. }
  22553. function parse_FTTimes()
  22554. {
  22555. eventHandler.startNonterminal("FTTimes", e0);
  22556. shift(199); // 'occurs'
  22557. lookahead1W(159); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  22558. whitespace();
  22559. parse_FTRange();
  22560. shift(252); // 'times'
  22561. eventHandler.endNonterminal("FTTimes", e0);
  22562. }
  22563. function try_FTTimes()
  22564. {
  22565. shiftT(199); // 'occurs'
  22566. lookahead1W(159); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  22567. try_FTRange();
  22568. shiftT(252); // 'times'
  22569. }
  22570. function parse_FTRange()
  22571. {
  22572. eventHandler.startNonterminal("FTRange", e0);
  22573. switch (l1)
  22574. {
  22575. case 131: // 'exactly'
  22576. shift(131); // 'exactly'
  22577. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22578. whitespace();
  22579. parse_AdditiveExpr();
  22580. break;
  22581. case 82: // 'at'
  22582. shift(82); // 'at'
  22583. lookahead1W(129); // S^WS | '(:' | 'least' | 'most'
  22584. switch (l1)
  22585. {
  22586. case 176: // 'least'
  22587. shift(176); // 'least'
  22588. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22589. whitespace();
  22590. parse_AdditiveExpr();
  22591. break;
  22592. default:
  22593. shift(186); // 'most'
  22594. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22595. whitespace();
  22596. parse_AdditiveExpr();
  22597. }
  22598. break;
  22599. default:
  22600. shift(142); // 'from'
  22601. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22602. whitespace();
  22603. parse_AdditiveExpr();
  22604. shift(253); // 'to'
  22605. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22606. whitespace();
  22607. parse_AdditiveExpr();
  22608. }
  22609. eventHandler.endNonterminal("FTRange", e0);
  22610. }
  22611. function try_FTRange()
  22612. {
  22613. switch (l1)
  22614. {
  22615. case 131: // 'exactly'
  22616. shiftT(131); // 'exactly'
  22617. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22618. try_AdditiveExpr();
  22619. break;
  22620. case 82: // 'at'
  22621. shiftT(82); // 'at'
  22622. lookahead1W(129); // S^WS | '(:' | 'least' | 'most'
  22623. switch (l1)
  22624. {
  22625. case 176: // 'least'
  22626. shiftT(176); // 'least'
  22627. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22628. try_AdditiveExpr();
  22629. break;
  22630. default:
  22631. shiftT(186); // 'most'
  22632. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22633. try_AdditiveExpr();
  22634. }
  22635. break;
  22636. default:
  22637. shiftT(142); // 'from'
  22638. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22639. try_AdditiveExpr();
  22640. shiftT(253); // 'to'
  22641. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22642. try_AdditiveExpr();
  22643. }
  22644. }
  22645. function parse_FTPosFilter()
  22646. {
  22647. eventHandler.startNonterminal("FTPosFilter", e0);
  22648. switch (l1)
  22649. {
  22650. case 206: // 'ordered'
  22651. parse_FTOrder();
  22652. break;
  22653. case 275: // 'window'
  22654. parse_FTWindow();
  22655. break;
  22656. case 118: // 'distance'
  22657. parse_FTDistance();
  22658. break;
  22659. case 116: // 'different'
  22660. case 227: // 'same'
  22661. parse_FTScope();
  22662. break;
  22663. default:
  22664. parse_FTContent();
  22665. }
  22666. eventHandler.endNonterminal("FTPosFilter", e0);
  22667. }
  22668. function try_FTPosFilter()
  22669. {
  22670. switch (l1)
  22671. {
  22672. case 206: // 'ordered'
  22673. try_FTOrder();
  22674. break;
  22675. case 275: // 'window'
  22676. try_FTWindow();
  22677. break;
  22678. case 118: // 'distance'
  22679. try_FTDistance();
  22680. break;
  22681. case 116: // 'different'
  22682. case 227: // 'same'
  22683. try_FTScope();
  22684. break;
  22685. default:
  22686. try_FTContent();
  22687. }
  22688. }
  22689. function parse_FTOrder()
  22690. {
  22691. eventHandler.startNonterminal("FTOrder", e0);
  22692. shift(206); // 'ordered'
  22693. eventHandler.endNonterminal("FTOrder", e0);
  22694. }
  22695. function try_FTOrder()
  22696. {
  22697. shiftT(206); // 'ordered'
  22698. }
  22699. function parse_FTWindow()
  22700. {
  22701. eventHandler.startNonterminal("FTWindow", e0);
  22702. shift(275); // 'window'
  22703. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22704. whitespace();
  22705. parse_AdditiveExpr();
  22706. whitespace();
  22707. parse_FTUnit();
  22708. eventHandler.endNonterminal("FTWindow", e0);
  22709. }
  22710. function try_FTWindow()
  22711. {
  22712. shiftT(275); // 'window'
  22713. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  22714. try_AdditiveExpr();
  22715. try_FTUnit();
  22716. }
  22717. function parse_FTDistance()
  22718. {
  22719. eventHandler.startNonterminal("FTDistance", e0);
  22720. shift(118); // 'distance'
  22721. lookahead1W(159); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  22722. whitespace();
  22723. parse_FTRange();
  22724. whitespace();
  22725. parse_FTUnit();
  22726. eventHandler.endNonterminal("FTDistance", e0);
  22727. }
  22728. function try_FTDistance()
  22729. {
  22730. shiftT(118); // 'distance'
  22731. lookahead1W(159); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  22732. try_FTRange();
  22733. try_FTUnit();
  22734. }
  22735. function parse_FTUnit()
  22736. {
  22737. eventHandler.startNonterminal("FTUnit", e0);
  22738. switch (l1)
  22739. {
  22740. case 279: // 'words'
  22741. shift(279); // 'words'
  22742. break;
  22743. case 237: // 'sentences'
  22744. shift(237); // 'sentences'
  22745. break;
  22746. default:
  22747. shift(209); // 'paragraphs'
  22748. }
  22749. eventHandler.endNonterminal("FTUnit", e0);
  22750. }
  22751. function try_FTUnit()
  22752. {
  22753. switch (l1)
  22754. {
  22755. case 279: // 'words'
  22756. shiftT(279); // 'words'
  22757. break;
  22758. case 237: // 'sentences'
  22759. shiftT(237); // 'sentences'
  22760. break;
  22761. default:
  22762. shiftT(209); // 'paragraphs'
  22763. }
  22764. }
  22765. function parse_FTScope()
  22766. {
  22767. eventHandler.startNonterminal("FTScope", e0);
  22768. switch (l1)
  22769. {
  22770. case 227: // 'same'
  22771. shift(227); // 'same'
  22772. break;
  22773. default:
  22774. shift(116); // 'different'
  22775. }
  22776. lookahead1W(136); // S^WS | '(:' | 'paragraph' | 'sentence'
  22777. whitespace();
  22778. parse_FTBigUnit();
  22779. eventHandler.endNonterminal("FTScope", e0);
  22780. }
  22781. function try_FTScope()
  22782. {
  22783. switch (l1)
  22784. {
  22785. case 227: // 'same'
  22786. shiftT(227); // 'same'
  22787. break;
  22788. default:
  22789. shiftT(116); // 'different'
  22790. }
  22791. lookahead1W(136); // S^WS | '(:' | 'paragraph' | 'sentence'
  22792. try_FTBigUnit();
  22793. }
  22794. function parse_FTBigUnit()
  22795. {
  22796. eventHandler.startNonterminal("FTBigUnit", e0);
  22797. switch (l1)
  22798. {
  22799. case 236: // 'sentence'
  22800. shift(236); // 'sentence'
  22801. break;
  22802. default:
  22803. shift(208); // 'paragraph'
  22804. }
  22805. eventHandler.endNonterminal("FTBigUnit", e0);
  22806. }
  22807. function try_FTBigUnit()
  22808. {
  22809. switch (l1)
  22810. {
  22811. case 236: // 'sentence'
  22812. shiftT(236); // 'sentence'
  22813. break;
  22814. default:
  22815. shiftT(208); // 'paragraph'
  22816. }
  22817. }
  22818. function parse_FTContent()
  22819. {
  22820. eventHandler.startNonterminal("FTContent", e0);
  22821. switch (l1)
  22822. {
  22823. case 82: // 'at'
  22824. shift(82); // 'at'
  22825. lookahead1W(121); // S^WS | '(:' | 'end' | 'start'
  22826. switch (l1)
  22827. {
  22828. case 242: // 'start'
  22829. shift(242); // 'start'
  22830. break;
  22831. default:
  22832. shift(127); // 'end'
  22833. }
  22834. break;
  22835. default:
  22836. shift(128); // 'entire'
  22837. lookahead1W(45); // S^WS | '(:' | 'content'
  22838. shift(101); // 'content'
  22839. }
  22840. eventHandler.endNonterminal("FTContent", e0);
  22841. }
  22842. function try_FTContent()
  22843. {
  22844. switch (l1)
  22845. {
  22846. case 82: // 'at'
  22847. shiftT(82); // 'at'
  22848. lookahead1W(121); // S^WS | '(:' | 'end' | 'start'
  22849. switch (l1)
  22850. {
  22851. case 242: // 'start'
  22852. shiftT(242); // 'start'
  22853. break;
  22854. default:
  22855. shiftT(127); // 'end'
  22856. }
  22857. break;
  22858. default:
  22859. shiftT(128); // 'entire'
  22860. lookahead1W(45); // S^WS | '(:' | 'content'
  22861. shiftT(101); // 'content'
  22862. }
  22863. }
  22864. function parse_FTMatchOptions()
  22865. {
  22866. eventHandler.startNonterminal("FTMatchOptions", e0);
  22867. for (;;)
  22868. {
  22869. shift(265); // 'using'
  22870. lookahead1W(204); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  22871. whitespace();
  22872. parse_FTMatchOption();
  22873. lookahead1W(213); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22874. if (l1 != 265) // 'using'
  22875. {
  22876. break;
  22877. }
  22878. }
  22879. eventHandler.endNonterminal("FTMatchOptions", e0);
  22880. }
  22881. function try_FTMatchOptions()
  22882. {
  22883. for (;;)
  22884. {
  22885. shiftT(265); // 'using'
  22886. lookahead1W(204); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  22887. try_FTMatchOption();
  22888. lookahead1W(213); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  22889. if (l1 != 265) // 'using'
  22890. {
  22891. break;
  22892. }
  22893. }
  22894. }
  22895. function parse_FTMatchOption()
  22896. {
  22897. eventHandler.startNonterminal("FTMatchOption", e0);
  22898. switch (l1)
  22899. {
  22900. case 191: // 'no'
  22901. lookahead2W(176); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  22902. break;
  22903. default:
  22904. lk = l1;
  22905. }
  22906. switch (lk)
  22907. {
  22908. case 172: // 'language'
  22909. parse_FTLanguageOption();
  22910. break;
  22911. case 274: // 'wildcards'
  22912. case 140479: // 'no' 'wildcards'
  22913. parse_FTWildCardOption();
  22914. break;
  22915. case 251: // 'thesaurus'
  22916. case 128703: // 'no' 'thesaurus'
  22917. parse_FTThesaurusOption();
  22918. break;
  22919. case 243: // 'stemming'
  22920. case 124607: // 'no' 'stemming'
  22921. parse_FTStemOption();
  22922. break;
  22923. case 115: // 'diacritics'
  22924. parse_FTDiacriticsOption();
  22925. break;
  22926. case 244: // 'stop'
  22927. case 125119: // 'no' 'stop'
  22928. parse_FTStopWordOption();
  22929. break;
  22930. case 203: // 'option'
  22931. parse_FTExtensionOption();
  22932. break;
  22933. default:
  22934. parse_FTCaseOption();
  22935. }
  22936. eventHandler.endNonterminal("FTMatchOption", e0);
  22937. }
  22938. function try_FTMatchOption()
  22939. {
  22940. switch (l1)
  22941. {
  22942. case 191: // 'no'
  22943. lookahead2W(176); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  22944. break;
  22945. default:
  22946. lk = l1;
  22947. }
  22948. switch (lk)
  22949. {
  22950. case 172: // 'language'
  22951. try_FTLanguageOption();
  22952. break;
  22953. case 274: // 'wildcards'
  22954. case 140479: // 'no' 'wildcards'
  22955. try_FTWildCardOption();
  22956. break;
  22957. case 251: // 'thesaurus'
  22958. case 128703: // 'no' 'thesaurus'
  22959. try_FTThesaurusOption();
  22960. break;
  22961. case 243: // 'stemming'
  22962. case 124607: // 'no' 'stemming'
  22963. try_FTStemOption();
  22964. break;
  22965. case 115: // 'diacritics'
  22966. try_FTDiacriticsOption();
  22967. break;
  22968. case 244: // 'stop'
  22969. case 125119: // 'no' 'stop'
  22970. try_FTStopWordOption();
  22971. break;
  22972. case 203: // 'option'
  22973. try_FTExtensionOption();
  22974. break;
  22975. default:
  22976. try_FTCaseOption();
  22977. }
  22978. }
  22979. function parse_FTCaseOption()
  22980. {
  22981. eventHandler.startNonterminal("FTCaseOption", e0);
  22982. switch (l1)
  22983. {
  22984. case 89: // 'case'
  22985. shift(89); // 'case'
  22986. lookahead1W(128); // S^WS | '(:' | 'insensitive' | 'sensitive'
  22987. switch (l1)
  22988. {
  22989. case 160: // 'insensitive'
  22990. shift(160); // 'insensitive'
  22991. break;
  22992. default:
  22993. shift(235); // 'sensitive'
  22994. }
  22995. break;
  22996. case 180: // 'lowercase'
  22997. shift(180); // 'lowercase'
  22998. break;
  22999. default:
  23000. shift(264); // 'uppercase'
  23001. }
  23002. eventHandler.endNonterminal("FTCaseOption", e0);
  23003. }
  23004. function try_FTCaseOption()
  23005. {
  23006. switch (l1)
  23007. {
  23008. case 89: // 'case'
  23009. shiftT(89); // 'case'
  23010. lookahead1W(128); // S^WS | '(:' | 'insensitive' | 'sensitive'
  23011. switch (l1)
  23012. {
  23013. case 160: // 'insensitive'
  23014. shiftT(160); // 'insensitive'
  23015. break;
  23016. default:
  23017. shiftT(235); // 'sensitive'
  23018. }
  23019. break;
  23020. case 180: // 'lowercase'
  23021. shiftT(180); // 'lowercase'
  23022. break;
  23023. default:
  23024. shiftT(264); // 'uppercase'
  23025. }
  23026. }
  23027. function parse_FTDiacriticsOption()
  23028. {
  23029. eventHandler.startNonterminal("FTDiacriticsOption", e0);
  23030. shift(115); // 'diacritics'
  23031. lookahead1W(128); // S^WS | '(:' | 'insensitive' | 'sensitive'
  23032. switch (l1)
  23033. {
  23034. case 160: // 'insensitive'
  23035. shift(160); // 'insensitive'
  23036. break;
  23037. default:
  23038. shift(235); // 'sensitive'
  23039. }
  23040. eventHandler.endNonterminal("FTDiacriticsOption", e0);
  23041. }
  23042. function try_FTDiacriticsOption()
  23043. {
  23044. shiftT(115); // 'diacritics'
  23045. lookahead1W(128); // S^WS | '(:' | 'insensitive' | 'sensitive'
  23046. switch (l1)
  23047. {
  23048. case 160: // 'insensitive'
  23049. shiftT(160); // 'insensitive'
  23050. break;
  23051. default:
  23052. shiftT(235); // 'sensitive'
  23053. }
  23054. }
  23055. function parse_FTStemOption()
  23056. {
  23057. eventHandler.startNonterminal("FTStemOption", e0);
  23058. switch (l1)
  23059. {
  23060. case 243: // 'stemming'
  23061. shift(243); // 'stemming'
  23062. break;
  23063. default:
  23064. shift(191); // 'no'
  23065. lookahead1W(77); // S^WS | '(:' | 'stemming'
  23066. shift(243); // 'stemming'
  23067. }
  23068. eventHandler.endNonterminal("FTStemOption", e0);
  23069. }
  23070. function try_FTStemOption()
  23071. {
  23072. switch (l1)
  23073. {
  23074. case 243: // 'stemming'
  23075. shiftT(243); // 'stemming'
  23076. break;
  23077. default:
  23078. shiftT(191); // 'no'
  23079. lookahead1W(77); // S^WS | '(:' | 'stemming'
  23080. shiftT(243); // 'stemming'
  23081. }
  23082. }
  23083. function parse_FTThesaurusOption()
  23084. {
  23085. eventHandler.startNonterminal("FTThesaurusOption", e0);
  23086. switch (l1)
  23087. {
  23088. case 251: // 'thesaurus'
  23089. shift(251); // 'thesaurus'
  23090. lookahead1W(152); // S^WS | '(' | '(:' | 'at' | 'default'
  23091. switch (l1)
  23092. {
  23093. case 82: // 'at'
  23094. whitespace();
  23095. parse_FTThesaurusID();
  23096. break;
  23097. case 110: // 'default'
  23098. shift(110); // 'default'
  23099. break;
  23100. default:
  23101. shift(35); // '('
  23102. lookahead1W(116); // S^WS | '(:' | 'at' | 'default'
  23103. switch (l1)
  23104. {
  23105. case 82: // 'at'
  23106. whitespace();
  23107. parse_FTThesaurusID();
  23108. break;
  23109. default:
  23110. shift(110); // 'default'
  23111. }
  23112. for (;;)
  23113. {
  23114. lookahead1W(105); // S^WS | '(:' | ')' | ','
  23115. if (l1 != 42) // ','
  23116. {
  23117. break;
  23118. }
  23119. shift(42); // ','
  23120. lookahead1W(34); // S^WS | '(:' | 'at'
  23121. whitespace();
  23122. parse_FTThesaurusID();
  23123. }
  23124. shift(38); // ')'
  23125. }
  23126. break;
  23127. default:
  23128. shift(191); // 'no'
  23129. lookahead1W(81); // S^WS | '(:' | 'thesaurus'
  23130. shift(251); // 'thesaurus'
  23131. }
  23132. eventHandler.endNonterminal("FTThesaurusOption", e0);
  23133. }
  23134. function try_FTThesaurusOption()
  23135. {
  23136. switch (l1)
  23137. {
  23138. case 251: // 'thesaurus'
  23139. shiftT(251); // 'thesaurus'
  23140. lookahead1W(152); // S^WS | '(' | '(:' | 'at' | 'default'
  23141. switch (l1)
  23142. {
  23143. case 82: // 'at'
  23144. try_FTThesaurusID();
  23145. break;
  23146. case 110: // 'default'
  23147. shiftT(110); // 'default'
  23148. break;
  23149. default:
  23150. shiftT(35); // '('
  23151. lookahead1W(116); // S^WS | '(:' | 'at' | 'default'
  23152. switch (l1)
  23153. {
  23154. case 82: // 'at'
  23155. try_FTThesaurusID();
  23156. break;
  23157. default:
  23158. shiftT(110); // 'default'
  23159. }
  23160. for (;;)
  23161. {
  23162. lookahead1W(105); // S^WS | '(:' | ')' | ','
  23163. if (l1 != 42) // ','
  23164. {
  23165. break;
  23166. }
  23167. shiftT(42); // ','
  23168. lookahead1W(34); // S^WS | '(:' | 'at'
  23169. try_FTThesaurusID();
  23170. }
  23171. shiftT(38); // ')'
  23172. }
  23173. break;
  23174. default:
  23175. shiftT(191); // 'no'
  23176. lookahead1W(81); // S^WS | '(:' | 'thesaurus'
  23177. shiftT(251); // 'thesaurus'
  23178. }
  23179. }
  23180. function parse_FTThesaurusID()
  23181. {
  23182. eventHandler.startNonterminal("FTThesaurusID", e0);
  23183. shift(82); // 'at'
  23184. lookahead1W(15); // URILiteral | S^WS | '(:'
  23185. shift(7); // URILiteral
  23186. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23187. if (l1 == 221) // 'relationship'
  23188. {
  23189. shift(221); // 'relationship'
  23190. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23191. shift(11); // StringLiteral
  23192. }
  23193. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23194. switch (l1)
  23195. {
  23196. case 82: // 'at'
  23197. lookahead2W(183); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  23198. break;
  23199. default:
  23200. lk = l1;
  23201. }
  23202. if (lk == 131 // 'exactly'
  23203. || lk == 142 // 'from'
  23204. || lk == 90194 // 'at' 'least'
  23205. || lk == 95314) // 'at' 'most'
  23206. {
  23207. whitespace();
  23208. parse_FTLiteralRange();
  23209. lookahead1W(61); // S^WS | '(:' | 'levels'
  23210. shift(178); // 'levels'
  23211. }
  23212. eventHandler.endNonterminal("FTThesaurusID", e0);
  23213. }
  23214. function try_FTThesaurusID()
  23215. {
  23216. shiftT(82); // 'at'
  23217. lookahead1W(15); // URILiteral | S^WS | '(:'
  23218. shiftT(7); // URILiteral
  23219. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23220. if (l1 == 221) // 'relationship'
  23221. {
  23222. shiftT(221); // 'relationship'
  23223. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23224. shiftT(11); // StringLiteral
  23225. }
  23226. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23227. switch (l1)
  23228. {
  23229. case 82: // 'at'
  23230. lookahead2W(183); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  23231. break;
  23232. default:
  23233. lk = l1;
  23234. }
  23235. if (lk == 131 // 'exactly'
  23236. || lk == 142 // 'from'
  23237. || lk == 90194 // 'at' 'least'
  23238. || lk == 95314) // 'at' 'most'
  23239. {
  23240. try_FTLiteralRange();
  23241. lookahead1W(61); // S^WS | '(:' | 'levels'
  23242. shiftT(178); // 'levels'
  23243. }
  23244. }
  23245. function parse_FTLiteralRange()
  23246. {
  23247. eventHandler.startNonterminal("FTLiteralRange", e0);
  23248. switch (l1)
  23249. {
  23250. case 131: // 'exactly'
  23251. shift(131); // 'exactly'
  23252. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23253. shift(8); // IntegerLiteral
  23254. break;
  23255. case 82: // 'at'
  23256. shift(82); // 'at'
  23257. lookahead1W(129); // S^WS | '(:' | 'least' | 'most'
  23258. switch (l1)
  23259. {
  23260. case 176: // 'least'
  23261. shift(176); // 'least'
  23262. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23263. shift(8); // IntegerLiteral
  23264. break;
  23265. default:
  23266. shift(186); // 'most'
  23267. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23268. shift(8); // IntegerLiteral
  23269. }
  23270. break;
  23271. default:
  23272. shift(142); // 'from'
  23273. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23274. shift(8); // IntegerLiteral
  23275. lookahead1W(82); // S^WS | '(:' | 'to'
  23276. shift(253); // 'to'
  23277. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23278. shift(8); // IntegerLiteral
  23279. }
  23280. eventHandler.endNonterminal("FTLiteralRange", e0);
  23281. }
  23282. function try_FTLiteralRange()
  23283. {
  23284. switch (l1)
  23285. {
  23286. case 131: // 'exactly'
  23287. shiftT(131); // 'exactly'
  23288. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23289. shiftT(8); // IntegerLiteral
  23290. break;
  23291. case 82: // 'at'
  23292. shiftT(82); // 'at'
  23293. lookahead1W(129); // S^WS | '(:' | 'least' | 'most'
  23294. switch (l1)
  23295. {
  23296. case 176: // 'least'
  23297. shiftT(176); // 'least'
  23298. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23299. shiftT(8); // IntegerLiteral
  23300. break;
  23301. default:
  23302. shiftT(186); // 'most'
  23303. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23304. shiftT(8); // IntegerLiteral
  23305. }
  23306. break;
  23307. default:
  23308. shiftT(142); // 'from'
  23309. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23310. shiftT(8); // IntegerLiteral
  23311. lookahead1W(82); // S^WS | '(:' | 'to'
  23312. shiftT(253); // 'to'
  23313. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  23314. shiftT(8); // IntegerLiteral
  23315. }
  23316. }
  23317. function parse_FTStopWordOption()
  23318. {
  23319. eventHandler.startNonterminal("FTStopWordOption", e0);
  23320. switch (l1)
  23321. {
  23322. case 244: // 'stop'
  23323. shift(244); // 'stop'
  23324. lookahead1W(89); // S^WS | '(:' | 'words'
  23325. shift(279); // 'words'
  23326. lookahead1W(152); // S^WS | '(' | '(:' | 'at' | 'default'
  23327. switch (l1)
  23328. {
  23329. case 110: // 'default'
  23330. shift(110); // 'default'
  23331. for (;;)
  23332. {
  23333. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23334. if (l1 != 132 // 'except'
  23335. && l1 != 260) // 'union'
  23336. {
  23337. break;
  23338. }
  23339. whitespace();
  23340. parse_FTStopWordsInclExcl();
  23341. }
  23342. break;
  23343. default:
  23344. whitespace();
  23345. parse_FTStopWords();
  23346. for (;;)
  23347. {
  23348. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23349. if (l1 != 132 // 'except'
  23350. && l1 != 260) // 'union'
  23351. {
  23352. break;
  23353. }
  23354. whitespace();
  23355. parse_FTStopWordsInclExcl();
  23356. }
  23357. }
  23358. break;
  23359. default:
  23360. shift(191); // 'no'
  23361. lookahead1W(78); // S^WS | '(:' | 'stop'
  23362. shift(244); // 'stop'
  23363. lookahead1W(89); // S^WS | '(:' | 'words'
  23364. shift(279); // 'words'
  23365. }
  23366. eventHandler.endNonterminal("FTStopWordOption", e0);
  23367. }
  23368. function try_FTStopWordOption()
  23369. {
  23370. switch (l1)
  23371. {
  23372. case 244: // 'stop'
  23373. shiftT(244); // 'stop'
  23374. lookahead1W(89); // S^WS | '(:' | 'words'
  23375. shiftT(279); // 'words'
  23376. lookahead1W(152); // S^WS | '(' | '(:' | 'at' | 'default'
  23377. switch (l1)
  23378. {
  23379. case 110: // 'default'
  23380. shiftT(110); // 'default'
  23381. for (;;)
  23382. {
  23383. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23384. if (l1 != 132 // 'except'
  23385. && l1 != 260) // 'union'
  23386. {
  23387. break;
  23388. }
  23389. try_FTStopWordsInclExcl();
  23390. }
  23391. break;
  23392. default:
  23393. try_FTStopWords();
  23394. for (;;)
  23395. {
  23396. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  23397. if (l1 != 132 // 'except'
  23398. && l1 != 260) // 'union'
  23399. {
  23400. break;
  23401. }
  23402. try_FTStopWordsInclExcl();
  23403. }
  23404. }
  23405. break;
  23406. default:
  23407. shiftT(191); // 'no'
  23408. lookahead1W(78); // S^WS | '(:' | 'stop'
  23409. shiftT(244); // 'stop'
  23410. lookahead1W(89); // S^WS | '(:' | 'words'
  23411. shiftT(279); // 'words'
  23412. }
  23413. }
  23414. function parse_FTStopWords()
  23415. {
  23416. eventHandler.startNonterminal("FTStopWords", e0);
  23417. switch (l1)
  23418. {
  23419. case 82: // 'at'
  23420. shift(82); // 'at'
  23421. lookahead1W(15); // URILiteral | S^WS | '(:'
  23422. shift(7); // URILiteral
  23423. break;
  23424. default:
  23425. shift(35); // '('
  23426. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23427. shift(11); // StringLiteral
  23428. for (;;)
  23429. {
  23430. lookahead1W(105); // S^WS | '(:' | ')' | ','
  23431. if (l1 != 42) // ','
  23432. {
  23433. break;
  23434. }
  23435. shift(42); // ','
  23436. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23437. shift(11); // StringLiteral
  23438. }
  23439. shift(38); // ')'
  23440. }
  23441. eventHandler.endNonterminal("FTStopWords", e0);
  23442. }
  23443. function try_FTStopWords()
  23444. {
  23445. switch (l1)
  23446. {
  23447. case 82: // 'at'
  23448. shiftT(82); // 'at'
  23449. lookahead1W(15); // URILiteral | S^WS | '(:'
  23450. shiftT(7); // URILiteral
  23451. break;
  23452. default:
  23453. shiftT(35); // '('
  23454. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23455. shiftT(11); // StringLiteral
  23456. for (;;)
  23457. {
  23458. lookahead1W(105); // S^WS | '(:' | ')' | ','
  23459. if (l1 != 42) // ','
  23460. {
  23461. break;
  23462. }
  23463. shiftT(42); // ','
  23464. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23465. shiftT(11); // StringLiteral
  23466. }
  23467. shiftT(38); // ')'
  23468. }
  23469. }
  23470. function parse_FTStopWordsInclExcl()
  23471. {
  23472. eventHandler.startNonterminal("FTStopWordsInclExcl", e0);
  23473. switch (l1)
  23474. {
  23475. case 260: // 'union'
  23476. shift(260); // 'union'
  23477. break;
  23478. default:
  23479. shift(132); // 'except'
  23480. }
  23481. lookahead1W(103); // S^WS | '(' | '(:' | 'at'
  23482. whitespace();
  23483. parse_FTStopWords();
  23484. eventHandler.endNonterminal("FTStopWordsInclExcl", e0);
  23485. }
  23486. function try_FTStopWordsInclExcl()
  23487. {
  23488. switch (l1)
  23489. {
  23490. case 260: // 'union'
  23491. shiftT(260); // 'union'
  23492. break;
  23493. default:
  23494. shiftT(132); // 'except'
  23495. }
  23496. lookahead1W(103); // S^WS | '(' | '(:' | 'at'
  23497. try_FTStopWords();
  23498. }
  23499. function parse_FTLanguageOption()
  23500. {
  23501. eventHandler.startNonterminal("FTLanguageOption", e0);
  23502. shift(172); // 'language'
  23503. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23504. shift(11); // StringLiteral
  23505. eventHandler.endNonterminal("FTLanguageOption", e0);
  23506. }
  23507. function try_FTLanguageOption()
  23508. {
  23509. shiftT(172); // 'language'
  23510. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23511. shiftT(11); // StringLiteral
  23512. }
  23513. function parse_FTWildCardOption()
  23514. {
  23515. eventHandler.startNonterminal("FTWildCardOption", e0);
  23516. switch (l1)
  23517. {
  23518. case 274: // 'wildcards'
  23519. shift(274); // 'wildcards'
  23520. break;
  23521. default:
  23522. shift(191); // 'no'
  23523. lookahead1W(87); // S^WS | '(:' | 'wildcards'
  23524. shift(274); // 'wildcards'
  23525. }
  23526. eventHandler.endNonterminal("FTWildCardOption", e0);
  23527. }
  23528. function try_FTWildCardOption()
  23529. {
  23530. switch (l1)
  23531. {
  23532. case 274: // 'wildcards'
  23533. shiftT(274); // 'wildcards'
  23534. break;
  23535. default:
  23536. shiftT(191); // 'no'
  23537. lookahead1W(87); // S^WS | '(:' | 'wildcards'
  23538. shiftT(274); // 'wildcards'
  23539. }
  23540. }
  23541. function parse_FTExtensionOption()
  23542. {
  23543. eventHandler.startNonterminal("FTExtensionOption", e0);
  23544. shift(203); // 'option'
  23545. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23546. whitespace();
  23547. parse_EQName();
  23548. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23549. shift(11); // StringLiteral
  23550. eventHandler.endNonterminal("FTExtensionOption", e0);
  23551. }
  23552. function try_FTExtensionOption()
  23553. {
  23554. shiftT(203); // 'option'
  23555. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23556. try_EQName();
  23557. lookahead1W(17); // StringLiteral | S^WS | '(:'
  23558. shiftT(11); // StringLiteral
  23559. }
  23560. function parse_FTIgnoreOption()
  23561. {
  23562. eventHandler.startNonterminal("FTIgnoreOption", e0);
  23563. shift(277); // 'without'
  23564. lookahead1W(45); // S^WS | '(:' | 'content'
  23565. shift(101); // 'content'
  23566. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23567. whitespace();
  23568. parse_UnionExpr();
  23569. eventHandler.endNonterminal("FTIgnoreOption", e0);
  23570. }
  23571. function try_FTIgnoreOption()
  23572. {
  23573. shiftT(277); // 'without'
  23574. lookahead1W(45); // S^WS | '(:' | 'content'
  23575. shiftT(101); // 'content'
  23576. lookahead1W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23577. try_UnionExpr();
  23578. }
  23579. function parse_CollectionDecl()
  23580. {
  23581. eventHandler.startNonterminal("CollectionDecl", e0);
  23582. shift(96); // 'collection'
  23583. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23584. whitespace();
  23585. parse_EQName();
  23586. lookahead1W(111); // S^WS | '(:' | ';' | 'as'
  23587. if (l1 == 80) // 'as'
  23588. {
  23589. whitespace();
  23590. parse_CollectionTypeDecl();
  23591. }
  23592. eventHandler.endNonterminal("CollectionDecl", e0);
  23593. }
  23594. function parse_CollectionTypeDecl()
  23595. {
  23596. eventHandler.startNonterminal("CollectionTypeDecl", e0);
  23597. shift(80); // 'as'
  23598. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  23599. whitespace();
  23600. parse_ItemType();
  23601. lookahead1W(171); // S^WS | '(:' | '*' | '+' | ';' | '?'
  23602. if (l1 != 54) // ';'
  23603. {
  23604. whitespace();
  23605. parse_OccurrenceIndicator();
  23606. }
  23607. eventHandler.endNonterminal("CollectionTypeDecl", e0);
  23608. }
  23609. function parse_IndexName()
  23610. {
  23611. eventHandler.startNonterminal("IndexName", e0);
  23612. parse_EQName();
  23613. eventHandler.endNonterminal("IndexName", e0);
  23614. }
  23615. function parse_IndexDomainExpr()
  23616. {
  23617. eventHandler.startNonterminal("IndexDomainExpr", e0);
  23618. parse_PathExpr();
  23619. eventHandler.endNonterminal("IndexDomainExpr", e0);
  23620. }
  23621. function parse_IndexKeySpec()
  23622. {
  23623. eventHandler.startNonterminal("IndexKeySpec", e0);
  23624. parse_IndexKeyExpr();
  23625. if (l1 == 80) // 'as'
  23626. {
  23627. whitespace();
  23628. parse_IndexKeyTypeDecl();
  23629. }
  23630. lookahead1W(156); // S^WS | '(:' | ',' | ';' | 'collation'
  23631. if (l1 == 95) // 'collation'
  23632. {
  23633. whitespace();
  23634. parse_IndexKeyCollation();
  23635. }
  23636. eventHandler.endNonterminal("IndexKeySpec", e0);
  23637. }
  23638. function parse_IndexKeyExpr()
  23639. {
  23640. eventHandler.startNonterminal("IndexKeyExpr", e0);
  23641. parse_PathExpr();
  23642. eventHandler.endNonterminal("IndexKeyExpr", e0);
  23643. }
  23644. function parse_IndexKeyTypeDecl()
  23645. {
  23646. eventHandler.startNonterminal("IndexKeyTypeDecl", e0);
  23647. shift(80); // 'as'
  23648. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23649. whitespace();
  23650. parse_AtomicType();
  23651. lookahead1W(189); // S^WS | '(:' | '*' | '+' | ',' | ';' | '?' | 'collation'
  23652. if (l1 == 40 // '*'
  23653. || l1 == 41 // '+'
  23654. || l1 == 65) // '?'
  23655. {
  23656. whitespace();
  23657. parse_OccurrenceIndicator();
  23658. }
  23659. eventHandler.endNonterminal("IndexKeyTypeDecl", e0);
  23660. }
  23661. function parse_AtomicType()
  23662. {
  23663. eventHandler.startNonterminal("AtomicType", e0);
  23664. parse_EQName();
  23665. eventHandler.endNonterminal("AtomicType", e0);
  23666. }
  23667. function parse_IndexKeyCollation()
  23668. {
  23669. eventHandler.startNonterminal("IndexKeyCollation", e0);
  23670. shift(95); // 'collation'
  23671. lookahead1W(15); // URILiteral | S^WS | '(:'
  23672. shift(7); // URILiteral
  23673. eventHandler.endNonterminal("IndexKeyCollation", e0);
  23674. }
  23675. function parse_IndexDecl()
  23676. {
  23677. eventHandler.startNonterminal("IndexDecl", e0);
  23678. shift(157); // 'index'
  23679. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23680. whitespace();
  23681. parse_IndexName();
  23682. lookahead1W(68); // S^WS | '(:' | 'on'
  23683. shift(201); // 'on'
  23684. lookahead1W(66); // S^WS | '(:' | 'nodes'
  23685. shift(195); // 'nodes'
  23686. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23687. whitespace();
  23688. parse_IndexDomainExpr();
  23689. shift(88); // 'by'
  23690. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23691. whitespace();
  23692. parse_IndexKeySpec();
  23693. for (;;)
  23694. {
  23695. lookahead1W(107); // S^WS | '(:' | ',' | ';'
  23696. if (l1 != 42) // ','
  23697. {
  23698. break;
  23699. }
  23700. shift(42); // ','
  23701. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23702. whitespace();
  23703. parse_IndexKeySpec();
  23704. }
  23705. eventHandler.endNonterminal("IndexDecl", e0);
  23706. }
  23707. function parse_ICDecl()
  23708. {
  23709. eventHandler.startNonterminal("ICDecl", e0);
  23710. shift(163); // 'integrity'
  23711. lookahead1W(43); // S^WS | '(:' | 'constraint'
  23712. shift(98); // 'constraint'
  23713. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23714. whitespace();
  23715. parse_EQName();
  23716. lookahead1W(124); // S^WS | '(:' | 'foreign' | 'on'
  23717. switch (l1)
  23718. {
  23719. case 201: // 'on'
  23720. whitespace();
  23721. parse_ICCollection();
  23722. break;
  23723. default:
  23724. whitespace();
  23725. parse_ICForeignKey();
  23726. }
  23727. eventHandler.endNonterminal("ICDecl", e0);
  23728. }
  23729. function parse_ICCollection()
  23730. {
  23731. eventHandler.startNonterminal("ICCollection", e0);
  23732. shift(201); // 'on'
  23733. lookahead1W(42); // S^WS | '(:' | 'collection'
  23734. shift(96); // 'collection'
  23735. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23736. whitespace();
  23737. parse_EQName();
  23738. lookahead1W(150); // S^WS | '$' | '(:' | 'foreach' | 'node'
  23739. switch (l1)
  23740. {
  23741. case 31: // '$'
  23742. whitespace();
  23743. parse_ICCollSequence();
  23744. break;
  23745. case 194: // 'node'
  23746. whitespace();
  23747. parse_ICCollSequenceUnique();
  23748. break;
  23749. default:
  23750. whitespace();
  23751. parse_ICCollNode();
  23752. }
  23753. eventHandler.endNonterminal("ICCollection", e0);
  23754. }
  23755. function parse_ICCollSequence()
  23756. {
  23757. eventHandler.startNonterminal("ICCollSequence", e0);
  23758. parse_VarRef();
  23759. lookahead1W(40); // S^WS | '(:' | 'check'
  23760. shift(93); // 'check'
  23761. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23762. whitespace();
  23763. parse_ExprSingle();
  23764. eventHandler.endNonterminal("ICCollSequence", e0);
  23765. }
  23766. function parse_ICCollSequenceUnique()
  23767. {
  23768. eventHandler.startNonterminal("ICCollSequenceUnique", e0);
  23769. shift(194); // 'node'
  23770. lookahead1W(21); // S^WS | '$' | '(:'
  23771. whitespace();
  23772. parse_VarRef();
  23773. lookahead1W(40); // S^WS | '(:' | 'check'
  23774. shift(93); // 'check'
  23775. lookahead1W(83); // S^WS | '(:' | 'unique'
  23776. shift(261); // 'unique'
  23777. lookahead1W(60); // S^WS | '(:' | 'key'
  23778. shift(171); // 'key'
  23779. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23780. whitespace();
  23781. parse_PathExpr();
  23782. eventHandler.endNonterminal("ICCollSequenceUnique", e0);
  23783. }
  23784. function parse_ICCollNode()
  23785. {
  23786. eventHandler.startNonterminal("ICCollNode", e0);
  23787. shift(140); // 'foreach'
  23788. lookahead1W(65); // S^WS | '(:' | 'node'
  23789. shift(194); // 'node'
  23790. lookahead1W(21); // S^WS | '$' | '(:'
  23791. whitespace();
  23792. parse_VarRef();
  23793. lookahead1W(40); // S^WS | '(:' | 'check'
  23794. shift(93); // 'check'
  23795. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23796. whitespace();
  23797. parse_ExprSingle();
  23798. eventHandler.endNonterminal("ICCollNode", e0);
  23799. }
  23800. function parse_ICForeignKey()
  23801. {
  23802. eventHandler.startNonterminal("ICForeignKey", e0);
  23803. shift(141); // 'foreign'
  23804. lookahead1W(60); // S^WS | '(:' | 'key'
  23805. shift(171); // 'key'
  23806. lookahead1W(54); // S^WS | '(:' | 'from'
  23807. whitespace();
  23808. parse_ICForeignKeySource();
  23809. whitespace();
  23810. parse_ICForeignKeyTarget();
  23811. eventHandler.endNonterminal("ICForeignKey", e0);
  23812. }
  23813. function parse_ICForeignKeySource()
  23814. {
  23815. eventHandler.startNonterminal("ICForeignKeySource", e0);
  23816. shift(142); // 'from'
  23817. lookahead1W(42); // S^WS | '(:' | 'collection'
  23818. whitespace();
  23819. parse_ICForeignKeyValues();
  23820. eventHandler.endNonterminal("ICForeignKeySource", e0);
  23821. }
  23822. function parse_ICForeignKeyTarget()
  23823. {
  23824. eventHandler.startNonterminal("ICForeignKeyTarget", e0);
  23825. shift(253); // 'to'
  23826. lookahead1W(42); // S^WS | '(:' | 'collection'
  23827. whitespace();
  23828. parse_ICForeignKeyValues();
  23829. eventHandler.endNonterminal("ICForeignKeyTarget", e0);
  23830. }
  23831. function parse_ICForeignKeyValues()
  23832. {
  23833. eventHandler.startNonterminal("ICForeignKeyValues", e0);
  23834. shift(96); // 'collection'
  23835. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23836. whitespace();
  23837. parse_EQName();
  23838. lookahead1W(65); // S^WS | '(:' | 'node'
  23839. shift(194); // 'node'
  23840. lookahead1W(21); // S^WS | '$' | '(:'
  23841. whitespace();
  23842. parse_VarRef();
  23843. lookahead1W(60); // S^WS | '(:' | 'key'
  23844. shift(171); // 'key'
  23845. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  23846. whitespace();
  23847. parse_PathExpr();
  23848. eventHandler.endNonterminal("ICForeignKeyValues", e0);
  23849. }
  23850. function try_Comment()
  23851. {
  23852. shiftT(37); // '(:'
  23853. for (;;)
  23854. {
  23855. lookahead1(92); // CommentContents | '(:' | ':)'
  23856. if (l1 == 51) // ':)'
  23857. {
  23858. break;
  23859. }
  23860. switch (l1)
  23861. {
  23862. case 24: // CommentContents
  23863. shiftT(24); // CommentContents
  23864. break;
  23865. default:
  23866. try_Comment();
  23867. }
  23868. }
  23869. shiftT(51); // ':)'
  23870. }
  23871. function try_Whitespace()
  23872. {
  23873. switch (l1)
  23874. {
  23875. case 22: // S^WS
  23876. shiftT(22); // S^WS
  23877. break;
  23878. default:
  23879. try_Comment();
  23880. }
  23881. }
  23882. function parse_EQName()
  23883. {
  23884. eventHandler.startNonterminal("EQName", e0);
  23885. lookahead1(240); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  23886. switch (l1)
  23887. {
  23888. case 83: // 'attribute'
  23889. shift(83); // 'attribute'
  23890. break;
  23891. case 97: // 'comment'
  23892. shift(97); // 'comment'
  23893. break;
  23894. case 121: // 'document-node'
  23895. shift(121); // 'document-node'
  23896. break;
  23897. case 122: // 'element'
  23898. shift(122); // 'element'
  23899. break;
  23900. case 125: // 'empty-sequence'
  23901. shift(125); // 'empty-sequence'
  23902. break;
  23903. case 147: // 'function'
  23904. shift(147); // 'function'
  23905. break;
  23906. case 154: // 'if'
  23907. shift(154); // 'if'
  23908. break;
  23909. case 167: // 'item'
  23910. shift(167); // 'item'
  23911. break;
  23912. case 188: // 'namespace-node'
  23913. shift(188); // 'namespace-node'
  23914. break;
  23915. case 194: // 'node'
  23916. shift(194); // 'node'
  23917. break;
  23918. case 220: // 'processing-instruction'
  23919. shift(220); // 'processing-instruction'
  23920. break;
  23921. case 230: // 'schema-attribute'
  23922. shift(230); // 'schema-attribute'
  23923. break;
  23924. case 231: // 'schema-element'
  23925. shift(231); // 'schema-element'
  23926. break;
  23927. case 248: // 'switch'
  23928. shift(248); // 'switch'
  23929. break;
  23930. case 249: // 'text'
  23931. shift(249); // 'text'
  23932. break;
  23933. case 259: // 'typeswitch'
  23934. shift(259); // 'typeswitch'
  23935. break;
  23936. case 79: // 'array'
  23937. shift(79); // 'array'
  23938. break;
  23939. case 169: // 'json-item'
  23940. shift(169); // 'json-item'
  23941. break;
  23942. case 247: // 'structured-item'
  23943. shift(247); // 'structured-item'
  23944. break;
  23945. default:
  23946. parse_FunctionName();
  23947. }
  23948. eventHandler.endNonterminal("EQName", e0);
  23949. }
  23950. function try_EQName()
  23951. {
  23952. lookahead1(240); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  23953. switch (l1)
  23954. {
  23955. case 83: // 'attribute'
  23956. shiftT(83); // 'attribute'
  23957. break;
  23958. case 97: // 'comment'
  23959. shiftT(97); // 'comment'
  23960. break;
  23961. case 121: // 'document-node'
  23962. shiftT(121); // 'document-node'
  23963. break;
  23964. case 122: // 'element'
  23965. shiftT(122); // 'element'
  23966. break;
  23967. case 125: // 'empty-sequence'
  23968. shiftT(125); // 'empty-sequence'
  23969. break;
  23970. case 147: // 'function'
  23971. shiftT(147); // 'function'
  23972. break;
  23973. case 154: // 'if'
  23974. shiftT(154); // 'if'
  23975. break;
  23976. case 167: // 'item'
  23977. shiftT(167); // 'item'
  23978. break;
  23979. case 188: // 'namespace-node'
  23980. shiftT(188); // 'namespace-node'
  23981. break;
  23982. case 194: // 'node'
  23983. shiftT(194); // 'node'
  23984. break;
  23985. case 220: // 'processing-instruction'
  23986. shiftT(220); // 'processing-instruction'
  23987. break;
  23988. case 230: // 'schema-attribute'
  23989. shiftT(230); // 'schema-attribute'
  23990. break;
  23991. case 231: // 'schema-element'
  23992. shiftT(231); // 'schema-element'
  23993. break;
  23994. case 248: // 'switch'
  23995. shiftT(248); // 'switch'
  23996. break;
  23997. case 249: // 'text'
  23998. shiftT(249); // 'text'
  23999. break;
  24000. case 259: // 'typeswitch'
  24001. shiftT(259); // 'typeswitch'
  24002. break;
  24003. case 79: // 'array'
  24004. shiftT(79); // 'array'
  24005. break;
  24006. case 169: // 'json-item'
  24007. shiftT(169); // 'json-item'
  24008. break;
  24009. case 247: // 'structured-item'
  24010. shiftT(247); // 'structured-item'
  24011. break;
  24012. default:
  24013. try_FunctionName();
  24014. }
  24015. }
  24016. function parse_FunctionName()
  24017. {
  24018. eventHandler.startNonterminal("FunctionName", e0);
  24019. switch (l1)
  24020. {
  24021. case 6: // EQName^Token
  24022. shift(6); // EQName^Token
  24023. break;
  24024. case 71: // 'after'
  24025. shift(71); // 'after'
  24026. break;
  24027. case 74: // 'ancestor'
  24028. shift(74); // 'ancestor'
  24029. break;
  24030. case 75: // 'ancestor-or-self'
  24031. shift(75); // 'ancestor-or-self'
  24032. break;
  24033. case 76: // 'and'
  24034. shift(76); // 'and'
  24035. break;
  24036. case 80: // 'as'
  24037. shift(80); // 'as'
  24038. break;
  24039. case 81: // 'ascending'
  24040. shift(81); // 'ascending'
  24041. break;
  24042. case 85: // 'before'
  24043. shift(85); // 'before'
  24044. break;
  24045. case 89: // 'case'
  24046. shift(89); // 'case'
  24047. break;
  24048. case 90: // 'cast'
  24049. shift(90); // 'cast'
  24050. break;
  24051. case 91: // 'castable'
  24052. shift(91); // 'castable'
  24053. break;
  24054. case 94: // 'child'
  24055. shift(94); // 'child'
  24056. break;
  24057. case 95: // 'collation'
  24058. shift(95); // 'collation'
  24059. break;
  24060. case 104: // 'copy'
  24061. shift(104); // 'copy'
  24062. break;
  24063. case 106: // 'count'
  24064. shift(106); // 'count'
  24065. break;
  24066. case 109: // 'declare'
  24067. shift(109); // 'declare'
  24068. break;
  24069. case 110: // 'default'
  24070. shift(110); // 'default'
  24071. break;
  24072. case 111: // 'delete'
  24073. shift(111); // 'delete'
  24074. break;
  24075. case 112: // 'descendant'
  24076. shift(112); // 'descendant'
  24077. break;
  24078. case 113: // 'descendant-or-self'
  24079. shift(113); // 'descendant-or-self'
  24080. break;
  24081. case 114: // 'descending'
  24082. shift(114); // 'descending'
  24083. break;
  24084. case 119: // 'div'
  24085. shift(119); // 'div'
  24086. break;
  24087. case 120: // 'document'
  24088. shift(120); // 'document'
  24089. break;
  24090. case 123: // 'else'
  24091. shift(123); // 'else'
  24092. break;
  24093. case 124: // 'empty'
  24094. shift(124); // 'empty'
  24095. break;
  24096. case 127: // 'end'
  24097. shift(127); // 'end'
  24098. break;
  24099. case 129: // 'eq'
  24100. shift(129); // 'eq'
  24101. break;
  24102. case 130: // 'every'
  24103. shift(130); // 'every'
  24104. break;
  24105. case 132: // 'except'
  24106. shift(132); // 'except'
  24107. break;
  24108. case 136: // 'first'
  24109. shift(136); // 'first'
  24110. break;
  24111. case 137: // 'following'
  24112. shift(137); // 'following'
  24113. break;
  24114. case 138: // 'following-sibling'
  24115. shift(138); // 'following-sibling'
  24116. break;
  24117. case 139: // 'for'
  24118. shift(139); // 'for'
  24119. break;
  24120. case 148: // 'ge'
  24121. shift(148); // 'ge'
  24122. break;
  24123. case 150: // 'group'
  24124. shift(150); // 'group'
  24125. break;
  24126. case 152: // 'gt'
  24127. shift(152); // 'gt'
  24128. break;
  24129. case 153: // 'idiv'
  24130. shift(153); // 'idiv'
  24131. break;
  24132. case 155: // 'import'
  24133. shift(155); // 'import'
  24134. break;
  24135. case 161: // 'insert'
  24136. shift(161); // 'insert'
  24137. break;
  24138. case 162: // 'instance'
  24139. shift(162); // 'instance'
  24140. break;
  24141. case 164: // 'intersect'
  24142. shift(164); // 'intersect'
  24143. break;
  24144. case 165: // 'into'
  24145. shift(165); // 'into'
  24146. break;
  24147. case 166: // 'is'
  24148. shift(166); // 'is'
  24149. break;
  24150. case 173: // 'last'
  24151. shift(173); // 'last'
  24152. break;
  24153. case 175: // 'le'
  24154. shift(175); // 'le'
  24155. break;
  24156. case 177: // 'let'
  24157. shift(177); // 'let'
  24158. break;
  24159. case 181: // 'lt'
  24160. shift(181); // 'lt'
  24161. break;
  24162. case 183: // 'mod'
  24163. shift(183); // 'mod'
  24164. break;
  24165. case 184: // 'modify'
  24166. shift(184); // 'modify'
  24167. break;
  24168. case 185: // 'module'
  24169. shift(185); // 'module'
  24170. break;
  24171. case 187: // 'namespace'
  24172. shift(187); // 'namespace'
  24173. break;
  24174. case 189: // 'ne'
  24175. shift(189); // 'ne'
  24176. break;
  24177. case 202: // 'only'
  24178. shift(202); // 'only'
  24179. break;
  24180. case 204: // 'or'
  24181. shift(204); // 'or'
  24182. break;
  24183. case 205: // 'order'
  24184. shift(205); // 'order'
  24185. break;
  24186. case 206: // 'ordered'
  24187. shift(206); // 'ordered'
  24188. break;
  24189. case 210: // 'parent'
  24190. shift(210); // 'parent'
  24191. break;
  24192. case 216: // 'preceding'
  24193. shift(216); // 'preceding'
  24194. break;
  24195. case 217: // 'preceding-sibling'
  24196. shift(217); // 'preceding-sibling'
  24197. break;
  24198. case 222: // 'rename'
  24199. shift(222); // 'rename'
  24200. break;
  24201. case 223: // 'replace'
  24202. shift(223); // 'replace'
  24203. break;
  24204. case 224: // 'return'
  24205. shift(224); // 'return'
  24206. break;
  24207. case 228: // 'satisfies'
  24208. shift(228); // 'satisfies'
  24209. break;
  24210. case 234: // 'self'
  24211. shift(234); // 'self'
  24212. break;
  24213. case 240: // 'some'
  24214. shift(240); // 'some'
  24215. break;
  24216. case 241: // 'stable'
  24217. shift(241); // 'stable'
  24218. break;
  24219. case 242: // 'start'
  24220. shift(242); // 'start'
  24221. break;
  24222. case 253: // 'to'
  24223. shift(253); // 'to'
  24224. break;
  24225. case 254: // 'treat'
  24226. shift(254); // 'treat'
  24227. break;
  24228. case 256: // 'try'
  24229. shift(256); // 'try'
  24230. break;
  24231. case 260: // 'union'
  24232. shift(260); // 'union'
  24233. break;
  24234. case 262: // 'unordered'
  24235. shift(262); // 'unordered'
  24236. break;
  24237. case 266: // 'validate'
  24238. shift(266); // 'validate'
  24239. break;
  24240. case 272: // 'where'
  24241. shift(272); // 'where'
  24242. break;
  24243. case 276: // 'with'
  24244. shift(276); // 'with'
  24245. break;
  24246. case 170: // 'jsoniq'
  24247. shift(170); // 'jsoniq'
  24248. break;
  24249. case 73: // 'allowing'
  24250. shift(73); // 'allowing'
  24251. break;
  24252. case 82: // 'at'
  24253. shift(82); // 'at'
  24254. break;
  24255. case 84: // 'base-uri'
  24256. shift(84); // 'base-uri'
  24257. break;
  24258. case 86: // 'boundary-space'
  24259. shift(86); // 'boundary-space'
  24260. break;
  24261. case 87: // 'break'
  24262. shift(87); // 'break'
  24263. break;
  24264. case 92: // 'catch'
  24265. shift(92); // 'catch'
  24266. break;
  24267. case 99: // 'construction'
  24268. shift(99); // 'construction'
  24269. break;
  24270. case 102: // 'context'
  24271. shift(102); // 'context'
  24272. break;
  24273. case 103: // 'continue'
  24274. shift(103); // 'continue'
  24275. break;
  24276. case 105: // 'copy-namespaces'
  24277. shift(105); // 'copy-namespaces'
  24278. break;
  24279. case 107: // 'decimal-format'
  24280. shift(107); // 'decimal-format'
  24281. break;
  24282. case 126: // 'encoding'
  24283. shift(126); // 'encoding'
  24284. break;
  24285. case 133: // 'exit'
  24286. shift(133); // 'exit'
  24287. break;
  24288. case 134: // 'external'
  24289. shift(134); // 'external'
  24290. break;
  24291. case 143: // 'ft-option'
  24292. shift(143); // 'ft-option'
  24293. break;
  24294. case 156: // 'in'
  24295. shift(156); // 'in'
  24296. break;
  24297. case 157: // 'index'
  24298. shift(157); // 'index'
  24299. break;
  24300. case 163: // 'integrity'
  24301. shift(163); // 'integrity'
  24302. break;
  24303. case 174: // 'lax'
  24304. shift(174); // 'lax'
  24305. break;
  24306. case 195: // 'nodes'
  24307. shift(195); // 'nodes'
  24308. break;
  24309. case 203: // 'option'
  24310. shift(203); // 'option'
  24311. break;
  24312. case 207: // 'ordering'
  24313. shift(207); // 'ordering'
  24314. break;
  24315. case 226: // 'revalidation'
  24316. shift(226); // 'revalidation'
  24317. break;
  24318. case 229: // 'schema'
  24319. shift(229); // 'schema'
  24320. break;
  24321. case 232: // 'score'
  24322. shift(232); // 'score'
  24323. break;
  24324. case 239: // 'sliding'
  24325. shift(239); // 'sliding'
  24326. break;
  24327. case 245: // 'strict'
  24328. shift(245); // 'strict'
  24329. break;
  24330. case 257: // 'tumbling'
  24331. shift(257); // 'tumbling'
  24332. break;
  24333. case 258: // 'type'
  24334. shift(258); // 'type'
  24335. break;
  24336. case 263: // 'updating'
  24337. shift(263); // 'updating'
  24338. break;
  24339. case 267: // 'value'
  24340. shift(267); // 'value'
  24341. break;
  24342. case 268: // 'variable'
  24343. shift(268); // 'variable'
  24344. break;
  24345. case 269: // 'version'
  24346. shift(269); // 'version'
  24347. break;
  24348. case 273: // 'while'
  24349. shift(273); // 'while'
  24350. break;
  24351. case 98: // 'constraint'
  24352. shift(98); // 'constraint'
  24353. break;
  24354. case 179: // 'loop'
  24355. shift(179); // 'loop'
  24356. break;
  24357. case 225: // 'returning'
  24358. shift(225); // 'returning'
  24359. break;
  24360. case 78: // 'append'
  24361. shift(78); // 'append'
  24362. break;
  24363. case 135: // 'false'
  24364. shift(135); // 'false'
  24365. break;
  24366. case 142: // 'from'
  24367. shift(142); // 'from'
  24368. break;
  24369. case 197: // 'null'
  24370. shift(197); // 'null'
  24371. break;
  24372. case 168: // 'json'
  24373. shift(168); // 'json'
  24374. break;
  24375. case 198: // 'object'
  24376. shift(198); // 'object'
  24377. break;
  24378. case 233: // 'select'
  24379. shift(233); // 'select'
  24380. break;
  24381. default:
  24382. shift(255); // 'true'
  24383. }
  24384. eventHandler.endNonterminal("FunctionName", e0);
  24385. }
  24386. function try_FunctionName()
  24387. {
  24388. switch (l1)
  24389. {
  24390. case 6: // EQName^Token
  24391. shiftT(6); // EQName^Token
  24392. break;
  24393. case 71: // 'after'
  24394. shiftT(71); // 'after'
  24395. break;
  24396. case 74: // 'ancestor'
  24397. shiftT(74); // 'ancestor'
  24398. break;
  24399. case 75: // 'ancestor-or-self'
  24400. shiftT(75); // 'ancestor-or-self'
  24401. break;
  24402. case 76: // 'and'
  24403. shiftT(76); // 'and'
  24404. break;
  24405. case 80: // 'as'
  24406. shiftT(80); // 'as'
  24407. break;
  24408. case 81: // 'ascending'
  24409. shiftT(81); // 'ascending'
  24410. break;
  24411. case 85: // 'before'
  24412. shiftT(85); // 'before'
  24413. break;
  24414. case 89: // 'case'
  24415. shiftT(89); // 'case'
  24416. break;
  24417. case 90: // 'cast'
  24418. shiftT(90); // 'cast'
  24419. break;
  24420. case 91: // 'castable'
  24421. shiftT(91); // 'castable'
  24422. break;
  24423. case 94: // 'child'
  24424. shiftT(94); // 'child'
  24425. break;
  24426. case 95: // 'collation'
  24427. shiftT(95); // 'collation'
  24428. break;
  24429. case 104: // 'copy'
  24430. shiftT(104); // 'copy'
  24431. break;
  24432. case 106: // 'count'
  24433. shiftT(106); // 'count'
  24434. break;
  24435. case 109: // 'declare'
  24436. shiftT(109); // 'declare'
  24437. break;
  24438. case 110: // 'default'
  24439. shiftT(110); // 'default'
  24440. break;
  24441. case 111: // 'delete'
  24442. shiftT(111); // 'delete'
  24443. break;
  24444. case 112: // 'descendant'
  24445. shiftT(112); // 'descendant'
  24446. break;
  24447. case 113: // 'descendant-or-self'
  24448. shiftT(113); // 'descendant-or-self'
  24449. break;
  24450. case 114: // 'descending'
  24451. shiftT(114); // 'descending'
  24452. break;
  24453. case 119: // 'div'
  24454. shiftT(119); // 'div'
  24455. break;
  24456. case 120: // 'document'
  24457. shiftT(120); // 'document'
  24458. break;
  24459. case 123: // 'else'
  24460. shiftT(123); // 'else'
  24461. break;
  24462. case 124: // 'empty'
  24463. shiftT(124); // 'empty'
  24464. break;
  24465. case 127: // 'end'
  24466. shiftT(127); // 'end'
  24467. break;
  24468. case 129: // 'eq'
  24469. shiftT(129); // 'eq'
  24470. break;
  24471. case 130: // 'every'
  24472. shiftT(130); // 'every'
  24473. break;
  24474. case 132: // 'except'
  24475. shiftT(132); // 'except'
  24476. break;
  24477. case 136: // 'first'
  24478. shiftT(136); // 'first'
  24479. break;
  24480. case 137: // 'following'
  24481. shiftT(137); // 'following'
  24482. break;
  24483. case 138: // 'following-sibling'
  24484. shiftT(138); // 'following-sibling'
  24485. break;
  24486. case 139: // 'for'
  24487. shiftT(139); // 'for'
  24488. break;
  24489. case 148: // 'ge'
  24490. shiftT(148); // 'ge'
  24491. break;
  24492. case 150: // 'group'
  24493. shiftT(150); // 'group'
  24494. break;
  24495. case 152: // 'gt'
  24496. shiftT(152); // 'gt'
  24497. break;
  24498. case 153: // 'idiv'
  24499. shiftT(153); // 'idiv'
  24500. break;
  24501. case 155: // 'import'
  24502. shiftT(155); // 'import'
  24503. break;
  24504. case 161: // 'insert'
  24505. shiftT(161); // 'insert'
  24506. break;
  24507. case 162: // 'instance'
  24508. shiftT(162); // 'instance'
  24509. break;
  24510. case 164: // 'intersect'
  24511. shiftT(164); // 'intersect'
  24512. break;
  24513. case 165: // 'into'
  24514. shiftT(165); // 'into'
  24515. break;
  24516. case 166: // 'is'
  24517. shiftT(166); // 'is'
  24518. break;
  24519. case 173: // 'last'
  24520. shiftT(173); // 'last'
  24521. break;
  24522. case 175: // 'le'
  24523. shiftT(175); // 'le'
  24524. break;
  24525. case 177: // 'let'
  24526. shiftT(177); // 'let'
  24527. break;
  24528. case 181: // 'lt'
  24529. shiftT(181); // 'lt'
  24530. break;
  24531. case 183: // 'mod'
  24532. shiftT(183); // 'mod'
  24533. break;
  24534. case 184: // 'modify'
  24535. shiftT(184); // 'modify'
  24536. break;
  24537. case 185: // 'module'
  24538. shiftT(185); // 'module'
  24539. break;
  24540. case 187: // 'namespace'
  24541. shiftT(187); // 'namespace'
  24542. break;
  24543. case 189: // 'ne'
  24544. shiftT(189); // 'ne'
  24545. break;
  24546. case 202: // 'only'
  24547. shiftT(202); // 'only'
  24548. break;
  24549. case 204: // 'or'
  24550. shiftT(204); // 'or'
  24551. break;
  24552. case 205: // 'order'
  24553. shiftT(205); // 'order'
  24554. break;
  24555. case 206: // 'ordered'
  24556. shiftT(206); // 'ordered'
  24557. break;
  24558. case 210: // 'parent'
  24559. shiftT(210); // 'parent'
  24560. break;
  24561. case 216: // 'preceding'
  24562. shiftT(216); // 'preceding'
  24563. break;
  24564. case 217: // 'preceding-sibling'
  24565. shiftT(217); // 'preceding-sibling'
  24566. break;
  24567. case 222: // 'rename'
  24568. shiftT(222); // 'rename'
  24569. break;
  24570. case 223: // 'replace'
  24571. shiftT(223); // 'replace'
  24572. break;
  24573. case 224: // 'return'
  24574. shiftT(224); // 'return'
  24575. break;
  24576. case 228: // 'satisfies'
  24577. shiftT(228); // 'satisfies'
  24578. break;
  24579. case 234: // 'self'
  24580. shiftT(234); // 'self'
  24581. break;
  24582. case 240: // 'some'
  24583. shiftT(240); // 'some'
  24584. break;
  24585. case 241: // 'stable'
  24586. shiftT(241); // 'stable'
  24587. break;
  24588. case 242: // 'start'
  24589. shiftT(242); // 'start'
  24590. break;
  24591. case 253: // 'to'
  24592. shiftT(253); // 'to'
  24593. break;
  24594. case 254: // 'treat'
  24595. shiftT(254); // 'treat'
  24596. break;
  24597. case 256: // 'try'
  24598. shiftT(256); // 'try'
  24599. break;
  24600. case 260: // 'union'
  24601. shiftT(260); // 'union'
  24602. break;
  24603. case 262: // 'unordered'
  24604. shiftT(262); // 'unordered'
  24605. break;
  24606. case 266: // 'validate'
  24607. shiftT(266); // 'validate'
  24608. break;
  24609. case 272: // 'where'
  24610. shiftT(272); // 'where'
  24611. break;
  24612. case 276: // 'with'
  24613. shiftT(276); // 'with'
  24614. break;
  24615. case 170: // 'jsoniq'
  24616. shiftT(170); // 'jsoniq'
  24617. break;
  24618. case 73: // 'allowing'
  24619. shiftT(73); // 'allowing'
  24620. break;
  24621. case 82: // 'at'
  24622. shiftT(82); // 'at'
  24623. break;
  24624. case 84: // 'base-uri'
  24625. shiftT(84); // 'base-uri'
  24626. break;
  24627. case 86: // 'boundary-space'
  24628. shiftT(86); // 'boundary-space'
  24629. break;
  24630. case 87: // 'break'
  24631. shiftT(87); // 'break'
  24632. break;
  24633. case 92: // 'catch'
  24634. shiftT(92); // 'catch'
  24635. break;
  24636. case 99: // 'construction'
  24637. shiftT(99); // 'construction'
  24638. break;
  24639. case 102: // 'context'
  24640. shiftT(102); // 'context'
  24641. break;
  24642. case 103: // 'continue'
  24643. shiftT(103); // 'continue'
  24644. break;
  24645. case 105: // 'copy-namespaces'
  24646. shiftT(105); // 'copy-namespaces'
  24647. break;
  24648. case 107: // 'decimal-format'
  24649. shiftT(107); // 'decimal-format'
  24650. break;
  24651. case 126: // 'encoding'
  24652. shiftT(126); // 'encoding'
  24653. break;
  24654. case 133: // 'exit'
  24655. shiftT(133); // 'exit'
  24656. break;
  24657. case 134: // 'external'
  24658. shiftT(134); // 'external'
  24659. break;
  24660. case 143: // 'ft-option'
  24661. shiftT(143); // 'ft-option'
  24662. break;
  24663. case 156: // 'in'
  24664. shiftT(156); // 'in'
  24665. break;
  24666. case 157: // 'index'
  24667. shiftT(157); // 'index'
  24668. break;
  24669. case 163: // 'integrity'
  24670. shiftT(163); // 'integrity'
  24671. break;
  24672. case 174: // 'lax'
  24673. shiftT(174); // 'lax'
  24674. break;
  24675. case 195: // 'nodes'
  24676. shiftT(195); // 'nodes'
  24677. break;
  24678. case 203: // 'option'
  24679. shiftT(203); // 'option'
  24680. break;
  24681. case 207: // 'ordering'
  24682. shiftT(207); // 'ordering'
  24683. break;
  24684. case 226: // 'revalidation'
  24685. shiftT(226); // 'revalidation'
  24686. break;
  24687. case 229: // 'schema'
  24688. shiftT(229); // 'schema'
  24689. break;
  24690. case 232: // 'score'
  24691. shiftT(232); // 'score'
  24692. break;
  24693. case 239: // 'sliding'
  24694. shiftT(239); // 'sliding'
  24695. break;
  24696. case 245: // 'strict'
  24697. shiftT(245); // 'strict'
  24698. break;
  24699. case 257: // 'tumbling'
  24700. shiftT(257); // 'tumbling'
  24701. break;
  24702. case 258: // 'type'
  24703. shiftT(258); // 'type'
  24704. break;
  24705. case 263: // 'updating'
  24706. shiftT(263); // 'updating'
  24707. break;
  24708. case 267: // 'value'
  24709. shiftT(267); // 'value'
  24710. break;
  24711. case 268: // 'variable'
  24712. shiftT(268); // 'variable'
  24713. break;
  24714. case 269: // 'version'
  24715. shiftT(269); // 'version'
  24716. break;
  24717. case 273: // 'while'
  24718. shiftT(273); // 'while'
  24719. break;
  24720. case 98: // 'constraint'
  24721. shiftT(98); // 'constraint'
  24722. break;
  24723. case 179: // 'loop'
  24724. shiftT(179); // 'loop'
  24725. break;
  24726. case 225: // 'returning'
  24727. shiftT(225); // 'returning'
  24728. break;
  24729. case 78: // 'append'
  24730. shiftT(78); // 'append'
  24731. break;
  24732. case 135: // 'false'
  24733. shiftT(135); // 'false'
  24734. break;
  24735. case 142: // 'from'
  24736. shiftT(142); // 'from'
  24737. break;
  24738. case 197: // 'null'
  24739. shiftT(197); // 'null'
  24740. break;
  24741. case 168: // 'json'
  24742. shiftT(168); // 'json'
  24743. break;
  24744. case 198: // 'object'
  24745. shiftT(198); // 'object'
  24746. break;
  24747. case 233: // 'select'
  24748. shiftT(233); // 'select'
  24749. break;
  24750. default:
  24751. shiftT(255); // 'true'
  24752. }
  24753. }
  24754. function parse_NCName()
  24755. {
  24756. eventHandler.startNonterminal("NCName", e0);
  24757. switch (l1)
  24758. {
  24759. case 19: // NCName^Token
  24760. shift(19); // NCName^Token
  24761. break;
  24762. case 71: // 'after'
  24763. shift(71); // 'after'
  24764. break;
  24765. case 76: // 'and'
  24766. shift(76); // 'and'
  24767. break;
  24768. case 80: // 'as'
  24769. shift(80); // 'as'
  24770. break;
  24771. case 81: // 'ascending'
  24772. shift(81); // 'ascending'
  24773. break;
  24774. case 85: // 'before'
  24775. shift(85); // 'before'
  24776. break;
  24777. case 89: // 'case'
  24778. shift(89); // 'case'
  24779. break;
  24780. case 90: // 'cast'
  24781. shift(90); // 'cast'
  24782. break;
  24783. case 91: // 'castable'
  24784. shift(91); // 'castable'
  24785. break;
  24786. case 95: // 'collation'
  24787. shift(95); // 'collation'
  24788. break;
  24789. case 106: // 'count'
  24790. shift(106); // 'count'
  24791. break;
  24792. case 110: // 'default'
  24793. shift(110); // 'default'
  24794. break;
  24795. case 114: // 'descending'
  24796. shift(114); // 'descending'
  24797. break;
  24798. case 119: // 'div'
  24799. shift(119); // 'div'
  24800. break;
  24801. case 123: // 'else'
  24802. shift(123); // 'else'
  24803. break;
  24804. case 124: // 'empty'
  24805. shift(124); // 'empty'
  24806. break;
  24807. case 127: // 'end'
  24808. shift(127); // 'end'
  24809. break;
  24810. case 129: // 'eq'
  24811. shift(129); // 'eq'
  24812. break;
  24813. case 132: // 'except'
  24814. shift(132); // 'except'
  24815. break;
  24816. case 139: // 'for'
  24817. shift(139); // 'for'
  24818. break;
  24819. case 148: // 'ge'
  24820. shift(148); // 'ge'
  24821. break;
  24822. case 150: // 'group'
  24823. shift(150); // 'group'
  24824. break;
  24825. case 152: // 'gt'
  24826. shift(152); // 'gt'
  24827. break;
  24828. case 153: // 'idiv'
  24829. shift(153); // 'idiv'
  24830. break;
  24831. case 162: // 'instance'
  24832. shift(162); // 'instance'
  24833. break;
  24834. case 164: // 'intersect'
  24835. shift(164); // 'intersect'
  24836. break;
  24837. case 165: // 'into'
  24838. shift(165); // 'into'
  24839. break;
  24840. case 166: // 'is'
  24841. shift(166); // 'is'
  24842. break;
  24843. case 175: // 'le'
  24844. shift(175); // 'le'
  24845. break;
  24846. case 177: // 'let'
  24847. shift(177); // 'let'
  24848. break;
  24849. case 181: // 'lt'
  24850. shift(181); // 'lt'
  24851. break;
  24852. case 183: // 'mod'
  24853. shift(183); // 'mod'
  24854. break;
  24855. case 184: // 'modify'
  24856. shift(184); // 'modify'
  24857. break;
  24858. case 189: // 'ne'
  24859. shift(189); // 'ne'
  24860. break;
  24861. case 202: // 'only'
  24862. shift(202); // 'only'
  24863. break;
  24864. case 204: // 'or'
  24865. shift(204); // 'or'
  24866. break;
  24867. case 205: // 'order'
  24868. shift(205); // 'order'
  24869. break;
  24870. case 224: // 'return'
  24871. shift(224); // 'return'
  24872. break;
  24873. case 228: // 'satisfies'
  24874. shift(228); // 'satisfies'
  24875. break;
  24876. case 241: // 'stable'
  24877. shift(241); // 'stable'
  24878. break;
  24879. case 242: // 'start'
  24880. shift(242); // 'start'
  24881. break;
  24882. case 253: // 'to'
  24883. shift(253); // 'to'
  24884. break;
  24885. case 254: // 'treat'
  24886. shift(254); // 'treat'
  24887. break;
  24888. case 260: // 'union'
  24889. shift(260); // 'union'
  24890. break;
  24891. case 272: // 'where'
  24892. shift(272); // 'where'
  24893. break;
  24894. case 276: // 'with'
  24895. shift(276); // 'with'
  24896. break;
  24897. case 74: // 'ancestor'
  24898. shift(74); // 'ancestor'
  24899. break;
  24900. case 75: // 'ancestor-or-self'
  24901. shift(75); // 'ancestor-or-self'
  24902. break;
  24903. case 83: // 'attribute'
  24904. shift(83); // 'attribute'
  24905. break;
  24906. case 94: // 'child'
  24907. shift(94); // 'child'
  24908. break;
  24909. case 97: // 'comment'
  24910. shift(97); // 'comment'
  24911. break;
  24912. case 104: // 'copy'
  24913. shift(104); // 'copy'
  24914. break;
  24915. case 109: // 'declare'
  24916. shift(109); // 'declare'
  24917. break;
  24918. case 111: // 'delete'
  24919. shift(111); // 'delete'
  24920. break;
  24921. case 112: // 'descendant'
  24922. shift(112); // 'descendant'
  24923. break;
  24924. case 113: // 'descendant-or-self'
  24925. shift(113); // 'descendant-or-self'
  24926. break;
  24927. case 120: // 'document'
  24928. shift(120); // 'document'
  24929. break;
  24930. case 121: // 'document-node'
  24931. shift(121); // 'document-node'
  24932. break;
  24933. case 122: // 'element'
  24934. shift(122); // 'element'
  24935. break;
  24936. case 125: // 'empty-sequence'
  24937. shift(125); // 'empty-sequence'
  24938. break;
  24939. case 130: // 'every'
  24940. shift(130); // 'every'
  24941. break;
  24942. case 136: // 'first'
  24943. shift(136); // 'first'
  24944. break;
  24945. case 137: // 'following'
  24946. shift(137); // 'following'
  24947. break;
  24948. case 138: // 'following-sibling'
  24949. shift(138); // 'following-sibling'
  24950. break;
  24951. case 147: // 'function'
  24952. shift(147); // 'function'
  24953. break;
  24954. case 154: // 'if'
  24955. shift(154); // 'if'
  24956. break;
  24957. case 155: // 'import'
  24958. shift(155); // 'import'
  24959. break;
  24960. case 161: // 'insert'
  24961. shift(161); // 'insert'
  24962. break;
  24963. case 167: // 'item'
  24964. shift(167); // 'item'
  24965. break;
  24966. case 173: // 'last'
  24967. shift(173); // 'last'
  24968. break;
  24969. case 185: // 'module'
  24970. shift(185); // 'module'
  24971. break;
  24972. case 187: // 'namespace'
  24973. shift(187); // 'namespace'
  24974. break;
  24975. case 188: // 'namespace-node'
  24976. shift(188); // 'namespace-node'
  24977. break;
  24978. case 194: // 'node'
  24979. shift(194); // 'node'
  24980. break;
  24981. case 206: // 'ordered'
  24982. shift(206); // 'ordered'
  24983. break;
  24984. case 210: // 'parent'
  24985. shift(210); // 'parent'
  24986. break;
  24987. case 216: // 'preceding'
  24988. shift(216); // 'preceding'
  24989. break;
  24990. case 217: // 'preceding-sibling'
  24991. shift(217); // 'preceding-sibling'
  24992. break;
  24993. case 220: // 'processing-instruction'
  24994. shift(220); // 'processing-instruction'
  24995. break;
  24996. case 222: // 'rename'
  24997. shift(222); // 'rename'
  24998. break;
  24999. case 223: // 'replace'
  25000. shift(223); // 'replace'
  25001. break;
  25002. case 230: // 'schema-attribute'
  25003. shift(230); // 'schema-attribute'
  25004. break;
  25005. case 231: // 'schema-element'
  25006. shift(231); // 'schema-element'
  25007. break;
  25008. case 234: // 'self'
  25009. shift(234); // 'self'
  25010. break;
  25011. case 240: // 'some'
  25012. shift(240); // 'some'
  25013. break;
  25014. case 248: // 'switch'
  25015. shift(248); // 'switch'
  25016. break;
  25017. case 249: // 'text'
  25018. shift(249); // 'text'
  25019. break;
  25020. case 256: // 'try'
  25021. shift(256); // 'try'
  25022. break;
  25023. case 259: // 'typeswitch'
  25024. shift(259); // 'typeswitch'
  25025. break;
  25026. case 262: // 'unordered'
  25027. shift(262); // 'unordered'
  25028. break;
  25029. case 266: // 'validate'
  25030. shift(266); // 'validate'
  25031. break;
  25032. case 268: // 'variable'
  25033. shift(268); // 'variable'
  25034. break;
  25035. case 170: // 'jsoniq'
  25036. shift(170); // 'jsoniq'
  25037. break;
  25038. case 73: // 'allowing'
  25039. shift(73); // 'allowing'
  25040. break;
  25041. case 82: // 'at'
  25042. shift(82); // 'at'
  25043. break;
  25044. case 84: // 'base-uri'
  25045. shift(84); // 'base-uri'
  25046. break;
  25047. case 86: // 'boundary-space'
  25048. shift(86); // 'boundary-space'
  25049. break;
  25050. case 87: // 'break'
  25051. shift(87); // 'break'
  25052. break;
  25053. case 92: // 'catch'
  25054. shift(92); // 'catch'
  25055. break;
  25056. case 99: // 'construction'
  25057. shift(99); // 'construction'
  25058. break;
  25059. case 102: // 'context'
  25060. shift(102); // 'context'
  25061. break;
  25062. case 103: // 'continue'
  25063. shift(103); // 'continue'
  25064. break;
  25065. case 105: // 'copy-namespaces'
  25066. shift(105); // 'copy-namespaces'
  25067. break;
  25068. case 107: // 'decimal-format'
  25069. shift(107); // 'decimal-format'
  25070. break;
  25071. case 126: // 'encoding'
  25072. shift(126); // 'encoding'
  25073. break;
  25074. case 133: // 'exit'
  25075. shift(133); // 'exit'
  25076. break;
  25077. case 134: // 'external'
  25078. shift(134); // 'external'
  25079. break;
  25080. case 143: // 'ft-option'
  25081. shift(143); // 'ft-option'
  25082. break;
  25083. case 156: // 'in'
  25084. shift(156); // 'in'
  25085. break;
  25086. case 157: // 'index'
  25087. shift(157); // 'index'
  25088. break;
  25089. case 163: // 'integrity'
  25090. shift(163); // 'integrity'
  25091. break;
  25092. case 174: // 'lax'
  25093. shift(174); // 'lax'
  25094. break;
  25095. case 195: // 'nodes'
  25096. shift(195); // 'nodes'
  25097. break;
  25098. case 203: // 'option'
  25099. shift(203); // 'option'
  25100. break;
  25101. case 207: // 'ordering'
  25102. shift(207); // 'ordering'
  25103. break;
  25104. case 226: // 'revalidation'
  25105. shift(226); // 'revalidation'
  25106. break;
  25107. case 229: // 'schema'
  25108. shift(229); // 'schema'
  25109. break;
  25110. case 232: // 'score'
  25111. shift(232); // 'score'
  25112. break;
  25113. case 239: // 'sliding'
  25114. shift(239); // 'sliding'
  25115. break;
  25116. case 245: // 'strict'
  25117. shift(245); // 'strict'
  25118. break;
  25119. case 257: // 'tumbling'
  25120. shift(257); // 'tumbling'
  25121. break;
  25122. case 258: // 'type'
  25123. shift(258); // 'type'
  25124. break;
  25125. case 263: // 'updating'
  25126. shift(263); // 'updating'
  25127. break;
  25128. case 267: // 'value'
  25129. shift(267); // 'value'
  25130. break;
  25131. case 269: // 'version'
  25132. shift(269); // 'version'
  25133. break;
  25134. case 273: // 'while'
  25135. shift(273); // 'while'
  25136. break;
  25137. case 98: // 'constraint'
  25138. shift(98); // 'constraint'
  25139. break;
  25140. case 179: // 'loop'
  25141. shift(179); // 'loop'
  25142. break;
  25143. case 225: // 'returning'
  25144. shift(225); // 'returning'
  25145. break;
  25146. case 78: // 'append'
  25147. shift(78); // 'append'
  25148. break;
  25149. case 135: // 'false'
  25150. shift(135); // 'false'
  25151. break;
  25152. case 142: // 'from'
  25153. shift(142); // 'from'
  25154. break;
  25155. case 197: // 'null'
  25156. shift(197); // 'null'
  25157. break;
  25158. case 168: // 'json'
  25159. shift(168); // 'json'
  25160. break;
  25161. case 198: // 'object'
  25162. shift(198); // 'object'
  25163. break;
  25164. case 233: // 'select'
  25165. shift(233); // 'select'
  25166. break;
  25167. default:
  25168. shift(255); // 'true'
  25169. }
  25170. eventHandler.endNonterminal("NCName", e0);
  25171. }
  25172. function try_NCName()
  25173. {
  25174. switch (l1)
  25175. {
  25176. case 19: // NCName^Token
  25177. shiftT(19); // NCName^Token
  25178. break;
  25179. case 71: // 'after'
  25180. shiftT(71); // 'after'
  25181. break;
  25182. case 76: // 'and'
  25183. shiftT(76); // 'and'
  25184. break;
  25185. case 80: // 'as'
  25186. shiftT(80); // 'as'
  25187. break;
  25188. case 81: // 'ascending'
  25189. shiftT(81); // 'ascending'
  25190. break;
  25191. case 85: // 'before'
  25192. shiftT(85); // 'before'
  25193. break;
  25194. case 89: // 'case'
  25195. shiftT(89); // 'case'
  25196. break;
  25197. case 90: // 'cast'
  25198. shiftT(90); // 'cast'
  25199. break;
  25200. case 91: // 'castable'
  25201. shiftT(91); // 'castable'
  25202. break;
  25203. case 95: // 'collation'
  25204. shiftT(95); // 'collation'
  25205. break;
  25206. case 106: // 'count'
  25207. shiftT(106); // 'count'
  25208. break;
  25209. case 110: // 'default'
  25210. shiftT(110); // 'default'
  25211. break;
  25212. case 114: // 'descending'
  25213. shiftT(114); // 'descending'
  25214. break;
  25215. case 119: // 'div'
  25216. shiftT(119); // 'div'
  25217. break;
  25218. case 123: // 'else'
  25219. shiftT(123); // 'else'
  25220. break;
  25221. case 124: // 'empty'
  25222. shiftT(124); // 'empty'
  25223. break;
  25224. case 127: // 'end'
  25225. shiftT(127); // 'end'
  25226. break;
  25227. case 129: // 'eq'
  25228. shiftT(129); // 'eq'
  25229. break;
  25230. case 132: // 'except'
  25231. shiftT(132); // 'except'
  25232. break;
  25233. case 139: // 'for'
  25234. shiftT(139); // 'for'
  25235. break;
  25236. case 148: // 'ge'
  25237. shiftT(148); // 'ge'
  25238. break;
  25239. case 150: // 'group'
  25240. shiftT(150); // 'group'
  25241. break;
  25242. case 152: // 'gt'
  25243. shiftT(152); // 'gt'
  25244. break;
  25245. case 153: // 'idiv'
  25246. shiftT(153); // 'idiv'
  25247. break;
  25248. case 162: // 'instance'
  25249. shiftT(162); // 'instance'
  25250. break;
  25251. case 164: // 'intersect'
  25252. shiftT(164); // 'intersect'
  25253. break;
  25254. case 165: // 'into'
  25255. shiftT(165); // 'into'
  25256. break;
  25257. case 166: // 'is'
  25258. shiftT(166); // 'is'
  25259. break;
  25260. case 175: // 'le'
  25261. shiftT(175); // 'le'
  25262. break;
  25263. case 177: // 'let'
  25264. shiftT(177); // 'let'
  25265. break;
  25266. case 181: // 'lt'
  25267. shiftT(181); // 'lt'
  25268. break;
  25269. case 183: // 'mod'
  25270. shiftT(183); // 'mod'
  25271. break;
  25272. case 184: // 'modify'
  25273. shiftT(184); // 'modify'
  25274. break;
  25275. case 189: // 'ne'
  25276. shiftT(189); // 'ne'
  25277. break;
  25278. case 202: // 'only'
  25279. shiftT(202); // 'only'
  25280. break;
  25281. case 204: // 'or'
  25282. shiftT(204); // 'or'
  25283. break;
  25284. case 205: // 'order'
  25285. shiftT(205); // 'order'
  25286. break;
  25287. case 224: // 'return'
  25288. shiftT(224); // 'return'
  25289. break;
  25290. case 228: // 'satisfies'
  25291. shiftT(228); // 'satisfies'
  25292. break;
  25293. case 241: // 'stable'
  25294. shiftT(241); // 'stable'
  25295. break;
  25296. case 242: // 'start'
  25297. shiftT(242); // 'start'
  25298. break;
  25299. case 253: // 'to'
  25300. shiftT(253); // 'to'
  25301. break;
  25302. case 254: // 'treat'
  25303. shiftT(254); // 'treat'
  25304. break;
  25305. case 260: // 'union'
  25306. shiftT(260); // 'union'
  25307. break;
  25308. case 272: // 'where'
  25309. shiftT(272); // 'where'
  25310. break;
  25311. case 276: // 'with'
  25312. shiftT(276); // 'with'
  25313. break;
  25314. case 74: // 'ancestor'
  25315. shiftT(74); // 'ancestor'
  25316. break;
  25317. case 75: // 'ancestor-or-self'
  25318. shiftT(75); // 'ancestor-or-self'
  25319. break;
  25320. case 83: // 'attribute'
  25321. shiftT(83); // 'attribute'
  25322. break;
  25323. case 94: // 'child'
  25324. shiftT(94); // 'child'
  25325. break;
  25326. case 97: // 'comment'
  25327. shiftT(97); // 'comment'
  25328. break;
  25329. case 104: // 'copy'
  25330. shiftT(104); // 'copy'
  25331. break;
  25332. case 109: // 'declare'
  25333. shiftT(109); // 'declare'
  25334. break;
  25335. case 111: // 'delete'
  25336. shiftT(111); // 'delete'
  25337. break;
  25338. case 112: // 'descendant'
  25339. shiftT(112); // 'descendant'
  25340. break;
  25341. case 113: // 'descendant-or-self'
  25342. shiftT(113); // 'descendant-or-self'
  25343. break;
  25344. case 120: // 'document'
  25345. shiftT(120); // 'document'
  25346. break;
  25347. case 121: // 'document-node'
  25348. shiftT(121); // 'document-node'
  25349. break;
  25350. case 122: // 'element'
  25351. shiftT(122); // 'element'
  25352. break;
  25353. case 125: // 'empty-sequence'
  25354. shiftT(125); // 'empty-sequence'
  25355. break;
  25356. case 130: // 'every'
  25357. shiftT(130); // 'every'
  25358. break;
  25359. case 136: // 'first'
  25360. shiftT(136); // 'first'
  25361. break;
  25362. case 137: // 'following'
  25363. shiftT(137); // 'following'
  25364. break;
  25365. case 138: // 'following-sibling'
  25366. shiftT(138); // 'following-sibling'
  25367. break;
  25368. case 147: // 'function'
  25369. shiftT(147); // 'function'
  25370. break;
  25371. case 154: // 'if'
  25372. shiftT(154); // 'if'
  25373. break;
  25374. case 155: // 'import'
  25375. shiftT(155); // 'import'
  25376. break;
  25377. case 161: // 'insert'
  25378. shiftT(161); // 'insert'
  25379. break;
  25380. case 167: // 'item'
  25381. shiftT(167); // 'item'
  25382. break;
  25383. case 173: // 'last'
  25384. shiftT(173); // 'last'
  25385. break;
  25386. case 185: // 'module'
  25387. shiftT(185); // 'module'
  25388. break;
  25389. case 187: // 'namespace'
  25390. shiftT(187); // 'namespace'
  25391. break;
  25392. case 188: // 'namespace-node'
  25393. shiftT(188); // 'namespace-node'
  25394. break;
  25395. case 194: // 'node'
  25396. shiftT(194); // 'node'
  25397. break;
  25398. case 206: // 'ordered'
  25399. shiftT(206); // 'ordered'
  25400. break;
  25401. case 210: // 'parent'
  25402. shiftT(210); // 'parent'
  25403. break;
  25404. case 216: // 'preceding'
  25405. shiftT(216); // 'preceding'
  25406. break;
  25407. case 217: // 'preceding-sibling'
  25408. shiftT(217); // 'preceding-sibling'
  25409. break;
  25410. case 220: // 'processing-instruction'
  25411. shiftT(220); // 'processing-instruction'
  25412. break;
  25413. case 222: // 'rename'
  25414. shiftT(222); // 'rename'
  25415. break;
  25416. case 223: // 'replace'
  25417. shiftT(223); // 'replace'
  25418. break;
  25419. case 230: // 'schema-attribute'
  25420. shiftT(230); // 'schema-attribute'
  25421. break;
  25422. case 231: // 'schema-element'
  25423. shiftT(231); // 'schema-element'
  25424. break;
  25425. case 234: // 'self'
  25426. shiftT(234); // 'self'
  25427. break;
  25428. case 240: // 'some'
  25429. shiftT(240); // 'some'
  25430. break;
  25431. case 248: // 'switch'
  25432. shiftT(248); // 'switch'
  25433. break;
  25434. case 249: // 'text'
  25435. shiftT(249); // 'text'
  25436. break;
  25437. case 256: // 'try'
  25438. shiftT(256); // 'try'
  25439. break;
  25440. case 259: // 'typeswitch'
  25441. shiftT(259); // 'typeswitch'
  25442. break;
  25443. case 262: // 'unordered'
  25444. shiftT(262); // 'unordered'
  25445. break;
  25446. case 266: // 'validate'
  25447. shiftT(266); // 'validate'
  25448. break;
  25449. case 268: // 'variable'
  25450. shiftT(268); // 'variable'
  25451. break;
  25452. case 170: // 'jsoniq'
  25453. shiftT(170); // 'jsoniq'
  25454. break;
  25455. case 73: // 'allowing'
  25456. shiftT(73); // 'allowing'
  25457. break;
  25458. case 82: // 'at'
  25459. shiftT(82); // 'at'
  25460. break;
  25461. case 84: // 'base-uri'
  25462. shiftT(84); // 'base-uri'
  25463. break;
  25464. case 86: // 'boundary-space'
  25465. shiftT(86); // 'boundary-space'
  25466. break;
  25467. case 87: // 'break'
  25468. shiftT(87); // 'break'
  25469. break;
  25470. case 92: // 'catch'
  25471. shiftT(92); // 'catch'
  25472. break;
  25473. case 99: // 'construction'
  25474. shiftT(99); // 'construction'
  25475. break;
  25476. case 102: // 'context'
  25477. shiftT(102); // 'context'
  25478. break;
  25479. case 103: // 'continue'
  25480. shiftT(103); // 'continue'
  25481. break;
  25482. case 105: // 'copy-namespaces'
  25483. shiftT(105); // 'copy-namespaces'
  25484. break;
  25485. case 107: // 'decimal-format'
  25486. shiftT(107); // 'decimal-format'
  25487. break;
  25488. case 126: // 'encoding'
  25489. shiftT(126); // 'encoding'
  25490. break;
  25491. case 133: // 'exit'
  25492. shiftT(133); // 'exit'
  25493. break;
  25494. case 134: // 'external'
  25495. shiftT(134); // 'external'
  25496. break;
  25497. case 143: // 'ft-option'
  25498. shiftT(143); // 'ft-option'
  25499. break;
  25500. case 156: // 'in'
  25501. shiftT(156); // 'in'
  25502. break;
  25503. case 157: // 'index'
  25504. shiftT(157); // 'index'
  25505. break;
  25506. case 163: // 'integrity'
  25507. shiftT(163); // 'integrity'
  25508. break;
  25509. case 174: // 'lax'
  25510. shiftT(174); // 'lax'
  25511. break;
  25512. case 195: // 'nodes'
  25513. shiftT(195); // 'nodes'
  25514. break;
  25515. case 203: // 'option'
  25516. shiftT(203); // 'option'
  25517. break;
  25518. case 207: // 'ordering'
  25519. shiftT(207); // 'ordering'
  25520. break;
  25521. case 226: // 'revalidation'
  25522. shiftT(226); // 'revalidation'
  25523. break;
  25524. case 229: // 'schema'
  25525. shiftT(229); // 'schema'
  25526. break;
  25527. case 232: // 'score'
  25528. shiftT(232); // 'score'
  25529. break;
  25530. case 239: // 'sliding'
  25531. shiftT(239); // 'sliding'
  25532. break;
  25533. case 245: // 'strict'
  25534. shiftT(245); // 'strict'
  25535. break;
  25536. case 257: // 'tumbling'
  25537. shiftT(257); // 'tumbling'
  25538. break;
  25539. case 258: // 'type'
  25540. shiftT(258); // 'type'
  25541. break;
  25542. case 263: // 'updating'
  25543. shiftT(263); // 'updating'
  25544. break;
  25545. case 267: // 'value'
  25546. shiftT(267); // 'value'
  25547. break;
  25548. case 269: // 'version'
  25549. shiftT(269); // 'version'
  25550. break;
  25551. case 273: // 'while'
  25552. shiftT(273); // 'while'
  25553. break;
  25554. case 98: // 'constraint'
  25555. shiftT(98); // 'constraint'
  25556. break;
  25557. case 179: // 'loop'
  25558. shiftT(179); // 'loop'
  25559. break;
  25560. case 225: // 'returning'
  25561. shiftT(225); // 'returning'
  25562. break;
  25563. case 78: // 'append'
  25564. shiftT(78); // 'append'
  25565. break;
  25566. case 135: // 'false'
  25567. shiftT(135); // 'false'
  25568. break;
  25569. case 142: // 'from'
  25570. shiftT(142); // 'from'
  25571. break;
  25572. case 197: // 'null'
  25573. shiftT(197); // 'null'
  25574. break;
  25575. case 168: // 'json'
  25576. shiftT(168); // 'json'
  25577. break;
  25578. case 198: // 'object'
  25579. shiftT(198); // 'object'
  25580. break;
  25581. case 233: // 'select'
  25582. shiftT(233); // 'select'
  25583. break;
  25584. default:
  25585. shiftT(255); // 'true'
  25586. }
  25587. }
  25588. function parse_MainModule()
  25589. {
  25590. eventHandler.startNonterminal("MainModule", e0);
  25591. parse_Prolog();
  25592. whitespace();
  25593. parse_Program();
  25594. eventHandler.endNonterminal("MainModule", e0);
  25595. }
  25596. function parse_Program()
  25597. {
  25598. eventHandler.startNonterminal("Program", e0);
  25599. parse_StatementsAndOptionalExpr();
  25600. eventHandler.endNonterminal("Program", e0);
  25601. }
  25602. function parse_Statements()
  25603. {
  25604. eventHandler.startNonterminal("Statements", e0);
  25605. for (;;)
  25606. {
  25607. lookahead1W(283); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25608. switch (l1)
  25609. {
  25610. case 35: // '('
  25611. lookahead2W(269); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25612. break;
  25613. case 36: // '(#'
  25614. lookahead2(242); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  25615. break;
  25616. case 47: // '/'
  25617. lookahead2W(285); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25618. break;
  25619. case 48: // '//'
  25620. lookahead2W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25621. break;
  25622. case 55: // '<'
  25623. lookahead2(4); // QName
  25624. break;
  25625. case 56: // '<!--'
  25626. lookahead2(1); // DirCommentContents
  25627. break;
  25628. case 60: // '<?'
  25629. lookahead2(3); // PITarget
  25630. break;
  25631. case 69: // '['
  25632. lookahead2W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25633. break;
  25634. case 78: // 'append'
  25635. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25636. break;
  25637. case 133: // 'exit'
  25638. lookahead2W(147); // S^WS | '#' | '(' | '(:' | 'returning'
  25639. break;
  25640. case 139: // 'for'
  25641. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  25642. break;
  25643. case 161: // 'insert'
  25644. lookahead2W(275); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25645. break;
  25646. case 177: // 'let'
  25647. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  25648. break;
  25649. case 187: // 'namespace'
  25650. lookahead2W(246); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25651. break;
  25652. case 220: // 'processing-instruction'
  25653. lookahead2W(244); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25654. break;
  25655. case 223: // 'replace'
  25656. lookahead2W(170); // S^WS | '#' | '(' | '(:' | 'node' | 'value'
  25657. break;
  25658. case 266: // 'validate'
  25659. lookahead2W(188); // S^WS | '#' | '(' | '(:' | 'lax' | 'strict' | 'type' | '{'
  25660. break;
  25661. case 281: // '{'
  25662. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25663. break;
  25664. case 283: // '{|'
  25665. lookahead2W(273); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25666. break;
  25667. case 31: // '$'
  25668. case 33: // '%'
  25669. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25670. break;
  25671. case 83: // 'attribute'
  25672. case 122: // 'element'
  25673. lookahead2W(252); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25674. break;
  25675. case 87: // 'break'
  25676. case 103: // 'continue'
  25677. lookahead2W(145); // S^WS | '#' | '(' | '(:' | 'loop'
  25678. break;
  25679. case 97: // 'comment'
  25680. case 249: // 'text'
  25681. lookahead2W(97); // S^WS | '#' | '(:' | '{'
  25682. break;
  25683. case 111: // 'delete'
  25684. case 222: // 'rename'
  25685. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25686. break;
  25687. case 41: // '+'
  25688. case 43: // '-'
  25689. case 196: // 'not'
  25690. lookahead2W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25691. break;
  25692. case 135: // 'false'
  25693. case 197: // 'null'
  25694. case 255: // 'true'
  25695. lookahead2W(210); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '.' | '/' |
  25696. break;
  25697. case 104: // 'copy'
  25698. case 130: // 'every'
  25699. case 240: // 'some'
  25700. case 268: // 'variable'
  25701. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  25702. break;
  25703. case 120: // 'document'
  25704. case 206: // 'ordered'
  25705. case 256: // 'try'
  25706. case 262: // 'unordered'
  25707. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  25708. break;
  25709. case 8: // IntegerLiteral
  25710. case 9: // DecimalLiteral
  25711. case 10: // DoubleLiteral
  25712. case 11: // StringLiteral
  25713. case 32: // '$$'
  25714. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '.' | '/' | '//' |
  25715. break;
  25716. case 79: // 'array'
  25717. case 121: // 'document-node'
  25718. case 125: // 'empty-sequence'
  25719. case 167: // 'item'
  25720. case 169: // 'json-item'
  25721. case 188: // 'namespace-node'
  25722. case 194: // 'node'
  25723. case 230: // 'schema-attribute'
  25724. case 231: // 'schema-element'
  25725. case 247: // 'structured-item'
  25726. lookahead2W(20); // S^WS | '#' | '(:'
  25727. break;
  25728. case 6: // EQName^Token
  25729. case 71: // 'after'
  25730. case 73: // 'allowing'
  25731. case 74: // 'ancestor'
  25732. case 75: // 'ancestor-or-self'
  25733. case 76: // 'and'
  25734. case 80: // 'as'
  25735. case 81: // 'ascending'
  25736. case 82: // 'at'
  25737. case 84: // 'base-uri'
  25738. case 85: // 'before'
  25739. case 86: // 'boundary-space'
  25740. case 89: // 'case'
  25741. case 90: // 'cast'
  25742. case 91: // 'castable'
  25743. case 92: // 'catch'
  25744. case 94: // 'child'
  25745. case 95: // 'collation'
  25746. case 98: // 'constraint'
  25747. case 99: // 'construction'
  25748. case 102: // 'context'
  25749. case 105: // 'copy-namespaces'
  25750. case 106: // 'count'
  25751. case 107: // 'decimal-format'
  25752. case 109: // 'declare'
  25753. case 110: // 'default'
  25754. case 112: // 'descendant'
  25755. case 113: // 'descendant-or-self'
  25756. case 114: // 'descending'
  25757. case 119: // 'div'
  25758. case 123: // 'else'
  25759. case 124: // 'empty'
  25760. case 126: // 'encoding'
  25761. case 127: // 'end'
  25762. case 129: // 'eq'
  25763. case 132: // 'except'
  25764. case 134: // 'external'
  25765. case 136: // 'first'
  25766. case 137: // 'following'
  25767. case 138: // 'following-sibling'
  25768. case 142: // 'from'
  25769. case 143: // 'ft-option'
  25770. case 147: // 'function'
  25771. case 148: // 'ge'
  25772. case 150: // 'group'
  25773. case 152: // 'gt'
  25774. case 153: // 'idiv'
  25775. case 154: // 'if'
  25776. case 155: // 'import'
  25777. case 156: // 'in'
  25778. case 157: // 'index'
  25779. case 162: // 'instance'
  25780. case 163: // 'integrity'
  25781. case 164: // 'intersect'
  25782. case 165: // 'into'
  25783. case 166: // 'is'
  25784. case 168: // 'json'
  25785. case 170: // 'jsoniq'
  25786. case 173: // 'last'
  25787. case 174: // 'lax'
  25788. case 175: // 'le'
  25789. case 179: // 'loop'
  25790. case 181: // 'lt'
  25791. case 183: // 'mod'
  25792. case 184: // 'modify'
  25793. case 185: // 'module'
  25794. case 189: // 'ne'
  25795. case 195: // 'nodes'
  25796. case 198: // 'object'
  25797. case 202: // 'only'
  25798. case 203: // 'option'
  25799. case 204: // 'or'
  25800. case 205: // 'order'
  25801. case 207: // 'ordering'
  25802. case 210: // 'parent'
  25803. case 216: // 'preceding'
  25804. case 217: // 'preceding-sibling'
  25805. case 224: // 'return'
  25806. case 225: // 'returning'
  25807. case 226: // 'revalidation'
  25808. case 228: // 'satisfies'
  25809. case 229: // 'schema'
  25810. case 232: // 'score'
  25811. case 233: // 'select'
  25812. case 234: // 'self'
  25813. case 239: // 'sliding'
  25814. case 241: // 'stable'
  25815. case 242: // 'start'
  25816. case 245: // 'strict'
  25817. case 248: // 'switch'
  25818. case 253: // 'to'
  25819. case 254: // 'treat'
  25820. case 257: // 'tumbling'
  25821. case 258: // 'type'
  25822. case 259: // 'typeswitch'
  25823. case 260: // 'union'
  25824. case 263: // 'updating'
  25825. case 267: // 'value'
  25826. case 269: // 'version'
  25827. case 272: // 'where'
  25828. case 273: // 'while'
  25829. case 276: // 'with'
  25830. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  25831. break;
  25832. default:
  25833. lk = l1;
  25834. }
  25835. if (lk != 25 // EOF
  25836. && lk != 54 // ';'
  25837. && lk != 287 // '}'
  25838. && lk != 12808 // IntegerLiteral EOF
  25839. && lk != 12809 // DecimalLiteral EOF
  25840. && lk != 12810 // DoubleLiteral EOF
  25841. && lk != 12811 // StringLiteral EOF
  25842. && lk != 12832 // '$$' EOF
  25843. && lk != 12847 // '/' EOF
  25844. && lk != 12935 // 'false' EOF
  25845. && lk != 12997 // 'null' EOF
  25846. && lk != 13055 // 'true' EOF
  25847. && lk != 16140 // 'variable' '$'
  25848. && lk != 21512 // IntegerLiteral ','
  25849. && lk != 21513 // DecimalLiteral ','
  25850. && lk != 21514 // DoubleLiteral ','
  25851. && lk != 21515 // StringLiteral ','
  25852. && lk != 21536 // '$$' ','
  25853. && lk != 21551 // '/' ','
  25854. && lk != 21639 // 'false' ','
  25855. && lk != 21701 // 'null' ','
  25856. && lk != 21759 // 'true' ','
  25857. && lk != 27656 // IntegerLiteral ';'
  25858. && lk != 27657 // DecimalLiteral ';'
  25859. && lk != 27658 // DoubleLiteral ';'
  25860. && lk != 27659 // StringLiteral ';'
  25861. && lk != 27680 // '$$' ';'
  25862. && lk != 27695 // '/' ';'
  25863. && lk != 27783 // 'false' ';'
  25864. && lk != 27845 // 'null' ';'
  25865. && lk != 27903 // 'true' ';'
  25866. && lk != 91735 // 'break' 'loop'
  25867. && lk != 91751 // 'continue' 'loop'
  25868. && lk != 115333 // 'exit' 'returning'
  25869. && lk != 146952 // IntegerLiteral '}'
  25870. && lk != 146953 // DecimalLiteral '}'
  25871. && lk != 146954 // DoubleLiteral '}'
  25872. && lk != 146955 // StringLiteral '}'
  25873. && lk != 146976 // '$$' '}'
  25874. && lk != 146991 // '/' '}'
  25875. && lk != 147079 // 'false' '}'
  25876. && lk != 147141 // 'null' '}'
  25877. && lk != 147199) // 'true' '}'
  25878. {
  25879. lk = memoized(8, e0);
  25880. if (lk == 0)
  25881. {
  25882. var b0A = b0; var e0A = e0; var l1A = l1;
  25883. var b1A = b1; var e1A = e1; var l2A = l2;
  25884. var b2A = b2; var e2A = e2;
  25885. try
  25886. {
  25887. try_Statement();
  25888. lk = -1;
  25889. }
  25890. catch (p1A)
  25891. {
  25892. lk = -2;
  25893. }
  25894. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  25895. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  25896. b2 = b2A; e2 = e2A; end = e2A; }}
  25897. memoize(8, e0, lk);
  25898. }
  25899. }
  25900. if (lk != -1
  25901. && lk != 54 // ';'
  25902. && lk != 16140 // 'variable' '$'
  25903. && lk != 27656 // IntegerLiteral ';'
  25904. && lk != 27657 // DecimalLiteral ';'
  25905. && lk != 27658 // DoubleLiteral ';'
  25906. && lk != 27659 // StringLiteral ';'
  25907. && lk != 27680 // '$$' ';'
  25908. && lk != 27695 // '/' ';'
  25909. && lk != 27783 // 'false' ';'
  25910. && lk != 27845 // 'null' ';'
  25911. && lk != 27903 // 'true' ';'
  25912. && lk != 91735 // 'break' 'loop'
  25913. && lk != 91751 // 'continue' 'loop'
  25914. && lk != 115333) // 'exit' 'returning'
  25915. {
  25916. break;
  25917. }
  25918. whitespace();
  25919. parse_Statement();
  25920. }
  25921. eventHandler.endNonterminal("Statements", e0);
  25922. }
  25923. function try_Statements()
  25924. {
  25925. for (;;)
  25926. {
  25927. lookahead1W(283); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25928. switch (l1)
  25929. {
  25930. case 35: // '('
  25931. lookahead2W(269); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25932. break;
  25933. case 36: // '(#'
  25934. lookahead2(242); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  25935. break;
  25936. case 47: // '/'
  25937. lookahead2W(285); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25938. break;
  25939. case 48: // '//'
  25940. lookahead2W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25941. break;
  25942. case 55: // '<'
  25943. lookahead2(4); // QName
  25944. break;
  25945. case 56: // '<!--'
  25946. lookahead2(1); // DirCommentContents
  25947. break;
  25948. case 60: // '<?'
  25949. lookahead2(3); // PITarget
  25950. break;
  25951. case 69: // '['
  25952. lookahead2W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25953. break;
  25954. case 78: // 'append'
  25955. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25956. break;
  25957. case 133: // 'exit'
  25958. lookahead2W(147); // S^WS | '#' | '(' | '(:' | 'returning'
  25959. break;
  25960. case 139: // 'for'
  25961. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  25962. break;
  25963. case 161: // 'insert'
  25964. lookahead2W(275); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25965. break;
  25966. case 177: // 'let'
  25967. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  25968. break;
  25969. case 187: // 'namespace'
  25970. lookahead2W(246); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25971. break;
  25972. case 220: // 'processing-instruction'
  25973. lookahead2W(244); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25974. break;
  25975. case 223: // 'replace'
  25976. lookahead2W(170); // S^WS | '#' | '(' | '(:' | 'node' | 'value'
  25977. break;
  25978. case 266: // 'validate'
  25979. lookahead2W(188); // S^WS | '#' | '(' | '(:' | 'lax' | 'strict' | 'type' | '{'
  25980. break;
  25981. case 281: // '{'
  25982. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25983. break;
  25984. case 283: // '{|'
  25985. lookahead2W(273); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25986. break;
  25987. case 31: // '$'
  25988. case 33: // '%'
  25989. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25990. break;
  25991. case 83: // 'attribute'
  25992. case 122: // 'element'
  25993. lookahead2W(252); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25994. break;
  25995. case 87: // 'break'
  25996. case 103: // 'continue'
  25997. lookahead2W(145); // S^WS | '#' | '(' | '(:' | 'loop'
  25998. break;
  25999. case 97: // 'comment'
  26000. case 249: // 'text'
  26001. lookahead2W(97); // S^WS | '#' | '(:' | '{'
  26002. break;
  26003. case 111: // 'delete'
  26004. case 222: // 'rename'
  26005. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26006. break;
  26007. case 41: // '+'
  26008. case 43: // '-'
  26009. case 196: // 'not'
  26010. lookahead2W(265); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26011. break;
  26012. case 135: // 'false'
  26013. case 197: // 'null'
  26014. case 255: // 'true'
  26015. lookahead2W(210); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '.' | '/' |
  26016. break;
  26017. case 104: // 'copy'
  26018. case 130: // 'every'
  26019. case 240: // 'some'
  26020. case 268: // 'variable'
  26021. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  26022. break;
  26023. case 120: // 'document'
  26024. case 206: // 'ordered'
  26025. case 256: // 'try'
  26026. case 262: // 'unordered'
  26027. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  26028. break;
  26029. case 8: // IntegerLiteral
  26030. case 9: // DecimalLiteral
  26031. case 10: // DoubleLiteral
  26032. case 11: // StringLiteral
  26033. case 32: // '$$'
  26034. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '.' | '/' | '//' |
  26035. break;
  26036. case 79: // 'array'
  26037. case 121: // 'document-node'
  26038. case 125: // 'empty-sequence'
  26039. case 167: // 'item'
  26040. case 169: // 'json-item'
  26041. case 188: // 'namespace-node'
  26042. case 194: // 'node'
  26043. case 230: // 'schema-attribute'
  26044. case 231: // 'schema-element'
  26045. case 247: // 'structured-item'
  26046. lookahead2W(20); // S^WS | '#' | '(:'
  26047. break;
  26048. case 6: // EQName^Token
  26049. case 71: // 'after'
  26050. case 73: // 'allowing'
  26051. case 74: // 'ancestor'
  26052. case 75: // 'ancestor-or-self'
  26053. case 76: // 'and'
  26054. case 80: // 'as'
  26055. case 81: // 'ascending'
  26056. case 82: // 'at'
  26057. case 84: // 'base-uri'
  26058. case 85: // 'before'
  26059. case 86: // 'boundary-space'
  26060. case 89: // 'case'
  26061. case 90: // 'cast'
  26062. case 91: // 'castable'
  26063. case 92: // 'catch'
  26064. case 94: // 'child'
  26065. case 95: // 'collation'
  26066. case 98: // 'constraint'
  26067. case 99: // 'construction'
  26068. case 102: // 'context'
  26069. case 105: // 'copy-namespaces'
  26070. case 106: // 'count'
  26071. case 107: // 'decimal-format'
  26072. case 109: // 'declare'
  26073. case 110: // 'default'
  26074. case 112: // 'descendant'
  26075. case 113: // 'descendant-or-self'
  26076. case 114: // 'descending'
  26077. case 119: // 'div'
  26078. case 123: // 'else'
  26079. case 124: // 'empty'
  26080. case 126: // 'encoding'
  26081. case 127: // 'end'
  26082. case 129: // 'eq'
  26083. case 132: // 'except'
  26084. case 134: // 'external'
  26085. case 136: // 'first'
  26086. case 137: // 'following'
  26087. case 138: // 'following-sibling'
  26088. case 142: // 'from'
  26089. case 143: // 'ft-option'
  26090. case 147: // 'function'
  26091. case 148: // 'ge'
  26092. case 150: // 'group'
  26093. case 152: // 'gt'
  26094. case 153: // 'idiv'
  26095. case 154: // 'if'
  26096. case 155: // 'import'
  26097. case 156: // 'in'
  26098. case 157: // 'index'
  26099. case 162: // 'instance'
  26100. case 163: // 'integrity'
  26101. case 164: // 'intersect'
  26102. case 165: // 'into'
  26103. case 166: // 'is'
  26104. case 168: // 'json'
  26105. case 170: // 'jsoniq'
  26106. case 173: // 'last'
  26107. case 174: // 'lax'
  26108. case 175: // 'le'
  26109. case 179: // 'loop'
  26110. case 181: // 'lt'
  26111. case 183: // 'mod'
  26112. case 184: // 'modify'
  26113. case 185: // 'module'
  26114. case 189: // 'ne'
  26115. case 195: // 'nodes'
  26116. case 198: // 'object'
  26117. case 202: // 'only'
  26118. case 203: // 'option'
  26119. case 204: // 'or'
  26120. case 205: // 'order'
  26121. case 207: // 'ordering'
  26122. case 210: // 'parent'
  26123. case 216: // 'preceding'
  26124. case 217: // 'preceding-sibling'
  26125. case 224: // 'return'
  26126. case 225: // 'returning'
  26127. case 226: // 'revalidation'
  26128. case 228: // 'satisfies'
  26129. case 229: // 'schema'
  26130. case 232: // 'score'
  26131. case 233: // 'select'
  26132. case 234: // 'self'
  26133. case 239: // 'sliding'
  26134. case 241: // 'stable'
  26135. case 242: // 'start'
  26136. case 245: // 'strict'
  26137. case 248: // 'switch'
  26138. case 253: // 'to'
  26139. case 254: // 'treat'
  26140. case 257: // 'tumbling'
  26141. case 258: // 'type'
  26142. case 259: // 'typeswitch'
  26143. case 260: // 'union'
  26144. case 263: // 'updating'
  26145. case 267: // 'value'
  26146. case 269: // 'version'
  26147. case 272: // 'where'
  26148. case 273: // 'while'
  26149. case 276: // 'with'
  26150. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  26151. break;
  26152. default:
  26153. lk = l1;
  26154. }
  26155. if (lk != 25 // EOF
  26156. && lk != 54 // ';'
  26157. && lk != 287 // '}'
  26158. && lk != 12808 // IntegerLiteral EOF
  26159. && lk != 12809 // DecimalLiteral EOF
  26160. && lk != 12810 // DoubleLiteral EOF
  26161. && lk != 12811 // StringLiteral EOF
  26162. && lk != 12832 // '$$' EOF
  26163. && lk != 12847 // '/' EOF
  26164. && lk != 12935 // 'false' EOF
  26165. && lk != 12997 // 'null' EOF
  26166. && lk != 13055 // 'true' EOF
  26167. && lk != 16140 // 'variable' '$'
  26168. && lk != 21512 // IntegerLiteral ','
  26169. && lk != 21513 // DecimalLiteral ','
  26170. && lk != 21514 // DoubleLiteral ','
  26171. && lk != 21515 // StringLiteral ','
  26172. && lk != 21536 // '$$' ','
  26173. && lk != 21551 // '/' ','
  26174. && lk != 21639 // 'false' ','
  26175. && lk != 21701 // 'null' ','
  26176. && lk != 21759 // 'true' ','
  26177. && lk != 27656 // IntegerLiteral ';'
  26178. && lk != 27657 // DecimalLiteral ';'
  26179. && lk != 27658 // DoubleLiteral ';'
  26180. && lk != 27659 // StringLiteral ';'
  26181. && lk != 27680 // '$$' ';'
  26182. && lk != 27695 // '/' ';'
  26183. && lk != 27783 // 'false' ';'
  26184. && lk != 27845 // 'null' ';'
  26185. && lk != 27903 // 'true' ';'
  26186. && lk != 91735 // 'break' 'loop'
  26187. && lk != 91751 // 'continue' 'loop'
  26188. && lk != 115333 // 'exit' 'returning'
  26189. && lk != 146952 // IntegerLiteral '}'
  26190. && lk != 146953 // DecimalLiteral '}'
  26191. && lk != 146954 // DoubleLiteral '}'
  26192. && lk != 146955 // StringLiteral '}'
  26193. && lk != 146976 // '$$' '}'
  26194. && lk != 146991 // '/' '}'
  26195. && lk != 147079 // 'false' '}'
  26196. && lk != 147141 // 'null' '}'
  26197. && lk != 147199) // 'true' '}'
  26198. {
  26199. lk = memoized(8, e0);
  26200. if (lk == 0)
  26201. {
  26202. var b0A = b0; var e0A = e0; var l1A = l1;
  26203. var b1A = b1; var e1A = e1; var l2A = l2;
  26204. var b2A = b2; var e2A = e2;
  26205. try
  26206. {
  26207. try_Statement();
  26208. memoize(8, e0A, -1);
  26209. continue;
  26210. }
  26211. catch (p1A)
  26212. {
  26213. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26214. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26215. b2 = b2A; e2 = e2A; end = e2A; }}
  26216. memoize(8, e0A, -2);
  26217. break;
  26218. }
  26219. }
  26220. }
  26221. if (lk != -1
  26222. && lk != 54 // ';'
  26223. && lk != 16140 // 'variable' '$'
  26224. && lk != 27656 // IntegerLiteral ';'
  26225. && lk != 27657 // DecimalLiteral ';'
  26226. && lk != 27658 // DoubleLiteral ';'
  26227. && lk != 27659 // StringLiteral ';'
  26228. && lk != 27680 // '$$' ';'
  26229. && lk != 27695 // '/' ';'
  26230. && lk != 27783 // 'false' ';'
  26231. && lk != 27845 // 'null' ';'
  26232. && lk != 27903 // 'true' ';'
  26233. && lk != 91735 // 'break' 'loop'
  26234. && lk != 91751 // 'continue' 'loop'
  26235. && lk != 115333) // 'exit' 'returning'
  26236. {
  26237. break;
  26238. }
  26239. try_Statement();
  26240. }
  26241. }
  26242. function parse_StatementsAndExpr()
  26243. {
  26244. eventHandler.startNonterminal("StatementsAndExpr", e0);
  26245. parse_Statements();
  26246. whitespace();
  26247. parse_Expr();
  26248. eventHandler.endNonterminal("StatementsAndExpr", e0);
  26249. }
  26250. function try_StatementsAndExpr()
  26251. {
  26252. try_Statements();
  26253. try_Expr();
  26254. }
  26255. function parse_StatementsAndOptionalExpr()
  26256. {
  26257. eventHandler.startNonterminal("StatementsAndOptionalExpr", e0);
  26258. parse_Statements();
  26259. if (l1 != 25 // EOF
  26260. && l1 != 287) // '}'
  26261. {
  26262. whitespace();
  26263. parse_Expr();
  26264. }
  26265. eventHandler.endNonterminal("StatementsAndOptionalExpr", e0);
  26266. }
  26267. function try_StatementsAndOptionalExpr()
  26268. {
  26269. try_Statements();
  26270. if (l1 != 25 // EOF
  26271. && l1 != 287) // '}'
  26272. {
  26273. try_Expr();
  26274. }
  26275. }
  26276. function parse_Statement()
  26277. {
  26278. eventHandler.startNonterminal("Statement", e0);
  26279. switch (l1)
  26280. {
  26281. case 133: // 'exit'
  26282. lookahead2W(147); // S^WS | '#' | '(' | '(:' | 'returning'
  26283. break;
  26284. case 139: // 'for'
  26285. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  26286. break;
  26287. case 177: // 'let'
  26288. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  26289. break;
  26290. case 256: // 'try'
  26291. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  26292. break;
  26293. case 268: // 'variable'
  26294. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  26295. break;
  26296. case 281: // '{'
  26297. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26298. break;
  26299. case 31: // '$'
  26300. case 33: // '%'
  26301. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26302. break;
  26303. case 87: // 'break'
  26304. case 103: // 'continue'
  26305. lookahead2W(145); // S^WS | '#' | '(' | '(:' | 'loop'
  26306. break;
  26307. case 154: // 'if'
  26308. case 248: // 'switch'
  26309. case 259: // 'typeswitch'
  26310. case 273: // 'while'
  26311. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  26312. break;
  26313. default:
  26314. lk = l1;
  26315. }
  26316. if (lk != 6 // EQName^Token
  26317. && lk != 8 // IntegerLiteral
  26318. && lk != 9 // DecimalLiteral
  26319. && lk != 10 // DoubleLiteral
  26320. && lk != 11 // StringLiteral
  26321. && lk != 32 // '$$'
  26322. && lk != 35 // '('
  26323. && lk != 36 // '(#'
  26324. && lk != 41 // '+'
  26325. && lk != 43 // '-'
  26326. && lk != 47 // '/'
  26327. && lk != 48 // '//'
  26328. && lk != 54 // ';'
  26329. && lk != 55 // '<'
  26330. && lk != 56 // '<!--'
  26331. && lk != 60 // '<?'
  26332. && lk != 69 // '['
  26333. && lk != 71 // 'after'
  26334. && lk != 73 // 'allowing'
  26335. && lk != 74 // 'ancestor'
  26336. && lk != 75 // 'ancestor-or-self'
  26337. && lk != 76 // 'and'
  26338. && lk != 78 // 'append'
  26339. && lk != 79 // 'array'
  26340. && lk != 80 // 'as'
  26341. && lk != 81 // 'ascending'
  26342. && lk != 82 // 'at'
  26343. && lk != 83 // 'attribute'
  26344. && lk != 84 // 'base-uri'
  26345. && lk != 85 // 'before'
  26346. && lk != 86 // 'boundary-space'
  26347. && lk != 89 // 'case'
  26348. && lk != 90 // 'cast'
  26349. && lk != 91 // 'castable'
  26350. && lk != 92 // 'catch'
  26351. && lk != 94 // 'child'
  26352. && lk != 95 // 'collation'
  26353. && lk != 97 // 'comment'
  26354. && lk != 98 // 'constraint'
  26355. && lk != 99 // 'construction'
  26356. && lk != 102 // 'context'
  26357. && lk != 104 // 'copy'
  26358. && lk != 105 // 'copy-namespaces'
  26359. && lk != 106 // 'count'
  26360. && lk != 107 // 'decimal-format'
  26361. && lk != 109 // 'declare'
  26362. && lk != 110 // 'default'
  26363. && lk != 111 // 'delete'
  26364. && lk != 112 // 'descendant'
  26365. && lk != 113 // 'descendant-or-self'
  26366. && lk != 114 // 'descending'
  26367. && lk != 119 // 'div'
  26368. && lk != 120 // 'document'
  26369. && lk != 121 // 'document-node'
  26370. && lk != 122 // 'element'
  26371. && lk != 123 // 'else'
  26372. && lk != 124 // 'empty'
  26373. && lk != 125 // 'empty-sequence'
  26374. && lk != 126 // 'encoding'
  26375. && lk != 127 // 'end'
  26376. && lk != 129 // 'eq'
  26377. && lk != 130 // 'every'
  26378. && lk != 132 // 'except'
  26379. && lk != 134 // 'external'
  26380. && lk != 135 // 'false'
  26381. && lk != 136 // 'first'
  26382. && lk != 137 // 'following'
  26383. && lk != 138 // 'following-sibling'
  26384. && lk != 142 // 'from'
  26385. && lk != 143 // 'ft-option'
  26386. && lk != 147 // 'function'
  26387. && lk != 148 // 'ge'
  26388. && lk != 150 // 'group'
  26389. && lk != 152 // 'gt'
  26390. && lk != 153 // 'idiv'
  26391. && lk != 155 // 'import'
  26392. && lk != 156 // 'in'
  26393. && lk != 157 // 'index'
  26394. && lk != 161 // 'insert'
  26395. && lk != 162 // 'instance'
  26396. && lk != 163 // 'integrity'
  26397. && lk != 164 // 'intersect'
  26398. && lk != 165 // 'into'
  26399. && lk != 166 // 'is'
  26400. && lk != 167 // 'item'
  26401. && lk != 168 // 'json'
  26402. && lk != 169 // 'json-item'
  26403. && lk != 170 // 'jsoniq'
  26404. && lk != 173 // 'last'
  26405. && lk != 174 // 'lax'
  26406. && lk != 175 // 'le'
  26407. && lk != 179 // 'loop'
  26408. && lk != 181 // 'lt'
  26409. && lk != 183 // 'mod'
  26410. && lk != 184 // 'modify'
  26411. && lk != 185 // 'module'
  26412. && lk != 187 // 'namespace'
  26413. && lk != 188 // 'namespace-node'
  26414. && lk != 189 // 'ne'
  26415. && lk != 194 // 'node'
  26416. && lk != 195 // 'nodes'
  26417. && lk != 196 // 'not'
  26418. && lk != 197 // 'null'
  26419. && lk != 198 // 'object'
  26420. && lk != 202 // 'only'
  26421. && lk != 203 // 'option'
  26422. && lk != 204 // 'or'
  26423. && lk != 205 // 'order'
  26424. && lk != 206 // 'ordered'
  26425. && lk != 207 // 'ordering'
  26426. && lk != 210 // 'parent'
  26427. && lk != 216 // 'preceding'
  26428. && lk != 217 // 'preceding-sibling'
  26429. && lk != 220 // 'processing-instruction'
  26430. && lk != 222 // 'rename'
  26431. && lk != 223 // 'replace'
  26432. && lk != 224 // 'return'
  26433. && lk != 225 // 'returning'
  26434. && lk != 226 // 'revalidation'
  26435. && lk != 228 // 'satisfies'
  26436. && lk != 229 // 'schema'
  26437. && lk != 230 // 'schema-attribute'
  26438. && lk != 231 // 'schema-element'
  26439. && lk != 232 // 'score'
  26440. && lk != 233 // 'select'
  26441. && lk != 234 // 'self'
  26442. && lk != 239 // 'sliding'
  26443. && lk != 240 // 'some'
  26444. && lk != 241 // 'stable'
  26445. && lk != 242 // 'start'
  26446. && lk != 245 // 'strict'
  26447. && lk != 247 // 'structured-item'
  26448. && lk != 249 // 'text'
  26449. && lk != 253 // 'to'
  26450. && lk != 254 // 'treat'
  26451. && lk != 255 // 'true'
  26452. && lk != 257 // 'tumbling'
  26453. && lk != 258 // 'type'
  26454. && lk != 260 // 'union'
  26455. && lk != 262 // 'unordered'
  26456. && lk != 263 // 'updating'
  26457. && lk != 266 // 'validate'
  26458. && lk != 267 // 'value'
  26459. && lk != 269 // 'version'
  26460. && lk != 272 // 'where'
  26461. && lk != 276 // 'with'
  26462. && lk != 283 // '{|'
  26463. && lk != 10009 // '{' NCName^Token
  26464. && lk != 14935 // 'break' '#'
  26465. && lk != 14951 // 'continue' '#'
  26466. && lk != 14981 // 'exit' '#'
  26467. && lk != 14987 // 'for' '#'
  26468. && lk != 15002 // 'if' '#'
  26469. && lk != 15025 // 'let' '#'
  26470. && lk != 15096 // 'switch' '#'
  26471. && lk != 15104 // 'try' '#'
  26472. && lk != 15107 // 'typeswitch' '#'
  26473. && lk != 15116 // 'variable' '#'
  26474. && lk != 15121 // 'while' '#'
  26475. && lk != 16011 // 'for' '$'
  26476. && lk != 16049 // 'let' '$'
  26477. && lk != 16140 // 'variable' '$'
  26478. && lk != 18007 // 'break' '('
  26479. && lk != 18023 // 'continue' '('
  26480. && lk != 18053 // 'exit' '('
  26481. && lk != 18059 // 'for' '('
  26482. && lk != 18074 // 'if' '('
  26483. && lk != 18097 // 'let' '('
  26484. && lk != 18168 // 'switch' '('
  26485. && lk != 18176 // 'try' '('
  26486. && lk != 18179 // 'typeswitch' '('
  26487. && lk != 18188 // 'variable' '('
  26488. && lk != 91735 // 'break' 'loop'
  26489. && lk != 91751 // 'continue' 'loop'
  26490. && lk != 115333 // 'exit' 'returning'
  26491. && lk != 118961 // 'let' 'score'
  26492. && lk != 122507 // 'for' 'sliding'
  26493. && lk != 131723 // 'for' 'tumbling'
  26494. && lk != 144128 // 'try' '{'
  26495. && lk != 147225) // '{' '}'
  26496. {
  26497. lk = memoized(9, e0);
  26498. if (lk == 0)
  26499. {
  26500. var b0A = b0; var e0A = e0; var l1A = l1;
  26501. var b1A = b1; var e1A = e1; var l2A = l2;
  26502. var b2A = b2; var e2A = e2;
  26503. try
  26504. {
  26505. try_ApplyStatement();
  26506. lk = -1;
  26507. }
  26508. catch (p1A)
  26509. {
  26510. try
  26511. {
  26512. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26513. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26514. b2 = b2A; e2 = e2A; end = e2A; }}
  26515. try_AssignStatement();
  26516. lk = -2;
  26517. }
  26518. catch (p2A)
  26519. {
  26520. try
  26521. {
  26522. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26523. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26524. b2 = b2A; e2 = e2A; end = e2A; }}
  26525. try_BlockStatement();
  26526. lk = -3;
  26527. }
  26528. catch (p3A)
  26529. {
  26530. try
  26531. {
  26532. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26533. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26534. b2 = b2A; e2 = e2A; end = e2A; }}
  26535. try_VarDeclStatement();
  26536. lk = -12;
  26537. }
  26538. catch (p12A)
  26539. {
  26540. lk = -13;
  26541. }
  26542. }
  26543. }
  26544. }
  26545. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26546. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26547. b2 = b2A; e2 = e2A; end = e2A; }}
  26548. memoize(9, e0, lk);
  26549. }
  26550. }
  26551. switch (lk)
  26552. {
  26553. case -2:
  26554. parse_AssignStatement();
  26555. break;
  26556. case -3:
  26557. parse_BlockStatement();
  26558. break;
  26559. case 91735: // 'break' 'loop'
  26560. parse_BreakStatement();
  26561. break;
  26562. case 91751: // 'continue' 'loop'
  26563. parse_ContinueStatement();
  26564. break;
  26565. case 115333: // 'exit' 'returning'
  26566. parse_ExitStatement();
  26567. break;
  26568. case 16011: // 'for' '$'
  26569. case 16049: // 'let' '$'
  26570. case 118961: // 'let' 'score'
  26571. case 122507: // 'for' 'sliding'
  26572. case 131723: // 'for' 'tumbling'
  26573. parse_FLWORStatement();
  26574. break;
  26575. case 18074: // 'if' '('
  26576. parse_IfStatement();
  26577. break;
  26578. case 18168: // 'switch' '('
  26579. parse_SwitchStatement();
  26580. break;
  26581. case 144128: // 'try' '{'
  26582. parse_TryCatchStatement();
  26583. break;
  26584. case 18179: // 'typeswitch' '('
  26585. parse_TypeswitchStatement();
  26586. break;
  26587. case -12:
  26588. case 16140: // 'variable' '$'
  26589. parse_VarDeclStatement();
  26590. break;
  26591. case -13:
  26592. parse_WhileStatement();
  26593. break;
  26594. case 54: // ';'
  26595. parse_VoidStatement();
  26596. break;
  26597. default:
  26598. parse_ApplyStatement();
  26599. }
  26600. eventHandler.endNonterminal("Statement", e0);
  26601. }
  26602. function try_Statement()
  26603. {
  26604. switch (l1)
  26605. {
  26606. case 133: // 'exit'
  26607. lookahead2W(147); // S^WS | '#' | '(' | '(:' | 'returning'
  26608. break;
  26609. case 139: // 'for'
  26610. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  26611. break;
  26612. case 177: // 'let'
  26613. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  26614. break;
  26615. case 256: // 'try'
  26616. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  26617. break;
  26618. case 268: // 'variable'
  26619. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  26620. break;
  26621. case 281: // '{'
  26622. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26623. break;
  26624. case 31: // '$'
  26625. case 33: // '%'
  26626. lookahead2W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26627. break;
  26628. case 87: // 'break'
  26629. case 103: // 'continue'
  26630. lookahead2W(145); // S^WS | '#' | '(' | '(:' | 'loop'
  26631. break;
  26632. case 154: // 'if'
  26633. case 248: // 'switch'
  26634. case 259: // 'typeswitch'
  26635. case 273: // 'while'
  26636. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  26637. break;
  26638. default:
  26639. lk = l1;
  26640. }
  26641. if (lk != 6 // EQName^Token
  26642. && lk != 8 // IntegerLiteral
  26643. && lk != 9 // DecimalLiteral
  26644. && lk != 10 // DoubleLiteral
  26645. && lk != 11 // StringLiteral
  26646. && lk != 32 // '$$'
  26647. && lk != 35 // '('
  26648. && lk != 36 // '(#'
  26649. && lk != 41 // '+'
  26650. && lk != 43 // '-'
  26651. && lk != 47 // '/'
  26652. && lk != 48 // '//'
  26653. && lk != 54 // ';'
  26654. && lk != 55 // '<'
  26655. && lk != 56 // '<!--'
  26656. && lk != 60 // '<?'
  26657. && lk != 69 // '['
  26658. && lk != 71 // 'after'
  26659. && lk != 73 // 'allowing'
  26660. && lk != 74 // 'ancestor'
  26661. && lk != 75 // 'ancestor-or-self'
  26662. && lk != 76 // 'and'
  26663. && lk != 78 // 'append'
  26664. && lk != 79 // 'array'
  26665. && lk != 80 // 'as'
  26666. && lk != 81 // 'ascending'
  26667. && lk != 82 // 'at'
  26668. && lk != 83 // 'attribute'
  26669. && lk != 84 // 'base-uri'
  26670. && lk != 85 // 'before'
  26671. && lk != 86 // 'boundary-space'
  26672. && lk != 89 // 'case'
  26673. && lk != 90 // 'cast'
  26674. && lk != 91 // 'castable'
  26675. && lk != 92 // 'catch'
  26676. && lk != 94 // 'child'
  26677. && lk != 95 // 'collation'
  26678. && lk != 97 // 'comment'
  26679. && lk != 98 // 'constraint'
  26680. && lk != 99 // 'construction'
  26681. && lk != 102 // 'context'
  26682. && lk != 104 // 'copy'
  26683. && lk != 105 // 'copy-namespaces'
  26684. && lk != 106 // 'count'
  26685. && lk != 107 // 'decimal-format'
  26686. && lk != 109 // 'declare'
  26687. && lk != 110 // 'default'
  26688. && lk != 111 // 'delete'
  26689. && lk != 112 // 'descendant'
  26690. && lk != 113 // 'descendant-or-self'
  26691. && lk != 114 // 'descending'
  26692. && lk != 119 // 'div'
  26693. && lk != 120 // 'document'
  26694. && lk != 121 // 'document-node'
  26695. && lk != 122 // 'element'
  26696. && lk != 123 // 'else'
  26697. && lk != 124 // 'empty'
  26698. && lk != 125 // 'empty-sequence'
  26699. && lk != 126 // 'encoding'
  26700. && lk != 127 // 'end'
  26701. && lk != 129 // 'eq'
  26702. && lk != 130 // 'every'
  26703. && lk != 132 // 'except'
  26704. && lk != 134 // 'external'
  26705. && lk != 135 // 'false'
  26706. && lk != 136 // 'first'
  26707. && lk != 137 // 'following'
  26708. && lk != 138 // 'following-sibling'
  26709. && lk != 142 // 'from'
  26710. && lk != 143 // 'ft-option'
  26711. && lk != 147 // 'function'
  26712. && lk != 148 // 'ge'
  26713. && lk != 150 // 'group'
  26714. && lk != 152 // 'gt'
  26715. && lk != 153 // 'idiv'
  26716. && lk != 155 // 'import'
  26717. && lk != 156 // 'in'
  26718. && lk != 157 // 'index'
  26719. && lk != 161 // 'insert'
  26720. && lk != 162 // 'instance'
  26721. && lk != 163 // 'integrity'
  26722. && lk != 164 // 'intersect'
  26723. && lk != 165 // 'into'
  26724. && lk != 166 // 'is'
  26725. && lk != 167 // 'item'
  26726. && lk != 168 // 'json'
  26727. && lk != 169 // 'json-item'
  26728. && lk != 170 // 'jsoniq'
  26729. && lk != 173 // 'last'
  26730. && lk != 174 // 'lax'
  26731. && lk != 175 // 'le'
  26732. && lk != 179 // 'loop'
  26733. && lk != 181 // 'lt'
  26734. && lk != 183 // 'mod'
  26735. && lk != 184 // 'modify'
  26736. && lk != 185 // 'module'
  26737. && lk != 187 // 'namespace'
  26738. && lk != 188 // 'namespace-node'
  26739. && lk != 189 // 'ne'
  26740. && lk != 194 // 'node'
  26741. && lk != 195 // 'nodes'
  26742. && lk != 196 // 'not'
  26743. && lk != 197 // 'null'
  26744. && lk != 198 // 'object'
  26745. && lk != 202 // 'only'
  26746. && lk != 203 // 'option'
  26747. && lk != 204 // 'or'
  26748. && lk != 205 // 'order'
  26749. && lk != 206 // 'ordered'
  26750. && lk != 207 // 'ordering'
  26751. && lk != 210 // 'parent'
  26752. && lk != 216 // 'preceding'
  26753. && lk != 217 // 'preceding-sibling'
  26754. && lk != 220 // 'processing-instruction'
  26755. && lk != 222 // 'rename'
  26756. && lk != 223 // 'replace'
  26757. && lk != 224 // 'return'
  26758. && lk != 225 // 'returning'
  26759. && lk != 226 // 'revalidation'
  26760. && lk != 228 // 'satisfies'
  26761. && lk != 229 // 'schema'
  26762. && lk != 230 // 'schema-attribute'
  26763. && lk != 231 // 'schema-element'
  26764. && lk != 232 // 'score'
  26765. && lk != 233 // 'select'
  26766. && lk != 234 // 'self'
  26767. && lk != 239 // 'sliding'
  26768. && lk != 240 // 'some'
  26769. && lk != 241 // 'stable'
  26770. && lk != 242 // 'start'
  26771. && lk != 245 // 'strict'
  26772. && lk != 247 // 'structured-item'
  26773. && lk != 249 // 'text'
  26774. && lk != 253 // 'to'
  26775. && lk != 254 // 'treat'
  26776. && lk != 255 // 'true'
  26777. && lk != 257 // 'tumbling'
  26778. && lk != 258 // 'type'
  26779. && lk != 260 // 'union'
  26780. && lk != 262 // 'unordered'
  26781. && lk != 263 // 'updating'
  26782. && lk != 266 // 'validate'
  26783. && lk != 267 // 'value'
  26784. && lk != 269 // 'version'
  26785. && lk != 272 // 'where'
  26786. && lk != 276 // 'with'
  26787. && lk != 283 // '{|'
  26788. && lk != 10009 // '{' NCName^Token
  26789. && lk != 14935 // 'break' '#'
  26790. && lk != 14951 // 'continue' '#'
  26791. && lk != 14981 // 'exit' '#'
  26792. && lk != 14987 // 'for' '#'
  26793. && lk != 15002 // 'if' '#'
  26794. && lk != 15025 // 'let' '#'
  26795. && lk != 15096 // 'switch' '#'
  26796. && lk != 15104 // 'try' '#'
  26797. && lk != 15107 // 'typeswitch' '#'
  26798. && lk != 15116 // 'variable' '#'
  26799. && lk != 15121 // 'while' '#'
  26800. && lk != 16011 // 'for' '$'
  26801. && lk != 16049 // 'let' '$'
  26802. && lk != 16140 // 'variable' '$'
  26803. && lk != 18007 // 'break' '('
  26804. && lk != 18023 // 'continue' '('
  26805. && lk != 18053 // 'exit' '('
  26806. && lk != 18059 // 'for' '('
  26807. && lk != 18074 // 'if' '('
  26808. && lk != 18097 // 'let' '('
  26809. && lk != 18168 // 'switch' '('
  26810. && lk != 18176 // 'try' '('
  26811. && lk != 18179 // 'typeswitch' '('
  26812. && lk != 18188 // 'variable' '('
  26813. && lk != 91735 // 'break' 'loop'
  26814. && lk != 91751 // 'continue' 'loop'
  26815. && lk != 115333 // 'exit' 'returning'
  26816. && lk != 118961 // 'let' 'score'
  26817. && lk != 122507 // 'for' 'sliding'
  26818. && lk != 131723 // 'for' 'tumbling'
  26819. && lk != 144128 // 'try' '{'
  26820. && lk != 147225) // '{' '}'
  26821. {
  26822. lk = memoized(9, e0);
  26823. if (lk == 0)
  26824. {
  26825. var b0A = b0; var e0A = e0; var l1A = l1;
  26826. var b1A = b1; var e1A = e1; var l2A = l2;
  26827. var b2A = b2; var e2A = e2;
  26828. try
  26829. {
  26830. try_ApplyStatement();
  26831. memoize(9, e0A, -1);
  26832. lk = -15;
  26833. }
  26834. catch (p1A)
  26835. {
  26836. try
  26837. {
  26838. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26839. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26840. b2 = b2A; e2 = e2A; end = e2A; }}
  26841. try_AssignStatement();
  26842. memoize(9, e0A, -2);
  26843. lk = -15;
  26844. }
  26845. catch (p2A)
  26846. {
  26847. try
  26848. {
  26849. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26850. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26851. b2 = b2A; e2 = e2A; end = e2A; }}
  26852. try_BlockStatement();
  26853. memoize(9, e0A, -3);
  26854. lk = -15;
  26855. }
  26856. catch (p3A)
  26857. {
  26858. try
  26859. {
  26860. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26861. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26862. b2 = b2A; e2 = e2A; end = e2A; }}
  26863. try_VarDeclStatement();
  26864. memoize(9, e0A, -12);
  26865. lk = -15;
  26866. }
  26867. catch (p12A)
  26868. {
  26869. lk = -13;
  26870. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26871. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26872. b2 = b2A; e2 = e2A; end = e2A; }}
  26873. memoize(9, e0A, -13);
  26874. }
  26875. }
  26876. }
  26877. }
  26878. }
  26879. }
  26880. switch (lk)
  26881. {
  26882. case -2:
  26883. try_AssignStatement();
  26884. break;
  26885. case -3:
  26886. try_BlockStatement();
  26887. break;
  26888. case 91735: // 'break' 'loop'
  26889. try_BreakStatement();
  26890. break;
  26891. case 91751: // 'continue' 'loop'
  26892. try_ContinueStatement();
  26893. break;
  26894. case 115333: // 'exit' 'returning'
  26895. try_ExitStatement();
  26896. break;
  26897. case 16011: // 'for' '$'
  26898. case 16049: // 'let' '$'
  26899. case 118961: // 'let' 'score'
  26900. case 122507: // 'for' 'sliding'
  26901. case 131723: // 'for' 'tumbling'
  26902. try_FLWORStatement();
  26903. break;
  26904. case 18074: // 'if' '('
  26905. try_IfStatement();
  26906. break;
  26907. case 18168: // 'switch' '('
  26908. try_SwitchStatement();
  26909. break;
  26910. case 144128: // 'try' '{'
  26911. try_TryCatchStatement();
  26912. break;
  26913. case 18179: // 'typeswitch' '('
  26914. try_TypeswitchStatement();
  26915. break;
  26916. case -12:
  26917. case 16140: // 'variable' '$'
  26918. try_VarDeclStatement();
  26919. break;
  26920. case -13:
  26921. try_WhileStatement();
  26922. break;
  26923. case 54: // ';'
  26924. try_VoidStatement();
  26925. break;
  26926. case -15:
  26927. break;
  26928. default:
  26929. try_ApplyStatement();
  26930. }
  26931. }
  26932. function parse_ApplyStatement()
  26933. {
  26934. eventHandler.startNonterminal("ApplyStatement", e0);
  26935. parse_ExprSimple();
  26936. shift(54); // ';'
  26937. eventHandler.endNonterminal("ApplyStatement", e0);
  26938. }
  26939. function try_ApplyStatement()
  26940. {
  26941. try_ExprSimple();
  26942. shiftT(54); // ';'
  26943. }
  26944. function parse_AssignStatement()
  26945. {
  26946. eventHandler.startNonterminal("AssignStatement", e0);
  26947. shift(31); // '$'
  26948. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26949. whitespace();
  26950. parse_VarName();
  26951. lookahead1W(28); // S^WS | '(:' | ':='
  26952. shift(53); // ':='
  26953. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26954. whitespace();
  26955. parse_ExprSingle();
  26956. shift(54); // ';'
  26957. eventHandler.endNonterminal("AssignStatement", e0);
  26958. }
  26959. function try_AssignStatement()
  26960. {
  26961. shiftT(31); // '$'
  26962. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26963. try_VarName();
  26964. lookahead1W(28); // S^WS | '(:' | ':='
  26965. shiftT(53); // ':='
  26966. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26967. try_ExprSingle();
  26968. shiftT(54); // ';'
  26969. }
  26970. function parse_BlockStatement()
  26971. {
  26972. eventHandler.startNonterminal("BlockStatement", e0);
  26973. shift(281); // '{'
  26974. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26975. whitespace();
  26976. parse_Statement();
  26977. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26978. whitespace();
  26979. parse_Statements();
  26980. shift(287); // '}'
  26981. eventHandler.endNonterminal("BlockStatement", e0);
  26982. }
  26983. function try_BlockStatement()
  26984. {
  26985. shiftT(281); // '{'
  26986. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26987. try_Statement();
  26988. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26989. try_Statements();
  26990. shiftT(287); // '}'
  26991. }
  26992. function parse_BreakStatement()
  26993. {
  26994. eventHandler.startNonterminal("BreakStatement", e0);
  26995. shift(87); // 'break'
  26996. lookahead1W(62); // S^WS | '(:' | 'loop'
  26997. shift(179); // 'loop'
  26998. lookahead1W(29); // S^WS | '(:' | ';'
  26999. shift(54); // ';'
  27000. eventHandler.endNonterminal("BreakStatement", e0);
  27001. }
  27002. function try_BreakStatement()
  27003. {
  27004. shiftT(87); // 'break'
  27005. lookahead1W(62); // S^WS | '(:' | 'loop'
  27006. shiftT(179); // 'loop'
  27007. lookahead1W(29); // S^WS | '(:' | ';'
  27008. shiftT(54); // ';'
  27009. }
  27010. function parse_ContinueStatement()
  27011. {
  27012. eventHandler.startNonterminal("ContinueStatement", e0);
  27013. shift(103); // 'continue'
  27014. lookahead1W(62); // S^WS | '(:' | 'loop'
  27015. shift(179); // 'loop'
  27016. lookahead1W(29); // S^WS | '(:' | ';'
  27017. shift(54); // ';'
  27018. eventHandler.endNonterminal("ContinueStatement", e0);
  27019. }
  27020. function try_ContinueStatement()
  27021. {
  27022. shiftT(103); // 'continue'
  27023. lookahead1W(62); // S^WS | '(:' | 'loop'
  27024. shiftT(179); // 'loop'
  27025. lookahead1W(29); // S^WS | '(:' | ';'
  27026. shiftT(54); // ';'
  27027. }
  27028. function parse_ExitStatement()
  27029. {
  27030. eventHandler.startNonterminal("ExitStatement", e0);
  27031. shift(133); // 'exit'
  27032. lookahead1W(74); // S^WS | '(:' | 'returning'
  27033. shift(225); // 'returning'
  27034. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27035. whitespace();
  27036. parse_ExprSingle();
  27037. shift(54); // ';'
  27038. eventHandler.endNonterminal("ExitStatement", e0);
  27039. }
  27040. function try_ExitStatement()
  27041. {
  27042. shiftT(133); // 'exit'
  27043. lookahead1W(74); // S^WS | '(:' | 'returning'
  27044. shiftT(225); // 'returning'
  27045. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27046. try_ExprSingle();
  27047. shiftT(54); // ';'
  27048. }
  27049. function parse_FLWORStatement()
  27050. {
  27051. eventHandler.startNonterminal("FLWORStatement", e0);
  27052. parse_InitialClause();
  27053. for (;;)
  27054. {
  27055. lookahead1W(195); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  27056. if (l1 == 224) // 'return'
  27057. {
  27058. break;
  27059. }
  27060. whitespace();
  27061. parse_IntermediateClause();
  27062. }
  27063. whitespace();
  27064. parse_ReturnStatement();
  27065. eventHandler.endNonterminal("FLWORStatement", e0);
  27066. }
  27067. function try_FLWORStatement()
  27068. {
  27069. try_InitialClause();
  27070. for (;;)
  27071. {
  27072. lookahead1W(195); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  27073. if (l1 == 224) // 'return'
  27074. {
  27075. break;
  27076. }
  27077. try_IntermediateClause();
  27078. }
  27079. try_ReturnStatement();
  27080. }
  27081. function parse_ReturnStatement()
  27082. {
  27083. eventHandler.startNonterminal("ReturnStatement", e0);
  27084. shift(224); // 'return'
  27085. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27086. whitespace();
  27087. parse_Statement();
  27088. eventHandler.endNonterminal("ReturnStatement", e0);
  27089. }
  27090. function try_ReturnStatement()
  27091. {
  27092. shiftT(224); // 'return'
  27093. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27094. try_Statement();
  27095. }
  27096. function parse_IfStatement()
  27097. {
  27098. eventHandler.startNonterminal("IfStatement", e0);
  27099. shift(154); // 'if'
  27100. lookahead1W(22); // S^WS | '(' | '(:'
  27101. shift(35); // '('
  27102. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27103. whitespace();
  27104. parse_Expr();
  27105. shift(38); // ')'
  27106. lookahead1W(80); // S^WS | '(:' | 'then'
  27107. shift(250); // 'then'
  27108. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27109. whitespace();
  27110. parse_Statement();
  27111. lookahead1W(51); // S^WS | '(:' | 'else'
  27112. shift(123); // 'else'
  27113. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27114. whitespace();
  27115. parse_Statement();
  27116. eventHandler.endNonterminal("IfStatement", e0);
  27117. }
  27118. function try_IfStatement()
  27119. {
  27120. shiftT(154); // 'if'
  27121. lookahead1W(22); // S^WS | '(' | '(:'
  27122. shiftT(35); // '('
  27123. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27124. try_Expr();
  27125. shiftT(38); // ')'
  27126. lookahead1W(80); // S^WS | '(:' | 'then'
  27127. shiftT(250); // 'then'
  27128. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27129. try_Statement();
  27130. lookahead1W(51); // S^WS | '(:' | 'else'
  27131. shiftT(123); // 'else'
  27132. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27133. try_Statement();
  27134. }
  27135. function parse_SwitchStatement()
  27136. {
  27137. eventHandler.startNonterminal("SwitchStatement", e0);
  27138. shift(248); // 'switch'
  27139. lookahead1W(22); // S^WS | '(' | '(:'
  27140. shift(35); // '('
  27141. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27142. whitespace();
  27143. parse_Expr();
  27144. shift(38); // ')'
  27145. for (;;)
  27146. {
  27147. lookahead1W(38); // S^WS | '(:' | 'case'
  27148. whitespace();
  27149. parse_SwitchCaseStatement();
  27150. lookahead1W(117); // S^WS | '(:' | 'case' | 'default'
  27151. if (l1 != 89) // 'case'
  27152. {
  27153. break;
  27154. }
  27155. }
  27156. shift(110); // 'default'
  27157. lookahead1W(73); // S^WS | '(:' | 'return'
  27158. shift(224); // 'return'
  27159. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27160. whitespace();
  27161. parse_Statement();
  27162. eventHandler.endNonterminal("SwitchStatement", e0);
  27163. }
  27164. function try_SwitchStatement()
  27165. {
  27166. shiftT(248); // 'switch'
  27167. lookahead1W(22); // S^WS | '(' | '(:'
  27168. shiftT(35); // '('
  27169. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27170. try_Expr();
  27171. shiftT(38); // ')'
  27172. for (;;)
  27173. {
  27174. lookahead1W(38); // S^WS | '(:' | 'case'
  27175. try_SwitchCaseStatement();
  27176. lookahead1W(117); // S^WS | '(:' | 'case' | 'default'
  27177. if (l1 != 89) // 'case'
  27178. {
  27179. break;
  27180. }
  27181. }
  27182. shiftT(110); // 'default'
  27183. lookahead1W(73); // S^WS | '(:' | 'return'
  27184. shiftT(224); // 'return'
  27185. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27186. try_Statement();
  27187. }
  27188. function parse_SwitchCaseStatement()
  27189. {
  27190. eventHandler.startNonterminal("SwitchCaseStatement", e0);
  27191. for (;;)
  27192. {
  27193. shift(89); // 'case'
  27194. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27195. whitespace();
  27196. parse_SwitchCaseOperand();
  27197. if (l1 != 89) // 'case'
  27198. {
  27199. break;
  27200. }
  27201. }
  27202. shift(224); // 'return'
  27203. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27204. whitespace();
  27205. parse_Statement();
  27206. eventHandler.endNonterminal("SwitchCaseStatement", e0);
  27207. }
  27208. function try_SwitchCaseStatement()
  27209. {
  27210. for (;;)
  27211. {
  27212. shiftT(89); // 'case'
  27213. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27214. try_SwitchCaseOperand();
  27215. if (l1 != 89) // 'case'
  27216. {
  27217. break;
  27218. }
  27219. }
  27220. shiftT(224); // 'return'
  27221. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27222. try_Statement();
  27223. }
  27224. function parse_TryCatchStatement()
  27225. {
  27226. eventHandler.startNonterminal("TryCatchStatement", e0);
  27227. shift(256); // 'try'
  27228. lookahead1W(90); // S^WS | '(:' | '{'
  27229. whitespace();
  27230. parse_BlockStatement();
  27231. for (;;)
  27232. {
  27233. lookahead1W(39); // S^WS | '(:' | 'catch'
  27234. shift(92); // 'catch'
  27235. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27236. whitespace();
  27237. parse_CatchErrorList();
  27238. whitespace();
  27239. parse_BlockStatement();
  27240. lookahead1W(283); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27241. switch (l1)
  27242. {
  27243. case 92: // 'catch'
  27244. lookahead2W(255); // Wildcard | EQName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' |
  27245. break;
  27246. default:
  27247. lk = l1;
  27248. }
  27249. if (lk != 2652 // 'catch' Wildcard
  27250. && lk != 3164 // 'catch' EQName^Token
  27251. && lk != 36444 // 'catch' 'after'
  27252. && lk != 37468 // 'catch' 'allowing'
  27253. && lk != 37980 // 'catch' 'ancestor'
  27254. && lk != 38492 // 'catch' 'ancestor-or-self'
  27255. && lk != 39004 // 'catch' 'and'
  27256. && lk != 40028 // 'catch' 'append'
  27257. && lk != 40540 // 'catch' 'array'
  27258. && lk != 41052 // 'catch' 'as'
  27259. && lk != 41564 // 'catch' 'ascending'
  27260. && lk != 42076 // 'catch' 'at'
  27261. && lk != 42588 // 'catch' 'attribute'
  27262. && lk != 43100 // 'catch' 'base-uri'
  27263. && lk != 43612 // 'catch' 'before'
  27264. && lk != 44124 // 'catch' 'boundary-space'
  27265. && lk != 44636 // 'catch' 'break'
  27266. && lk != 45660 // 'catch' 'case'
  27267. && lk != 46172 // 'catch' 'cast'
  27268. && lk != 46684 // 'catch' 'castable'
  27269. && lk != 47196 // 'catch' 'catch'
  27270. && lk != 48220 // 'catch' 'child'
  27271. && lk != 48732 // 'catch' 'collation'
  27272. && lk != 49756 // 'catch' 'comment'
  27273. && lk != 50268 // 'catch' 'constraint'
  27274. && lk != 50780 // 'catch' 'construction'
  27275. && lk != 52316 // 'catch' 'context'
  27276. && lk != 52828 // 'catch' 'continue'
  27277. && lk != 53340 // 'catch' 'copy'
  27278. && lk != 53852 // 'catch' 'copy-namespaces'
  27279. && lk != 54364 // 'catch' 'count'
  27280. && lk != 54876 // 'catch' 'decimal-format'
  27281. && lk != 55900 // 'catch' 'declare'
  27282. && lk != 56412 // 'catch' 'default'
  27283. && lk != 56924 // 'catch' 'delete'
  27284. && lk != 57436 // 'catch' 'descendant'
  27285. && lk != 57948 // 'catch' 'descendant-or-self'
  27286. && lk != 58460 // 'catch' 'descending'
  27287. && lk != 61020 // 'catch' 'div'
  27288. && lk != 61532 // 'catch' 'document'
  27289. && lk != 62044 // 'catch' 'document-node'
  27290. && lk != 62556 // 'catch' 'element'
  27291. && lk != 63068 // 'catch' 'else'
  27292. && lk != 63580 // 'catch' 'empty'
  27293. && lk != 64092 // 'catch' 'empty-sequence'
  27294. && lk != 64604 // 'catch' 'encoding'
  27295. && lk != 65116 // 'catch' 'end'
  27296. && lk != 66140 // 'catch' 'eq'
  27297. && lk != 66652 // 'catch' 'every'
  27298. && lk != 67676 // 'catch' 'except'
  27299. && lk != 68188 // 'catch' 'exit'
  27300. && lk != 68700 // 'catch' 'external'
  27301. && lk != 69212 // 'catch' 'false'
  27302. && lk != 69724 // 'catch' 'first'
  27303. && lk != 70236 // 'catch' 'following'
  27304. && lk != 70748 // 'catch' 'following-sibling'
  27305. && lk != 71260 // 'catch' 'for'
  27306. && lk != 72796 // 'catch' 'from'
  27307. && lk != 73308 // 'catch' 'ft-option'
  27308. && lk != 75356 // 'catch' 'function'
  27309. && lk != 75868 // 'catch' 'ge'
  27310. && lk != 76892 // 'catch' 'group'
  27311. && lk != 77916 // 'catch' 'gt'
  27312. && lk != 78428 // 'catch' 'idiv'
  27313. && lk != 78940 // 'catch' 'if'
  27314. && lk != 79452 // 'catch' 'import'
  27315. && lk != 79964 // 'catch' 'in'
  27316. && lk != 80476 // 'catch' 'index'
  27317. && lk != 82524 // 'catch' 'insert'
  27318. && lk != 83036 // 'catch' 'instance'
  27319. && lk != 83548 // 'catch' 'integrity'
  27320. && lk != 84060 // 'catch' 'intersect'
  27321. && lk != 84572 // 'catch' 'into'
  27322. && lk != 85084 // 'catch' 'is'
  27323. && lk != 85596 // 'catch' 'item'
  27324. && lk != 86108 // 'catch' 'json'
  27325. && lk != 86620 // 'catch' 'json-item'
  27326. && lk != 87132 // 'catch' 'jsoniq'
  27327. && lk != 88668 // 'catch' 'last'
  27328. && lk != 89180 // 'catch' 'lax'
  27329. && lk != 89692 // 'catch' 'le'
  27330. && lk != 90716 // 'catch' 'let'
  27331. && lk != 91740 // 'catch' 'loop'
  27332. && lk != 92764 // 'catch' 'lt'
  27333. && lk != 93788 // 'catch' 'mod'
  27334. && lk != 94300 // 'catch' 'modify'
  27335. && lk != 94812 // 'catch' 'module'
  27336. && lk != 95836 // 'catch' 'namespace'
  27337. && lk != 96348 // 'catch' 'namespace-node'
  27338. && lk != 96860 // 'catch' 'ne'
  27339. && lk != 99420 // 'catch' 'node'
  27340. && lk != 99932 // 'catch' 'nodes'
  27341. && lk != 100956 // 'catch' 'null'
  27342. && lk != 101468 // 'catch' 'object'
  27343. && lk != 103516 // 'catch' 'only'
  27344. && lk != 104028 // 'catch' 'option'
  27345. && lk != 104540 // 'catch' 'or'
  27346. && lk != 105052 // 'catch' 'order'
  27347. && lk != 105564 // 'catch' 'ordered'
  27348. && lk != 106076 // 'catch' 'ordering'
  27349. && lk != 107612 // 'catch' 'parent'
  27350. && lk != 110684 // 'catch' 'preceding'
  27351. && lk != 111196 // 'catch' 'preceding-sibling'
  27352. && lk != 112732 // 'catch' 'processing-instruction'
  27353. && lk != 113756 // 'catch' 'rename'
  27354. && lk != 114268 // 'catch' 'replace'
  27355. && lk != 114780 // 'catch' 'return'
  27356. && lk != 115292 // 'catch' 'returning'
  27357. && lk != 115804 // 'catch' 'revalidation'
  27358. && lk != 116828 // 'catch' 'satisfies'
  27359. && lk != 117340 // 'catch' 'schema'
  27360. && lk != 117852 // 'catch' 'schema-attribute'
  27361. && lk != 118364 // 'catch' 'schema-element'
  27362. && lk != 118876 // 'catch' 'score'
  27363. && lk != 119388 // 'catch' 'select'
  27364. && lk != 119900 // 'catch' 'self'
  27365. && lk != 122460 // 'catch' 'sliding'
  27366. && lk != 122972 // 'catch' 'some'
  27367. && lk != 123484 // 'catch' 'stable'
  27368. && lk != 123996 // 'catch' 'start'
  27369. && lk != 125532 // 'catch' 'strict'
  27370. && lk != 126556 // 'catch' 'structured-item'
  27371. && lk != 127068 // 'catch' 'switch'
  27372. && lk != 127580 // 'catch' 'text'
  27373. && lk != 129628 // 'catch' 'to'
  27374. && lk != 130140 // 'catch' 'treat'
  27375. && lk != 130652 // 'catch' 'true'
  27376. && lk != 131164 // 'catch' 'try'
  27377. && lk != 131676 // 'catch' 'tumbling'
  27378. && lk != 132188 // 'catch' 'type'
  27379. && lk != 132700 // 'catch' 'typeswitch'
  27380. && lk != 133212 // 'catch' 'union'
  27381. && lk != 134236 // 'catch' 'unordered'
  27382. && lk != 134748 // 'catch' 'updating'
  27383. && lk != 136284 // 'catch' 'validate'
  27384. && lk != 136796 // 'catch' 'value'
  27385. && lk != 137308 // 'catch' 'variable'
  27386. && lk != 137820 // 'catch' 'version'
  27387. && lk != 139356 // 'catch' 'where'
  27388. && lk != 139868 // 'catch' 'while'
  27389. && lk != 141404) // 'catch' 'with'
  27390. {
  27391. break;
  27392. }
  27393. }
  27394. eventHandler.endNonterminal("TryCatchStatement", e0);
  27395. }
  27396. function try_TryCatchStatement()
  27397. {
  27398. shiftT(256); // 'try'
  27399. lookahead1W(90); // S^WS | '(:' | '{'
  27400. try_BlockStatement();
  27401. for (;;)
  27402. {
  27403. lookahead1W(39); // S^WS | '(:' | 'catch'
  27404. shiftT(92); // 'catch'
  27405. lookahead1W(248); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27406. try_CatchErrorList();
  27407. try_BlockStatement();
  27408. lookahead1W(283); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27409. switch (l1)
  27410. {
  27411. case 92: // 'catch'
  27412. lookahead2W(255); // Wildcard | EQName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' |
  27413. break;
  27414. default:
  27415. lk = l1;
  27416. }
  27417. if (lk != 2652 // 'catch' Wildcard
  27418. && lk != 3164 // 'catch' EQName^Token
  27419. && lk != 36444 // 'catch' 'after'
  27420. && lk != 37468 // 'catch' 'allowing'
  27421. && lk != 37980 // 'catch' 'ancestor'
  27422. && lk != 38492 // 'catch' 'ancestor-or-self'
  27423. && lk != 39004 // 'catch' 'and'
  27424. && lk != 40028 // 'catch' 'append'
  27425. && lk != 40540 // 'catch' 'array'
  27426. && lk != 41052 // 'catch' 'as'
  27427. && lk != 41564 // 'catch' 'ascending'
  27428. && lk != 42076 // 'catch' 'at'
  27429. && lk != 42588 // 'catch' 'attribute'
  27430. && lk != 43100 // 'catch' 'base-uri'
  27431. && lk != 43612 // 'catch' 'before'
  27432. && lk != 44124 // 'catch' 'boundary-space'
  27433. && lk != 44636 // 'catch' 'break'
  27434. && lk != 45660 // 'catch' 'case'
  27435. && lk != 46172 // 'catch' 'cast'
  27436. && lk != 46684 // 'catch' 'castable'
  27437. && lk != 47196 // 'catch' 'catch'
  27438. && lk != 48220 // 'catch' 'child'
  27439. && lk != 48732 // 'catch' 'collation'
  27440. && lk != 49756 // 'catch' 'comment'
  27441. && lk != 50268 // 'catch' 'constraint'
  27442. && lk != 50780 // 'catch' 'construction'
  27443. && lk != 52316 // 'catch' 'context'
  27444. && lk != 52828 // 'catch' 'continue'
  27445. && lk != 53340 // 'catch' 'copy'
  27446. && lk != 53852 // 'catch' 'copy-namespaces'
  27447. && lk != 54364 // 'catch' 'count'
  27448. && lk != 54876 // 'catch' 'decimal-format'
  27449. && lk != 55900 // 'catch' 'declare'
  27450. && lk != 56412 // 'catch' 'default'
  27451. && lk != 56924 // 'catch' 'delete'
  27452. && lk != 57436 // 'catch' 'descendant'
  27453. && lk != 57948 // 'catch' 'descendant-or-self'
  27454. && lk != 58460 // 'catch' 'descending'
  27455. && lk != 61020 // 'catch' 'div'
  27456. && lk != 61532 // 'catch' 'document'
  27457. && lk != 62044 // 'catch' 'document-node'
  27458. && lk != 62556 // 'catch' 'element'
  27459. && lk != 63068 // 'catch' 'else'
  27460. && lk != 63580 // 'catch' 'empty'
  27461. && lk != 64092 // 'catch' 'empty-sequence'
  27462. && lk != 64604 // 'catch' 'encoding'
  27463. && lk != 65116 // 'catch' 'end'
  27464. && lk != 66140 // 'catch' 'eq'
  27465. && lk != 66652 // 'catch' 'every'
  27466. && lk != 67676 // 'catch' 'except'
  27467. && lk != 68188 // 'catch' 'exit'
  27468. && lk != 68700 // 'catch' 'external'
  27469. && lk != 69212 // 'catch' 'false'
  27470. && lk != 69724 // 'catch' 'first'
  27471. && lk != 70236 // 'catch' 'following'
  27472. && lk != 70748 // 'catch' 'following-sibling'
  27473. && lk != 71260 // 'catch' 'for'
  27474. && lk != 72796 // 'catch' 'from'
  27475. && lk != 73308 // 'catch' 'ft-option'
  27476. && lk != 75356 // 'catch' 'function'
  27477. && lk != 75868 // 'catch' 'ge'
  27478. && lk != 76892 // 'catch' 'group'
  27479. && lk != 77916 // 'catch' 'gt'
  27480. && lk != 78428 // 'catch' 'idiv'
  27481. && lk != 78940 // 'catch' 'if'
  27482. && lk != 79452 // 'catch' 'import'
  27483. && lk != 79964 // 'catch' 'in'
  27484. && lk != 80476 // 'catch' 'index'
  27485. && lk != 82524 // 'catch' 'insert'
  27486. && lk != 83036 // 'catch' 'instance'
  27487. && lk != 83548 // 'catch' 'integrity'
  27488. && lk != 84060 // 'catch' 'intersect'
  27489. && lk != 84572 // 'catch' 'into'
  27490. && lk != 85084 // 'catch' 'is'
  27491. && lk != 85596 // 'catch' 'item'
  27492. && lk != 86108 // 'catch' 'json'
  27493. && lk != 86620 // 'catch' 'json-item'
  27494. && lk != 87132 // 'catch' 'jsoniq'
  27495. && lk != 88668 // 'catch' 'last'
  27496. && lk != 89180 // 'catch' 'lax'
  27497. && lk != 89692 // 'catch' 'le'
  27498. && lk != 90716 // 'catch' 'let'
  27499. && lk != 91740 // 'catch' 'loop'
  27500. && lk != 92764 // 'catch' 'lt'
  27501. && lk != 93788 // 'catch' 'mod'
  27502. && lk != 94300 // 'catch' 'modify'
  27503. && lk != 94812 // 'catch' 'module'
  27504. && lk != 95836 // 'catch' 'namespace'
  27505. && lk != 96348 // 'catch' 'namespace-node'
  27506. && lk != 96860 // 'catch' 'ne'
  27507. && lk != 99420 // 'catch' 'node'
  27508. && lk != 99932 // 'catch' 'nodes'
  27509. && lk != 100956 // 'catch' 'null'
  27510. && lk != 101468 // 'catch' 'object'
  27511. && lk != 103516 // 'catch' 'only'
  27512. && lk != 104028 // 'catch' 'option'
  27513. && lk != 104540 // 'catch' 'or'
  27514. && lk != 105052 // 'catch' 'order'
  27515. && lk != 105564 // 'catch' 'ordered'
  27516. && lk != 106076 // 'catch' 'ordering'
  27517. && lk != 107612 // 'catch' 'parent'
  27518. && lk != 110684 // 'catch' 'preceding'
  27519. && lk != 111196 // 'catch' 'preceding-sibling'
  27520. && lk != 112732 // 'catch' 'processing-instruction'
  27521. && lk != 113756 // 'catch' 'rename'
  27522. && lk != 114268 // 'catch' 'replace'
  27523. && lk != 114780 // 'catch' 'return'
  27524. && lk != 115292 // 'catch' 'returning'
  27525. && lk != 115804 // 'catch' 'revalidation'
  27526. && lk != 116828 // 'catch' 'satisfies'
  27527. && lk != 117340 // 'catch' 'schema'
  27528. && lk != 117852 // 'catch' 'schema-attribute'
  27529. && lk != 118364 // 'catch' 'schema-element'
  27530. && lk != 118876 // 'catch' 'score'
  27531. && lk != 119388 // 'catch' 'select'
  27532. && lk != 119900 // 'catch' 'self'
  27533. && lk != 122460 // 'catch' 'sliding'
  27534. && lk != 122972 // 'catch' 'some'
  27535. && lk != 123484 // 'catch' 'stable'
  27536. && lk != 123996 // 'catch' 'start'
  27537. && lk != 125532 // 'catch' 'strict'
  27538. && lk != 126556 // 'catch' 'structured-item'
  27539. && lk != 127068 // 'catch' 'switch'
  27540. && lk != 127580 // 'catch' 'text'
  27541. && lk != 129628 // 'catch' 'to'
  27542. && lk != 130140 // 'catch' 'treat'
  27543. && lk != 130652 // 'catch' 'true'
  27544. && lk != 131164 // 'catch' 'try'
  27545. && lk != 131676 // 'catch' 'tumbling'
  27546. && lk != 132188 // 'catch' 'type'
  27547. && lk != 132700 // 'catch' 'typeswitch'
  27548. && lk != 133212 // 'catch' 'union'
  27549. && lk != 134236 // 'catch' 'unordered'
  27550. && lk != 134748 // 'catch' 'updating'
  27551. && lk != 136284 // 'catch' 'validate'
  27552. && lk != 136796 // 'catch' 'value'
  27553. && lk != 137308 // 'catch' 'variable'
  27554. && lk != 137820 // 'catch' 'version'
  27555. && lk != 139356 // 'catch' 'where'
  27556. && lk != 139868 // 'catch' 'while'
  27557. && lk != 141404) // 'catch' 'with'
  27558. {
  27559. break;
  27560. }
  27561. }
  27562. }
  27563. function parse_TypeswitchStatement()
  27564. {
  27565. eventHandler.startNonterminal("TypeswitchStatement", e0);
  27566. shift(259); // 'typeswitch'
  27567. lookahead1W(22); // S^WS | '(' | '(:'
  27568. shift(35); // '('
  27569. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27570. whitespace();
  27571. parse_Expr();
  27572. shift(38); // ')'
  27573. for (;;)
  27574. {
  27575. lookahead1W(38); // S^WS | '(:' | 'case'
  27576. whitespace();
  27577. parse_CaseStatement();
  27578. lookahead1W(117); // S^WS | '(:' | 'case' | 'default'
  27579. if (l1 != 89) // 'case'
  27580. {
  27581. break;
  27582. }
  27583. }
  27584. shift(110); // 'default'
  27585. lookahead1W(99); // S^WS | '$' | '(:' | 'return'
  27586. if (l1 == 31) // '$'
  27587. {
  27588. shift(31); // '$'
  27589. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27590. whitespace();
  27591. parse_VarName();
  27592. }
  27593. lookahead1W(73); // S^WS | '(:' | 'return'
  27594. shift(224); // 'return'
  27595. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27596. whitespace();
  27597. parse_Statement();
  27598. eventHandler.endNonterminal("TypeswitchStatement", e0);
  27599. }
  27600. function try_TypeswitchStatement()
  27601. {
  27602. shiftT(259); // 'typeswitch'
  27603. lookahead1W(22); // S^WS | '(' | '(:'
  27604. shiftT(35); // '('
  27605. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27606. try_Expr();
  27607. shiftT(38); // ')'
  27608. for (;;)
  27609. {
  27610. lookahead1W(38); // S^WS | '(:' | 'case'
  27611. try_CaseStatement();
  27612. lookahead1W(117); // S^WS | '(:' | 'case' | 'default'
  27613. if (l1 != 89) // 'case'
  27614. {
  27615. break;
  27616. }
  27617. }
  27618. shiftT(110); // 'default'
  27619. lookahead1W(99); // S^WS | '$' | '(:' | 'return'
  27620. if (l1 == 31) // '$'
  27621. {
  27622. shiftT(31); // '$'
  27623. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27624. try_VarName();
  27625. }
  27626. lookahead1W(73); // S^WS | '(:' | 'return'
  27627. shiftT(224); // 'return'
  27628. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27629. try_Statement();
  27630. }
  27631. function parse_CaseStatement()
  27632. {
  27633. eventHandler.startNonterminal("CaseStatement", e0);
  27634. shift(89); // 'case'
  27635. lookahead1W(257); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  27636. if (l1 == 31) // '$'
  27637. {
  27638. shift(31); // '$'
  27639. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27640. whitespace();
  27641. parse_VarName();
  27642. lookahead1W(33); // S^WS | '(:' | 'as'
  27643. shift(80); // 'as'
  27644. }
  27645. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27646. whitespace();
  27647. parse_SequenceType();
  27648. lookahead1W(73); // S^WS | '(:' | 'return'
  27649. shift(224); // 'return'
  27650. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27651. whitespace();
  27652. parse_Statement();
  27653. eventHandler.endNonterminal("CaseStatement", e0);
  27654. }
  27655. function try_CaseStatement()
  27656. {
  27657. shiftT(89); // 'case'
  27658. lookahead1W(257); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  27659. if (l1 == 31) // '$'
  27660. {
  27661. shiftT(31); // '$'
  27662. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27663. try_VarName();
  27664. lookahead1W(33); // S^WS | '(:' | 'as'
  27665. shiftT(80); // 'as'
  27666. }
  27667. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27668. try_SequenceType();
  27669. lookahead1W(73); // S^WS | '(:' | 'return'
  27670. shiftT(224); // 'return'
  27671. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27672. try_Statement();
  27673. }
  27674. function parse_VarDeclStatement()
  27675. {
  27676. eventHandler.startNonterminal("VarDeclStatement", e0);
  27677. for (;;)
  27678. {
  27679. lookahead1W(102); // S^WS | '%' | '(:' | 'variable'
  27680. if (l1 != 33) // '%'
  27681. {
  27682. break;
  27683. }
  27684. whitespace();
  27685. parse_Annotation();
  27686. }
  27687. shift(268); // 'variable'
  27688. lookahead1W(21); // S^WS | '$' | '(:'
  27689. shift(31); // '$'
  27690. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27691. whitespace();
  27692. parse_VarName();
  27693. lookahead1W(172); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  27694. if (l1 == 80) // 'as'
  27695. {
  27696. whitespace();
  27697. parse_TypeDeclaration();
  27698. }
  27699. lookahead1W(155); // S^WS | '(:' | ',' | ':=' | ';'
  27700. if (l1 == 53) // ':='
  27701. {
  27702. shift(53); // ':='
  27703. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27704. whitespace();
  27705. parse_ExprSingle();
  27706. }
  27707. for (;;)
  27708. {
  27709. if (l1 != 42) // ','
  27710. {
  27711. break;
  27712. }
  27713. shift(42); // ','
  27714. lookahead1W(21); // S^WS | '$' | '(:'
  27715. shift(31); // '$'
  27716. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27717. whitespace();
  27718. parse_VarName();
  27719. lookahead1W(172); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  27720. if (l1 == 80) // 'as'
  27721. {
  27722. whitespace();
  27723. parse_TypeDeclaration();
  27724. }
  27725. lookahead1W(155); // S^WS | '(:' | ',' | ':=' | ';'
  27726. if (l1 == 53) // ':='
  27727. {
  27728. shift(53); // ':='
  27729. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27730. whitespace();
  27731. parse_ExprSingle();
  27732. }
  27733. }
  27734. shift(54); // ';'
  27735. eventHandler.endNonterminal("VarDeclStatement", e0);
  27736. }
  27737. function try_VarDeclStatement()
  27738. {
  27739. for (;;)
  27740. {
  27741. lookahead1W(102); // S^WS | '%' | '(:' | 'variable'
  27742. if (l1 != 33) // '%'
  27743. {
  27744. break;
  27745. }
  27746. try_Annotation();
  27747. }
  27748. shiftT(268); // 'variable'
  27749. lookahead1W(21); // S^WS | '$' | '(:'
  27750. shiftT(31); // '$'
  27751. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27752. try_VarName();
  27753. lookahead1W(172); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  27754. if (l1 == 80) // 'as'
  27755. {
  27756. try_TypeDeclaration();
  27757. }
  27758. lookahead1W(155); // S^WS | '(:' | ',' | ':=' | ';'
  27759. if (l1 == 53) // ':='
  27760. {
  27761. shiftT(53); // ':='
  27762. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27763. try_ExprSingle();
  27764. }
  27765. for (;;)
  27766. {
  27767. if (l1 != 42) // ','
  27768. {
  27769. break;
  27770. }
  27771. shiftT(42); // ','
  27772. lookahead1W(21); // S^WS | '$' | '(:'
  27773. shiftT(31); // '$'
  27774. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27775. try_VarName();
  27776. lookahead1W(172); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  27777. if (l1 == 80) // 'as'
  27778. {
  27779. try_TypeDeclaration();
  27780. }
  27781. lookahead1W(155); // S^WS | '(:' | ',' | ':=' | ';'
  27782. if (l1 == 53) // ':='
  27783. {
  27784. shiftT(53); // ':='
  27785. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27786. try_ExprSingle();
  27787. }
  27788. }
  27789. shiftT(54); // ';'
  27790. }
  27791. function parse_WhileStatement()
  27792. {
  27793. eventHandler.startNonterminal("WhileStatement", e0);
  27794. shift(273); // 'while'
  27795. lookahead1W(22); // S^WS | '(' | '(:'
  27796. shift(35); // '('
  27797. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27798. whitespace();
  27799. parse_Expr();
  27800. shift(38); // ')'
  27801. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27802. whitespace();
  27803. parse_Statement();
  27804. eventHandler.endNonterminal("WhileStatement", e0);
  27805. }
  27806. function try_WhileStatement()
  27807. {
  27808. shiftT(273); // 'while'
  27809. lookahead1W(22); // S^WS | '(' | '(:'
  27810. shiftT(35); // '('
  27811. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27812. try_Expr();
  27813. shiftT(38); // ')'
  27814. lookahead1W(270); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27815. try_Statement();
  27816. }
  27817. function parse_VoidStatement()
  27818. {
  27819. eventHandler.startNonterminal("VoidStatement", e0);
  27820. shift(54); // ';'
  27821. eventHandler.endNonterminal("VoidStatement", e0);
  27822. }
  27823. function try_VoidStatement()
  27824. {
  27825. shiftT(54); // ';'
  27826. }
  27827. function parse_ExprSingle()
  27828. {
  27829. eventHandler.startNonterminal("ExprSingle", e0);
  27830. switch (l1)
  27831. {
  27832. case 139: // 'for'
  27833. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  27834. break;
  27835. case 177: // 'let'
  27836. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  27837. break;
  27838. case 256: // 'try'
  27839. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  27840. break;
  27841. case 154: // 'if'
  27842. case 248: // 'switch'
  27843. case 259: // 'typeswitch'
  27844. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  27845. break;
  27846. default:
  27847. lk = l1;
  27848. }
  27849. switch (lk)
  27850. {
  27851. case 16011: // 'for' '$'
  27852. case 16049: // 'let' '$'
  27853. case 118961: // 'let' 'score'
  27854. case 122507: // 'for' 'sliding'
  27855. case 131723: // 'for' 'tumbling'
  27856. parse_FLWORExpr();
  27857. break;
  27858. case 18074: // 'if' '('
  27859. parse_IfExpr();
  27860. break;
  27861. case 18168: // 'switch' '('
  27862. parse_SwitchExpr();
  27863. break;
  27864. case 144128: // 'try' '{'
  27865. parse_TryCatchExpr();
  27866. break;
  27867. case 18179: // 'typeswitch' '('
  27868. parse_TypeswitchExpr();
  27869. break;
  27870. default:
  27871. parse_ExprSimple();
  27872. }
  27873. eventHandler.endNonterminal("ExprSingle", e0);
  27874. }
  27875. function try_ExprSingle()
  27876. {
  27877. switch (l1)
  27878. {
  27879. case 139: // 'for'
  27880. lookahead2W(179); // S^WS | '#' | '$' | '(' | '(:' | 'sliding' | 'tumbling'
  27881. break;
  27882. case 177: // 'let'
  27883. lookahead2W(166); // S^WS | '#' | '$' | '(' | '(:' | 'score'
  27884. break;
  27885. case 256: // 'try'
  27886. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  27887. break;
  27888. case 154: // 'if'
  27889. case 248: // 'switch'
  27890. case 259: // 'typeswitch'
  27891. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  27892. break;
  27893. default:
  27894. lk = l1;
  27895. }
  27896. switch (lk)
  27897. {
  27898. case 16011: // 'for' '$'
  27899. case 16049: // 'let' '$'
  27900. case 118961: // 'let' 'score'
  27901. case 122507: // 'for' 'sliding'
  27902. case 131723: // 'for' 'tumbling'
  27903. try_FLWORExpr();
  27904. break;
  27905. case 18074: // 'if' '('
  27906. try_IfExpr();
  27907. break;
  27908. case 18168: // 'switch' '('
  27909. try_SwitchExpr();
  27910. break;
  27911. case 144128: // 'try' '{'
  27912. try_TryCatchExpr();
  27913. break;
  27914. case 18179: // 'typeswitch' '('
  27915. try_TypeswitchExpr();
  27916. break;
  27917. default:
  27918. try_ExprSimple();
  27919. }
  27920. }
  27921. function parse_ExprSimple()
  27922. {
  27923. eventHandler.startNonterminal("ExprSimple", e0);
  27924. switch (l1)
  27925. {
  27926. case 78: // 'append'
  27927. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27928. break;
  27929. case 161: // 'insert'
  27930. lookahead2W(275); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27931. break;
  27932. case 223: // 'replace'
  27933. lookahead2W(170); // S^WS | '#' | '(' | '(:' | 'node' | 'value'
  27934. break;
  27935. case 111: // 'delete'
  27936. case 222: // 'rename'
  27937. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  27938. break;
  27939. case 104: // 'copy'
  27940. case 130: // 'every'
  27941. case 240: // 'some'
  27942. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  27943. break;
  27944. default:
  27945. lk = l1;
  27946. }
  27947. if (lk == 17998 // 'append' '('
  27948. || lk == 18031 // 'delete' '('
  27949. || lk == 18081 // 'insert' '('
  27950. || lk == 18142 // 'rename' '('
  27951. || lk == 99439 // 'delete' 'node'
  27952. || lk == 99489 // 'insert' 'node'
  27953. || lk == 99550 // 'rename' 'node'
  27954. || lk == 99951 // 'delete' 'nodes'
  27955. || lk == 100001 // 'insert' 'nodes'
  27956. || lk == 136927) // 'replace' 'value'
  27957. {
  27958. lk = memoized(10, e0);
  27959. if (lk == 0)
  27960. {
  27961. var b0A = b0; var e0A = e0; var l1A = l1;
  27962. var b1A = b1; var e1A = e1; var l2A = l2;
  27963. var b2A = b2; var e2A = e2;
  27964. try
  27965. {
  27966. try_OrExpr();
  27967. lk = -2;
  27968. }
  27969. catch (p2A)
  27970. {
  27971. try
  27972. {
  27973. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27974. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27975. b2 = b2A; e2 = e2A; end = e2A; }}
  27976. try_InsertExpr();
  27977. lk = -3;
  27978. }
  27979. catch (p3A)
  27980. {
  27981. try
  27982. {
  27983. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27984. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27985. b2 = b2A; e2 = e2A; end = e2A; }}
  27986. try_DeleteExpr();
  27987. lk = -4;
  27988. }
  27989. catch (p4A)
  27990. {
  27991. try
  27992. {
  27993. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27994. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27995. b2 = b2A; e2 = e2A; end = e2A; }}
  27996. try_RenameExpr();
  27997. lk = -5;
  27998. }
  27999. catch (p5A)
  28000. {
  28001. try
  28002. {
  28003. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28004. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28005. b2 = b2A; e2 = e2A; end = e2A; }}
  28006. try_ReplaceExpr();
  28007. lk = -6;
  28008. }
  28009. catch (p6A)
  28010. {
  28011. try
  28012. {
  28013. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28014. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28015. b2 = b2A; e2 = e2A; end = e2A; }}
  28016. try_JSONDeleteExpr();
  28017. lk = -8;
  28018. }
  28019. catch (p8A)
  28020. {
  28021. try
  28022. {
  28023. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28024. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28025. b2 = b2A; e2 = e2A; end = e2A; }}
  28026. try_JSONInsertExpr();
  28027. lk = -9;
  28028. }
  28029. catch (p9A)
  28030. {
  28031. try
  28032. {
  28033. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28034. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28035. b2 = b2A; e2 = e2A; end = e2A; }}
  28036. try_JSONRenameExpr();
  28037. lk = -10;
  28038. }
  28039. catch (p10A)
  28040. {
  28041. try
  28042. {
  28043. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28044. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28045. b2 = b2A; e2 = e2A; end = e2A; }}
  28046. try_JSONReplaceExpr();
  28047. lk = -11;
  28048. }
  28049. catch (p11A)
  28050. {
  28051. lk = -12;
  28052. }
  28053. }
  28054. }
  28055. }
  28056. }
  28057. }
  28058. }
  28059. }
  28060. }
  28061. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28062. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28063. b2 = b2A; e2 = e2A; end = e2A; }}
  28064. memoize(10, e0, lk);
  28065. }
  28066. }
  28067. switch (lk)
  28068. {
  28069. case 16002: // 'every' '$'
  28070. case 16112: // 'some' '$'
  28071. parse_QuantifiedExpr();
  28072. break;
  28073. case -3:
  28074. parse_InsertExpr();
  28075. break;
  28076. case -4:
  28077. parse_DeleteExpr();
  28078. break;
  28079. case -5:
  28080. parse_RenameExpr();
  28081. break;
  28082. case -6:
  28083. case 99551: // 'replace' 'node'
  28084. parse_ReplaceExpr();
  28085. break;
  28086. case 15976: // 'copy' '$'
  28087. parse_TransformExpr();
  28088. break;
  28089. case -8:
  28090. case 3183: // 'delete' EQName^Token
  28091. case 4207: // 'delete' IntegerLiteral
  28092. case 4719: // 'delete' DecimalLiteral
  28093. case 5231: // 'delete' DoubleLiteral
  28094. case 5743: // 'delete' StringLiteral
  28095. case 15983: // 'delete' '$'
  28096. case 16495: // 'delete' '$$'
  28097. case 17007: // 'delete' '%'
  28098. case 28271: // 'delete' '<'
  28099. case 28783: // 'delete' '<!--'
  28100. case 30831: // 'delete' '<?'
  28101. case 35439: // 'delete' '['
  28102. case 36463: // 'delete' 'after'
  28103. case 37487: // 'delete' 'allowing'
  28104. case 37999: // 'delete' 'ancestor'
  28105. case 38511: // 'delete' 'ancestor-or-self'
  28106. case 39023: // 'delete' 'and'
  28107. case 40047: // 'delete' 'append'
  28108. case 40559: // 'delete' 'array'
  28109. case 41071: // 'delete' 'as'
  28110. case 41583: // 'delete' 'ascending'
  28111. case 42095: // 'delete' 'at'
  28112. case 42607: // 'delete' 'attribute'
  28113. case 43119: // 'delete' 'base-uri'
  28114. case 43631: // 'delete' 'before'
  28115. case 44143: // 'delete' 'boundary-space'
  28116. case 44655: // 'delete' 'break'
  28117. case 45679: // 'delete' 'case'
  28118. case 46191: // 'delete' 'cast'
  28119. case 46703: // 'delete' 'castable'
  28120. case 47215: // 'delete' 'catch'
  28121. case 48239: // 'delete' 'child'
  28122. case 48751: // 'delete' 'collation'
  28123. case 49775: // 'delete' 'comment'
  28124. case 50287: // 'delete' 'constraint'
  28125. case 50799: // 'delete' 'construction'
  28126. case 52335: // 'delete' 'context'
  28127. case 52847: // 'delete' 'continue'
  28128. case 53359: // 'delete' 'copy'
  28129. case 53871: // 'delete' 'copy-namespaces'
  28130. case 54383: // 'delete' 'count'
  28131. case 54895: // 'delete' 'decimal-format'
  28132. case 55919: // 'delete' 'declare'
  28133. case 56431: // 'delete' 'default'
  28134. case 56943: // 'delete' 'delete'
  28135. case 57455: // 'delete' 'descendant'
  28136. case 57967: // 'delete' 'descendant-or-self'
  28137. case 58479: // 'delete' 'descending'
  28138. case 61039: // 'delete' 'div'
  28139. case 61551: // 'delete' 'document'
  28140. case 62063: // 'delete' 'document-node'
  28141. case 62575: // 'delete' 'element'
  28142. case 63087: // 'delete' 'else'
  28143. case 63599: // 'delete' 'empty'
  28144. case 64111: // 'delete' 'empty-sequence'
  28145. case 64623: // 'delete' 'encoding'
  28146. case 65135: // 'delete' 'end'
  28147. case 66159: // 'delete' 'eq'
  28148. case 66671: // 'delete' 'every'
  28149. case 67695: // 'delete' 'except'
  28150. case 68207: // 'delete' 'exit'
  28151. case 68719: // 'delete' 'external'
  28152. case 69231: // 'delete' 'false'
  28153. case 69743: // 'delete' 'first'
  28154. case 70255: // 'delete' 'following'
  28155. case 70767: // 'delete' 'following-sibling'
  28156. case 71279: // 'delete' 'for'
  28157. case 72815: // 'delete' 'from'
  28158. case 73327: // 'delete' 'ft-option'
  28159. case 75375: // 'delete' 'function'
  28160. case 75887: // 'delete' 'ge'
  28161. case 76911: // 'delete' 'group'
  28162. case 77935: // 'delete' 'gt'
  28163. case 78447: // 'delete' 'idiv'
  28164. case 78959: // 'delete' 'if'
  28165. case 79471: // 'delete' 'import'
  28166. case 79983: // 'delete' 'in'
  28167. case 80495: // 'delete' 'index'
  28168. case 82543: // 'delete' 'insert'
  28169. case 83055: // 'delete' 'instance'
  28170. case 83567: // 'delete' 'integrity'
  28171. case 84079: // 'delete' 'intersect'
  28172. case 84591: // 'delete' 'into'
  28173. case 85103: // 'delete' 'is'
  28174. case 85615: // 'delete' 'item'
  28175. case 86127: // 'delete' 'json'
  28176. case 86639: // 'delete' 'json-item'
  28177. case 87151: // 'delete' 'jsoniq'
  28178. case 88687: // 'delete' 'last'
  28179. case 89199: // 'delete' 'lax'
  28180. case 89711: // 'delete' 'le'
  28181. case 90735: // 'delete' 'let'
  28182. case 91759: // 'delete' 'loop'
  28183. case 92783: // 'delete' 'lt'
  28184. case 93807: // 'delete' 'mod'
  28185. case 94319: // 'delete' 'modify'
  28186. case 94831: // 'delete' 'module'
  28187. case 95855: // 'delete' 'namespace'
  28188. case 96367: // 'delete' 'namespace-node'
  28189. case 96879: // 'delete' 'ne'
  28190. case 100975: // 'delete' 'null'
  28191. case 101487: // 'delete' 'object'
  28192. case 103535: // 'delete' 'only'
  28193. case 104047: // 'delete' 'option'
  28194. case 104559: // 'delete' 'or'
  28195. case 105071: // 'delete' 'order'
  28196. case 105583: // 'delete' 'ordered'
  28197. case 106095: // 'delete' 'ordering'
  28198. case 107631: // 'delete' 'parent'
  28199. case 110703: // 'delete' 'preceding'
  28200. case 111215: // 'delete' 'preceding-sibling'
  28201. case 112751: // 'delete' 'processing-instruction'
  28202. case 113775: // 'delete' 'rename'
  28203. case 114287: // 'delete' 'replace'
  28204. case 114799: // 'delete' 'return'
  28205. case 115311: // 'delete' 'returning'
  28206. case 115823: // 'delete' 'revalidation'
  28207. case 116847: // 'delete' 'satisfies'
  28208. case 117359: // 'delete' 'schema'
  28209. case 117871: // 'delete' 'schema-attribute'
  28210. case 118383: // 'delete' 'schema-element'
  28211. case 118895: // 'delete' 'score'
  28212. case 119407: // 'delete' 'select'
  28213. case 119919: // 'delete' 'self'
  28214. case 122479: // 'delete' 'sliding'
  28215. case 122991: // 'delete' 'some'
  28216. case 123503: // 'delete' 'stable'
  28217. case 124015: // 'delete' 'start'
  28218. case 125551: // 'delete' 'strict'
  28219. case 126575: // 'delete' 'structured-item'
  28220. case 127087: // 'delete' 'switch'
  28221. case 127599: // 'delete' 'text'
  28222. case 129647: // 'delete' 'to'
  28223. case 130159: // 'delete' 'treat'
  28224. case 130671: // 'delete' 'true'
  28225. case 131183: // 'delete' 'try'
  28226. case 131695: // 'delete' 'tumbling'
  28227. case 132207: // 'delete' 'type'
  28228. case 132719: // 'delete' 'typeswitch'
  28229. case 133231: // 'delete' 'union'
  28230. case 134255: // 'delete' 'unordered'
  28231. case 134767: // 'delete' 'updating'
  28232. case 136303: // 'delete' 'validate'
  28233. case 136815: // 'delete' 'value'
  28234. case 137327: // 'delete' 'variable'
  28235. case 137839: // 'delete' 'version'
  28236. case 139375: // 'delete' 'where'
  28237. case 139887: // 'delete' 'while'
  28238. case 141423: // 'delete' 'with'
  28239. case 143983: // 'delete' '{'
  28240. case 145007: // 'delete' '{|'
  28241. parse_JSONDeleteExpr();
  28242. break;
  28243. case -9:
  28244. case 3233: // 'insert' EQName^Token
  28245. case 4257: // 'insert' IntegerLiteral
  28246. case 4769: // 'insert' DecimalLiteral
  28247. case 5281: // 'insert' DoubleLiteral
  28248. case 5793: // 'insert' StringLiteral
  28249. case 9889: // 'insert' NCName^Token
  28250. case 16033: // 'insert' '$'
  28251. case 16545: // 'insert' '$$'
  28252. case 17057: // 'insert' '%'
  28253. case 18593: // 'insert' '(#'
  28254. case 21153: // 'insert' '+'
  28255. case 22177: // 'insert' '-'
  28256. case 24225: // 'insert' '/'
  28257. case 24737: // 'insert' '//'
  28258. case 28321: // 'insert' '<'
  28259. case 28833: // 'insert' '<!--'
  28260. case 30881: // 'insert' '<?'
  28261. case 35489: // 'insert' '['
  28262. case 36513: // 'insert' 'after'
  28263. case 37537: // 'insert' 'allowing'
  28264. case 38049: // 'insert' 'ancestor'
  28265. case 38561: // 'insert' 'ancestor-or-self'
  28266. case 39073: // 'insert' 'and'
  28267. case 40097: // 'insert' 'append'
  28268. case 40609: // 'insert' 'array'
  28269. case 41121: // 'insert' 'as'
  28270. case 41633: // 'insert' 'ascending'
  28271. case 42145: // 'insert' 'at'
  28272. case 42657: // 'insert' 'attribute'
  28273. case 43169: // 'insert' 'base-uri'
  28274. case 43681: // 'insert' 'before'
  28275. case 44193: // 'insert' 'boundary-space'
  28276. case 44705: // 'insert' 'break'
  28277. case 45729: // 'insert' 'case'
  28278. case 46241: // 'insert' 'cast'
  28279. case 46753: // 'insert' 'castable'
  28280. case 47265: // 'insert' 'catch'
  28281. case 48289: // 'insert' 'child'
  28282. case 48801: // 'insert' 'collation'
  28283. case 49825: // 'insert' 'comment'
  28284. case 50337: // 'insert' 'constraint'
  28285. case 50849: // 'insert' 'construction'
  28286. case 52385: // 'insert' 'context'
  28287. case 52897: // 'insert' 'continue'
  28288. case 53409: // 'insert' 'copy'
  28289. case 53921: // 'insert' 'copy-namespaces'
  28290. case 54433: // 'insert' 'count'
  28291. case 54945: // 'insert' 'decimal-format'
  28292. case 55969: // 'insert' 'declare'
  28293. case 56481: // 'insert' 'default'
  28294. case 56993: // 'insert' 'delete'
  28295. case 57505: // 'insert' 'descendant'
  28296. case 58017: // 'insert' 'descendant-or-self'
  28297. case 58529: // 'insert' 'descending'
  28298. case 61089: // 'insert' 'div'
  28299. case 61601: // 'insert' 'document'
  28300. case 62113: // 'insert' 'document-node'
  28301. case 62625: // 'insert' 'element'
  28302. case 63137: // 'insert' 'else'
  28303. case 63649: // 'insert' 'empty'
  28304. case 64161: // 'insert' 'empty-sequence'
  28305. case 64673: // 'insert' 'encoding'
  28306. case 65185: // 'insert' 'end'
  28307. case 66209: // 'insert' 'eq'
  28308. case 66721: // 'insert' 'every'
  28309. case 67745: // 'insert' 'except'
  28310. case 68257: // 'insert' 'exit'
  28311. case 68769: // 'insert' 'external'
  28312. case 69281: // 'insert' 'false'
  28313. case 69793: // 'insert' 'first'
  28314. case 70305: // 'insert' 'following'
  28315. case 70817: // 'insert' 'following-sibling'
  28316. case 71329: // 'insert' 'for'
  28317. case 72865: // 'insert' 'from'
  28318. case 73377: // 'insert' 'ft-option'
  28319. case 75425: // 'insert' 'function'
  28320. case 75937: // 'insert' 'ge'
  28321. case 76961: // 'insert' 'group'
  28322. case 77985: // 'insert' 'gt'
  28323. case 78497: // 'insert' 'idiv'
  28324. case 79009: // 'insert' 'if'
  28325. case 79521: // 'insert' 'import'
  28326. case 80033: // 'insert' 'in'
  28327. case 80545: // 'insert' 'index'
  28328. case 82593: // 'insert' 'insert'
  28329. case 83105: // 'insert' 'instance'
  28330. case 83617: // 'insert' 'integrity'
  28331. case 84129: // 'insert' 'intersect'
  28332. case 84641: // 'insert' 'into'
  28333. case 85153: // 'insert' 'is'
  28334. case 85665: // 'insert' 'item'
  28335. case 86177: // 'insert' 'json'
  28336. case 86689: // 'insert' 'json-item'
  28337. case 87201: // 'insert' 'jsoniq'
  28338. case 88737: // 'insert' 'last'
  28339. case 89249: // 'insert' 'lax'
  28340. case 89761: // 'insert' 'le'
  28341. case 90785: // 'insert' 'let'
  28342. case 91809: // 'insert' 'loop'
  28343. case 92833: // 'insert' 'lt'
  28344. case 93857: // 'insert' 'mod'
  28345. case 94369: // 'insert' 'modify'
  28346. case 94881: // 'insert' 'module'
  28347. case 95905: // 'insert' 'namespace'
  28348. case 96417: // 'insert' 'namespace-node'
  28349. case 96929: // 'insert' 'ne'
  28350. case 100513: // 'insert' 'not'
  28351. case 101025: // 'insert' 'null'
  28352. case 101537: // 'insert' 'object'
  28353. case 103585: // 'insert' 'only'
  28354. case 104097: // 'insert' 'option'
  28355. case 104609: // 'insert' 'or'
  28356. case 105121: // 'insert' 'order'
  28357. case 105633: // 'insert' 'ordered'
  28358. case 106145: // 'insert' 'ordering'
  28359. case 107681: // 'insert' 'parent'
  28360. case 110753: // 'insert' 'preceding'
  28361. case 111265: // 'insert' 'preceding-sibling'
  28362. case 112801: // 'insert' 'processing-instruction'
  28363. case 113825: // 'insert' 'rename'
  28364. case 114337: // 'insert' 'replace'
  28365. case 114849: // 'insert' 'return'
  28366. case 115361: // 'insert' 'returning'
  28367. case 115873: // 'insert' 'revalidation'
  28368. case 116897: // 'insert' 'satisfies'
  28369. case 117409: // 'insert' 'schema'
  28370. case 117921: // 'insert' 'schema-attribute'
  28371. case 118433: // 'insert' 'schema-element'
  28372. case 118945: // 'insert' 'score'
  28373. case 119457: // 'insert' 'select'
  28374. case 119969: // 'insert' 'self'
  28375. case 122529: // 'insert' 'sliding'
  28376. case 123041: // 'insert' 'some'
  28377. case 123553: // 'insert' 'stable'
  28378. case 124065: // 'insert' 'start'
  28379. case 125601: // 'insert' 'strict'
  28380. case 126625: // 'insert' 'structured-item'
  28381. case 127137: // 'insert' 'switch'
  28382. case 127649: // 'insert' 'text'
  28383. case 129697: // 'insert' 'to'
  28384. case 130209: // 'insert' 'treat'
  28385. case 130721: // 'insert' 'true'
  28386. case 131233: // 'insert' 'try'
  28387. case 131745: // 'insert' 'tumbling'
  28388. case 132257: // 'insert' 'type'
  28389. case 132769: // 'insert' 'typeswitch'
  28390. case 133281: // 'insert' 'union'
  28391. case 134305: // 'insert' 'unordered'
  28392. case 134817: // 'insert' 'updating'
  28393. case 136353: // 'insert' 'validate'
  28394. case 136865: // 'insert' 'value'
  28395. case 137377: // 'insert' 'variable'
  28396. case 137889: // 'insert' 'version'
  28397. case 139425: // 'insert' 'where'
  28398. case 139937: // 'insert' 'while'
  28399. case 141473: // 'insert' 'with'
  28400. case 144033: // 'insert' '{'
  28401. case 145057: // 'insert' '{|'
  28402. parse_JSONInsertExpr();
  28403. break;
  28404. case -10:
  28405. case 3294: // 'rename' EQName^Token
  28406. case 4318: // 'rename' IntegerLiteral
  28407. case 4830: // 'rename' DecimalLiteral
  28408. case 5342: // 'rename' DoubleLiteral
  28409. case 5854: // 'rename' StringLiteral
  28410. case 16094: // 'rename' '$'
  28411. case 16606: // 'rename' '$$'
  28412. case 17118: // 'rename' '%'
  28413. case 28382: // 'rename' '<'
  28414. case 28894: // 'rename' '<!--'
  28415. case 30942: // 'rename' '<?'
  28416. case 35550: // 'rename' '['
  28417. case 36574: // 'rename' 'after'
  28418. case 37598: // 'rename' 'allowing'
  28419. case 38110: // 'rename' 'ancestor'
  28420. case 38622: // 'rename' 'ancestor-or-self'
  28421. case 39134: // 'rename' 'and'
  28422. case 40158: // 'rename' 'append'
  28423. case 40670: // 'rename' 'array'
  28424. case 41182: // 'rename' 'as'
  28425. case 41694: // 'rename' 'ascending'
  28426. case 42206: // 'rename' 'at'
  28427. case 42718: // 'rename' 'attribute'
  28428. case 43230: // 'rename' 'base-uri'
  28429. case 43742: // 'rename' 'before'
  28430. case 44254: // 'rename' 'boundary-space'
  28431. case 44766: // 'rename' 'break'
  28432. case 45790: // 'rename' 'case'
  28433. case 46302: // 'rename' 'cast'
  28434. case 46814: // 'rename' 'castable'
  28435. case 47326: // 'rename' 'catch'
  28436. case 48350: // 'rename' 'child'
  28437. case 48862: // 'rename' 'collation'
  28438. case 49886: // 'rename' 'comment'
  28439. case 50398: // 'rename' 'constraint'
  28440. case 50910: // 'rename' 'construction'
  28441. case 52446: // 'rename' 'context'
  28442. case 52958: // 'rename' 'continue'
  28443. case 53470: // 'rename' 'copy'
  28444. case 53982: // 'rename' 'copy-namespaces'
  28445. case 54494: // 'rename' 'count'
  28446. case 55006: // 'rename' 'decimal-format'
  28447. case 56030: // 'rename' 'declare'
  28448. case 56542: // 'rename' 'default'
  28449. case 57054: // 'rename' 'delete'
  28450. case 57566: // 'rename' 'descendant'
  28451. case 58078: // 'rename' 'descendant-or-self'
  28452. case 58590: // 'rename' 'descending'
  28453. case 61150: // 'rename' 'div'
  28454. case 61662: // 'rename' 'document'
  28455. case 62174: // 'rename' 'document-node'
  28456. case 62686: // 'rename' 'element'
  28457. case 63198: // 'rename' 'else'
  28458. case 63710: // 'rename' 'empty'
  28459. case 64222: // 'rename' 'empty-sequence'
  28460. case 64734: // 'rename' 'encoding'
  28461. case 65246: // 'rename' 'end'
  28462. case 66270: // 'rename' 'eq'
  28463. case 66782: // 'rename' 'every'
  28464. case 67806: // 'rename' 'except'
  28465. case 68318: // 'rename' 'exit'
  28466. case 68830: // 'rename' 'external'
  28467. case 69342: // 'rename' 'false'
  28468. case 69854: // 'rename' 'first'
  28469. case 70366: // 'rename' 'following'
  28470. case 70878: // 'rename' 'following-sibling'
  28471. case 71390: // 'rename' 'for'
  28472. case 72926: // 'rename' 'from'
  28473. case 73438: // 'rename' 'ft-option'
  28474. case 75486: // 'rename' 'function'
  28475. case 75998: // 'rename' 'ge'
  28476. case 77022: // 'rename' 'group'
  28477. case 78046: // 'rename' 'gt'
  28478. case 78558: // 'rename' 'idiv'
  28479. case 79070: // 'rename' 'if'
  28480. case 79582: // 'rename' 'import'
  28481. case 80094: // 'rename' 'in'
  28482. case 80606: // 'rename' 'index'
  28483. case 82654: // 'rename' 'insert'
  28484. case 83166: // 'rename' 'instance'
  28485. case 83678: // 'rename' 'integrity'
  28486. case 84190: // 'rename' 'intersect'
  28487. case 84702: // 'rename' 'into'
  28488. case 85214: // 'rename' 'is'
  28489. case 85726: // 'rename' 'item'
  28490. case 86238: // 'rename' 'json'
  28491. case 86750: // 'rename' 'json-item'
  28492. case 87262: // 'rename' 'jsoniq'
  28493. case 88798: // 'rename' 'last'
  28494. case 89310: // 'rename' 'lax'
  28495. case 89822: // 'rename' 'le'
  28496. case 90846: // 'rename' 'let'
  28497. case 91870: // 'rename' 'loop'
  28498. case 92894: // 'rename' 'lt'
  28499. case 93918: // 'rename' 'mod'
  28500. case 94430: // 'rename' 'modify'
  28501. case 94942: // 'rename' 'module'
  28502. case 95966: // 'rename' 'namespace'
  28503. case 96478: // 'rename' 'namespace-node'
  28504. case 96990: // 'rename' 'ne'
  28505. case 100062: // 'rename' 'nodes'
  28506. case 101086: // 'rename' 'null'
  28507. case 101598: // 'rename' 'object'
  28508. case 103646: // 'rename' 'only'
  28509. case 104158: // 'rename' 'option'
  28510. case 104670: // 'rename' 'or'
  28511. case 105182: // 'rename' 'order'
  28512. case 105694: // 'rename' 'ordered'
  28513. case 106206: // 'rename' 'ordering'
  28514. case 107742: // 'rename' 'parent'
  28515. case 110814: // 'rename' 'preceding'
  28516. case 111326: // 'rename' 'preceding-sibling'
  28517. case 112862: // 'rename' 'processing-instruction'
  28518. case 113886: // 'rename' 'rename'
  28519. case 114398: // 'rename' 'replace'
  28520. case 114910: // 'rename' 'return'
  28521. case 115422: // 'rename' 'returning'
  28522. case 115934: // 'rename' 'revalidation'
  28523. case 116958: // 'rename' 'satisfies'
  28524. case 117470: // 'rename' 'schema'
  28525. case 117982: // 'rename' 'schema-attribute'
  28526. case 118494: // 'rename' 'schema-element'
  28527. case 119006: // 'rename' 'score'
  28528. case 119518: // 'rename' 'select'
  28529. case 120030: // 'rename' 'self'
  28530. case 122590: // 'rename' 'sliding'
  28531. case 123102: // 'rename' 'some'
  28532. case 123614: // 'rename' 'stable'
  28533. case 124126: // 'rename' 'start'
  28534. case 125662: // 'rename' 'strict'
  28535. case 126686: // 'rename' 'structured-item'
  28536. case 127198: // 'rename' 'switch'
  28537. case 127710: // 'rename' 'text'
  28538. case 129758: // 'rename' 'to'
  28539. case 130270: // 'rename' 'treat'
  28540. case 130782: // 'rename' 'true'
  28541. case 131294: // 'rename' 'try'
  28542. case 131806: // 'rename' 'tumbling'
  28543. case 132318: // 'rename' 'type'
  28544. case 132830: // 'rename' 'typeswitch'
  28545. case 133342: // 'rename' 'union'
  28546. case 134366: // 'rename' 'unordered'
  28547. case 134878: // 'rename' 'updating'
  28548. case 136414: // 'rename' 'validate'
  28549. case 136926: // 'rename' 'value'
  28550. case 137438: // 'rename' 'variable'
  28551. case 137950: // 'rename' 'version'
  28552. case 139486: // 'rename' 'where'
  28553. case 139998: // 'rename' 'while'
  28554. case 141534: // 'rename' 'with'
  28555. case 144094: // 'rename' '{'
  28556. case 145118: // 'rename' '{|'
  28557. parse_JSONRenameExpr();
  28558. break;
  28559. case -11:
  28560. parse_JSONReplaceExpr();
  28561. break;
  28562. case -12:
  28563. case 3150: // 'append' EQName^Token
  28564. case 4174: // 'append' IntegerLiteral
  28565. case 4686: // 'append' DecimalLiteral
  28566. case 5198: // 'append' DoubleLiteral
  28567. case 5710: // 'append' StringLiteral
  28568. case 15950: // 'append' '$'
  28569. case 16462: // 'append' '$$'
  28570. case 16974: // 'append' '%'
  28571. case 18510: // 'append' '(#'
  28572. case 21070: // 'append' '+'
  28573. case 22094: // 'append' '-'
  28574. case 24142: // 'append' '/'
  28575. case 24654: // 'append' '//'
  28576. case 28238: // 'append' '<'
  28577. case 28750: // 'append' '<!--'
  28578. case 30798: // 'append' '<?'
  28579. case 35406: // 'append' '['
  28580. case 36430: // 'append' 'after'
  28581. case 37454: // 'append' 'allowing'
  28582. case 37966: // 'append' 'ancestor'
  28583. case 38478: // 'append' 'ancestor-or-self'
  28584. case 38990: // 'append' 'and'
  28585. case 40014: // 'append' 'append'
  28586. case 40526: // 'append' 'array'
  28587. case 41038: // 'append' 'as'
  28588. case 41550: // 'append' 'ascending'
  28589. case 42062: // 'append' 'at'
  28590. case 42574: // 'append' 'attribute'
  28591. case 43086: // 'append' 'base-uri'
  28592. case 43598: // 'append' 'before'
  28593. case 44110: // 'append' 'boundary-space'
  28594. case 44622: // 'append' 'break'
  28595. case 45646: // 'append' 'case'
  28596. case 46158: // 'append' 'cast'
  28597. case 46670: // 'append' 'castable'
  28598. case 47182: // 'append' 'catch'
  28599. case 48206: // 'append' 'child'
  28600. case 48718: // 'append' 'collation'
  28601. case 49742: // 'append' 'comment'
  28602. case 50254: // 'append' 'constraint'
  28603. case 50766: // 'append' 'construction'
  28604. case 52302: // 'append' 'context'
  28605. case 52814: // 'append' 'continue'
  28606. case 53326: // 'append' 'copy'
  28607. case 53838: // 'append' 'copy-namespaces'
  28608. case 54350: // 'append' 'count'
  28609. case 54862: // 'append' 'decimal-format'
  28610. case 55886: // 'append' 'declare'
  28611. case 56398: // 'append' 'default'
  28612. case 56910: // 'append' 'delete'
  28613. case 57422: // 'append' 'descendant'
  28614. case 57934: // 'append' 'descendant-or-self'
  28615. case 58446: // 'append' 'descending'
  28616. case 61006: // 'append' 'div'
  28617. case 61518: // 'append' 'document'
  28618. case 62030: // 'append' 'document-node'
  28619. case 62542: // 'append' 'element'
  28620. case 63054: // 'append' 'else'
  28621. case 63566: // 'append' 'empty'
  28622. case 64078: // 'append' 'empty-sequence'
  28623. case 64590: // 'append' 'encoding'
  28624. case 65102: // 'append' 'end'
  28625. case 66126: // 'append' 'eq'
  28626. case 66638: // 'append' 'every'
  28627. case 67662: // 'append' 'except'
  28628. case 68174: // 'append' 'exit'
  28629. case 68686: // 'append' 'external'
  28630. case 69198: // 'append' 'false'
  28631. case 69710: // 'append' 'first'
  28632. case 70222: // 'append' 'following'
  28633. case 70734: // 'append' 'following-sibling'
  28634. case 71246: // 'append' 'for'
  28635. case 72782: // 'append' 'from'
  28636. case 73294: // 'append' 'ft-option'
  28637. case 75342: // 'append' 'function'
  28638. case 75854: // 'append' 'ge'
  28639. case 76878: // 'append' 'group'
  28640. case 77902: // 'append' 'gt'
  28641. case 78414: // 'append' 'idiv'
  28642. case 78926: // 'append' 'if'
  28643. case 79438: // 'append' 'import'
  28644. case 79950: // 'append' 'in'
  28645. case 80462: // 'append' 'index'
  28646. case 82510: // 'append' 'insert'
  28647. case 83022: // 'append' 'instance'
  28648. case 83534: // 'append' 'integrity'
  28649. case 84046: // 'append' 'intersect'
  28650. case 84558: // 'append' 'into'
  28651. case 85070: // 'append' 'is'
  28652. case 85582: // 'append' 'item'
  28653. case 86094: // 'append' 'json'
  28654. case 86606: // 'append' 'json-item'
  28655. case 87118: // 'append' 'jsoniq'
  28656. case 88654: // 'append' 'last'
  28657. case 89166: // 'append' 'lax'
  28658. case 89678: // 'append' 'le'
  28659. case 90702: // 'append' 'let'
  28660. case 91726: // 'append' 'loop'
  28661. case 92750: // 'append' 'lt'
  28662. case 93774: // 'append' 'mod'
  28663. case 94286: // 'append' 'modify'
  28664. case 94798: // 'append' 'module'
  28665. case 95822: // 'append' 'namespace'
  28666. case 96334: // 'append' 'namespace-node'
  28667. case 96846: // 'append' 'ne'
  28668. case 99406: // 'append' 'node'
  28669. case 99918: // 'append' 'nodes'
  28670. case 100430: // 'append' 'not'
  28671. case 100942: // 'append' 'null'
  28672. case 101454: // 'append' 'object'
  28673. case 103502: // 'append' 'only'
  28674. case 104014: // 'append' 'option'
  28675. case 104526: // 'append' 'or'
  28676. case 105038: // 'append' 'order'
  28677. case 105550: // 'append' 'ordered'
  28678. case 106062: // 'append' 'ordering'
  28679. case 107598: // 'append' 'parent'
  28680. case 110670: // 'append' 'preceding'
  28681. case 111182: // 'append' 'preceding-sibling'
  28682. case 112718: // 'append' 'processing-instruction'
  28683. case 113742: // 'append' 'rename'
  28684. case 114254: // 'append' 'replace'
  28685. case 114766: // 'append' 'return'
  28686. case 115278: // 'append' 'returning'
  28687. case 115790: // 'append' 'revalidation'
  28688. case 116814: // 'append' 'satisfies'
  28689. case 117326: // 'append' 'schema'
  28690. case 117838: // 'append' 'schema-attribute'
  28691. case 118350: // 'append' 'schema-element'
  28692. case 118862: // 'append' 'score'
  28693. case 119374: // 'append' 'select'
  28694. case 119886: // 'append' 'self'
  28695. case 122446: // 'append' 'sliding'
  28696. case 122958: // 'append' 'some'
  28697. case 123470: // 'append' 'stable'
  28698. case 123982: // 'append' 'start'
  28699. case 125518: // 'append' 'strict'
  28700. case 126542: // 'append' 'structured-item'
  28701. case 127054: // 'append' 'switch'
  28702. case 127566: // 'append' 'text'
  28703. case 129614: // 'append' 'to'
  28704. case 130126: // 'append' 'treat'
  28705. case 130638: // 'append' 'true'
  28706. case 131150: // 'append' 'try'
  28707. case 131662: // 'append' 'tumbling'
  28708. case 132174: // 'append' 'type'
  28709. case 132686: // 'append' 'typeswitch'
  28710. case 133198: // 'append' 'union'
  28711. case 134222: // 'append' 'unordered'
  28712. case 134734: // 'append' 'updating'
  28713. case 136270: // 'append' 'validate'
  28714. case 136782: // 'append' 'value'
  28715. case 137294: // 'append' 'variable'
  28716. case 137806: // 'append' 'version'
  28717. case 139342: // 'append' 'where'
  28718. case 139854: // 'append' 'while'
  28719. case 141390: // 'append' 'with'
  28720. case 143950: // 'append' '{'
  28721. case 144974: // 'append' '{|'
  28722. parse_JSONAppendExpr();
  28723. break;
  28724. default:
  28725. parse_OrExpr();
  28726. }
  28727. eventHandler.endNonterminal("ExprSimple", e0);
  28728. }
  28729. function try_ExprSimple()
  28730. {
  28731. switch (l1)
  28732. {
  28733. case 78: // 'append'
  28734. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  28735. break;
  28736. case 161: // 'insert'
  28737. lookahead2W(275); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  28738. break;
  28739. case 223: // 'replace'
  28740. lookahead2W(170); // S^WS | '#' | '(' | '(:' | 'node' | 'value'
  28741. break;
  28742. case 111: // 'delete'
  28743. case 222: // 'rename'
  28744. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  28745. break;
  28746. case 104: // 'copy'
  28747. case 130: // 'every'
  28748. case 240: // 'some'
  28749. lookahead2W(143); // S^WS | '#' | '$' | '(' | '(:'
  28750. break;
  28751. default:
  28752. lk = l1;
  28753. }
  28754. if (lk == 17998 // 'append' '('
  28755. || lk == 18031 // 'delete' '('
  28756. || lk == 18081 // 'insert' '('
  28757. || lk == 18142 // 'rename' '('
  28758. || lk == 99439 // 'delete' 'node'
  28759. || lk == 99489 // 'insert' 'node'
  28760. || lk == 99550 // 'rename' 'node'
  28761. || lk == 99951 // 'delete' 'nodes'
  28762. || lk == 100001 // 'insert' 'nodes'
  28763. || lk == 136927) // 'replace' 'value'
  28764. {
  28765. lk = memoized(10, e0);
  28766. if (lk == 0)
  28767. {
  28768. var b0A = b0; var e0A = e0; var l1A = l1;
  28769. var b1A = b1; var e1A = e1; var l2A = l2;
  28770. var b2A = b2; var e2A = e2;
  28771. try
  28772. {
  28773. try_OrExpr();
  28774. memoize(10, e0A, -2);
  28775. lk = -13;
  28776. }
  28777. catch (p2A)
  28778. {
  28779. try
  28780. {
  28781. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28782. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28783. b2 = b2A; e2 = e2A; end = e2A; }}
  28784. try_InsertExpr();
  28785. memoize(10, e0A, -3);
  28786. lk = -13;
  28787. }
  28788. catch (p3A)
  28789. {
  28790. try
  28791. {
  28792. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28793. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28794. b2 = b2A; e2 = e2A; end = e2A; }}
  28795. try_DeleteExpr();
  28796. memoize(10, e0A, -4);
  28797. lk = -13;
  28798. }
  28799. catch (p4A)
  28800. {
  28801. try
  28802. {
  28803. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28804. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28805. b2 = b2A; e2 = e2A; end = e2A; }}
  28806. try_RenameExpr();
  28807. memoize(10, e0A, -5);
  28808. lk = -13;
  28809. }
  28810. catch (p5A)
  28811. {
  28812. try
  28813. {
  28814. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28815. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28816. b2 = b2A; e2 = e2A; end = e2A; }}
  28817. try_ReplaceExpr();
  28818. memoize(10, e0A, -6);
  28819. lk = -13;
  28820. }
  28821. catch (p6A)
  28822. {
  28823. try
  28824. {
  28825. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28826. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28827. b2 = b2A; e2 = e2A; end = e2A; }}
  28828. try_JSONDeleteExpr();
  28829. memoize(10, e0A, -8);
  28830. lk = -13;
  28831. }
  28832. catch (p8A)
  28833. {
  28834. try
  28835. {
  28836. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28837. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28838. b2 = b2A; e2 = e2A; end = e2A; }}
  28839. try_JSONInsertExpr();
  28840. memoize(10, e0A, -9);
  28841. lk = -13;
  28842. }
  28843. catch (p9A)
  28844. {
  28845. try
  28846. {
  28847. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28848. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28849. b2 = b2A; e2 = e2A; end = e2A; }}
  28850. try_JSONRenameExpr();
  28851. memoize(10, e0A, -10);
  28852. lk = -13;
  28853. }
  28854. catch (p10A)
  28855. {
  28856. try
  28857. {
  28858. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28859. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28860. b2 = b2A; e2 = e2A; end = e2A; }}
  28861. try_JSONReplaceExpr();
  28862. memoize(10, e0A, -11);
  28863. lk = -13;
  28864. }
  28865. catch (p11A)
  28866. {
  28867. lk = -12;
  28868. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28869. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28870. b2 = b2A; e2 = e2A; end = e2A; }}
  28871. memoize(10, e0A, -12);
  28872. }
  28873. }
  28874. }
  28875. }
  28876. }
  28877. }
  28878. }
  28879. }
  28880. }
  28881. }
  28882. }
  28883. switch (lk)
  28884. {
  28885. case 16002: // 'every' '$'
  28886. case 16112: // 'some' '$'
  28887. try_QuantifiedExpr();
  28888. break;
  28889. case -3:
  28890. try_InsertExpr();
  28891. break;
  28892. case -4:
  28893. try_DeleteExpr();
  28894. break;
  28895. case -5:
  28896. try_RenameExpr();
  28897. break;
  28898. case -6:
  28899. case 99551: // 'replace' 'node'
  28900. try_ReplaceExpr();
  28901. break;
  28902. case 15976: // 'copy' '$'
  28903. try_TransformExpr();
  28904. break;
  28905. case -8:
  28906. case 3183: // 'delete' EQName^Token
  28907. case 4207: // 'delete' IntegerLiteral
  28908. case 4719: // 'delete' DecimalLiteral
  28909. case 5231: // 'delete' DoubleLiteral
  28910. case 5743: // 'delete' StringLiteral
  28911. case 15983: // 'delete' '$'
  28912. case 16495: // 'delete' '$$'
  28913. case 17007: // 'delete' '%'
  28914. case 28271: // 'delete' '<'
  28915. case 28783: // 'delete' '<!--'
  28916. case 30831: // 'delete' '<?'
  28917. case 35439: // 'delete' '['
  28918. case 36463: // 'delete' 'after'
  28919. case 37487: // 'delete' 'allowing'
  28920. case 37999: // 'delete' 'ancestor'
  28921. case 38511: // 'delete' 'ancestor-or-self'
  28922. case 39023: // 'delete' 'and'
  28923. case 40047: // 'delete' 'append'
  28924. case 40559: // 'delete' 'array'
  28925. case 41071: // 'delete' 'as'
  28926. case 41583: // 'delete' 'ascending'
  28927. case 42095: // 'delete' 'at'
  28928. case 42607: // 'delete' 'attribute'
  28929. case 43119: // 'delete' 'base-uri'
  28930. case 43631: // 'delete' 'before'
  28931. case 44143: // 'delete' 'boundary-space'
  28932. case 44655: // 'delete' 'break'
  28933. case 45679: // 'delete' 'case'
  28934. case 46191: // 'delete' 'cast'
  28935. case 46703: // 'delete' 'castable'
  28936. case 47215: // 'delete' 'catch'
  28937. case 48239: // 'delete' 'child'
  28938. case 48751: // 'delete' 'collation'
  28939. case 49775: // 'delete' 'comment'
  28940. case 50287: // 'delete' 'constraint'
  28941. case 50799: // 'delete' 'construction'
  28942. case 52335: // 'delete' 'context'
  28943. case 52847: // 'delete' 'continue'
  28944. case 53359: // 'delete' 'copy'
  28945. case 53871: // 'delete' 'copy-namespaces'
  28946. case 54383: // 'delete' 'count'
  28947. case 54895: // 'delete' 'decimal-format'
  28948. case 55919: // 'delete' 'declare'
  28949. case 56431: // 'delete' 'default'
  28950. case 56943: // 'delete' 'delete'
  28951. case 57455: // 'delete' 'descendant'
  28952. case 57967: // 'delete' 'descendant-or-self'
  28953. case 58479: // 'delete' 'descending'
  28954. case 61039: // 'delete' 'div'
  28955. case 61551: // 'delete' 'document'
  28956. case 62063: // 'delete' 'document-node'
  28957. case 62575: // 'delete' 'element'
  28958. case 63087: // 'delete' 'else'
  28959. case 63599: // 'delete' 'empty'
  28960. case 64111: // 'delete' 'empty-sequence'
  28961. case 64623: // 'delete' 'encoding'
  28962. case 65135: // 'delete' 'end'
  28963. case 66159: // 'delete' 'eq'
  28964. case 66671: // 'delete' 'every'
  28965. case 67695: // 'delete' 'except'
  28966. case 68207: // 'delete' 'exit'
  28967. case 68719: // 'delete' 'external'
  28968. case 69231: // 'delete' 'false'
  28969. case 69743: // 'delete' 'first'
  28970. case 70255: // 'delete' 'following'
  28971. case 70767: // 'delete' 'following-sibling'
  28972. case 71279: // 'delete' 'for'
  28973. case 72815: // 'delete' 'from'
  28974. case 73327: // 'delete' 'ft-option'
  28975. case 75375: // 'delete' 'function'
  28976. case 75887: // 'delete' 'ge'
  28977. case 76911: // 'delete' 'group'
  28978. case 77935: // 'delete' 'gt'
  28979. case 78447: // 'delete' 'idiv'
  28980. case 78959: // 'delete' 'if'
  28981. case 79471: // 'delete' 'import'
  28982. case 79983: // 'delete' 'in'
  28983. case 80495: // 'delete' 'index'
  28984. case 82543: // 'delete' 'insert'
  28985. case 83055: // 'delete' 'instance'
  28986. case 83567: // 'delete' 'integrity'
  28987. case 84079: // 'delete' 'intersect'
  28988. case 84591: // 'delete' 'into'
  28989. case 85103: // 'delete' 'is'
  28990. case 85615: // 'delete' 'item'
  28991. case 86127: // 'delete' 'json'
  28992. case 86639: // 'delete' 'json-item'
  28993. case 87151: // 'delete' 'jsoniq'
  28994. case 88687: // 'delete' 'last'
  28995. case 89199: // 'delete' 'lax'
  28996. case 89711: // 'delete' 'le'
  28997. case 90735: // 'delete' 'let'
  28998. case 91759: // 'delete' 'loop'
  28999. case 92783: // 'delete' 'lt'
  29000. case 93807: // 'delete' 'mod'
  29001. case 94319: // 'delete' 'modify'
  29002. case 94831: // 'delete' 'module'
  29003. case 95855: // 'delete' 'namespace'
  29004. case 96367: // 'delete' 'namespace-node'
  29005. case 96879: // 'delete' 'ne'
  29006. case 100975: // 'delete' 'null'
  29007. case 101487: // 'delete' 'object'
  29008. case 103535: // 'delete' 'only'
  29009. case 104047: // 'delete' 'option'
  29010. case 104559: // 'delete' 'or'
  29011. case 105071: // 'delete' 'order'
  29012. case 105583: // 'delete' 'ordered'
  29013. case 106095: // 'delete' 'ordering'
  29014. case 107631: // 'delete' 'parent'
  29015. case 110703: // 'delete' 'preceding'
  29016. case 111215: // 'delete' 'preceding-sibling'
  29017. case 112751: // 'delete' 'processing-instruction'
  29018. case 113775: // 'delete' 'rename'
  29019. case 114287: // 'delete' 'replace'
  29020. case 114799: // 'delete' 'return'
  29021. case 115311: // 'delete' 'returning'
  29022. case 115823: // 'delete' 'revalidation'
  29023. case 116847: // 'delete' 'satisfies'
  29024. case 117359: // 'delete' 'schema'
  29025. case 117871: // 'delete' 'schema-attribute'
  29026. case 118383: // 'delete' 'schema-element'
  29027. case 118895: // 'delete' 'score'
  29028. case 119407: // 'delete' 'select'
  29029. case 119919: // 'delete' 'self'
  29030. case 122479: // 'delete' 'sliding'
  29031. case 122991: // 'delete' 'some'
  29032. case 123503: // 'delete' 'stable'
  29033. case 124015: // 'delete' 'start'
  29034. case 125551: // 'delete' 'strict'
  29035. case 126575: // 'delete' 'structured-item'
  29036. case 127087: // 'delete' 'switch'
  29037. case 127599: // 'delete' 'text'
  29038. case 129647: // 'delete' 'to'
  29039. case 130159: // 'delete' 'treat'
  29040. case 130671: // 'delete' 'true'
  29041. case 131183: // 'delete' 'try'
  29042. case 131695: // 'delete' 'tumbling'
  29043. case 132207: // 'delete' 'type'
  29044. case 132719: // 'delete' 'typeswitch'
  29045. case 133231: // 'delete' 'union'
  29046. case 134255: // 'delete' 'unordered'
  29047. case 134767: // 'delete' 'updating'
  29048. case 136303: // 'delete' 'validate'
  29049. case 136815: // 'delete' 'value'
  29050. case 137327: // 'delete' 'variable'
  29051. case 137839: // 'delete' 'version'
  29052. case 139375: // 'delete' 'where'
  29053. case 139887: // 'delete' 'while'
  29054. case 141423: // 'delete' 'with'
  29055. case 143983: // 'delete' '{'
  29056. case 145007: // 'delete' '{|'
  29057. try_JSONDeleteExpr();
  29058. break;
  29059. case -9:
  29060. case 3233: // 'insert' EQName^Token
  29061. case 4257: // 'insert' IntegerLiteral
  29062. case 4769: // 'insert' DecimalLiteral
  29063. case 5281: // 'insert' DoubleLiteral
  29064. case 5793: // 'insert' StringLiteral
  29065. case 9889: // 'insert' NCName^Token
  29066. case 16033: // 'insert' '$'
  29067. case 16545: // 'insert' '$$'
  29068. case 17057: // 'insert' '%'
  29069. case 18593: // 'insert' '(#'
  29070. case 21153: // 'insert' '+'
  29071. case 22177: // 'insert' '-'
  29072. case 24225: // 'insert' '/'
  29073. case 24737: // 'insert' '//'
  29074. case 28321: // 'insert' '<'
  29075. case 28833: // 'insert' '<!--'
  29076. case 30881: // 'insert' '<?'
  29077. case 35489: // 'insert' '['
  29078. case 36513: // 'insert' 'after'
  29079. case 37537: // 'insert' 'allowing'
  29080. case 38049: // 'insert' 'ancestor'
  29081. case 38561: // 'insert' 'ancestor-or-self'
  29082. case 39073: // 'insert' 'and'
  29083. case 40097: // 'insert' 'append'
  29084. case 40609: // 'insert' 'array'
  29085. case 41121: // 'insert' 'as'
  29086. case 41633: // 'insert' 'ascending'
  29087. case 42145: // 'insert' 'at'
  29088. case 42657: // 'insert' 'attribute'
  29089. case 43169: // 'insert' 'base-uri'
  29090. case 43681: // 'insert' 'before'
  29091. case 44193: // 'insert' 'boundary-space'
  29092. case 44705: // 'insert' 'break'
  29093. case 45729: // 'insert' 'case'
  29094. case 46241: // 'insert' 'cast'
  29095. case 46753: // 'insert' 'castable'
  29096. case 47265: // 'insert' 'catch'
  29097. case 48289: // 'insert' 'child'
  29098. case 48801: // 'insert' 'collation'
  29099. case 49825: // 'insert' 'comment'
  29100. case 50337: // 'insert' 'constraint'
  29101. case 50849: // 'insert' 'construction'
  29102. case 52385: // 'insert' 'context'
  29103. case 52897: // 'insert' 'continue'
  29104. case 53409: // 'insert' 'copy'
  29105. case 53921: // 'insert' 'copy-namespaces'
  29106. case 54433: // 'insert' 'count'
  29107. case 54945: // 'insert' 'decimal-format'
  29108. case 55969: // 'insert' 'declare'
  29109. case 56481: // 'insert' 'default'
  29110. case 56993: // 'insert' 'delete'
  29111. case 57505: // 'insert' 'descendant'
  29112. case 58017: // 'insert' 'descendant-or-self'
  29113. case 58529: // 'insert' 'descending'
  29114. case 61089: // 'insert' 'div'
  29115. case 61601: // 'insert' 'document'
  29116. case 62113: // 'insert' 'document-node'
  29117. case 62625: // 'insert' 'element'
  29118. case 63137: // 'insert' 'else'
  29119. case 63649: // 'insert' 'empty'
  29120. case 64161: // 'insert' 'empty-sequence'
  29121. case 64673: // 'insert' 'encoding'
  29122. case 65185: // 'insert' 'end'
  29123. case 66209: // 'insert' 'eq'
  29124. case 66721: // 'insert' 'every'
  29125. case 67745: // 'insert' 'except'
  29126. case 68257: // 'insert' 'exit'
  29127. case 68769: // 'insert' 'external'
  29128. case 69281: // 'insert' 'false'
  29129. case 69793: // 'insert' 'first'
  29130. case 70305: // 'insert' 'following'
  29131. case 70817: // 'insert' 'following-sibling'
  29132. case 71329: // 'insert' 'for'
  29133. case 72865: // 'insert' 'from'
  29134. case 73377: // 'insert' 'ft-option'
  29135. case 75425: // 'insert' 'function'
  29136. case 75937: // 'insert' 'ge'
  29137. case 76961: // 'insert' 'group'
  29138. case 77985: // 'insert' 'gt'
  29139. case 78497: // 'insert' 'idiv'
  29140. case 79009: // 'insert' 'if'
  29141. case 79521: // 'insert' 'import'
  29142. case 80033: // 'insert' 'in'
  29143. case 80545: // 'insert' 'index'
  29144. case 82593: // 'insert' 'insert'
  29145. case 83105: // 'insert' 'instance'
  29146. case 83617: // 'insert' 'integrity'
  29147. case 84129: // 'insert' 'intersect'
  29148. case 84641: // 'insert' 'into'
  29149. case 85153: // 'insert' 'is'
  29150. case 85665: // 'insert' 'item'
  29151. case 86177: // 'insert' 'json'
  29152. case 86689: // 'insert' 'json-item'
  29153. case 87201: // 'insert' 'jsoniq'
  29154. case 88737: // 'insert' 'last'
  29155. case 89249: // 'insert' 'lax'
  29156. case 89761: // 'insert' 'le'
  29157. case 90785: // 'insert' 'let'
  29158. case 91809: // 'insert' 'loop'
  29159. case 92833: // 'insert' 'lt'
  29160. case 93857: // 'insert' 'mod'
  29161. case 94369: // 'insert' 'modify'
  29162. case 94881: // 'insert' 'module'
  29163. case 95905: // 'insert' 'namespace'
  29164. case 96417: // 'insert' 'namespace-node'
  29165. case 96929: // 'insert' 'ne'
  29166. case 100513: // 'insert' 'not'
  29167. case 101025: // 'insert' 'null'
  29168. case 101537: // 'insert' 'object'
  29169. case 103585: // 'insert' 'only'
  29170. case 104097: // 'insert' 'option'
  29171. case 104609: // 'insert' 'or'
  29172. case 105121: // 'insert' 'order'
  29173. case 105633: // 'insert' 'ordered'
  29174. case 106145: // 'insert' 'ordering'
  29175. case 107681: // 'insert' 'parent'
  29176. case 110753: // 'insert' 'preceding'
  29177. case 111265: // 'insert' 'preceding-sibling'
  29178. case 112801: // 'insert' 'processing-instruction'
  29179. case 113825: // 'insert' 'rename'
  29180. case 114337: // 'insert' 'replace'
  29181. case 114849: // 'insert' 'return'
  29182. case 115361: // 'insert' 'returning'
  29183. case 115873: // 'insert' 'revalidation'
  29184. case 116897: // 'insert' 'satisfies'
  29185. case 117409: // 'insert' 'schema'
  29186. case 117921: // 'insert' 'schema-attribute'
  29187. case 118433: // 'insert' 'schema-element'
  29188. case 118945: // 'insert' 'score'
  29189. case 119457: // 'insert' 'select'
  29190. case 119969: // 'insert' 'self'
  29191. case 122529: // 'insert' 'sliding'
  29192. case 123041: // 'insert' 'some'
  29193. case 123553: // 'insert' 'stable'
  29194. case 124065: // 'insert' 'start'
  29195. case 125601: // 'insert' 'strict'
  29196. case 126625: // 'insert' 'structured-item'
  29197. case 127137: // 'insert' 'switch'
  29198. case 127649: // 'insert' 'text'
  29199. case 129697: // 'insert' 'to'
  29200. case 130209: // 'insert' 'treat'
  29201. case 130721: // 'insert' 'true'
  29202. case 131233: // 'insert' 'try'
  29203. case 131745: // 'insert' 'tumbling'
  29204. case 132257: // 'insert' 'type'
  29205. case 132769: // 'insert' 'typeswitch'
  29206. case 133281: // 'insert' 'union'
  29207. case 134305: // 'insert' 'unordered'
  29208. case 134817: // 'insert' 'updating'
  29209. case 136353: // 'insert' 'validate'
  29210. case 136865: // 'insert' 'value'
  29211. case 137377: // 'insert' 'variable'
  29212. case 137889: // 'insert' 'version'
  29213. case 139425: // 'insert' 'where'
  29214. case 139937: // 'insert' 'while'
  29215. case 141473: // 'insert' 'with'
  29216. case 144033: // 'insert' '{'
  29217. case 145057: // 'insert' '{|'
  29218. try_JSONInsertExpr();
  29219. break;
  29220. case -10:
  29221. case 3294: // 'rename' EQName^Token
  29222. case 4318: // 'rename' IntegerLiteral
  29223. case 4830: // 'rename' DecimalLiteral
  29224. case 5342: // 'rename' DoubleLiteral
  29225. case 5854: // 'rename' StringLiteral
  29226. case 16094: // 'rename' '$'
  29227. case 16606: // 'rename' '$$'
  29228. case 17118: // 'rename' '%'
  29229. case 28382: // 'rename' '<'
  29230. case 28894: // 'rename' '<!--'
  29231. case 30942: // 'rename' '<?'
  29232. case 35550: // 'rename' '['
  29233. case 36574: // 'rename' 'after'
  29234. case 37598: // 'rename' 'allowing'
  29235. case 38110: // 'rename' 'ancestor'
  29236. case 38622: // 'rename' 'ancestor-or-self'
  29237. case 39134: // 'rename' 'and'
  29238. case 40158: // 'rename' 'append'
  29239. case 40670: // 'rename' 'array'
  29240. case 41182: // 'rename' 'as'
  29241. case 41694: // 'rename' 'ascending'
  29242. case 42206: // 'rename' 'at'
  29243. case 42718: // 'rename' 'attribute'
  29244. case 43230: // 'rename' 'base-uri'
  29245. case 43742: // 'rename' 'before'
  29246. case 44254: // 'rename' 'boundary-space'
  29247. case 44766: // 'rename' 'break'
  29248. case 45790: // 'rename' 'case'
  29249. case 46302: // 'rename' 'cast'
  29250. case 46814: // 'rename' 'castable'
  29251. case 47326: // 'rename' 'catch'
  29252. case 48350: // 'rename' 'child'
  29253. case 48862: // 'rename' 'collation'
  29254. case 49886: // 'rename' 'comment'
  29255. case 50398: // 'rename' 'constraint'
  29256. case 50910: // 'rename' 'construction'
  29257. case 52446: // 'rename' 'context'
  29258. case 52958: // 'rename' 'continue'
  29259. case 53470: // 'rename' 'copy'
  29260. case 53982: // 'rename' 'copy-namespaces'
  29261. case 54494: // 'rename' 'count'
  29262. case 55006: // 'rename' 'decimal-format'
  29263. case 56030: // 'rename' 'declare'
  29264. case 56542: // 'rename' 'default'
  29265. case 57054: // 'rename' 'delete'
  29266. case 57566: // 'rename' 'descendant'
  29267. case 58078: // 'rename' 'descendant-or-self'
  29268. case 58590: // 'rename' 'descending'
  29269. case 61150: // 'rename' 'div'
  29270. case 61662: // 'rename' 'document'
  29271. case 62174: // 'rename' 'document-node'
  29272. case 62686: // 'rename' 'element'
  29273. case 63198: // 'rename' 'else'
  29274. case 63710: // 'rename' 'empty'
  29275. case 64222: // 'rename' 'empty-sequence'
  29276. case 64734: // 'rename' 'encoding'
  29277. case 65246: // 'rename' 'end'
  29278. case 66270: // 'rename' 'eq'
  29279. case 66782: // 'rename' 'every'
  29280. case 67806: // 'rename' 'except'
  29281. case 68318: // 'rename' 'exit'
  29282. case 68830: // 'rename' 'external'
  29283. case 69342: // 'rename' 'false'
  29284. case 69854: // 'rename' 'first'
  29285. case 70366: // 'rename' 'following'
  29286. case 70878: // 'rename' 'following-sibling'
  29287. case 71390: // 'rename' 'for'
  29288. case 72926: // 'rename' 'from'
  29289. case 73438: // 'rename' 'ft-option'
  29290. case 75486: // 'rename' 'function'
  29291. case 75998: // 'rename' 'ge'
  29292. case 77022: // 'rename' 'group'
  29293. case 78046: // 'rename' 'gt'
  29294. case 78558: // 'rename' 'idiv'
  29295. case 79070: // 'rename' 'if'
  29296. case 79582: // 'rename' 'import'
  29297. case 80094: // 'rename' 'in'
  29298. case 80606: // 'rename' 'index'
  29299. case 82654: // 'rename' 'insert'
  29300. case 83166: // 'rename' 'instance'
  29301. case 83678: // 'rename' 'integrity'
  29302. case 84190: // 'rename' 'intersect'
  29303. case 84702: // 'rename' 'into'
  29304. case 85214: // 'rename' 'is'
  29305. case 85726: // 'rename' 'item'
  29306. case 86238: // 'rename' 'json'
  29307. case 86750: // 'rename' 'json-item'
  29308. case 87262: // 'rename' 'jsoniq'
  29309. case 88798: // 'rename' 'last'
  29310. case 89310: // 'rename' 'lax'
  29311. case 89822: // 'rename' 'le'
  29312. case 90846: // 'rename' 'let'
  29313. case 91870: // 'rename' 'loop'
  29314. case 92894: // 'rename' 'lt'
  29315. case 93918: // 'rename' 'mod'
  29316. case 94430: // 'rename' 'modify'
  29317. case 94942: // 'rename' 'module'
  29318. case 95966: // 'rename' 'namespace'
  29319. case 96478: // 'rename' 'namespace-node'
  29320. case 96990: // 'rename' 'ne'
  29321. case 100062: // 'rename' 'nodes'
  29322. case 101086: // 'rename' 'null'
  29323. case 101598: // 'rename' 'object'
  29324. case 103646: // 'rename' 'only'
  29325. case 104158: // 'rename' 'option'
  29326. case 104670: // 'rename' 'or'
  29327. case 105182: // 'rename' 'order'
  29328. case 105694: // 'rename' 'ordered'
  29329. case 106206: // 'rename' 'ordering'
  29330. case 107742: // 'rename' 'parent'
  29331. case 110814: // 'rename' 'preceding'
  29332. case 111326: // 'rename' 'preceding-sibling'
  29333. case 112862: // 'rename' 'processing-instruction'
  29334. case 113886: // 'rename' 'rename'
  29335. case 114398: // 'rename' 'replace'
  29336. case 114910: // 'rename' 'return'
  29337. case 115422: // 'rename' 'returning'
  29338. case 115934: // 'rename' 'revalidation'
  29339. case 116958: // 'rename' 'satisfies'
  29340. case 117470: // 'rename' 'schema'
  29341. case 117982: // 'rename' 'schema-attribute'
  29342. case 118494: // 'rename' 'schema-element'
  29343. case 119006: // 'rename' 'score'
  29344. case 119518: // 'rename' 'select'
  29345. case 120030: // 'rename' 'self'
  29346. case 122590: // 'rename' 'sliding'
  29347. case 123102: // 'rename' 'some'
  29348. case 123614: // 'rename' 'stable'
  29349. case 124126: // 'rename' 'start'
  29350. case 125662: // 'rename' 'strict'
  29351. case 126686: // 'rename' 'structured-item'
  29352. case 127198: // 'rename' 'switch'
  29353. case 127710: // 'rename' 'text'
  29354. case 129758: // 'rename' 'to'
  29355. case 130270: // 'rename' 'treat'
  29356. case 130782: // 'rename' 'true'
  29357. case 131294: // 'rename' 'try'
  29358. case 131806: // 'rename' 'tumbling'
  29359. case 132318: // 'rename' 'type'
  29360. case 132830: // 'rename' 'typeswitch'
  29361. case 133342: // 'rename' 'union'
  29362. case 134366: // 'rename' 'unordered'
  29363. case 134878: // 'rename' 'updating'
  29364. case 136414: // 'rename' 'validate'
  29365. case 136926: // 'rename' 'value'
  29366. case 137438: // 'rename' 'variable'
  29367. case 137950: // 'rename' 'version'
  29368. case 139486: // 'rename' 'where'
  29369. case 139998: // 'rename' 'while'
  29370. case 141534: // 'rename' 'with'
  29371. case 144094: // 'rename' '{'
  29372. case 145118: // 'rename' '{|'
  29373. try_JSONRenameExpr();
  29374. break;
  29375. case -11:
  29376. try_JSONReplaceExpr();
  29377. break;
  29378. case -12:
  29379. case 3150: // 'append' EQName^Token
  29380. case 4174: // 'append' IntegerLiteral
  29381. case 4686: // 'append' DecimalLiteral
  29382. case 5198: // 'append' DoubleLiteral
  29383. case 5710: // 'append' StringLiteral
  29384. case 15950: // 'append' '$'
  29385. case 16462: // 'append' '$$'
  29386. case 16974: // 'append' '%'
  29387. case 18510: // 'append' '(#'
  29388. case 21070: // 'append' '+'
  29389. case 22094: // 'append' '-'
  29390. case 24142: // 'append' '/'
  29391. case 24654: // 'append' '//'
  29392. case 28238: // 'append' '<'
  29393. case 28750: // 'append' '<!--'
  29394. case 30798: // 'append' '<?'
  29395. case 35406: // 'append' '['
  29396. case 36430: // 'append' 'after'
  29397. case 37454: // 'append' 'allowing'
  29398. case 37966: // 'append' 'ancestor'
  29399. case 38478: // 'append' 'ancestor-or-self'
  29400. case 38990: // 'append' 'and'
  29401. case 40014: // 'append' 'append'
  29402. case 40526: // 'append' 'array'
  29403. case 41038: // 'append' 'as'
  29404. case 41550: // 'append' 'ascending'
  29405. case 42062: // 'append' 'at'
  29406. case 42574: // 'append' 'attribute'
  29407. case 43086: // 'append' 'base-uri'
  29408. case 43598: // 'append' 'before'
  29409. case 44110: // 'append' 'boundary-space'
  29410. case 44622: // 'append' 'break'
  29411. case 45646: // 'append' 'case'
  29412. case 46158: // 'append' 'cast'
  29413. case 46670: // 'append' 'castable'
  29414. case 47182: // 'append' 'catch'
  29415. case 48206: // 'append' 'child'
  29416. case 48718: // 'append' 'collation'
  29417. case 49742: // 'append' 'comment'
  29418. case 50254: // 'append' 'constraint'
  29419. case 50766: // 'append' 'construction'
  29420. case 52302: // 'append' 'context'
  29421. case 52814: // 'append' 'continue'
  29422. case 53326: // 'append' 'copy'
  29423. case 53838: // 'append' 'copy-namespaces'
  29424. case 54350: // 'append' 'count'
  29425. case 54862: // 'append' 'decimal-format'
  29426. case 55886: // 'append' 'declare'
  29427. case 56398: // 'append' 'default'
  29428. case 56910: // 'append' 'delete'
  29429. case 57422: // 'append' 'descendant'
  29430. case 57934: // 'append' 'descendant-or-self'
  29431. case 58446: // 'append' 'descending'
  29432. case 61006: // 'append' 'div'
  29433. case 61518: // 'append' 'document'
  29434. case 62030: // 'append' 'document-node'
  29435. case 62542: // 'append' 'element'
  29436. case 63054: // 'append' 'else'
  29437. case 63566: // 'append' 'empty'
  29438. case 64078: // 'append' 'empty-sequence'
  29439. case 64590: // 'append' 'encoding'
  29440. case 65102: // 'append' 'end'
  29441. case 66126: // 'append' 'eq'
  29442. case 66638: // 'append' 'every'
  29443. case 67662: // 'append' 'except'
  29444. case 68174: // 'append' 'exit'
  29445. case 68686: // 'append' 'external'
  29446. case 69198: // 'append' 'false'
  29447. case 69710: // 'append' 'first'
  29448. case 70222: // 'append' 'following'
  29449. case 70734: // 'append' 'following-sibling'
  29450. case 71246: // 'append' 'for'
  29451. case 72782: // 'append' 'from'
  29452. case 73294: // 'append' 'ft-option'
  29453. case 75342: // 'append' 'function'
  29454. case 75854: // 'append' 'ge'
  29455. case 76878: // 'append' 'group'
  29456. case 77902: // 'append' 'gt'
  29457. case 78414: // 'append' 'idiv'
  29458. case 78926: // 'append' 'if'
  29459. case 79438: // 'append' 'import'
  29460. case 79950: // 'append' 'in'
  29461. case 80462: // 'append' 'index'
  29462. case 82510: // 'append' 'insert'
  29463. case 83022: // 'append' 'instance'
  29464. case 83534: // 'append' 'integrity'
  29465. case 84046: // 'append' 'intersect'
  29466. case 84558: // 'append' 'into'
  29467. case 85070: // 'append' 'is'
  29468. case 85582: // 'append' 'item'
  29469. case 86094: // 'append' 'json'
  29470. case 86606: // 'append' 'json-item'
  29471. case 87118: // 'append' 'jsoniq'
  29472. case 88654: // 'append' 'last'
  29473. case 89166: // 'append' 'lax'
  29474. case 89678: // 'append' 'le'
  29475. case 90702: // 'append' 'let'
  29476. case 91726: // 'append' 'loop'
  29477. case 92750: // 'append' 'lt'
  29478. case 93774: // 'append' 'mod'
  29479. case 94286: // 'append' 'modify'
  29480. case 94798: // 'append' 'module'
  29481. case 95822: // 'append' 'namespace'
  29482. case 96334: // 'append' 'namespace-node'
  29483. case 96846: // 'append' 'ne'
  29484. case 99406: // 'append' 'node'
  29485. case 99918: // 'append' 'nodes'
  29486. case 100430: // 'append' 'not'
  29487. case 100942: // 'append' 'null'
  29488. case 101454: // 'append' 'object'
  29489. case 103502: // 'append' 'only'
  29490. case 104014: // 'append' 'option'
  29491. case 104526: // 'append' 'or'
  29492. case 105038: // 'append' 'order'
  29493. case 105550: // 'append' 'ordered'
  29494. case 106062: // 'append' 'ordering'
  29495. case 107598: // 'append' 'parent'
  29496. case 110670: // 'append' 'preceding'
  29497. case 111182: // 'append' 'preceding-sibling'
  29498. case 112718: // 'append' 'processing-instruction'
  29499. case 113742: // 'append' 'rename'
  29500. case 114254: // 'append' 'replace'
  29501. case 114766: // 'append' 'return'
  29502. case 115278: // 'append' 'returning'
  29503. case 115790: // 'append' 'revalidation'
  29504. case 116814: // 'append' 'satisfies'
  29505. case 117326: // 'append' 'schema'
  29506. case 117838: // 'append' 'schema-attribute'
  29507. case 118350: // 'append' 'schema-element'
  29508. case 118862: // 'append' 'score'
  29509. case 119374: // 'append' 'select'
  29510. case 119886: // 'append' 'self'
  29511. case 122446: // 'append' 'sliding'
  29512. case 122958: // 'append' 'some'
  29513. case 123470: // 'append' 'stable'
  29514. case 123982: // 'append' 'start'
  29515. case 125518: // 'append' 'strict'
  29516. case 126542: // 'append' 'structured-item'
  29517. case 127054: // 'append' 'switch'
  29518. case 127566: // 'append' 'text'
  29519. case 129614: // 'append' 'to'
  29520. case 130126: // 'append' 'treat'
  29521. case 130638: // 'append' 'true'
  29522. case 131150: // 'append' 'try'
  29523. case 131662: // 'append' 'tumbling'
  29524. case 132174: // 'append' 'type'
  29525. case 132686: // 'append' 'typeswitch'
  29526. case 133198: // 'append' 'union'
  29527. case 134222: // 'append' 'unordered'
  29528. case 134734: // 'append' 'updating'
  29529. case 136270: // 'append' 'validate'
  29530. case 136782: // 'append' 'value'
  29531. case 137294: // 'append' 'variable'
  29532. case 137806: // 'append' 'version'
  29533. case 139342: // 'append' 'where'
  29534. case 139854: // 'append' 'while'
  29535. case 141390: // 'append' 'with'
  29536. case 143950: // 'append' '{'
  29537. case 144974: // 'append' '{|'
  29538. try_JSONAppendExpr();
  29539. break;
  29540. case -13:
  29541. break;
  29542. default:
  29543. try_OrExpr();
  29544. }
  29545. }
  29546. function parse_JSONDeleteExpr()
  29547. {
  29548. eventHandler.startNonterminal("JSONDeleteExpr", e0);
  29549. shift(111); // 'delete'
  29550. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29551. switch (l1)
  29552. {
  29553. case 168: // 'json'
  29554. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29555. break;
  29556. default:
  29557. lk = l1;
  29558. }
  29559. if (lk == 18088) // 'json' '('
  29560. {
  29561. lk = memoized(11, e0);
  29562. if (lk == 0)
  29563. {
  29564. var b0A = b0; var e0A = e0; var l1A = l1;
  29565. var b1A = b1; var e1A = e1; var l2A = l2;
  29566. var b2A = b2; var e2A = e2;
  29567. try
  29568. {
  29569. shiftT(168); // 'json'
  29570. lk = -1;
  29571. }
  29572. catch (p1A)
  29573. {
  29574. lk = -2;
  29575. }
  29576. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  29577. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  29578. b2 = b2A; e2 = e2A; end = e2A; }}
  29579. memoize(11, e0, lk);
  29580. }
  29581. }
  29582. if (lk == -1
  29583. || lk == 3240 // 'json' EQName^Token
  29584. || lk == 4264 // 'json' IntegerLiteral
  29585. || lk == 4776 // 'json' DecimalLiteral
  29586. || lk == 5288 // 'json' DoubleLiteral
  29587. || lk == 5800 // 'json' StringLiteral
  29588. || lk == 16040 // 'json' '$'
  29589. || lk == 16552 // 'json' '$$'
  29590. || lk == 17064 // 'json' '%'
  29591. || lk == 28328 // 'json' '<'
  29592. || lk == 28840 // 'json' '<!--'
  29593. || lk == 30888 // 'json' '<?'
  29594. || lk == 35496 // 'json' '['
  29595. || lk == 36520 // 'json' 'after'
  29596. || lk == 37544 // 'json' 'allowing'
  29597. || lk == 38056 // 'json' 'ancestor'
  29598. || lk == 38568 // 'json' 'ancestor-or-self'
  29599. || lk == 39080 // 'json' 'and'
  29600. || lk == 40104 // 'json' 'append'
  29601. || lk == 40616 // 'json' 'array'
  29602. || lk == 41128 // 'json' 'as'
  29603. || lk == 41640 // 'json' 'ascending'
  29604. || lk == 42152 // 'json' 'at'
  29605. || lk == 42664 // 'json' 'attribute'
  29606. || lk == 43176 // 'json' 'base-uri'
  29607. || lk == 43688 // 'json' 'before'
  29608. || lk == 44200 // 'json' 'boundary-space'
  29609. || lk == 44712 // 'json' 'break'
  29610. || lk == 45736 // 'json' 'case'
  29611. || lk == 46248 // 'json' 'cast'
  29612. || lk == 46760 // 'json' 'castable'
  29613. || lk == 47272 // 'json' 'catch'
  29614. || lk == 48296 // 'json' 'child'
  29615. || lk == 48808 // 'json' 'collation'
  29616. || lk == 49832 // 'json' 'comment'
  29617. || lk == 50344 // 'json' 'constraint'
  29618. || lk == 50856 // 'json' 'construction'
  29619. || lk == 52392 // 'json' 'context'
  29620. || lk == 52904 // 'json' 'continue'
  29621. || lk == 53416 // 'json' 'copy'
  29622. || lk == 53928 // 'json' 'copy-namespaces'
  29623. || lk == 54440 // 'json' 'count'
  29624. || lk == 54952 // 'json' 'decimal-format'
  29625. || lk == 55976 // 'json' 'declare'
  29626. || lk == 56488 // 'json' 'default'
  29627. || lk == 57000 // 'json' 'delete'
  29628. || lk == 57512 // 'json' 'descendant'
  29629. || lk == 58024 // 'json' 'descendant-or-self'
  29630. || lk == 58536 // 'json' 'descending'
  29631. || lk == 61096 // 'json' 'div'
  29632. || lk == 61608 // 'json' 'document'
  29633. || lk == 62120 // 'json' 'document-node'
  29634. || lk == 62632 // 'json' 'element'
  29635. || lk == 63144 // 'json' 'else'
  29636. || lk == 63656 // 'json' 'empty'
  29637. || lk == 64168 // 'json' 'empty-sequence'
  29638. || lk == 64680 // 'json' 'encoding'
  29639. || lk == 65192 // 'json' 'end'
  29640. || lk == 66216 // 'json' 'eq'
  29641. || lk == 66728 // 'json' 'every'
  29642. || lk == 67752 // 'json' 'except'
  29643. || lk == 68264 // 'json' 'exit'
  29644. || lk == 68776 // 'json' 'external'
  29645. || lk == 69288 // 'json' 'false'
  29646. || lk == 69800 // 'json' 'first'
  29647. || lk == 70312 // 'json' 'following'
  29648. || lk == 70824 // 'json' 'following-sibling'
  29649. || lk == 71336 // 'json' 'for'
  29650. || lk == 72872 // 'json' 'from'
  29651. || lk == 73384 // 'json' 'ft-option'
  29652. || lk == 75432 // 'json' 'function'
  29653. || lk == 75944 // 'json' 'ge'
  29654. || lk == 76968 // 'json' 'group'
  29655. || lk == 77992 // 'json' 'gt'
  29656. || lk == 78504 // 'json' 'idiv'
  29657. || lk == 79016 // 'json' 'if'
  29658. || lk == 79528 // 'json' 'import'
  29659. || lk == 80040 // 'json' 'in'
  29660. || lk == 80552 // 'json' 'index'
  29661. || lk == 82600 // 'json' 'insert'
  29662. || lk == 83112 // 'json' 'instance'
  29663. || lk == 83624 // 'json' 'integrity'
  29664. || lk == 84136 // 'json' 'intersect'
  29665. || lk == 84648 // 'json' 'into'
  29666. || lk == 85160 // 'json' 'is'
  29667. || lk == 85672 // 'json' 'item'
  29668. || lk == 86184 // 'json' 'json'
  29669. || lk == 86696 // 'json' 'json-item'
  29670. || lk == 87208 // 'json' 'jsoniq'
  29671. || lk == 88744 // 'json' 'last'
  29672. || lk == 89256 // 'json' 'lax'
  29673. || lk == 89768 // 'json' 'le'
  29674. || lk == 90792 // 'json' 'let'
  29675. || lk == 91816 // 'json' 'loop'
  29676. || lk == 92840 // 'json' 'lt'
  29677. || lk == 93864 // 'json' 'mod'
  29678. || lk == 94376 // 'json' 'modify'
  29679. || lk == 94888 // 'json' 'module'
  29680. || lk == 95912 // 'json' 'namespace'
  29681. || lk == 96424 // 'json' 'namespace-node'
  29682. || lk == 96936 // 'json' 'ne'
  29683. || lk == 99496 // 'json' 'node'
  29684. || lk == 100008 // 'json' 'nodes'
  29685. || lk == 101032 // 'json' 'null'
  29686. || lk == 101544 // 'json' 'object'
  29687. || lk == 103592 // 'json' 'only'
  29688. || lk == 104104 // 'json' 'option'
  29689. || lk == 104616 // 'json' 'or'
  29690. || lk == 105128 // 'json' 'order'
  29691. || lk == 105640 // 'json' 'ordered'
  29692. || lk == 106152 // 'json' 'ordering'
  29693. || lk == 107688 // 'json' 'parent'
  29694. || lk == 110760 // 'json' 'preceding'
  29695. || lk == 111272 // 'json' 'preceding-sibling'
  29696. || lk == 112808 // 'json' 'processing-instruction'
  29697. || lk == 113832 // 'json' 'rename'
  29698. || lk == 114344 // 'json' 'replace'
  29699. || lk == 114856 // 'json' 'return'
  29700. || lk == 115368 // 'json' 'returning'
  29701. || lk == 115880 // 'json' 'revalidation'
  29702. || lk == 116904 // 'json' 'satisfies'
  29703. || lk == 117416 // 'json' 'schema'
  29704. || lk == 117928 // 'json' 'schema-attribute'
  29705. || lk == 118440 // 'json' 'schema-element'
  29706. || lk == 118952 // 'json' 'score'
  29707. || lk == 119464 // 'json' 'select'
  29708. || lk == 119976 // 'json' 'self'
  29709. || lk == 122536 // 'json' 'sliding'
  29710. || lk == 123048 // 'json' 'some'
  29711. || lk == 123560 // 'json' 'stable'
  29712. || lk == 124072 // 'json' 'start'
  29713. || lk == 125608 // 'json' 'strict'
  29714. || lk == 126632 // 'json' 'structured-item'
  29715. || lk == 127144 // 'json' 'switch'
  29716. || lk == 127656 // 'json' 'text'
  29717. || lk == 129704 // 'json' 'to'
  29718. || lk == 130216 // 'json' 'treat'
  29719. || lk == 130728 // 'json' 'true'
  29720. || lk == 131240 // 'json' 'try'
  29721. || lk == 131752 // 'json' 'tumbling'
  29722. || lk == 132264 // 'json' 'type'
  29723. || lk == 132776 // 'json' 'typeswitch'
  29724. || lk == 133288 // 'json' 'union'
  29725. || lk == 134312 // 'json' 'unordered'
  29726. || lk == 134824 // 'json' 'updating'
  29727. || lk == 136360 // 'json' 'validate'
  29728. || lk == 136872 // 'json' 'value'
  29729. || lk == 137384 // 'json' 'variable'
  29730. || lk == 137896 // 'json' 'version'
  29731. || lk == 139432 // 'json' 'where'
  29732. || lk == 139944 // 'json' 'while'
  29733. || lk == 141480 // 'json' 'with'
  29734. || lk == 144040 // 'json' '{'
  29735. || lk == 145064) // 'json' '{|'
  29736. {
  29737. shift(168); // 'json'
  29738. }
  29739. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29740. whitespace();
  29741. parse_PostfixExpr();
  29742. eventHandler.endNonterminal("JSONDeleteExpr", e0);
  29743. }
  29744. function try_JSONDeleteExpr()
  29745. {
  29746. shiftT(111); // 'delete'
  29747. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29748. switch (l1)
  29749. {
  29750. case 168: // 'json'
  29751. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29752. break;
  29753. default:
  29754. lk = l1;
  29755. }
  29756. if (lk == 18088) // 'json' '('
  29757. {
  29758. lk = memoized(11, e0);
  29759. if (lk == 0)
  29760. {
  29761. var b0A = b0; var e0A = e0; var l1A = l1;
  29762. var b1A = b1; var e1A = e1; var l2A = l2;
  29763. var b2A = b2; var e2A = e2;
  29764. try
  29765. {
  29766. shiftT(168); // 'json'
  29767. memoize(11, e0A, -1);
  29768. }
  29769. catch (p1A)
  29770. {
  29771. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  29772. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  29773. b2 = b2A; e2 = e2A; end = e2A; }}
  29774. memoize(11, e0A, -2);
  29775. }
  29776. lk = -2;
  29777. }
  29778. }
  29779. if (lk == -1
  29780. || lk == 3240 // 'json' EQName^Token
  29781. || lk == 4264 // 'json' IntegerLiteral
  29782. || lk == 4776 // 'json' DecimalLiteral
  29783. || lk == 5288 // 'json' DoubleLiteral
  29784. || lk == 5800 // 'json' StringLiteral
  29785. || lk == 16040 // 'json' '$'
  29786. || lk == 16552 // 'json' '$$'
  29787. || lk == 17064 // 'json' '%'
  29788. || lk == 28328 // 'json' '<'
  29789. || lk == 28840 // 'json' '<!--'
  29790. || lk == 30888 // 'json' '<?'
  29791. || lk == 35496 // 'json' '['
  29792. || lk == 36520 // 'json' 'after'
  29793. || lk == 37544 // 'json' 'allowing'
  29794. || lk == 38056 // 'json' 'ancestor'
  29795. || lk == 38568 // 'json' 'ancestor-or-self'
  29796. || lk == 39080 // 'json' 'and'
  29797. || lk == 40104 // 'json' 'append'
  29798. || lk == 40616 // 'json' 'array'
  29799. || lk == 41128 // 'json' 'as'
  29800. || lk == 41640 // 'json' 'ascending'
  29801. || lk == 42152 // 'json' 'at'
  29802. || lk == 42664 // 'json' 'attribute'
  29803. || lk == 43176 // 'json' 'base-uri'
  29804. || lk == 43688 // 'json' 'before'
  29805. || lk == 44200 // 'json' 'boundary-space'
  29806. || lk == 44712 // 'json' 'break'
  29807. || lk == 45736 // 'json' 'case'
  29808. || lk == 46248 // 'json' 'cast'
  29809. || lk == 46760 // 'json' 'castable'
  29810. || lk == 47272 // 'json' 'catch'
  29811. || lk == 48296 // 'json' 'child'
  29812. || lk == 48808 // 'json' 'collation'
  29813. || lk == 49832 // 'json' 'comment'
  29814. || lk == 50344 // 'json' 'constraint'
  29815. || lk == 50856 // 'json' 'construction'
  29816. || lk == 52392 // 'json' 'context'
  29817. || lk == 52904 // 'json' 'continue'
  29818. || lk == 53416 // 'json' 'copy'
  29819. || lk == 53928 // 'json' 'copy-namespaces'
  29820. || lk == 54440 // 'json' 'count'
  29821. || lk == 54952 // 'json' 'decimal-format'
  29822. || lk == 55976 // 'json' 'declare'
  29823. || lk == 56488 // 'json' 'default'
  29824. || lk == 57000 // 'json' 'delete'
  29825. || lk == 57512 // 'json' 'descendant'
  29826. || lk == 58024 // 'json' 'descendant-or-self'
  29827. || lk == 58536 // 'json' 'descending'
  29828. || lk == 61096 // 'json' 'div'
  29829. || lk == 61608 // 'json' 'document'
  29830. || lk == 62120 // 'json' 'document-node'
  29831. || lk == 62632 // 'json' 'element'
  29832. || lk == 63144 // 'json' 'else'
  29833. || lk == 63656 // 'json' 'empty'
  29834. || lk == 64168 // 'json' 'empty-sequence'
  29835. || lk == 64680 // 'json' 'encoding'
  29836. || lk == 65192 // 'json' 'end'
  29837. || lk == 66216 // 'json' 'eq'
  29838. || lk == 66728 // 'json' 'every'
  29839. || lk == 67752 // 'json' 'except'
  29840. || lk == 68264 // 'json' 'exit'
  29841. || lk == 68776 // 'json' 'external'
  29842. || lk == 69288 // 'json' 'false'
  29843. || lk == 69800 // 'json' 'first'
  29844. || lk == 70312 // 'json' 'following'
  29845. || lk == 70824 // 'json' 'following-sibling'
  29846. || lk == 71336 // 'json' 'for'
  29847. || lk == 72872 // 'json' 'from'
  29848. || lk == 73384 // 'json' 'ft-option'
  29849. || lk == 75432 // 'json' 'function'
  29850. || lk == 75944 // 'json' 'ge'
  29851. || lk == 76968 // 'json' 'group'
  29852. || lk == 77992 // 'json' 'gt'
  29853. || lk == 78504 // 'json' 'idiv'
  29854. || lk == 79016 // 'json' 'if'
  29855. || lk == 79528 // 'json' 'import'
  29856. || lk == 80040 // 'json' 'in'
  29857. || lk == 80552 // 'json' 'index'
  29858. || lk == 82600 // 'json' 'insert'
  29859. || lk == 83112 // 'json' 'instance'
  29860. || lk == 83624 // 'json' 'integrity'
  29861. || lk == 84136 // 'json' 'intersect'
  29862. || lk == 84648 // 'json' 'into'
  29863. || lk == 85160 // 'json' 'is'
  29864. || lk == 85672 // 'json' 'item'
  29865. || lk == 86184 // 'json' 'json'
  29866. || lk == 86696 // 'json' 'json-item'
  29867. || lk == 87208 // 'json' 'jsoniq'
  29868. || lk == 88744 // 'json' 'last'
  29869. || lk == 89256 // 'json' 'lax'
  29870. || lk == 89768 // 'json' 'le'
  29871. || lk == 90792 // 'json' 'let'
  29872. || lk == 91816 // 'json' 'loop'
  29873. || lk == 92840 // 'json' 'lt'
  29874. || lk == 93864 // 'json' 'mod'
  29875. || lk == 94376 // 'json' 'modify'
  29876. || lk == 94888 // 'json' 'module'
  29877. || lk == 95912 // 'json' 'namespace'
  29878. || lk == 96424 // 'json' 'namespace-node'
  29879. || lk == 96936 // 'json' 'ne'
  29880. || lk == 99496 // 'json' 'node'
  29881. || lk == 100008 // 'json' 'nodes'
  29882. || lk == 101032 // 'json' 'null'
  29883. || lk == 101544 // 'json' 'object'
  29884. || lk == 103592 // 'json' 'only'
  29885. || lk == 104104 // 'json' 'option'
  29886. || lk == 104616 // 'json' 'or'
  29887. || lk == 105128 // 'json' 'order'
  29888. || lk == 105640 // 'json' 'ordered'
  29889. || lk == 106152 // 'json' 'ordering'
  29890. || lk == 107688 // 'json' 'parent'
  29891. || lk == 110760 // 'json' 'preceding'
  29892. || lk == 111272 // 'json' 'preceding-sibling'
  29893. || lk == 112808 // 'json' 'processing-instruction'
  29894. || lk == 113832 // 'json' 'rename'
  29895. || lk == 114344 // 'json' 'replace'
  29896. || lk == 114856 // 'json' 'return'
  29897. || lk == 115368 // 'json' 'returning'
  29898. || lk == 115880 // 'json' 'revalidation'
  29899. || lk == 116904 // 'json' 'satisfies'
  29900. || lk == 117416 // 'json' 'schema'
  29901. || lk == 117928 // 'json' 'schema-attribute'
  29902. || lk == 118440 // 'json' 'schema-element'
  29903. || lk == 118952 // 'json' 'score'
  29904. || lk == 119464 // 'json' 'select'
  29905. || lk == 119976 // 'json' 'self'
  29906. || lk == 122536 // 'json' 'sliding'
  29907. || lk == 123048 // 'json' 'some'
  29908. || lk == 123560 // 'json' 'stable'
  29909. || lk == 124072 // 'json' 'start'
  29910. || lk == 125608 // 'json' 'strict'
  29911. || lk == 126632 // 'json' 'structured-item'
  29912. || lk == 127144 // 'json' 'switch'
  29913. || lk == 127656 // 'json' 'text'
  29914. || lk == 129704 // 'json' 'to'
  29915. || lk == 130216 // 'json' 'treat'
  29916. || lk == 130728 // 'json' 'true'
  29917. || lk == 131240 // 'json' 'try'
  29918. || lk == 131752 // 'json' 'tumbling'
  29919. || lk == 132264 // 'json' 'type'
  29920. || lk == 132776 // 'json' 'typeswitch'
  29921. || lk == 133288 // 'json' 'union'
  29922. || lk == 134312 // 'json' 'unordered'
  29923. || lk == 134824 // 'json' 'updating'
  29924. || lk == 136360 // 'json' 'validate'
  29925. || lk == 136872 // 'json' 'value'
  29926. || lk == 137384 // 'json' 'variable'
  29927. || lk == 137896 // 'json' 'version'
  29928. || lk == 139432 // 'json' 'where'
  29929. || lk == 139944 // 'json' 'while'
  29930. || lk == 141480 // 'json' 'with'
  29931. || lk == 144040 // 'json' '{'
  29932. || lk == 145064) // 'json' '{|'
  29933. {
  29934. shiftT(168); // 'json'
  29935. }
  29936. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29937. try_PostfixExpr();
  29938. }
  29939. function parse_JSONInsertExpr()
  29940. {
  29941. eventHandler.startNonterminal("JSONInsertExpr", e0);
  29942. switch (l1)
  29943. {
  29944. case 161: // 'insert'
  29945. lookahead2W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29946. break;
  29947. default:
  29948. lk = l1;
  29949. }
  29950. if (lk != 9889) // 'insert' NCName^Token
  29951. {
  29952. lk = memoized(12, e0);
  29953. if (lk == 0)
  29954. {
  29955. var b0A = b0; var e0A = e0; var l1A = l1;
  29956. var b1A = b1; var e1A = e1; var l2A = l2;
  29957. var b2A = b2; var e2A = e2;
  29958. try
  29959. {
  29960. shiftT(161); // 'insert'
  29961. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29962. switch (l1)
  29963. {
  29964. case 168: // 'json'
  29965. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  29966. break;
  29967. default:
  29968. lk = l1;
  29969. }
  29970. if (lk == 18088) // 'json' '('
  29971. {
  29972. lk = memoized(13, e0);
  29973. if (lk == 0)
  29974. {
  29975. var b0B = b0; var e0B = e0; var l1B = l1;
  29976. var b1B = b1; var e1B = e1; var l2B = l2;
  29977. var b2B = b2; var e2B = e2;
  29978. try
  29979. {
  29980. shiftT(168); // 'json'
  29981. memoize(13, e0B, -1);
  29982. }
  29983. catch (p1B)
  29984. {
  29985. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  29986. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  29987. b2 = b2B; e2 = e2B; end = e2B; }}
  29988. memoize(13, e0B, -2);
  29989. }
  29990. lk = -2;
  29991. }
  29992. }
  29993. if (lk == -1
  29994. || lk == 3240 // 'json' EQName^Token
  29995. || lk == 4264 // 'json' IntegerLiteral
  29996. || lk == 4776 // 'json' DecimalLiteral
  29997. || lk == 5288 // 'json' DoubleLiteral
  29998. || lk == 5800 // 'json' StringLiteral
  29999. || lk == 16040 // 'json' '$'
  30000. || lk == 16552 // 'json' '$$'
  30001. || lk == 17064 // 'json' '%'
  30002. || lk == 18600 // 'json' '(#'
  30003. || lk == 21160 // 'json' '+'
  30004. || lk == 22184 // 'json' '-'
  30005. || lk == 24232 // 'json' '/'
  30006. || lk == 24744 // 'json' '//'
  30007. || lk == 28328 // 'json' '<'
  30008. || lk == 28840 // 'json' '<!--'
  30009. || lk == 30888 // 'json' '<?'
  30010. || lk == 35496 // 'json' '['
  30011. || lk == 36520 // 'json' 'after'
  30012. || lk == 37544 // 'json' 'allowing'
  30013. || lk == 38056 // 'json' 'ancestor'
  30014. || lk == 38568 // 'json' 'ancestor-or-self'
  30015. || lk == 39080 // 'json' 'and'
  30016. || lk == 40104 // 'json' 'append'
  30017. || lk == 40616 // 'json' 'array'
  30018. || lk == 41128 // 'json' 'as'
  30019. || lk == 41640 // 'json' 'ascending'
  30020. || lk == 42152 // 'json' 'at'
  30021. || lk == 42664 // 'json' 'attribute'
  30022. || lk == 43176 // 'json' 'base-uri'
  30023. || lk == 43688 // 'json' 'before'
  30024. || lk == 44200 // 'json' 'boundary-space'
  30025. || lk == 44712 // 'json' 'break'
  30026. || lk == 45736 // 'json' 'case'
  30027. || lk == 46248 // 'json' 'cast'
  30028. || lk == 46760 // 'json' 'castable'
  30029. || lk == 47272 // 'json' 'catch'
  30030. || lk == 48296 // 'json' 'child'
  30031. || lk == 48808 // 'json' 'collation'
  30032. || lk == 49832 // 'json' 'comment'
  30033. || lk == 50344 // 'json' 'constraint'
  30034. || lk == 50856 // 'json' 'construction'
  30035. || lk == 52392 // 'json' 'context'
  30036. || lk == 52904 // 'json' 'continue'
  30037. || lk == 53416 // 'json' 'copy'
  30038. || lk == 53928 // 'json' 'copy-namespaces'
  30039. || lk == 54440 // 'json' 'count'
  30040. || lk == 54952 // 'json' 'decimal-format'
  30041. || lk == 55976 // 'json' 'declare'
  30042. || lk == 56488 // 'json' 'default'
  30043. || lk == 57000 // 'json' 'delete'
  30044. || lk == 57512 // 'json' 'descendant'
  30045. || lk == 58024 // 'json' 'descendant-or-self'
  30046. || lk == 58536 // 'json' 'descending'
  30047. || lk == 61096 // 'json' 'div'
  30048. || lk == 61608 // 'json' 'document'
  30049. || lk == 62120 // 'json' 'document-node'
  30050. || lk == 62632 // 'json' 'element'
  30051. || lk == 63144 // 'json' 'else'
  30052. || lk == 63656 // 'json' 'empty'
  30053. || lk == 64168 // 'json' 'empty-sequence'
  30054. || lk == 64680 // 'json' 'encoding'
  30055. || lk == 65192 // 'json' 'end'
  30056. || lk == 66216 // 'json' 'eq'
  30057. || lk == 66728 // 'json' 'every'
  30058. || lk == 67752 // 'json' 'except'
  30059. || lk == 68264 // 'json' 'exit'
  30060. || lk == 68776 // 'json' 'external'
  30061. || lk == 69288 // 'json' 'false'
  30062. || lk == 69800 // 'json' 'first'
  30063. || lk == 70312 // 'json' 'following'
  30064. || lk == 70824 // 'json' 'following-sibling'
  30065. || lk == 71336 // 'json' 'for'
  30066. || lk == 72872 // 'json' 'from'
  30067. || lk == 73384 // 'json' 'ft-option'
  30068. || lk == 75432 // 'json' 'function'
  30069. || lk == 75944 // 'json' 'ge'
  30070. || lk == 76968 // 'json' 'group'
  30071. || lk == 77992 // 'json' 'gt'
  30072. || lk == 78504 // 'json' 'idiv'
  30073. || lk == 79016 // 'json' 'if'
  30074. || lk == 79528 // 'json' 'import'
  30075. || lk == 80040 // 'json' 'in'
  30076. || lk == 80552 // 'json' 'index'
  30077. || lk == 82600 // 'json' 'insert'
  30078. || lk == 83112 // 'json' 'instance'
  30079. || lk == 83624 // 'json' 'integrity'
  30080. || lk == 84136 // 'json' 'intersect'
  30081. || lk == 84648 // 'json' 'into'
  30082. || lk == 85160 // 'json' 'is'
  30083. || lk == 85672 // 'json' 'item'
  30084. || lk == 86184 // 'json' 'json'
  30085. || lk == 86696 // 'json' 'json-item'
  30086. || lk == 87208 // 'json' 'jsoniq'
  30087. || lk == 88744 // 'json' 'last'
  30088. || lk == 89256 // 'json' 'lax'
  30089. || lk == 89768 // 'json' 'le'
  30090. || lk == 90792 // 'json' 'let'
  30091. || lk == 91816 // 'json' 'loop'
  30092. || lk == 92840 // 'json' 'lt'
  30093. || lk == 93864 // 'json' 'mod'
  30094. || lk == 94376 // 'json' 'modify'
  30095. || lk == 94888 // 'json' 'module'
  30096. || lk == 95912 // 'json' 'namespace'
  30097. || lk == 96424 // 'json' 'namespace-node'
  30098. || lk == 96936 // 'json' 'ne'
  30099. || lk == 99496 // 'json' 'node'
  30100. || lk == 100008 // 'json' 'nodes'
  30101. || lk == 100520 // 'json' 'not'
  30102. || lk == 101032 // 'json' 'null'
  30103. || lk == 101544 // 'json' 'object'
  30104. || lk == 103592 // 'json' 'only'
  30105. || lk == 104104 // 'json' 'option'
  30106. || lk == 104616 // 'json' 'or'
  30107. || lk == 105128 // 'json' 'order'
  30108. || lk == 105640 // 'json' 'ordered'
  30109. || lk == 106152 // 'json' 'ordering'
  30110. || lk == 107688 // 'json' 'parent'
  30111. || lk == 110760 // 'json' 'preceding'
  30112. || lk == 111272 // 'json' 'preceding-sibling'
  30113. || lk == 112808 // 'json' 'processing-instruction'
  30114. || lk == 113832 // 'json' 'rename'
  30115. || lk == 114344 // 'json' 'replace'
  30116. || lk == 114856 // 'json' 'return'
  30117. || lk == 115368 // 'json' 'returning'
  30118. || lk == 115880 // 'json' 'revalidation'
  30119. || lk == 116904 // 'json' 'satisfies'
  30120. || lk == 117416 // 'json' 'schema'
  30121. || lk == 117928 // 'json' 'schema-attribute'
  30122. || lk == 118440 // 'json' 'schema-element'
  30123. || lk == 118952 // 'json' 'score'
  30124. || lk == 119464 // 'json' 'select'
  30125. || lk == 119976 // 'json' 'self'
  30126. || lk == 122536 // 'json' 'sliding'
  30127. || lk == 123048 // 'json' 'some'
  30128. || lk == 123560 // 'json' 'stable'
  30129. || lk == 124072 // 'json' 'start'
  30130. || lk == 125608 // 'json' 'strict'
  30131. || lk == 126632 // 'json' 'structured-item'
  30132. || lk == 127144 // 'json' 'switch'
  30133. || lk == 127656 // 'json' 'text'
  30134. || lk == 129704 // 'json' 'to'
  30135. || lk == 130216 // 'json' 'treat'
  30136. || lk == 130728 // 'json' 'true'
  30137. || lk == 131240 // 'json' 'try'
  30138. || lk == 131752 // 'json' 'tumbling'
  30139. || lk == 132264 // 'json' 'type'
  30140. || lk == 132776 // 'json' 'typeswitch'
  30141. || lk == 133288 // 'json' 'union'
  30142. || lk == 134312 // 'json' 'unordered'
  30143. || lk == 134824 // 'json' 'updating'
  30144. || lk == 136360 // 'json' 'validate'
  30145. || lk == 136872 // 'json' 'value'
  30146. || lk == 137384 // 'json' 'variable'
  30147. || lk == 137896 // 'json' 'version'
  30148. || lk == 139432 // 'json' 'where'
  30149. || lk == 139944 // 'json' 'while'
  30150. || lk == 141480 // 'json' 'with'
  30151. || lk == 144040 // 'json' '{'
  30152. || lk == 145064) // 'json' '{|'
  30153. {
  30154. shiftT(168); // 'json'
  30155. }
  30156. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30157. try_ExprSingle();
  30158. shiftT(165); // 'into'
  30159. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30160. try_ExprSingle();
  30161. switch (l1)
  30162. {
  30163. case 82: // 'at'
  30164. lookahead2W(72); // S^WS | '(:' | 'position'
  30165. break;
  30166. default:
  30167. lk = l1;
  30168. }
  30169. if (lk == 110162) // 'at' 'position'
  30170. {
  30171. lk = memoized(14, e0);
  30172. if (lk == 0)
  30173. {
  30174. var b0B = b0; var e0B = e0; var l1B = l1;
  30175. var b1B = b1; var e1B = e1; var l2B = l2;
  30176. var b2B = b2; var e2B = e2;
  30177. try
  30178. {
  30179. shiftT(82); // 'at'
  30180. lookahead1W(72); // S^WS | '(:' | 'position'
  30181. shiftT(215); // 'position'
  30182. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30183. try_ExprSingle();
  30184. memoize(14, e0B, -1);
  30185. }
  30186. catch (p1B)
  30187. {
  30188. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30189. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30190. b2 = b2B; e2 = e2B; end = e2B; }}
  30191. memoize(14, e0B, -2);
  30192. }
  30193. lk = -2;
  30194. }
  30195. }
  30196. if (lk == -1)
  30197. {
  30198. shiftT(82); // 'at'
  30199. lookahead1W(72); // S^WS | '(:' | 'position'
  30200. shiftT(215); // 'position'
  30201. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30202. try_ExprSingle();
  30203. }
  30204. lk = -1;
  30205. }
  30206. catch (p1A)
  30207. {
  30208. lk = -2;
  30209. }
  30210. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  30211. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  30212. b2 = b2A; e2 = e2A; end = e2A; }}
  30213. memoize(12, e0, lk);
  30214. }
  30215. }
  30216. switch (lk)
  30217. {
  30218. case -1:
  30219. shift(161); // 'insert'
  30220. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30221. switch (l1)
  30222. {
  30223. case 168: // 'json'
  30224. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30225. break;
  30226. default:
  30227. lk = l1;
  30228. }
  30229. if (lk == 18088) // 'json' '('
  30230. {
  30231. lk = memoized(13, e0);
  30232. if (lk == 0)
  30233. {
  30234. var b0B = b0; var e0B = e0; var l1B = l1;
  30235. var b1B = b1; var e1B = e1; var l2B = l2;
  30236. var b2B = b2; var e2B = e2;
  30237. try
  30238. {
  30239. shiftT(168); // 'json'
  30240. lk = -1;
  30241. }
  30242. catch (p1B)
  30243. {
  30244. lk = -2;
  30245. }
  30246. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30247. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30248. b2 = b2B; e2 = e2B; end = e2B; }}
  30249. memoize(13, e0, lk);
  30250. }
  30251. }
  30252. if (lk == -1
  30253. || lk == 3240 // 'json' EQName^Token
  30254. || lk == 4264 // 'json' IntegerLiteral
  30255. || lk == 4776 // 'json' DecimalLiteral
  30256. || lk == 5288 // 'json' DoubleLiteral
  30257. || lk == 5800 // 'json' StringLiteral
  30258. || lk == 16040 // 'json' '$'
  30259. || lk == 16552 // 'json' '$$'
  30260. || lk == 17064 // 'json' '%'
  30261. || lk == 18600 // 'json' '(#'
  30262. || lk == 21160 // 'json' '+'
  30263. || lk == 22184 // 'json' '-'
  30264. || lk == 24232 // 'json' '/'
  30265. || lk == 24744 // 'json' '//'
  30266. || lk == 28328 // 'json' '<'
  30267. || lk == 28840 // 'json' '<!--'
  30268. || lk == 30888 // 'json' '<?'
  30269. || lk == 35496 // 'json' '['
  30270. || lk == 36520 // 'json' 'after'
  30271. || lk == 37544 // 'json' 'allowing'
  30272. || lk == 38056 // 'json' 'ancestor'
  30273. || lk == 38568 // 'json' 'ancestor-or-self'
  30274. || lk == 39080 // 'json' 'and'
  30275. || lk == 40104 // 'json' 'append'
  30276. || lk == 40616 // 'json' 'array'
  30277. || lk == 41128 // 'json' 'as'
  30278. || lk == 41640 // 'json' 'ascending'
  30279. || lk == 42152 // 'json' 'at'
  30280. || lk == 42664 // 'json' 'attribute'
  30281. || lk == 43176 // 'json' 'base-uri'
  30282. || lk == 43688 // 'json' 'before'
  30283. || lk == 44200 // 'json' 'boundary-space'
  30284. || lk == 44712 // 'json' 'break'
  30285. || lk == 45736 // 'json' 'case'
  30286. || lk == 46248 // 'json' 'cast'
  30287. || lk == 46760 // 'json' 'castable'
  30288. || lk == 47272 // 'json' 'catch'
  30289. || lk == 48296 // 'json' 'child'
  30290. || lk == 48808 // 'json' 'collation'
  30291. || lk == 49832 // 'json' 'comment'
  30292. || lk == 50344 // 'json' 'constraint'
  30293. || lk == 50856 // 'json' 'construction'
  30294. || lk == 52392 // 'json' 'context'
  30295. || lk == 52904 // 'json' 'continue'
  30296. || lk == 53416 // 'json' 'copy'
  30297. || lk == 53928 // 'json' 'copy-namespaces'
  30298. || lk == 54440 // 'json' 'count'
  30299. || lk == 54952 // 'json' 'decimal-format'
  30300. || lk == 55976 // 'json' 'declare'
  30301. || lk == 56488 // 'json' 'default'
  30302. || lk == 57000 // 'json' 'delete'
  30303. || lk == 57512 // 'json' 'descendant'
  30304. || lk == 58024 // 'json' 'descendant-or-self'
  30305. || lk == 58536 // 'json' 'descending'
  30306. || lk == 61096 // 'json' 'div'
  30307. || lk == 61608 // 'json' 'document'
  30308. || lk == 62120 // 'json' 'document-node'
  30309. || lk == 62632 // 'json' 'element'
  30310. || lk == 63144 // 'json' 'else'
  30311. || lk == 63656 // 'json' 'empty'
  30312. || lk == 64168 // 'json' 'empty-sequence'
  30313. || lk == 64680 // 'json' 'encoding'
  30314. || lk == 65192 // 'json' 'end'
  30315. || lk == 66216 // 'json' 'eq'
  30316. || lk == 66728 // 'json' 'every'
  30317. || lk == 67752 // 'json' 'except'
  30318. || lk == 68264 // 'json' 'exit'
  30319. || lk == 68776 // 'json' 'external'
  30320. || lk == 69288 // 'json' 'false'
  30321. || lk == 69800 // 'json' 'first'
  30322. || lk == 70312 // 'json' 'following'
  30323. || lk == 70824 // 'json' 'following-sibling'
  30324. || lk == 71336 // 'json' 'for'
  30325. || lk == 72872 // 'json' 'from'
  30326. || lk == 73384 // 'json' 'ft-option'
  30327. || lk == 75432 // 'json' 'function'
  30328. || lk == 75944 // 'json' 'ge'
  30329. || lk == 76968 // 'json' 'group'
  30330. || lk == 77992 // 'json' 'gt'
  30331. || lk == 78504 // 'json' 'idiv'
  30332. || lk == 79016 // 'json' 'if'
  30333. || lk == 79528 // 'json' 'import'
  30334. || lk == 80040 // 'json' 'in'
  30335. || lk == 80552 // 'json' 'index'
  30336. || lk == 82600 // 'json' 'insert'
  30337. || lk == 83112 // 'json' 'instance'
  30338. || lk == 83624 // 'json' 'integrity'
  30339. || lk == 84136 // 'json' 'intersect'
  30340. || lk == 84648 // 'json' 'into'
  30341. || lk == 85160 // 'json' 'is'
  30342. || lk == 85672 // 'json' 'item'
  30343. || lk == 86184 // 'json' 'json'
  30344. || lk == 86696 // 'json' 'json-item'
  30345. || lk == 87208 // 'json' 'jsoniq'
  30346. || lk == 88744 // 'json' 'last'
  30347. || lk == 89256 // 'json' 'lax'
  30348. || lk == 89768 // 'json' 'le'
  30349. || lk == 90792 // 'json' 'let'
  30350. || lk == 91816 // 'json' 'loop'
  30351. || lk == 92840 // 'json' 'lt'
  30352. || lk == 93864 // 'json' 'mod'
  30353. || lk == 94376 // 'json' 'modify'
  30354. || lk == 94888 // 'json' 'module'
  30355. || lk == 95912 // 'json' 'namespace'
  30356. || lk == 96424 // 'json' 'namespace-node'
  30357. || lk == 96936 // 'json' 'ne'
  30358. || lk == 99496 // 'json' 'node'
  30359. || lk == 100008 // 'json' 'nodes'
  30360. || lk == 100520 // 'json' 'not'
  30361. || lk == 101032 // 'json' 'null'
  30362. || lk == 101544 // 'json' 'object'
  30363. || lk == 103592 // 'json' 'only'
  30364. || lk == 104104 // 'json' 'option'
  30365. || lk == 104616 // 'json' 'or'
  30366. || lk == 105128 // 'json' 'order'
  30367. || lk == 105640 // 'json' 'ordered'
  30368. || lk == 106152 // 'json' 'ordering'
  30369. || lk == 107688 // 'json' 'parent'
  30370. || lk == 110760 // 'json' 'preceding'
  30371. || lk == 111272 // 'json' 'preceding-sibling'
  30372. || lk == 112808 // 'json' 'processing-instruction'
  30373. || lk == 113832 // 'json' 'rename'
  30374. || lk == 114344 // 'json' 'replace'
  30375. || lk == 114856 // 'json' 'return'
  30376. || lk == 115368 // 'json' 'returning'
  30377. || lk == 115880 // 'json' 'revalidation'
  30378. || lk == 116904 // 'json' 'satisfies'
  30379. || lk == 117416 // 'json' 'schema'
  30380. || lk == 117928 // 'json' 'schema-attribute'
  30381. || lk == 118440 // 'json' 'schema-element'
  30382. || lk == 118952 // 'json' 'score'
  30383. || lk == 119464 // 'json' 'select'
  30384. || lk == 119976 // 'json' 'self'
  30385. || lk == 122536 // 'json' 'sliding'
  30386. || lk == 123048 // 'json' 'some'
  30387. || lk == 123560 // 'json' 'stable'
  30388. || lk == 124072 // 'json' 'start'
  30389. || lk == 125608 // 'json' 'strict'
  30390. || lk == 126632 // 'json' 'structured-item'
  30391. || lk == 127144 // 'json' 'switch'
  30392. || lk == 127656 // 'json' 'text'
  30393. || lk == 129704 // 'json' 'to'
  30394. || lk == 130216 // 'json' 'treat'
  30395. || lk == 130728 // 'json' 'true'
  30396. || lk == 131240 // 'json' 'try'
  30397. || lk == 131752 // 'json' 'tumbling'
  30398. || lk == 132264 // 'json' 'type'
  30399. || lk == 132776 // 'json' 'typeswitch'
  30400. || lk == 133288 // 'json' 'union'
  30401. || lk == 134312 // 'json' 'unordered'
  30402. || lk == 134824 // 'json' 'updating'
  30403. || lk == 136360 // 'json' 'validate'
  30404. || lk == 136872 // 'json' 'value'
  30405. || lk == 137384 // 'json' 'variable'
  30406. || lk == 137896 // 'json' 'version'
  30407. || lk == 139432 // 'json' 'where'
  30408. || lk == 139944 // 'json' 'while'
  30409. || lk == 141480 // 'json' 'with'
  30410. || lk == 144040 // 'json' '{'
  30411. || lk == 145064) // 'json' '{|'
  30412. {
  30413. shift(168); // 'json'
  30414. }
  30415. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30416. whitespace();
  30417. parse_ExprSingle();
  30418. shift(165); // 'into'
  30419. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30420. whitespace();
  30421. parse_ExprSingle();
  30422. switch (l1)
  30423. {
  30424. case 82: // 'at'
  30425. lookahead2W(72); // S^WS | '(:' | 'position'
  30426. break;
  30427. default:
  30428. lk = l1;
  30429. }
  30430. if (lk == 110162) // 'at' 'position'
  30431. {
  30432. lk = memoized(14, e0);
  30433. if (lk == 0)
  30434. {
  30435. var b0B = b0; var e0B = e0; var l1B = l1;
  30436. var b1B = b1; var e1B = e1; var l2B = l2;
  30437. var b2B = b2; var e2B = e2;
  30438. try
  30439. {
  30440. shiftT(82); // 'at'
  30441. lookahead1W(72); // S^WS | '(:' | 'position'
  30442. shiftT(215); // 'position'
  30443. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30444. try_ExprSingle();
  30445. lk = -1;
  30446. }
  30447. catch (p1B)
  30448. {
  30449. lk = -2;
  30450. }
  30451. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30452. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30453. b2 = b2B; e2 = e2B; end = e2B; }}
  30454. memoize(14, e0, lk);
  30455. }
  30456. }
  30457. if (lk == -1)
  30458. {
  30459. shift(82); // 'at'
  30460. lookahead1W(72); // S^WS | '(:' | 'position'
  30461. shift(215); // 'position'
  30462. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30463. whitespace();
  30464. parse_ExprSingle();
  30465. }
  30466. break;
  30467. default:
  30468. shift(161); // 'insert'
  30469. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30470. switch (l1)
  30471. {
  30472. case 168: // 'json'
  30473. lookahead2W(281); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30474. break;
  30475. default:
  30476. lk = l1;
  30477. }
  30478. if (lk == 18088) // 'json' '('
  30479. {
  30480. lk = memoized(15, e0);
  30481. if (lk == 0)
  30482. {
  30483. var b0B = b0; var e0B = e0; var l1B = l1;
  30484. var b1B = b1; var e1B = e1; var l2B = l2;
  30485. var b2B = b2; var e2B = e2;
  30486. try
  30487. {
  30488. shiftT(168); // 'json'
  30489. lk = -1;
  30490. }
  30491. catch (p1B)
  30492. {
  30493. lk = -2;
  30494. }
  30495. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30496. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30497. b2 = b2B; e2 = e2B; end = e2B; }}
  30498. memoize(15, e0, lk);
  30499. }
  30500. }
  30501. if (lk == -1
  30502. || lk == 3240 // 'json' EQName^Token
  30503. || lk == 4264 // 'json' IntegerLiteral
  30504. || lk == 4776 // 'json' DecimalLiteral
  30505. || lk == 5288 // 'json' DoubleLiteral
  30506. || lk == 5800 // 'json' StringLiteral
  30507. || lk == 9896 // 'json' NCName^Token
  30508. || lk == 16040 // 'json' '$'
  30509. || lk == 16552 // 'json' '$$'
  30510. || lk == 17064 // 'json' '%'
  30511. || lk == 18600 // 'json' '(#'
  30512. || lk == 21160 // 'json' '+'
  30513. || lk == 22184 // 'json' '-'
  30514. || lk == 24232 // 'json' '/'
  30515. || lk == 24744 // 'json' '//'
  30516. || lk == 28328 // 'json' '<'
  30517. || lk == 28840 // 'json' '<!--'
  30518. || lk == 30888 // 'json' '<?'
  30519. || lk == 35496 // 'json' '['
  30520. || lk == 36520 // 'json' 'after'
  30521. || lk == 37544 // 'json' 'allowing'
  30522. || lk == 38056 // 'json' 'ancestor'
  30523. || lk == 38568 // 'json' 'ancestor-or-self'
  30524. || lk == 39080 // 'json' 'and'
  30525. || lk == 40104 // 'json' 'append'
  30526. || lk == 40616 // 'json' 'array'
  30527. || lk == 41128 // 'json' 'as'
  30528. || lk == 41640 // 'json' 'ascending'
  30529. || lk == 42152 // 'json' 'at'
  30530. || lk == 42664 // 'json' 'attribute'
  30531. || lk == 43176 // 'json' 'base-uri'
  30532. || lk == 43688 // 'json' 'before'
  30533. || lk == 44200 // 'json' 'boundary-space'
  30534. || lk == 44712 // 'json' 'break'
  30535. || lk == 45736 // 'json' 'case'
  30536. || lk == 46248 // 'json' 'cast'
  30537. || lk == 46760 // 'json' 'castable'
  30538. || lk == 47272 // 'json' 'catch'
  30539. || lk == 48296 // 'json' 'child'
  30540. || lk == 48808 // 'json' 'collation'
  30541. || lk == 49832 // 'json' 'comment'
  30542. || lk == 50344 // 'json' 'constraint'
  30543. || lk == 50856 // 'json' 'construction'
  30544. || lk == 52392 // 'json' 'context'
  30545. || lk == 52904 // 'json' 'continue'
  30546. || lk == 53416 // 'json' 'copy'
  30547. || lk == 53928 // 'json' 'copy-namespaces'
  30548. || lk == 54440 // 'json' 'count'
  30549. || lk == 54952 // 'json' 'decimal-format'
  30550. || lk == 55976 // 'json' 'declare'
  30551. || lk == 56488 // 'json' 'default'
  30552. || lk == 57000 // 'json' 'delete'
  30553. || lk == 57512 // 'json' 'descendant'
  30554. || lk == 58024 // 'json' 'descendant-or-self'
  30555. || lk == 58536 // 'json' 'descending'
  30556. || lk == 61096 // 'json' 'div'
  30557. || lk == 61608 // 'json' 'document'
  30558. || lk == 62120 // 'json' 'document-node'
  30559. || lk == 62632 // 'json' 'element'
  30560. || lk == 63144 // 'json' 'else'
  30561. || lk == 63656 // 'json' 'empty'
  30562. || lk == 64168 // 'json' 'empty-sequence'
  30563. || lk == 64680 // 'json' 'encoding'
  30564. || lk == 65192 // 'json' 'end'
  30565. || lk == 66216 // 'json' 'eq'
  30566. || lk == 66728 // 'json' 'every'
  30567. || lk == 67752 // 'json' 'except'
  30568. || lk == 68264 // 'json' 'exit'
  30569. || lk == 68776 // 'json' 'external'
  30570. || lk == 69288 // 'json' 'false'
  30571. || lk == 69800 // 'json' 'first'
  30572. || lk == 70312 // 'json' 'following'
  30573. || lk == 70824 // 'json' 'following-sibling'
  30574. || lk == 71336 // 'json' 'for'
  30575. || lk == 72872 // 'json' 'from'
  30576. || lk == 73384 // 'json' 'ft-option'
  30577. || lk == 75432 // 'json' 'function'
  30578. || lk == 75944 // 'json' 'ge'
  30579. || lk == 76968 // 'json' 'group'
  30580. || lk == 77992 // 'json' 'gt'
  30581. || lk == 78504 // 'json' 'idiv'
  30582. || lk == 79016 // 'json' 'if'
  30583. || lk == 79528 // 'json' 'import'
  30584. || lk == 80040 // 'json' 'in'
  30585. || lk == 80552 // 'json' 'index'
  30586. || lk == 82600 // 'json' 'insert'
  30587. || lk == 83112 // 'json' 'instance'
  30588. || lk == 83624 // 'json' 'integrity'
  30589. || lk == 84136 // 'json' 'intersect'
  30590. || lk == 84648 // 'json' 'into'
  30591. || lk == 85160 // 'json' 'is'
  30592. || lk == 85672 // 'json' 'item'
  30593. || lk == 86184 // 'json' 'json'
  30594. || lk == 86696 // 'json' 'json-item'
  30595. || lk == 87208 // 'json' 'jsoniq'
  30596. || lk == 88744 // 'json' 'last'
  30597. || lk == 89256 // 'json' 'lax'
  30598. || lk == 89768 // 'json' 'le'
  30599. || lk == 90792 // 'json' 'let'
  30600. || lk == 91816 // 'json' 'loop'
  30601. || lk == 92840 // 'json' 'lt'
  30602. || lk == 93864 // 'json' 'mod'
  30603. || lk == 94376 // 'json' 'modify'
  30604. || lk == 94888 // 'json' 'module'
  30605. || lk == 95912 // 'json' 'namespace'
  30606. || lk == 96424 // 'json' 'namespace-node'
  30607. || lk == 96936 // 'json' 'ne'
  30608. || lk == 99496 // 'json' 'node'
  30609. || lk == 100008 // 'json' 'nodes'
  30610. || lk == 100520 // 'json' 'not'
  30611. || lk == 101032 // 'json' 'null'
  30612. || lk == 101544 // 'json' 'object'
  30613. || lk == 103592 // 'json' 'only'
  30614. || lk == 104104 // 'json' 'option'
  30615. || lk == 104616 // 'json' 'or'
  30616. || lk == 105128 // 'json' 'order'
  30617. || lk == 105640 // 'json' 'ordered'
  30618. || lk == 106152 // 'json' 'ordering'
  30619. || lk == 107688 // 'json' 'parent'
  30620. || lk == 110760 // 'json' 'preceding'
  30621. || lk == 111272 // 'json' 'preceding-sibling'
  30622. || lk == 112808 // 'json' 'processing-instruction'
  30623. || lk == 113832 // 'json' 'rename'
  30624. || lk == 114344 // 'json' 'replace'
  30625. || lk == 114856 // 'json' 'return'
  30626. || lk == 115368 // 'json' 'returning'
  30627. || lk == 115880 // 'json' 'revalidation'
  30628. || lk == 116904 // 'json' 'satisfies'
  30629. || lk == 117416 // 'json' 'schema'
  30630. || lk == 117928 // 'json' 'schema-attribute'
  30631. || lk == 118440 // 'json' 'schema-element'
  30632. || lk == 118952 // 'json' 'score'
  30633. || lk == 119464 // 'json' 'select'
  30634. || lk == 119976 // 'json' 'self'
  30635. || lk == 122536 // 'json' 'sliding'
  30636. || lk == 123048 // 'json' 'some'
  30637. || lk == 123560 // 'json' 'stable'
  30638. || lk == 124072 // 'json' 'start'
  30639. || lk == 125608 // 'json' 'strict'
  30640. || lk == 126632 // 'json' 'structured-item'
  30641. || lk == 127144 // 'json' 'switch'
  30642. || lk == 127656 // 'json' 'text'
  30643. || lk == 129704 // 'json' 'to'
  30644. || lk == 130216 // 'json' 'treat'
  30645. || lk == 130728 // 'json' 'true'
  30646. || lk == 131240 // 'json' 'try'
  30647. || lk == 131752 // 'json' 'tumbling'
  30648. || lk == 132264 // 'json' 'type'
  30649. || lk == 132776 // 'json' 'typeswitch'
  30650. || lk == 133288 // 'json' 'union'
  30651. || lk == 134312 // 'json' 'unordered'
  30652. || lk == 134824 // 'json' 'updating'
  30653. || lk == 136360 // 'json' 'validate'
  30654. || lk == 136872 // 'json' 'value'
  30655. || lk == 137384 // 'json' 'variable'
  30656. || lk == 137896 // 'json' 'version'
  30657. || lk == 139432 // 'json' 'where'
  30658. || lk == 139944 // 'json' 'while'
  30659. || lk == 141480 // 'json' 'with'
  30660. || lk == 144040 // 'json' '{'
  30661. || lk == 145064) // 'json' '{|'
  30662. {
  30663. shift(168); // 'json'
  30664. }
  30665. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30666. whitespace();
  30667. parse_PairConstructorList();
  30668. shift(165); // 'into'
  30669. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30670. whitespace();
  30671. parse_ExprSingle();
  30672. }
  30673. eventHandler.endNonterminal("JSONInsertExpr", e0);
  30674. }
  30675. function try_JSONInsertExpr()
  30676. {
  30677. switch (l1)
  30678. {
  30679. case 161: // 'insert'
  30680. lookahead2W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30681. break;
  30682. default:
  30683. lk = l1;
  30684. }
  30685. if (lk != 9889) // 'insert' NCName^Token
  30686. {
  30687. lk = memoized(12, e0);
  30688. if (lk == 0)
  30689. {
  30690. var b0A = b0; var e0A = e0; var l1A = l1;
  30691. var b1A = b1; var e1A = e1; var l2A = l2;
  30692. var b2A = b2; var e2A = e2;
  30693. try
  30694. {
  30695. shiftT(161); // 'insert'
  30696. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30697. switch (l1)
  30698. {
  30699. case 168: // 'json'
  30700. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30701. break;
  30702. default:
  30703. lk = l1;
  30704. }
  30705. if (lk == 18088) // 'json' '('
  30706. {
  30707. lk = memoized(13, e0);
  30708. if (lk == 0)
  30709. {
  30710. var b0B = b0; var e0B = e0; var l1B = l1;
  30711. var b1B = b1; var e1B = e1; var l2B = l2;
  30712. var b2B = b2; var e2B = e2;
  30713. try
  30714. {
  30715. shiftT(168); // 'json'
  30716. memoize(13, e0B, -1);
  30717. }
  30718. catch (p1B)
  30719. {
  30720. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30721. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30722. b2 = b2B; e2 = e2B; end = e2B; }}
  30723. memoize(13, e0B, -2);
  30724. }
  30725. lk = -2;
  30726. }
  30727. }
  30728. if (lk == -1
  30729. || lk == 3240 // 'json' EQName^Token
  30730. || lk == 4264 // 'json' IntegerLiteral
  30731. || lk == 4776 // 'json' DecimalLiteral
  30732. || lk == 5288 // 'json' DoubleLiteral
  30733. || lk == 5800 // 'json' StringLiteral
  30734. || lk == 16040 // 'json' '$'
  30735. || lk == 16552 // 'json' '$$'
  30736. || lk == 17064 // 'json' '%'
  30737. || lk == 18600 // 'json' '(#'
  30738. || lk == 21160 // 'json' '+'
  30739. || lk == 22184 // 'json' '-'
  30740. || lk == 24232 // 'json' '/'
  30741. || lk == 24744 // 'json' '//'
  30742. || lk == 28328 // 'json' '<'
  30743. || lk == 28840 // 'json' '<!--'
  30744. || lk == 30888 // 'json' '<?'
  30745. || lk == 35496 // 'json' '['
  30746. || lk == 36520 // 'json' 'after'
  30747. || lk == 37544 // 'json' 'allowing'
  30748. || lk == 38056 // 'json' 'ancestor'
  30749. || lk == 38568 // 'json' 'ancestor-or-self'
  30750. || lk == 39080 // 'json' 'and'
  30751. || lk == 40104 // 'json' 'append'
  30752. || lk == 40616 // 'json' 'array'
  30753. || lk == 41128 // 'json' 'as'
  30754. || lk == 41640 // 'json' 'ascending'
  30755. || lk == 42152 // 'json' 'at'
  30756. || lk == 42664 // 'json' 'attribute'
  30757. || lk == 43176 // 'json' 'base-uri'
  30758. || lk == 43688 // 'json' 'before'
  30759. || lk == 44200 // 'json' 'boundary-space'
  30760. || lk == 44712 // 'json' 'break'
  30761. || lk == 45736 // 'json' 'case'
  30762. || lk == 46248 // 'json' 'cast'
  30763. || lk == 46760 // 'json' 'castable'
  30764. || lk == 47272 // 'json' 'catch'
  30765. || lk == 48296 // 'json' 'child'
  30766. || lk == 48808 // 'json' 'collation'
  30767. || lk == 49832 // 'json' 'comment'
  30768. || lk == 50344 // 'json' 'constraint'
  30769. || lk == 50856 // 'json' 'construction'
  30770. || lk == 52392 // 'json' 'context'
  30771. || lk == 52904 // 'json' 'continue'
  30772. || lk == 53416 // 'json' 'copy'
  30773. || lk == 53928 // 'json' 'copy-namespaces'
  30774. || lk == 54440 // 'json' 'count'
  30775. || lk == 54952 // 'json' 'decimal-format'
  30776. || lk == 55976 // 'json' 'declare'
  30777. || lk == 56488 // 'json' 'default'
  30778. || lk == 57000 // 'json' 'delete'
  30779. || lk == 57512 // 'json' 'descendant'
  30780. || lk == 58024 // 'json' 'descendant-or-self'
  30781. || lk == 58536 // 'json' 'descending'
  30782. || lk == 61096 // 'json' 'div'
  30783. || lk == 61608 // 'json' 'document'
  30784. || lk == 62120 // 'json' 'document-node'
  30785. || lk == 62632 // 'json' 'element'
  30786. || lk == 63144 // 'json' 'else'
  30787. || lk == 63656 // 'json' 'empty'
  30788. || lk == 64168 // 'json' 'empty-sequence'
  30789. || lk == 64680 // 'json' 'encoding'
  30790. || lk == 65192 // 'json' 'end'
  30791. || lk == 66216 // 'json' 'eq'
  30792. || lk == 66728 // 'json' 'every'
  30793. || lk == 67752 // 'json' 'except'
  30794. || lk == 68264 // 'json' 'exit'
  30795. || lk == 68776 // 'json' 'external'
  30796. || lk == 69288 // 'json' 'false'
  30797. || lk == 69800 // 'json' 'first'
  30798. || lk == 70312 // 'json' 'following'
  30799. || lk == 70824 // 'json' 'following-sibling'
  30800. || lk == 71336 // 'json' 'for'
  30801. || lk == 72872 // 'json' 'from'
  30802. || lk == 73384 // 'json' 'ft-option'
  30803. || lk == 75432 // 'json' 'function'
  30804. || lk == 75944 // 'json' 'ge'
  30805. || lk == 76968 // 'json' 'group'
  30806. || lk == 77992 // 'json' 'gt'
  30807. || lk == 78504 // 'json' 'idiv'
  30808. || lk == 79016 // 'json' 'if'
  30809. || lk == 79528 // 'json' 'import'
  30810. || lk == 80040 // 'json' 'in'
  30811. || lk == 80552 // 'json' 'index'
  30812. || lk == 82600 // 'json' 'insert'
  30813. || lk == 83112 // 'json' 'instance'
  30814. || lk == 83624 // 'json' 'integrity'
  30815. || lk == 84136 // 'json' 'intersect'
  30816. || lk == 84648 // 'json' 'into'
  30817. || lk == 85160 // 'json' 'is'
  30818. || lk == 85672 // 'json' 'item'
  30819. || lk == 86184 // 'json' 'json'
  30820. || lk == 86696 // 'json' 'json-item'
  30821. || lk == 87208 // 'json' 'jsoniq'
  30822. || lk == 88744 // 'json' 'last'
  30823. || lk == 89256 // 'json' 'lax'
  30824. || lk == 89768 // 'json' 'le'
  30825. || lk == 90792 // 'json' 'let'
  30826. || lk == 91816 // 'json' 'loop'
  30827. || lk == 92840 // 'json' 'lt'
  30828. || lk == 93864 // 'json' 'mod'
  30829. || lk == 94376 // 'json' 'modify'
  30830. || lk == 94888 // 'json' 'module'
  30831. || lk == 95912 // 'json' 'namespace'
  30832. || lk == 96424 // 'json' 'namespace-node'
  30833. || lk == 96936 // 'json' 'ne'
  30834. || lk == 99496 // 'json' 'node'
  30835. || lk == 100008 // 'json' 'nodes'
  30836. || lk == 100520 // 'json' 'not'
  30837. || lk == 101032 // 'json' 'null'
  30838. || lk == 101544 // 'json' 'object'
  30839. || lk == 103592 // 'json' 'only'
  30840. || lk == 104104 // 'json' 'option'
  30841. || lk == 104616 // 'json' 'or'
  30842. || lk == 105128 // 'json' 'order'
  30843. || lk == 105640 // 'json' 'ordered'
  30844. || lk == 106152 // 'json' 'ordering'
  30845. || lk == 107688 // 'json' 'parent'
  30846. || lk == 110760 // 'json' 'preceding'
  30847. || lk == 111272 // 'json' 'preceding-sibling'
  30848. || lk == 112808 // 'json' 'processing-instruction'
  30849. || lk == 113832 // 'json' 'rename'
  30850. || lk == 114344 // 'json' 'replace'
  30851. || lk == 114856 // 'json' 'return'
  30852. || lk == 115368 // 'json' 'returning'
  30853. || lk == 115880 // 'json' 'revalidation'
  30854. || lk == 116904 // 'json' 'satisfies'
  30855. || lk == 117416 // 'json' 'schema'
  30856. || lk == 117928 // 'json' 'schema-attribute'
  30857. || lk == 118440 // 'json' 'schema-element'
  30858. || lk == 118952 // 'json' 'score'
  30859. || lk == 119464 // 'json' 'select'
  30860. || lk == 119976 // 'json' 'self'
  30861. || lk == 122536 // 'json' 'sliding'
  30862. || lk == 123048 // 'json' 'some'
  30863. || lk == 123560 // 'json' 'stable'
  30864. || lk == 124072 // 'json' 'start'
  30865. || lk == 125608 // 'json' 'strict'
  30866. || lk == 126632 // 'json' 'structured-item'
  30867. || lk == 127144 // 'json' 'switch'
  30868. || lk == 127656 // 'json' 'text'
  30869. || lk == 129704 // 'json' 'to'
  30870. || lk == 130216 // 'json' 'treat'
  30871. || lk == 130728 // 'json' 'true'
  30872. || lk == 131240 // 'json' 'try'
  30873. || lk == 131752 // 'json' 'tumbling'
  30874. || lk == 132264 // 'json' 'type'
  30875. || lk == 132776 // 'json' 'typeswitch'
  30876. || lk == 133288 // 'json' 'union'
  30877. || lk == 134312 // 'json' 'unordered'
  30878. || lk == 134824 // 'json' 'updating'
  30879. || lk == 136360 // 'json' 'validate'
  30880. || lk == 136872 // 'json' 'value'
  30881. || lk == 137384 // 'json' 'variable'
  30882. || lk == 137896 // 'json' 'version'
  30883. || lk == 139432 // 'json' 'where'
  30884. || lk == 139944 // 'json' 'while'
  30885. || lk == 141480 // 'json' 'with'
  30886. || lk == 144040 // 'json' '{'
  30887. || lk == 145064) // 'json' '{|'
  30888. {
  30889. shiftT(168); // 'json'
  30890. }
  30891. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30892. try_ExprSingle();
  30893. shiftT(165); // 'into'
  30894. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30895. try_ExprSingle();
  30896. switch (l1)
  30897. {
  30898. case 82: // 'at'
  30899. lookahead2W(72); // S^WS | '(:' | 'position'
  30900. break;
  30901. default:
  30902. lk = l1;
  30903. }
  30904. if (lk == 110162) // 'at' 'position'
  30905. {
  30906. lk = memoized(14, e0);
  30907. if (lk == 0)
  30908. {
  30909. var b0B = b0; var e0B = e0; var l1B = l1;
  30910. var b1B = b1; var e1B = e1; var l2B = l2;
  30911. var b2B = b2; var e2B = e2;
  30912. try
  30913. {
  30914. shiftT(82); // 'at'
  30915. lookahead1W(72); // S^WS | '(:' | 'position'
  30916. shiftT(215); // 'position'
  30917. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30918. try_ExprSingle();
  30919. memoize(14, e0B, -1);
  30920. }
  30921. catch (p1B)
  30922. {
  30923. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30924. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30925. b2 = b2B; e2 = e2B; end = e2B; }}
  30926. memoize(14, e0B, -2);
  30927. }
  30928. lk = -2;
  30929. }
  30930. }
  30931. if (lk == -1)
  30932. {
  30933. shiftT(82); // 'at'
  30934. lookahead1W(72); // S^WS | '(:' | 'position'
  30935. shiftT(215); // 'position'
  30936. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30937. try_ExprSingle();
  30938. }
  30939. memoize(12, e0A, -1);
  30940. lk = -3;
  30941. }
  30942. catch (p1A)
  30943. {
  30944. lk = -2;
  30945. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  30946. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  30947. b2 = b2A; e2 = e2A; end = e2A; }}
  30948. memoize(12, e0A, -2);
  30949. }
  30950. }
  30951. }
  30952. switch (lk)
  30953. {
  30954. case -1:
  30955. shiftT(161); // 'insert'
  30956. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30957. switch (l1)
  30958. {
  30959. case 168: // 'json'
  30960. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  30961. break;
  30962. default:
  30963. lk = l1;
  30964. }
  30965. if (lk == 18088) // 'json' '('
  30966. {
  30967. lk = memoized(13, e0);
  30968. if (lk == 0)
  30969. {
  30970. var b0B = b0; var e0B = e0; var l1B = l1;
  30971. var b1B = b1; var e1B = e1; var l2B = l2;
  30972. var b2B = b2; var e2B = e2;
  30973. try
  30974. {
  30975. shiftT(168); // 'json'
  30976. memoize(13, e0B, -1);
  30977. }
  30978. catch (p1B)
  30979. {
  30980. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  30981. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  30982. b2 = b2B; e2 = e2B; end = e2B; }}
  30983. memoize(13, e0B, -2);
  30984. }
  30985. lk = -2;
  30986. }
  30987. }
  30988. if (lk == -1
  30989. || lk == 3240 // 'json' EQName^Token
  30990. || lk == 4264 // 'json' IntegerLiteral
  30991. || lk == 4776 // 'json' DecimalLiteral
  30992. || lk == 5288 // 'json' DoubleLiteral
  30993. || lk == 5800 // 'json' StringLiteral
  30994. || lk == 16040 // 'json' '$'
  30995. || lk == 16552 // 'json' '$$'
  30996. || lk == 17064 // 'json' '%'
  30997. || lk == 18600 // 'json' '(#'
  30998. || lk == 21160 // 'json' '+'
  30999. || lk == 22184 // 'json' '-'
  31000. || lk == 24232 // 'json' '/'
  31001. || lk == 24744 // 'json' '//'
  31002. || lk == 28328 // 'json' '<'
  31003. || lk == 28840 // 'json' '<!--'
  31004. || lk == 30888 // 'json' '<?'
  31005. || lk == 35496 // 'json' '['
  31006. || lk == 36520 // 'json' 'after'
  31007. || lk == 37544 // 'json' 'allowing'
  31008. || lk == 38056 // 'json' 'ancestor'
  31009. || lk == 38568 // 'json' 'ancestor-or-self'
  31010. || lk == 39080 // 'json' 'and'
  31011. || lk == 40104 // 'json' 'append'
  31012. || lk == 40616 // 'json' 'array'
  31013. || lk == 41128 // 'json' 'as'
  31014. || lk == 41640 // 'json' 'ascending'
  31015. || lk == 42152 // 'json' 'at'
  31016. || lk == 42664 // 'json' 'attribute'
  31017. || lk == 43176 // 'json' 'base-uri'
  31018. || lk == 43688 // 'json' 'before'
  31019. || lk == 44200 // 'json' 'boundary-space'
  31020. || lk == 44712 // 'json' 'break'
  31021. || lk == 45736 // 'json' 'case'
  31022. || lk == 46248 // 'json' 'cast'
  31023. || lk == 46760 // 'json' 'castable'
  31024. || lk == 47272 // 'json' 'catch'
  31025. || lk == 48296 // 'json' 'child'
  31026. || lk == 48808 // 'json' 'collation'
  31027. || lk == 49832 // 'json' 'comment'
  31028. || lk == 50344 // 'json' 'constraint'
  31029. || lk == 50856 // 'json' 'construction'
  31030. || lk == 52392 // 'json' 'context'
  31031. || lk == 52904 // 'json' 'continue'
  31032. || lk == 53416 // 'json' 'copy'
  31033. || lk == 53928 // 'json' 'copy-namespaces'
  31034. || lk == 54440 // 'json' 'count'
  31035. || lk == 54952 // 'json' 'decimal-format'
  31036. || lk == 55976 // 'json' 'declare'
  31037. || lk == 56488 // 'json' 'default'
  31038. || lk == 57000 // 'json' 'delete'
  31039. || lk == 57512 // 'json' 'descendant'
  31040. || lk == 58024 // 'json' 'descendant-or-self'
  31041. || lk == 58536 // 'json' 'descending'
  31042. || lk == 61096 // 'json' 'div'
  31043. || lk == 61608 // 'json' 'document'
  31044. || lk == 62120 // 'json' 'document-node'
  31045. || lk == 62632 // 'json' 'element'
  31046. || lk == 63144 // 'json' 'else'
  31047. || lk == 63656 // 'json' 'empty'
  31048. || lk == 64168 // 'json' 'empty-sequence'
  31049. || lk == 64680 // 'json' 'encoding'
  31050. || lk == 65192 // 'json' 'end'
  31051. || lk == 66216 // 'json' 'eq'
  31052. || lk == 66728 // 'json' 'every'
  31053. || lk == 67752 // 'json' 'except'
  31054. || lk == 68264 // 'json' 'exit'
  31055. || lk == 68776 // 'json' 'external'
  31056. || lk == 69288 // 'json' 'false'
  31057. || lk == 69800 // 'json' 'first'
  31058. || lk == 70312 // 'json' 'following'
  31059. || lk == 70824 // 'json' 'following-sibling'
  31060. || lk == 71336 // 'json' 'for'
  31061. || lk == 72872 // 'json' 'from'
  31062. || lk == 73384 // 'json' 'ft-option'
  31063. || lk == 75432 // 'json' 'function'
  31064. || lk == 75944 // 'json' 'ge'
  31065. || lk == 76968 // 'json' 'group'
  31066. || lk == 77992 // 'json' 'gt'
  31067. || lk == 78504 // 'json' 'idiv'
  31068. || lk == 79016 // 'json' 'if'
  31069. || lk == 79528 // 'json' 'import'
  31070. || lk == 80040 // 'json' 'in'
  31071. || lk == 80552 // 'json' 'index'
  31072. || lk == 82600 // 'json' 'insert'
  31073. || lk == 83112 // 'json' 'instance'
  31074. || lk == 83624 // 'json' 'integrity'
  31075. || lk == 84136 // 'json' 'intersect'
  31076. || lk == 84648 // 'json' 'into'
  31077. || lk == 85160 // 'json' 'is'
  31078. || lk == 85672 // 'json' 'item'
  31079. || lk == 86184 // 'json' 'json'
  31080. || lk == 86696 // 'json' 'json-item'
  31081. || lk == 87208 // 'json' 'jsoniq'
  31082. || lk == 88744 // 'json' 'last'
  31083. || lk == 89256 // 'json' 'lax'
  31084. || lk == 89768 // 'json' 'le'
  31085. || lk == 90792 // 'json' 'let'
  31086. || lk == 91816 // 'json' 'loop'
  31087. || lk == 92840 // 'json' 'lt'
  31088. || lk == 93864 // 'json' 'mod'
  31089. || lk == 94376 // 'json' 'modify'
  31090. || lk == 94888 // 'json' 'module'
  31091. || lk == 95912 // 'json' 'namespace'
  31092. || lk == 96424 // 'json' 'namespace-node'
  31093. || lk == 96936 // 'json' 'ne'
  31094. || lk == 99496 // 'json' 'node'
  31095. || lk == 100008 // 'json' 'nodes'
  31096. || lk == 100520 // 'json' 'not'
  31097. || lk == 101032 // 'json' 'null'
  31098. || lk == 101544 // 'json' 'object'
  31099. || lk == 103592 // 'json' 'only'
  31100. || lk == 104104 // 'json' 'option'
  31101. || lk == 104616 // 'json' 'or'
  31102. || lk == 105128 // 'json' 'order'
  31103. || lk == 105640 // 'json' 'ordered'
  31104. || lk == 106152 // 'json' 'ordering'
  31105. || lk == 107688 // 'json' 'parent'
  31106. || lk == 110760 // 'json' 'preceding'
  31107. || lk == 111272 // 'json' 'preceding-sibling'
  31108. || lk == 112808 // 'json' 'processing-instruction'
  31109. || lk == 113832 // 'json' 'rename'
  31110. || lk == 114344 // 'json' 'replace'
  31111. || lk == 114856 // 'json' 'return'
  31112. || lk == 115368 // 'json' 'returning'
  31113. || lk == 115880 // 'json' 'revalidation'
  31114. || lk == 116904 // 'json' 'satisfies'
  31115. || lk == 117416 // 'json' 'schema'
  31116. || lk == 117928 // 'json' 'schema-attribute'
  31117. || lk == 118440 // 'json' 'schema-element'
  31118. || lk == 118952 // 'json' 'score'
  31119. || lk == 119464 // 'json' 'select'
  31120. || lk == 119976 // 'json' 'self'
  31121. || lk == 122536 // 'json' 'sliding'
  31122. || lk == 123048 // 'json' 'some'
  31123. || lk == 123560 // 'json' 'stable'
  31124. || lk == 124072 // 'json' 'start'
  31125. || lk == 125608 // 'json' 'strict'
  31126. || lk == 126632 // 'json' 'structured-item'
  31127. || lk == 127144 // 'json' 'switch'
  31128. || lk == 127656 // 'json' 'text'
  31129. || lk == 129704 // 'json' 'to'
  31130. || lk == 130216 // 'json' 'treat'
  31131. || lk == 130728 // 'json' 'true'
  31132. || lk == 131240 // 'json' 'try'
  31133. || lk == 131752 // 'json' 'tumbling'
  31134. || lk == 132264 // 'json' 'type'
  31135. || lk == 132776 // 'json' 'typeswitch'
  31136. || lk == 133288 // 'json' 'union'
  31137. || lk == 134312 // 'json' 'unordered'
  31138. || lk == 134824 // 'json' 'updating'
  31139. || lk == 136360 // 'json' 'validate'
  31140. || lk == 136872 // 'json' 'value'
  31141. || lk == 137384 // 'json' 'variable'
  31142. || lk == 137896 // 'json' 'version'
  31143. || lk == 139432 // 'json' 'where'
  31144. || lk == 139944 // 'json' 'while'
  31145. || lk == 141480 // 'json' 'with'
  31146. || lk == 144040 // 'json' '{'
  31147. || lk == 145064) // 'json' '{|'
  31148. {
  31149. shiftT(168); // 'json'
  31150. }
  31151. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31152. try_ExprSingle();
  31153. shiftT(165); // 'into'
  31154. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31155. try_ExprSingle();
  31156. switch (l1)
  31157. {
  31158. case 82: // 'at'
  31159. lookahead2W(72); // S^WS | '(:' | 'position'
  31160. break;
  31161. default:
  31162. lk = l1;
  31163. }
  31164. if (lk == 110162) // 'at' 'position'
  31165. {
  31166. lk = memoized(14, e0);
  31167. if (lk == 0)
  31168. {
  31169. var b0B = b0; var e0B = e0; var l1B = l1;
  31170. var b1B = b1; var e1B = e1; var l2B = l2;
  31171. var b2B = b2; var e2B = e2;
  31172. try
  31173. {
  31174. shiftT(82); // 'at'
  31175. lookahead1W(72); // S^WS | '(:' | 'position'
  31176. shiftT(215); // 'position'
  31177. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31178. try_ExprSingle();
  31179. memoize(14, e0B, -1);
  31180. }
  31181. catch (p1B)
  31182. {
  31183. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  31184. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  31185. b2 = b2B; e2 = e2B; end = e2B; }}
  31186. memoize(14, e0B, -2);
  31187. }
  31188. lk = -2;
  31189. }
  31190. }
  31191. if (lk == -1)
  31192. {
  31193. shiftT(82); // 'at'
  31194. lookahead1W(72); // S^WS | '(:' | 'position'
  31195. shiftT(215); // 'position'
  31196. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31197. try_ExprSingle();
  31198. }
  31199. break;
  31200. case -3:
  31201. break;
  31202. default:
  31203. shiftT(161); // 'insert'
  31204. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31205. switch (l1)
  31206. {
  31207. case 168: // 'json'
  31208. lookahead2W(281); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31209. break;
  31210. default:
  31211. lk = l1;
  31212. }
  31213. if (lk == 18088) // 'json' '('
  31214. {
  31215. lk = memoized(15, e0);
  31216. if (lk == 0)
  31217. {
  31218. var b0B = b0; var e0B = e0; var l1B = l1;
  31219. var b1B = b1; var e1B = e1; var l2B = l2;
  31220. var b2B = b2; var e2B = e2;
  31221. try
  31222. {
  31223. shiftT(168); // 'json'
  31224. memoize(15, e0B, -1);
  31225. }
  31226. catch (p1B)
  31227. {
  31228. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  31229. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  31230. b2 = b2B; e2 = e2B; end = e2B; }}
  31231. memoize(15, e0B, -2);
  31232. }
  31233. lk = -2;
  31234. }
  31235. }
  31236. if (lk == -1
  31237. || lk == 3240 // 'json' EQName^Token
  31238. || lk == 4264 // 'json' IntegerLiteral
  31239. || lk == 4776 // 'json' DecimalLiteral
  31240. || lk == 5288 // 'json' DoubleLiteral
  31241. || lk == 5800 // 'json' StringLiteral
  31242. || lk == 9896 // 'json' NCName^Token
  31243. || lk == 16040 // 'json' '$'
  31244. || lk == 16552 // 'json' '$$'
  31245. || lk == 17064 // 'json' '%'
  31246. || lk == 18600 // 'json' '(#'
  31247. || lk == 21160 // 'json' '+'
  31248. || lk == 22184 // 'json' '-'
  31249. || lk == 24232 // 'json' '/'
  31250. || lk == 24744 // 'json' '//'
  31251. || lk == 28328 // 'json' '<'
  31252. || lk == 28840 // 'json' '<!--'
  31253. || lk == 30888 // 'json' '<?'
  31254. || lk == 35496 // 'json' '['
  31255. || lk == 36520 // 'json' 'after'
  31256. || lk == 37544 // 'json' 'allowing'
  31257. || lk == 38056 // 'json' 'ancestor'
  31258. || lk == 38568 // 'json' 'ancestor-or-self'
  31259. || lk == 39080 // 'json' 'and'
  31260. || lk == 40104 // 'json' 'append'
  31261. || lk == 40616 // 'json' 'array'
  31262. || lk == 41128 // 'json' 'as'
  31263. || lk == 41640 // 'json' 'ascending'
  31264. || lk == 42152 // 'json' 'at'
  31265. || lk == 42664 // 'json' 'attribute'
  31266. || lk == 43176 // 'json' 'base-uri'
  31267. || lk == 43688 // 'json' 'before'
  31268. || lk == 44200 // 'json' 'boundary-space'
  31269. || lk == 44712 // 'json' 'break'
  31270. || lk == 45736 // 'json' 'case'
  31271. || lk == 46248 // 'json' 'cast'
  31272. || lk == 46760 // 'json' 'castable'
  31273. || lk == 47272 // 'json' 'catch'
  31274. || lk == 48296 // 'json' 'child'
  31275. || lk == 48808 // 'json' 'collation'
  31276. || lk == 49832 // 'json' 'comment'
  31277. || lk == 50344 // 'json' 'constraint'
  31278. || lk == 50856 // 'json' 'construction'
  31279. || lk == 52392 // 'json' 'context'
  31280. || lk == 52904 // 'json' 'continue'
  31281. || lk == 53416 // 'json' 'copy'
  31282. || lk == 53928 // 'json' 'copy-namespaces'
  31283. || lk == 54440 // 'json' 'count'
  31284. || lk == 54952 // 'json' 'decimal-format'
  31285. || lk == 55976 // 'json' 'declare'
  31286. || lk == 56488 // 'json' 'default'
  31287. || lk == 57000 // 'json' 'delete'
  31288. || lk == 57512 // 'json' 'descendant'
  31289. || lk == 58024 // 'json' 'descendant-or-self'
  31290. || lk == 58536 // 'json' 'descending'
  31291. || lk == 61096 // 'json' 'div'
  31292. || lk == 61608 // 'json' 'document'
  31293. || lk == 62120 // 'json' 'document-node'
  31294. || lk == 62632 // 'json' 'element'
  31295. || lk == 63144 // 'json' 'else'
  31296. || lk == 63656 // 'json' 'empty'
  31297. || lk == 64168 // 'json' 'empty-sequence'
  31298. || lk == 64680 // 'json' 'encoding'
  31299. || lk == 65192 // 'json' 'end'
  31300. || lk == 66216 // 'json' 'eq'
  31301. || lk == 66728 // 'json' 'every'
  31302. || lk == 67752 // 'json' 'except'
  31303. || lk == 68264 // 'json' 'exit'
  31304. || lk == 68776 // 'json' 'external'
  31305. || lk == 69288 // 'json' 'false'
  31306. || lk == 69800 // 'json' 'first'
  31307. || lk == 70312 // 'json' 'following'
  31308. || lk == 70824 // 'json' 'following-sibling'
  31309. || lk == 71336 // 'json' 'for'
  31310. || lk == 72872 // 'json' 'from'
  31311. || lk == 73384 // 'json' 'ft-option'
  31312. || lk == 75432 // 'json' 'function'
  31313. || lk == 75944 // 'json' 'ge'
  31314. || lk == 76968 // 'json' 'group'
  31315. || lk == 77992 // 'json' 'gt'
  31316. || lk == 78504 // 'json' 'idiv'
  31317. || lk == 79016 // 'json' 'if'
  31318. || lk == 79528 // 'json' 'import'
  31319. || lk == 80040 // 'json' 'in'
  31320. || lk == 80552 // 'json' 'index'
  31321. || lk == 82600 // 'json' 'insert'
  31322. || lk == 83112 // 'json' 'instance'
  31323. || lk == 83624 // 'json' 'integrity'
  31324. || lk == 84136 // 'json' 'intersect'
  31325. || lk == 84648 // 'json' 'into'
  31326. || lk == 85160 // 'json' 'is'
  31327. || lk == 85672 // 'json' 'item'
  31328. || lk == 86184 // 'json' 'json'
  31329. || lk == 86696 // 'json' 'json-item'
  31330. || lk == 87208 // 'json' 'jsoniq'
  31331. || lk == 88744 // 'json' 'last'
  31332. || lk == 89256 // 'json' 'lax'
  31333. || lk == 89768 // 'json' 'le'
  31334. || lk == 90792 // 'json' 'let'
  31335. || lk == 91816 // 'json' 'loop'
  31336. || lk == 92840 // 'json' 'lt'
  31337. || lk == 93864 // 'json' 'mod'
  31338. || lk == 94376 // 'json' 'modify'
  31339. || lk == 94888 // 'json' 'module'
  31340. || lk == 95912 // 'json' 'namespace'
  31341. || lk == 96424 // 'json' 'namespace-node'
  31342. || lk == 96936 // 'json' 'ne'
  31343. || lk == 99496 // 'json' 'node'
  31344. || lk == 100008 // 'json' 'nodes'
  31345. || lk == 100520 // 'json' 'not'
  31346. || lk == 101032 // 'json' 'null'
  31347. || lk == 101544 // 'json' 'object'
  31348. || lk == 103592 // 'json' 'only'
  31349. || lk == 104104 // 'json' 'option'
  31350. || lk == 104616 // 'json' 'or'
  31351. || lk == 105128 // 'json' 'order'
  31352. || lk == 105640 // 'json' 'ordered'
  31353. || lk == 106152 // 'json' 'ordering'
  31354. || lk == 107688 // 'json' 'parent'
  31355. || lk == 110760 // 'json' 'preceding'
  31356. || lk == 111272 // 'json' 'preceding-sibling'
  31357. || lk == 112808 // 'json' 'processing-instruction'
  31358. || lk == 113832 // 'json' 'rename'
  31359. || lk == 114344 // 'json' 'replace'
  31360. || lk == 114856 // 'json' 'return'
  31361. || lk == 115368 // 'json' 'returning'
  31362. || lk == 115880 // 'json' 'revalidation'
  31363. || lk == 116904 // 'json' 'satisfies'
  31364. || lk == 117416 // 'json' 'schema'
  31365. || lk == 117928 // 'json' 'schema-attribute'
  31366. || lk == 118440 // 'json' 'schema-element'
  31367. || lk == 118952 // 'json' 'score'
  31368. || lk == 119464 // 'json' 'select'
  31369. || lk == 119976 // 'json' 'self'
  31370. || lk == 122536 // 'json' 'sliding'
  31371. || lk == 123048 // 'json' 'some'
  31372. || lk == 123560 // 'json' 'stable'
  31373. || lk == 124072 // 'json' 'start'
  31374. || lk == 125608 // 'json' 'strict'
  31375. || lk == 126632 // 'json' 'structured-item'
  31376. || lk == 127144 // 'json' 'switch'
  31377. || lk == 127656 // 'json' 'text'
  31378. || lk == 129704 // 'json' 'to'
  31379. || lk == 130216 // 'json' 'treat'
  31380. || lk == 130728 // 'json' 'true'
  31381. || lk == 131240 // 'json' 'try'
  31382. || lk == 131752 // 'json' 'tumbling'
  31383. || lk == 132264 // 'json' 'type'
  31384. || lk == 132776 // 'json' 'typeswitch'
  31385. || lk == 133288 // 'json' 'union'
  31386. || lk == 134312 // 'json' 'unordered'
  31387. || lk == 134824 // 'json' 'updating'
  31388. || lk == 136360 // 'json' 'validate'
  31389. || lk == 136872 // 'json' 'value'
  31390. || lk == 137384 // 'json' 'variable'
  31391. || lk == 137896 // 'json' 'version'
  31392. || lk == 139432 // 'json' 'where'
  31393. || lk == 139944 // 'json' 'while'
  31394. || lk == 141480 // 'json' 'with'
  31395. || lk == 144040 // 'json' '{'
  31396. || lk == 145064) // 'json' '{|'
  31397. {
  31398. shiftT(168); // 'json'
  31399. }
  31400. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31401. try_PairConstructorList();
  31402. shiftT(165); // 'into'
  31403. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31404. try_ExprSingle();
  31405. }
  31406. }
  31407. function parse_JSONRenameExpr()
  31408. {
  31409. eventHandler.startNonterminal("JSONRenameExpr", e0);
  31410. shift(222); // 'rename'
  31411. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31412. switch (l1)
  31413. {
  31414. case 168: // 'json'
  31415. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31416. break;
  31417. default:
  31418. lk = l1;
  31419. }
  31420. if (lk == 18088) // 'json' '('
  31421. {
  31422. lk = memoized(16, e0);
  31423. if (lk == 0)
  31424. {
  31425. var b0A = b0; var e0A = e0; var l1A = l1;
  31426. var b1A = b1; var e1A = e1; var l2A = l2;
  31427. var b2A = b2; var e2A = e2;
  31428. try
  31429. {
  31430. shiftT(168); // 'json'
  31431. lk = -1;
  31432. }
  31433. catch (p1A)
  31434. {
  31435. lk = -2;
  31436. }
  31437. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  31438. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  31439. b2 = b2A; e2 = e2A; end = e2A; }}
  31440. memoize(16, e0, lk);
  31441. }
  31442. }
  31443. if (lk == -1
  31444. || lk == 3240 // 'json' EQName^Token
  31445. || lk == 4264 // 'json' IntegerLiteral
  31446. || lk == 4776 // 'json' DecimalLiteral
  31447. || lk == 5288 // 'json' DoubleLiteral
  31448. || lk == 5800 // 'json' StringLiteral
  31449. || lk == 16040 // 'json' '$'
  31450. || lk == 16552 // 'json' '$$'
  31451. || lk == 17064 // 'json' '%'
  31452. || lk == 28328 // 'json' '<'
  31453. || lk == 28840 // 'json' '<!--'
  31454. || lk == 30888 // 'json' '<?'
  31455. || lk == 35496 // 'json' '['
  31456. || lk == 36520 // 'json' 'after'
  31457. || lk == 37544 // 'json' 'allowing'
  31458. || lk == 38056 // 'json' 'ancestor'
  31459. || lk == 38568 // 'json' 'ancestor-or-self'
  31460. || lk == 39080 // 'json' 'and'
  31461. || lk == 40104 // 'json' 'append'
  31462. || lk == 40616 // 'json' 'array'
  31463. || lk == 41128 // 'json' 'as'
  31464. || lk == 41640 // 'json' 'ascending'
  31465. || lk == 42152 // 'json' 'at'
  31466. || lk == 42664 // 'json' 'attribute'
  31467. || lk == 43176 // 'json' 'base-uri'
  31468. || lk == 43688 // 'json' 'before'
  31469. || lk == 44200 // 'json' 'boundary-space'
  31470. || lk == 44712 // 'json' 'break'
  31471. || lk == 45736 // 'json' 'case'
  31472. || lk == 46248 // 'json' 'cast'
  31473. || lk == 46760 // 'json' 'castable'
  31474. || lk == 47272 // 'json' 'catch'
  31475. || lk == 48296 // 'json' 'child'
  31476. || lk == 48808 // 'json' 'collation'
  31477. || lk == 49832 // 'json' 'comment'
  31478. || lk == 50344 // 'json' 'constraint'
  31479. || lk == 50856 // 'json' 'construction'
  31480. || lk == 52392 // 'json' 'context'
  31481. || lk == 52904 // 'json' 'continue'
  31482. || lk == 53416 // 'json' 'copy'
  31483. || lk == 53928 // 'json' 'copy-namespaces'
  31484. || lk == 54440 // 'json' 'count'
  31485. || lk == 54952 // 'json' 'decimal-format'
  31486. || lk == 55976 // 'json' 'declare'
  31487. || lk == 56488 // 'json' 'default'
  31488. || lk == 57000 // 'json' 'delete'
  31489. || lk == 57512 // 'json' 'descendant'
  31490. || lk == 58024 // 'json' 'descendant-or-self'
  31491. || lk == 58536 // 'json' 'descending'
  31492. || lk == 61096 // 'json' 'div'
  31493. || lk == 61608 // 'json' 'document'
  31494. || lk == 62120 // 'json' 'document-node'
  31495. || lk == 62632 // 'json' 'element'
  31496. || lk == 63144 // 'json' 'else'
  31497. || lk == 63656 // 'json' 'empty'
  31498. || lk == 64168 // 'json' 'empty-sequence'
  31499. || lk == 64680 // 'json' 'encoding'
  31500. || lk == 65192 // 'json' 'end'
  31501. || lk == 66216 // 'json' 'eq'
  31502. || lk == 66728 // 'json' 'every'
  31503. || lk == 67752 // 'json' 'except'
  31504. || lk == 68264 // 'json' 'exit'
  31505. || lk == 68776 // 'json' 'external'
  31506. || lk == 69288 // 'json' 'false'
  31507. || lk == 69800 // 'json' 'first'
  31508. || lk == 70312 // 'json' 'following'
  31509. || lk == 70824 // 'json' 'following-sibling'
  31510. || lk == 71336 // 'json' 'for'
  31511. || lk == 72872 // 'json' 'from'
  31512. || lk == 73384 // 'json' 'ft-option'
  31513. || lk == 75432 // 'json' 'function'
  31514. || lk == 75944 // 'json' 'ge'
  31515. || lk == 76968 // 'json' 'group'
  31516. || lk == 77992 // 'json' 'gt'
  31517. || lk == 78504 // 'json' 'idiv'
  31518. || lk == 79016 // 'json' 'if'
  31519. || lk == 79528 // 'json' 'import'
  31520. || lk == 80040 // 'json' 'in'
  31521. || lk == 80552 // 'json' 'index'
  31522. || lk == 82600 // 'json' 'insert'
  31523. || lk == 83112 // 'json' 'instance'
  31524. || lk == 83624 // 'json' 'integrity'
  31525. || lk == 84136 // 'json' 'intersect'
  31526. || lk == 84648 // 'json' 'into'
  31527. || lk == 85160 // 'json' 'is'
  31528. || lk == 85672 // 'json' 'item'
  31529. || lk == 86184 // 'json' 'json'
  31530. || lk == 86696 // 'json' 'json-item'
  31531. || lk == 87208 // 'json' 'jsoniq'
  31532. || lk == 88744 // 'json' 'last'
  31533. || lk == 89256 // 'json' 'lax'
  31534. || lk == 89768 // 'json' 'le'
  31535. || lk == 90792 // 'json' 'let'
  31536. || lk == 91816 // 'json' 'loop'
  31537. || lk == 92840 // 'json' 'lt'
  31538. || lk == 93864 // 'json' 'mod'
  31539. || lk == 94376 // 'json' 'modify'
  31540. || lk == 94888 // 'json' 'module'
  31541. || lk == 95912 // 'json' 'namespace'
  31542. || lk == 96424 // 'json' 'namespace-node'
  31543. || lk == 96936 // 'json' 'ne'
  31544. || lk == 99496 // 'json' 'node'
  31545. || lk == 100008 // 'json' 'nodes'
  31546. || lk == 101032 // 'json' 'null'
  31547. || lk == 101544 // 'json' 'object'
  31548. || lk == 103592 // 'json' 'only'
  31549. || lk == 104104 // 'json' 'option'
  31550. || lk == 104616 // 'json' 'or'
  31551. || lk == 105128 // 'json' 'order'
  31552. || lk == 105640 // 'json' 'ordered'
  31553. || lk == 106152 // 'json' 'ordering'
  31554. || lk == 107688 // 'json' 'parent'
  31555. || lk == 110760 // 'json' 'preceding'
  31556. || lk == 111272 // 'json' 'preceding-sibling'
  31557. || lk == 112808 // 'json' 'processing-instruction'
  31558. || lk == 113832 // 'json' 'rename'
  31559. || lk == 114344 // 'json' 'replace'
  31560. || lk == 114856 // 'json' 'return'
  31561. || lk == 115368 // 'json' 'returning'
  31562. || lk == 115880 // 'json' 'revalidation'
  31563. || lk == 116904 // 'json' 'satisfies'
  31564. || lk == 117416 // 'json' 'schema'
  31565. || lk == 117928 // 'json' 'schema-attribute'
  31566. || lk == 118440 // 'json' 'schema-element'
  31567. || lk == 118952 // 'json' 'score'
  31568. || lk == 119464 // 'json' 'select'
  31569. || lk == 119976 // 'json' 'self'
  31570. || lk == 122536 // 'json' 'sliding'
  31571. || lk == 123048 // 'json' 'some'
  31572. || lk == 123560 // 'json' 'stable'
  31573. || lk == 124072 // 'json' 'start'
  31574. || lk == 125608 // 'json' 'strict'
  31575. || lk == 126632 // 'json' 'structured-item'
  31576. || lk == 127144 // 'json' 'switch'
  31577. || lk == 127656 // 'json' 'text'
  31578. || lk == 129704 // 'json' 'to'
  31579. || lk == 130216 // 'json' 'treat'
  31580. || lk == 130728 // 'json' 'true'
  31581. || lk == 131240 // 'json' 'try'
  31582. || lk == 131752 // 'json' 'tumbling'
  31583. || lk == 132264 // 'json' 'type'
  31584. || lk == 132776 // 'json' 'typeswitch'
  31585. || lk == 133288 // 'json' 'union'
  31586. || lk == 134312 // 'json' 'unordered'
  31587. || lk == 134824 // 'json' 'updating'
  31588. || lk == 136360 // 'json' 'validate'
  31589. || lk == 136872 // 'json' 'value'
  31590. || lk == 137384 // 'json' 'variable'
  31591. || lk == 137896 // 'json' 'version'
  31592. || lk == 139432 // 'json' 'where'
  31593. || lk == 139944 // 'json' 'while'
  31594. || lk == 141480 // 'json' 'with'
  31595. || lk == 144040 // 'json' '{'
  31596. || lk == 145064) // 'json' '{|'
  31597. {
  31598. shift(168); // 'json'
  31599. }
  31600. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31601. whitespace();
  31602. parse_PostfixExpr();
  31603. shift(80); // 'as'
  31604. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31605. whitespace();
  31606. parse_ExprSingle();
  31607. eventHandler.endNonterminal("JSONRenameExpr", e0);
  31608. }
  31609. function try_JSONRenameExpr()
  31610. {
  31611. shiftT(222); // 'rename'
  31612. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31613. switch (l1)
  31614. {
  31615. case 168: // 'json'
  31616. lookahead2W(260); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31617. break;
  31618. default:
  31619. lk = l1;
  31620. }
  31621. if (lk == 18088) // 'json' '('
  31622. {
  31623. lk = memoized(16, e0);
  31624. if (lk == 0)
  31625. {
  31626. var b0A = b0; var e0A = e0; var l1A = l1;
  31627. var b1A = b1; var e1A = e1; var l2A = l2;
  31628. var b2A = b2; var e2A = e2;
  31629. try
  31630. {
  31631. shiftT(168); // 'json'
  31632. memoize(16, e0A, -1);
  31633. }
  31634. catch (p1A)
  31635. {
  31636. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  31637. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  31638. b2 = b2A; e2 = e2A; end = e2A; }}
  31639. memoize(16, e0A, -2);
  31640. }
  31641. lk = -2;
  31642. }
  31643. }
  31644. if (lk == -1
  31645. || lk == 3240 // 'json' EQName^Token
  31646. || lk == 4264 // 'json' IntegerLiteral
  31647. || lk == 4776 // 'json' DecimalLiteral
  31648. || lk == 5288 // 'json' DoubleLiteral
  31649. || lk == 5800 // 'json' StringLiteral
  31650. || lk == 16040 // 'json' '$'
  31651. || lk == 16552 // 'json' '$$'
  31652. || lk == 17064 // 'json' '%'
  31653. || lk == 28328 // 'json' '<'
  31654. || lk == 28840 // 'json' '<!--'
  31655. || lk == 30888 // 'json' '<?'
  31656. || lk == 35496 // 'json' '['
  31657. || lk == 36520 // 'json' 'after'
  31658. || lk == 37544 // 'json' 'allowing'
  31659. || lk == 38056 // 'json' 'ancestor'
  31660. || lk == 38568 // 'json' 'ancestor-or-self'
  31661. || lk == 39080 // 'json' 'and'
  31662. || lk == 40104 // 'json' 'append'
  31663. || lk == 40616 // 'json' 'array'
  31664. || lk == 41128 // 'json' 'as'
  31665. || lk == 41640 // 'json' 'ascending'
  31666. || lk == 42152 // 'json' 'at'
  31667. || lk == 42664 // 'json' 'attribute'
  31668. || lk == 43176 // 'json' 'base-uri'
  31669. || lk == 43688 // 'json' 'before'
  31670. || lk == 44200 // 'json' 'boundary-space'
  31671. || lk == 44712 // 'json' 'break'
  31672. || lk == 45736 // 'json' 'case'
  31673. || lk == 46248 // 'json' 'cast'
  31674. || lk == 46760 // 'json' 'castable'
  31675. || lk == 47272 // 'json' 'catch'
  31676. || lk == 48296 // 'json' 'child'
  31677. || lk == 48808 // 'json' 'collation'
  31678. || lk == 49832 // 'json' 'comment'
  31679. || lk == 50344 // 'json' 'constraint'
  31680. || lk == 50856 // 'json' 'construction'
  31681. || lk == 52392 // 'json' 'context'
  31682. || lk == 52904 // 'json' 'continue'
  31683. || lk == 53416 // 'json' 'copy'
  31684. || lk == 53928 // 'json' 'copy-namespaces'
  31685. || lk == 54440 // 'json' 'count'
  31686. || lk == 54952 // 'json' 'decimal-format'
  31687. || lk == 55976 // 'json' 'declare'
  31688. || lk == 56488 // 'json' 'default'
  31689. || lk == 57000 // 'json' 'delete'
  31690. || lk == 57512 // 'json' 'descendant'
  31691. || lk == 58024 // 'json' 'descendant-or-self'
  31692. || lk == 58536 // 'json' 'descending'
  31693. || lk == 61096 // 'json' 'div'
  31694. || lk == 61608 // 'json' 'document'
  31695. || lk == 62120 // 'json' 'document-node'
  31696. || lk == 62632 // 'json' 'element'
  31697. || lk == 63144 // 'json' 'else'
  31698. || lk == 63656 // 'json' 'empty'
  31699. || lk == 64168 // 'json' 'empty-sequence'
  31700. || lk == 64680 // 'json' 'encoding'
  31701. || lk == 65192 // 'json' 'end'
  31702. || lk == 66216 // 'json' 'eq'
  31703. || lk == 66728 // 'json' 'every'
  31704. || lk == 67752 // 'json' 'except'
  31705. || lk == 68264 // 'json' 'exit'
  31706. || lk == 68776 // 'json' 'external'
  31707. || lk == 69288 // 'json' 'false'
  31708. || lk == 69800 // 'json' 'first'
  31709. || lk == 70312 // 'json' 'following'
  31710. || lk == 70824 // 'json' 'following-sibling'
  31711. || lk == 71336 // 'json' 'for'
  31712. || lk == 72872 // 'json' 'from'
  31713. || lk == 73384 // 'json' 'ft-option'
  31714. || lk == 75432 // 'json' 'function'
  31715. || lk == 75944 // 'json' 'ge'
  31716. || lk == 76968 // 'json' 'group'
  31717. || lk == 77992 // 'json' 'gt'
  31718. || lk == 78504 // 'json' 'idiv'
  31719. || lk == 79016 // 'json' 'if'
  31720. || lk == 79528 // 'json' 'import'
  31721. || lk == 80040 // 'json' 'in'
  31722. || lk == 80552 // 'json' 'index'
  31723. || lk == 82600 // 'json' 'insert'
  31724. || lk == 83112 // 'json' 'instance'
  31725. || lk == 83624 // 'json' 'integrity'
  31726. || lk == 84136 // 'json' 'intersect'
  31727. || lk == 84648 // 'json' 'into'
  31728. || lk == 85160 // 'json' 'is'
  31729. || lk == 85672 // 'json' 'item'
  31730. || lk == 86184 // 'json' 'json'
  31731. || lk == 86696 // 'json' 'json-item'
  31732. || lk == 87208 // 'json' 'jsoniq'
  31733. || lk == 88744 // 'json' 'last'
  31734. || lk == 89256 // 'json' 'lax'
  31735. || lk == 89768 // 'json' 'le'
  31736. || lk == 90792 // 'json' 'let'
  31737. || lk == 91816 // 'json' 'loop'
  31738. || lk == 92840 // 'json' 'lt'
  31739. || lk == 93864 // 'json' 'mod'
  31740. || lk == 94376 // 'json' 'modify'
  31741. || lk == 94888 // 'json' 'module'
  31742. || lk == 95912 // 'json' 'namespace'
  31743. || lk == 96424 // 'json' 'namespace-node'
  31744. || lk == 96936 // 'json' 'ne'
  31745. || lk == 99496 // 'json' 'node'
  31746. || lk == 100008 // 'json' 'nodes'
  31747. || lk == 101032 // 'json' 'null'
  31748. || lk == 101544 // 'json' 'object'
  31749. || lk == 103592 // 'json' 'only'
  31750. || lk == 104104 // 'json' 'option'
  31751. || lk == 104616 // 'json' 'or'
  31752. || lk == 105128 // 'json' 'order'
  31753. || lk == 105640 // 'json' 'ordered'
  31754. || lk == 106152 // 'json' 'ordering'
  31755. || lk == 107688 // 'json' 'parent'
  31756. || lk == 110760 // 'json' 'preceding'
  31757. || lk == 111272 // 'json' 'preceding-sibling'
  31758. || lk == 112808 // 'json' 'processing-instruction'
  31759. || lk == 113832 // 'json' 'rename'
  31760. || lk == 114344 // 'json' 'replace'
  31761. || lk == 114856 // 'json' 'return'
  31762. || lk == 115368 // 'json' 'returning'
  31763. || lk == 115880 // 'json' 'revalidation'
  31764. || lk == 116904 // 'json' 'satisfies'
  31765. || lk == 117416 // 'json' 'schema'
  31766. || lk == 117928 // 'json' 'schema-attribute'
  31767. || lk == 118440 // 'json' 'schema-element'
  31768. || lk == 118952 // 'json' 'score'
  31769. || lk == 119464 // 'json' 'select'
  31770. || lk == 119976 // 'json' 'self'
  31771. || lk == 122536 // 'json' 'sliding'
  31772. || lk == 123048 // 'json' 'some'
  31773. || lk == 123560 // 'json' 'stable'
  31774. || lk == 124072 // 'json' 'start'
  31775. || lk == 125608 // 'json' 'strict'
  31776. || lk == 126632 // 'json' 'structured-item'
  31777. || lk == 127144 // 'json' 'switch'
  31778. || lk == 127656 // 'json' 'text'
  31779. || lk == 129704 // 'json' 'to'
  31780. || lk == 130216 // 'json' 'treat'
  31781. || lk == 130728 // 'json' 'true'
  31782. || lk == 131240 // 'json' 'try'
  31783. || lk == 131752 // 'json' 'tumbling'
  31784. || lk == 132264 // 'json' 'type'
  31785. || lk == 132776 // 'json' 'typeswitch'
  31786. || lk == 133288 // 'json' 'union'
  31787. || lk == 134312 // 'json' 'unordered'
  31788. || lk == 134824 // 'json' 'updating'
  31789. || lk == 136360 // 'json' 'validate'
  31790. || lk == 136872 // 'json' 'value'
  31791. || lk == 137384 // 'json' 'variable'
  31792. || lk == 137896 // 'json' 'version'
  31793. || lk == 139432 // 'json' 'where'
  31794. || lk == 139944 // 'json' 'while'
  31795. || lk == 141480 // 'json' 'with'
  31796. || lk == 144040 // 'json' '{'
  31797. || lk == 145064) // 'json' '{|'
  31798. {
  31799. shiftT(168); // 'json'
  31800. }
  31801. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31802. try_PostfixExpr();
  31803. shiftT(80); // 'as'
  31804. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31805. try_ExprSingle();
  31806. }
  31807. function parse_JSONReplaceExpr()
  31808. {
  31809. eventHandler.startNonterminal("JSONReplaceExpr", e0);
  31810. shift(223); // 'replace'
  31811. lookahead1W(85); // S^WS | '(:' | 'value'
  31812. shift(267); // 'value'
  31813. lookahead1W(67); // S^WS | '(:' | 'of'
  31814. shift(200); // 'of'
  31815. lookahead1W(59); // S^WS | '(:' | 'json'
  31816. shift(168); // 'json'
  31817. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31818. whitespace();
  31819. parse_PostfixExpr();
  31820. shift(276); // 'with'
  31821. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31822. whitespace();
  31823. parse_ExprSingle();
  31824. eventHandler.endNonterminal("JSONReplaceExpr", e0);
  31825. }
  31826. function try_JSONReplaceExpr()
  31827. {
  31828. shiftT(223); // 'replace'
  31829. lookahead1W(85); // S^WS | '(:' | 'value'
  31830. shiftT(267); // 'value'
  31831. lookahead1W(67); // S^WS | '(:' | 'of'
  31832. shiftT(200); // 'of'
  31833. lookahead1W(59); // S^WS | '(:' | 'json'
  31834. shiftT(168); // 'json'
  31835. lookahead1W(259); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31836. try_PostfixExpr();
  31837. shiftT(276); // 'with'
  31838. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31839. try_ExprSingle();
  31840. }
  31841. function parse_JSONAppendExpr()
  31842. {
  31843. eventHandler.startNonterminal("JSONAppendExpr", e0);
  31844. shift(78); // 'append'
  31845. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31846. switch (l1)
  31847. {
  31848. case 168: // 'json'
  31849. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  31850. break;
  31851. default:
  31852. lk = l1;
  31853. }
  31854. if (lk == 18088) // 'json' '('
  31855. {
  31856. lk = memoized(17, e0);
  31857. if (lk == 0)
  31858. {
  31859. var b0A = b0; var e0A = e0; var l1A = l1;
  31860. var b1A = b1; var e1A = e1; var l2A = l2;
  31861. var b2A = b2; var e2A = e2;
  31862. try
  31863. {
  31864. shiftT(168); // 'json'
  31865. lk = -1;
  31866. }
  31867. catch (p1A)
  31868. {
  31869. lk = -2;
  31870. }
  31871. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  31872. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  31873. b2 = b2A; e2 = e2A; end = e2A; }}
  31874. memoize(17, e0, lk);
  31875. }
  31876. }
  31877. if (lk == -1
  31878. || lk == 3240 // 'json' EQName^Token
  31879. || lk == 4264 // 'json' IntegerLiteral
  31880. || lk == 4776 // 'json' DecimalLiteral
  31881. || lk == 5288 // 'json' DoubleLiteral
  31882. || lk == 5800 // 'json' StringLiteral
  31883. || lk == 16040 // 'json' '$'
  31884. || lk == 16552 // 'json' '$$'
  31885. || lk == 17064 // 'json' '%'
  31886. || lk == 18600 // 'json' '(#'
  31887. || lk == 21160 // 'json' '+'
  31888. || lk == 22184 // 'json' '-'
  31889. || lk == 24232 // 'json' '/'
  31890. || lk == 24744 // 'json' '//'
  31891. || lk == 28328 // 'json' '<'
  31892. || lk == 28840 // 'json' '<!--'
  31893. || lk == 30888 // 'json' '<?'
  31894. || lk == 35496 // 'json' '['
  31895. || lk == 36520 // 'json' 'after'
  31896. || lk == 37544 // 'json' 'allowing'
  31897. || lk == 38056 // 'json' 'ancestor'
  31898. || lk == 38568 // 'json' 'ancestor-or-self'
  31899. || lk == 39080 // 'json' 'and'
  31900. || lk == 40104 // 'json' 'append'
  31901. || lk == 40616 // 'json' 'array'
  31902. || lk == 41128 // 'json' 'as'
  31903. || lk == 41640 // 'json' 'ascending'
  31904. || lk == 42152 // 'json' 'at'
  31905. || lk == 42664 // 'json' 'attribute'
  31906. || lk == 43176 // 'json' 'base-uri'
  31907. || lk == 43688 // 'json' 'before'
  31908. || lk == 44200 // 'json' 'boundary-space'
  31909. || lk == 44712 // 'json' 'break'
  31910. || lk == 45736 // 'json' 'case'
  31911. || lk == 46248 // 'json' 'cast'
  31912. || lk == 46760 // 'json' 'castable'
  31913. || lk == 47272 // 'json' 'catch'
  31914. || lk == 48296 // 'json' 'child'
  31915. || lk == 48808 // 'json' 'collation'
  31916. || lk == 49832 // 'json' 'comment'
  31917. || lk == 50344 // 'json' 'constraint'
  31918. || lk == 50856 // 'json' 'construction'
  31919. || lk == 52392 // 'json' 'context'
  31920. || lk == 52904 // 'json' 'continue'
  31921. || lk == 53416 // 'json' 'copy'
  31922. || lk == 53928 // 'json' 'copy-namespaces'
  31923. || lk == 54440 // 'json' 'count'
  31924. || lk == 54952 // 'json' 'decimal-format'
  31925. || lk == 55976 // 'json' 'declare'
  31926. || lk == 56488 // 'json' 'default'
  31927. || lk == 57000 // 'json' 'delete'
  31928. || lk == 57512 // 'json' 'descendant'
  31929. || lk == 58024 // 'json' 'descendant-or-self'
  31930. || lk == 58536 // 'json' 'descending'
  31931. || lk == 61096 // 'json' 'div'
  31932. || lk == 61608 // 'json' 'document'
  31933. || lk == 62120 // 'json' 'document-node'
  31934. || lk == 62632 // 'json' 'element'
  31935. || lk == 63144 // 'json' 'else'
  31936. || lk == 63656 // 'json' 'empty'
  31937. || lk == 64168 // 'json' 'empty-sequence'
  31938. || lk == 64680 // 'json' 'encoding'
  31939. || lk == 65192 // 'json' 'end'
  31940. || lk == 66216 // 'json' 'eq'
  31941. || lk == 66728 // 'json' 'every'
  31942. || lk == 67752 // 'json' 'except'
  31943. || lk == 68264 // 'json' 'exit'
  31944. || lk == 68776 // 'json' 'external'
  31945. || lk == 69288 // 'json' 'false'
  31946. || lk == 69800 // 'json' 'first'
  31947. || lk == 70312 // 'json' 'following'
  31948. || lk == 70824 // 'json' 'following-sibling'
  31949. || lk == 71336 // 'json' 'for'
  31950. || lk == 72872 // 'json' 'from'
  31951. || lk == 73384 // 'json' 'ft-option'
  31952. || lk == 75432 // 'json' 'function'
  31953. || lk == 75944 // 'json' 'ge'
  31954. || lk == 76968 // 'json' 'group'
  31955. || lk == 77992 // 'json' 'gt'
  31956. || lk == 78504 // 'json' 'idiv'
  31957. || lk == 79016 // 'json' 'if'
  31958. || lk == 79528 // 'json' 'import'
  31959. || lk == 80040 // 'json' 'in'
  31960. || lk == 80552 // 'json' 'index'
  31961. || lk == 82600 // 'json' 'insert'
  31962. || lk == 83112 // 'json' 'instance'
  31963. || lk == 83624 // 'json' 'integrity'
  31964. || lk == 84136 // 'json' 'intersect'
  31965. || lk == 84648 // 'json' 'into'
  31966. || lk == 85160 // 'json' 'is'
  31967. || lk == 85672 // 'json' 'item'
  31968. || lk == 86184 // 'json' 'json'
  31969. || lk == 86696 // 'json' 'json-item'
  31970. || lk == 87208 // 'json' 'jsoniq'
  31971. || lk == 88744 // 'json' 'last'
  31972. || lk == 89256 // 'json' 'lax'
  31973. || lk == 89768 // 'json' 'le'
  31974. || lk == 90792 // 'json' 'let'
  31975. || lk == 91816 // 'json' 'loop'
  31976. || lk == 92840 // 'json' 'lt'
  31977. || lk == 93864 // 'json' 'mod'
  31978. || lk == 94376 // 'json' 'modify'
  31979. || lk == 94888 // 'json' 'module'
  31980. || lk == 95912 // 'json' 'namespace'
  31981. || lk == 96424 // 'json' 'namespace-node'
  31982. || lk == 96936 // 'json' 'ne'
  31983. || lk == 99496 // 'json' 'node'
  31984. || lk == 100008 // 'json' 'nodes'
  31985. || lk == 100520 // 'json' 'not'
  31986. || lk == 101032 // 'json' 'null'
  31987. || lk == 101544 // 'json' 'object'
  31988. || lk == 103592 // 'json' 'only'
  31989. || lk == 104104 // 'json' 'option'
  31990. || lk == 104616 // 'json' 'or'
  31991. || lk == 105128 // 'json' 'order'
  31992. || lk == 105640 // 'json' 'ordered'
  31993. || lk == 106152 // 'json' 'ordering'
  31994. || lk == 107688 // 'json' 'parent'
  31995. || lk == 110760 // 'json' 'preceding'
  31996. || lk == 111272 // 'json' 'preceding-sibling'
  31997. || lk == 112808 // 'json' 'processing-instruction'
  31998. || lk == 113832 // 'json' 'rename'
  31999. || lk == 114344 // 'json' 'replace'
  32000. || lk == 114856 // 'json' 'return'
  32001. || lk == 115368 // 'json' 'returning'
  32002. || lk == 115880 // 'json' 'revalidation'
  32003. || lk == 116904 // 'json' 'satisfies'
  32004. || lk == 117416 // 'json' 'schema'
  32005. || lk == 117928 // 'json' 'schema-attribute'
  32006. || lk == 118440 // 'json' 'schema-element'
  32007. || lk == 118952 // 'json' 'score'
  32008. || lk == 119464 // 'json' 'select'
  32009. || lk == 119976 // 'json' 'self'
  32010. || lk == 122536 // 'json' 'sliding'
  32011. || lk == 123048 // 'json' 'some'
  32012. || lk == 123560 // 'json' 'stable'
  32013. || lk == 124072 // 'json' 'start'
  32014. || lk == 125608 // 'json' 'strict'
  32015. || lk == 126632 // 'json' 'structured-item'
  32016. || lk == 127144 // 'json' 'switch'
  32017. || lk == 127656 // 'json' 'text'
  32018. || lk == 129704 // 'json' 'to'
  32019. || lk == 130216 // 'json' 'treat'
  32020. || lk == 130728 // 'json' 'true'
  32021. || lk == 131240 // 'json' 'try'
  32022. || lk == 131752 // 'json' 'tumbling'
  32023. || lk == 132264 // 'json' 'type'
  32024. || lk == 132776 // 'json' 'typeswitch'
  32025. || lk == 133288 // 'json' 'union'
  32026. || lk == 134312 // 'json' 'unordered'
  32027. || lk == 134824 // 'json' 'updating'
  32028. || lk == 136360 // 'json' 'validate'
  32029. || lk == 136872 // 'json' 'value'
  32030. || lk == 137384 // 'json' 'variable'
  32031. || lk == 137896 // 'json' 'version'
  32032. || lk == 139432 // 'json' 'where'
  32033. || lk == 139944 // 'json' 'while'
  32034. || lk == 141480 // 'json' 'with'
  32035. || lk == 144040 // 'json' '{'
  32036. || lk == 145064) // 'json' '{|'
  32037. {
  32038. shift(168); // 'json'
  32039. }
  32040. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32041. whitespace();
  32042. parse_ExprSingle();
  32043. shift(165); // 'into'
  32044. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32045. whitespace();
  32046. parse_ExprSingle();
  32047. eventHandler.endNonterminal("JSONAppendExpr", e0);
  32048. }
  32049. function try_JSONAppendExpr()
  32050. {
  32051. shiftT(78); // 'append'
  32052. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32053. switch (l1)
  32054. {
  32055. case 168: // 'json'
  32056. lookahead2W(268); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32057. break;
  32058. default:
  32059. lk = l1;
  32060. }
  32061. if (lk == 18088) // 'json' '('
  32062. {
  32063. lk = memoized(17, e0);
  32064. if (lk == 0)
  32065. {
  32066. var b0A = b0; var e0A = e0; var l1A = l1;
  32067. var b1A = b1; var e1A = e1; var l2A = l2;
  32068. var b2A = b2; var e2A = e2;
  32069. try
  32070. {
  32071. shiftT(168); // 'json'
  32072. memoize(17, e0A, -1);
  32073. }
  32074. catch (p1A)
  32075. {
  32076. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32077. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32078. b2 = b2A; e2 = e2A; end = e2A; }}
  32079. memoize(17, e0A, -2);
  32080. }
  32081. lk = -2;
  32082. }
  32083. }
  32084. if (lk == -1
  32085. || lk == 3240 // 'json' EQName^Token
  32086. || lk == 4264 // 'json' IntegerLiteral
  32087. || lk == 4776 // 'json' DecimalLiteral
  32088. || lk == 5288 // 'json' DoubleLiteral
  32089. || lk == 5800 // 'json' StringLiteral
  32090. || lk == 16040 // 'json' '$'
  32091. || lk == 16552 // 'json' '$$'
  32092. || lk == 17064 // 'json' '%'
  32093. || lk == 18600 // 'json' '(#'
  32094. || lk == 21160 // 'json' '+'
  32095. || lk == 22184 // 'json' '-'
  32096. || lk == 24232 // 'json' '/'
  32097. || lk == 24744 // 'json' '//'
  32098. || lk == 28328 // 'json' '<'
  32099. || lk == 28840 // 'json' '<!--'
  32100. || lk == 30888 // 'json' '<?'
  32101. || lk == 35496 // 'json' '['
  32102. || lk == 36520 // 'json' 'after'
  32103. || lk == 37544 // 'json' 'allowing'
  32104. || lk == 38056 // 'json' 'ancestor'
  32105. || lk == 38568 // 'json' 'ancestor-or-self'
  32106. || lk == 39080 // 'json' 'and'
  32107. || lk == 40104 // 'json' 'append'
  32108. || lk == 40616 // 'json' 'array'
  32109. || lk == 41128 // 'json' 'as'
  32110. || lk == 41640 // 'json' 'ascending'
  32111. || lk == 42152 // 'json' 'at'
  32112. || lk == 42664 // 'json' 'attribute'
  32113. || lk == 43176 // 'json' 'base-uri'
  32114. || lk == 43688 // 'json' 'before'
  32115. || lk == 44200 // 'json' 'boundary-space'
  32116. || lk == 44712 // 'json' 'break'
  32117. || lk == 45736 // 'json' 'case'
  32118. || lk == 46248 // 'json' 'cast'
  32119. || lk == 46760 // 'json' 'castable'
  32120. || lk == 47272 // 'json' 'catch'
  32121. || lk == 48296 // 'json' 'child'
  32122. || lk == 48808 // 'json' 'collation'
  32123. || lk == 49832 // 'json' 'comment'
  32124. || lk == 50344 // 'json' 'constraint'
  32125. || lk == 50856 // 'json' 'construction'
  32126. || lk == 52392 // 'json' 'context'
  32127. || lk == 52904 // 'json' 'continue'
  32128. || lk == 53416 // 'json' 'copy'
  32129. || lk == 53928 // 'json' 'copy-namespaces'
  32130. || lk == 54440 // 'json' 'count'
  32131. || lk == 54952 // 'json' 'decimal-format'
  32132. || lk == 55976 // 'json' 'declare'
  32133. || lk == 56488 // 'json' 'default'
  32134. || lk == 57000 // 'json' 'delete'
  32135. || lk == 57512 // 'json' 'descendant'
  32136. || lk == 58024 // 'json' 'descendant-or-self'
  32137. || lk == 58536 // 'json' 'descending'
  32138. || lk == 61096 // 'json' 'div'
  32139. || lk == 61608 // 'json' 'document'
  32140. || lk == 62120 // 'json' 'document-node'
  32141. || lk == 62632 // 'json' 'element'
  32142. || lk == 63144 // 'json' 'else'
  32143. || lk == 63656 // 'json' 'empty'
  32144. || lk == 64168 // 'json' 'empty-sequence'
  32145. || lk == 64680 // 'json' 'encoding'
  32146. || lk == 65192 // 'json' 'end'
  32147. || lk == 66216 // 'json' 'eq'
  32148. || lk == 66728 // 'json' 'every'
  32149. || lk == 67752 // 'json' 'except'
  32150. || lk == 68264 // 'json' 'exit'
  32151. || lk == 68776 // 'json' 'external'
  32152. || lk == 69288 // 'json' 'false'
  32153. || lk == 69800 // 'json' 'first'
  32154. || lk == 70312 // 'json' 'following'
  32155. || lk == 70824 // 'json' 'following-sibling'
  32156. || lk == 71336 // 'json' 'for'
  32157. || lk == 72872 // 'json' 'from'
  32158. || lk == 73384 // 'json' 'ft-option'
  32159. || lk == 75432 // 'json' 'function'
  32160. || lk == 75944 // 'json' 'ge'
  32161. || lk == 76968 // 'json' 'group'
  32162. || lk == 77992 // 'json' 'gt'
  32163. || lk == 78504 // 'json' 'idiv'
  32164. || lk == 79016 // 'json' 'if'
  32165. || lk == 79528 // 'json' 'import'
  32166. || lk == 80040 // 'json' 'in'
  32167. || lk == 80552 // 'json' 'index'
  32168. || lk == 82600 // 'json' 'insert'
  32169. || lk == 83112 // 'json' 'instance'
  32170. || lk == 83624 // 'json' 'integrity'
  32171. || lk == 84136 // 'json' 'intersect'
  32172. || lk == 84648 // 'json' 'into'
  32173. || lk == 85160 // 'json' 'is'
  32174. || lk == 85672 // 'json' 'item'
  32175. || lk == 86184 // 'json' 'json'
  32176. || lk == 86696 // 'json' 'json-item'
  32177. || lk == 87208 // 'json' 'jsoniq'
  32178. || lk == 88744 // 'json' 'last'
  32179. || lk == 89256 // 'json' 'lax'
  32180. || lk == 89768 // 'json' 'le'
  32181. || lk == 90792 // 'json' 'let'
  32182. || lk == 91816 // 'json' 'loop'
  32183. || lk == 92840 // 'json' 'lt'
  32184. || lk == 93864 // 'json' 'mod'
  32185. || lk == 94376 // 'json' 'modify'
  32186. || lk == 94888 // 'json' 'module'
  32187. || lk == 95912 // 'json' 'namespace'
  32188. || lk == 96424 // 'json' 'namespace-node'
  32189. || lk == 96936 // 'json' 'ne'
  32190. || lk == 99496 // 'json' 'node'
  32191. || lk == 100008 // 'json' 'nodes'
  32192. || lk == 100520 // 'json' 'not'
  32193. || lk == 101032 // 'json' 'null'
  32194. || lk == 101544 // 'json' 'object'
  32195. || lk == 103592 // 'json' 'only'
  32196. || lk == 104104 // 'json' 'option'
  32197. || lk == 104616 // 'json' 'or'
  32198. || lk == 105128 // 'json' 'order'
  32199. || lk == 105640 // 'json' 'ordered'
  32200. || lk == 106152 // 'json' 'ordering'
  32201. || lk == 107688 // 'json' 'parent'
  32202. || lk == 110760 // 'json' 'preceding'
  32203. || lk == 111272 // 'json' 'preceding-sibling'
  32204. || lk == 112808 // 'json' 'processing-instruction'
  32205. || lk == 113832 // 'json' 'rename'
  32206. || lk == 114344 // 'json' 'replace'
  32207. || lk == 114856 // 'json' 'return'
  32208. || lk == 115368 // 'json' 'returning'
  32209. || lk == 115880 // 'json' 'revalidation'
  32210. || lk == 116904 // 'json' 'satisfies'
  32211. || lk == 117416 // 'json' 'schema'
  32212. || lk == 117928 // 'json' 'schema-attribute'
  32213. || lk == 118440 // 'json' 'schema-element'
  32214. || lk == 118952 // 'json' 'score'
  32215. || lk == 119464 // 'json' 'select'
  32216. || lk == 119976 // 'json' 'self'
  32217. || lk == 122536 // 'json' 'sliding'
  32218. || lk == 123048 // 'json' 'some'
  32219. || lk == 123560 // 'json' 'stable'
  32220. || lk == 124072 // 'json' 'start'
  32221. || lk == 125608 // 'json' 'strict'
  32222. || lk == 126632 // 'json' 'structured-item'
  32223. || lk == 127144 // 'json' 'switch'
  32224. || lk == 127656 // 'json' 'text'
  32225. || lk == 129704 // 'json' 'to'
  32226. || lk == 130216 // 'json' 'treat'
  32227. || lk == 130728 // 'json' 'true'
  32228. || lk == 131240 // 'json' 'try'
  32229. || lk == 131752 // 'json' 'tumbling'
  32230. || lk == 132264 // 'json' 'type'
  32231. || lk == 132776 // 'json' 'typeswitch'
  32232. || lk == 133288 // 'json' 'union'
  32233. || lk == 134312 // 'json' 'unordered'
  32234. || lk == 134824 // 'json' 'updating'
  32235. || lk == 136360 // 'json' 'validate'
  32236. || lk == 136872 // 'json' 'value'
  32237. || lk == 137384 // 'json' 'variable'
  32238. || lk == 137896 // 'json' 'version'
  32239. || lk == 139432 // 'json' 'where'
  32240. || lk == 139944 // 'json' 'while'
  32241. || lk == 141480 // 'json' 'with'
  32242. || lk == 144040 // 'json' '{'
  32243. || lk == 145064) // 'json' '{|'
  32244. {
  32245. shiftT(168); // 'json'
  32246. }
  32247. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32248. try_ExprSingle();
  32249. shiftT(165); // 'into'
  32250. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32251. try_ExprSingle();
  32252. }
  32253. function parse_CommonContent()
  32254. {
  32255. eventHandler.startNonterminal("CommonContent", e0);
  32256. switch (l1)
  32257. {
  32258. case 12: // PredefinedEntityRef
  32259. shift(12); // PredefinedEntityRef
  32260. break;
  32261. case 23: // CharRef
  32262. shift(23); // CharRef
  32263. break;
  32264. case 282: // '{{'
  32265. shift(282); // '{{'
  32266. break;
  32267. case 288: // '}}'
  32268. shift(288); // '}}'
  32269. break;
  32270. default:
  32271. parse_BlockExpr();
  32272. }
  32273. eventHandler.endNonterminal("CommonContent", e0);
  32274. }
  32275. function try_CommonContent()
  32276. {
  32277. switch (l1)
  32278. {
  32279. case 12: // PredefinedEntityRef
  32280. shiftT(12); // PredefinedEntityRef
  32281. break;
  32282. case 23: // CharRef
  32283. shiftT(23); // CharRef
  32284. break;
  32285. case 282: // '{{'
  32286. shiftT(282); // '{{'
  32287. break;
  32288. case 288: // '}}'
  32289. shiftT(288); // '}}'
  32290. break;
  32291. default:
  32292. try_BlockExpr();
  32293. }
  32294. }
  32295. function parse_ContentExpr()
  32296. {
  32297. eventHandler.startNonterminal("ContentExpr", e0);
  32298. parse_StatementsAndExpr();
  32299. eventHandler.endNonterminal("ContentExpr", e0);
  32300. }
  32301. function try_ContentExpr()
  32302. {
  32303. try_StatementsAndExpr();
  32304. }
  32305. function parse_CompDocConstructor()
  32306. {
  32307. eventHandler.startNonterminal("CompDocConstructor", e0);
  32308. shift(120); // 'document'
  32309. lookahead1W(90); // S^WS | '(:' | '{'
  32310. whitespace();
  32311. parse_BlockExpr();
  32312. eventHandler.endNonterminal("CompDocConstructor", e0);
  32313. }
  32314. function try_CompDocConstructor()
  32315. {
  32316. shiftT(120); // 'document'
  32317. lookahead1W(90); // S^WS | '(:' | '{'
  32318. try_BlockExpr();
  32319. }
  32320. function parse_CompAttrConstructor()
  32321. {
  32322. eventHandler.startNonterminal("CompAttrConstructor", e0);
  32323. shift(83); // 'attribute'
  32324. lookahead1W(249); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  32325. switch (l1)
  32326. {
  32327. case 281: // '{'
  32328. shift(281); // '{'
  32329. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32330. whitespace();
  32331. parse_Expr();
  32332. shift(287); // '}'
  32333. break;
  32334. default:
  32335. whitespace();
  32336. parse_EQName();
  32337. }
  32338. lookahead1W(90); // S^WS | '(:' | '{'
  32339. switch (l1)
  32340. {
  32341. case 281: // '{'
  32342. lookahead2W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32343. break;
  32344. default:
  32345. lk = l1;
  32346. }
  32347. if (lk == 147225) // '{' '}'
  32348. {
  32349. lk = memoized(18, e0);
  32350. if (lk == 0)
  32351. {
  32352. var b0A = b0; var e0A = e0; var l1A = l1;
  32353. var b1A = b1; var e1A = e1; var l2A = l2;
  32354. var b2A = b2; var e2A = e2;
  32355. try
  32356. {
  32357. shiftT(281); // '{'
  32358. lookahead1W(91); // S^WS | '(:' | '}'
  32359. shiftT(287); // '}'
  32360. lk = -1;
  32361. }
  32362. catch (p1A)
  32363. {
  32364. lk = -2;
  32365. }
  32366. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32367. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32368. b2 = b2A; e2 = e2A; end = e2A; }}
  32369. memoize(18, e0, lk);
  32370. }
  32371. }
  32372. switch (lk)
  32373. {
  32374. case -1:
  32375. shift(281); // '{'
  32376. lookahead1W(91); // S^WS | '(:' | '}'
  32377. shift(287); // '}'
  32378. break;
  32379. default:
  32380. whitespace();
  32381. parse_BlockExpr();
  32382. }
  32383. eventHandler.endNonterminal("CompAttrConstructor", e0);
  32384. }
  32385. function try_CompAttrConstructor()
  32386. {
  32387. shiftT(83); // 'attribute'
  32388. lookahead1W(249); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  32389. switch (l1)
  32390. {
  32391. case 281: // '{'
  32392. shiftT(281); // '{'
  32393. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32394. try_Expr();
  32395. shiftT(287); // '}'
  32396. break;
  32397. default:
  32398. try_EQName();
  32399. }
  32400. lookahead1W(90); // S^WS | '(:' | '{'
  32401. switch (l1)
  32402. {
  32403. case 281: // '{'
  32404. lookahead2W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32405. break;
  32406. default:
  32407. lk = l1;
  32408. }
  32409. if (lk == 147225) // '{' '}'
  32410. {
  32411. lk = memoized(18, e0);
  32412. if (lk == 0)
  32413. {
  32414. var b0A = b0; var e0A = e0; var l1A = l1;
  32415. var b1A = b1; var e1A = e1; var l2A = l2;
  32416. var b2A = b2; var e2A = e2;
  32417. try
  32418. {
  32419. shiftT(281); // '{'
  32420. lookahead1W(91); // S^WS | '(:' | '}'
  32421. shiftT(287); // '}'
  32422. memoize(18, e0A, -1);
  32423. lk = -3;
  32424. }
  32425. catch (p1A)
  32426. {
  32427. lk = -2;
  32428. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32429. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32430. b2 = b2A; e2 = e2A; end = e2A; }}
  32431. memoize(18, e0A, -2);
  32432. }
  32433. }
  32434. }
  32435. switch (lk)
  32436. {
  32437. case -1:
  32438. shiftT(281); // '{'
  32439. lookahead1W(91); // S^WS | '(:' | '}'
  32440. shiftT(287); // '}'
  32441. break;
  32442. case -3:
  32443. break;
  32444. default:
  32445. try_BlockExpr();
  32446. }
  32447. }
  32448. function parse_CompPIConstructor()
  32449. {
  32450. eventHandler.startNonterminal("CompPIConstructor", e0);
  32451. shift(220); // 'processing-instruction'
  32452. lookahead1W(241); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  32453. switch (l1)
  32454. {
  32455. case 281: // '{'
  32456. shift(281); // '{'
  32457. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32458. whitespace();
  32459. parse_Expr();
  32460. shift(287); // '}'
  32461. break;
  32462. default:
  32463. whitespace();
  32464. parse_NCName();
  32465. }
  32466. lookahead1W(90); // S^WS | '(:' | '{'
  32467. switch (l1)
  32468. {
  32469. case 281: // '{'
  32470. lookahead2W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32471. break;
  32472. default:
  32473. lk = l1;
  32474. }
  32475. if (lk == 147225) // '{' '}'
  32476. {
  32477. lk = memoized(19, e0);
  32478. if (lk == 0)
  32479. {
  32480. var b0A = b0; var e0A = e0; var l1A = l1;
  32481. var b1A = b1; var e1A = e1; var l2A = l2;
  32482. var b2A = b2; var e2A = e2;
  32483. try
  32484. {
  32485. shiftT(281); // '{'
  32486. lookahead1W(91); // S^WS | '(:' | '}'
  32487. shiftT(287); // '}'
  32488. lk = -1;
  32489. }
  32490. catch (p1A)
  32491. {
  32492. lk = -2;
  32493. }
  32494. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32495. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32496. b2 = b2A; e2 = e2A; end = e2A; }}
  32497. memoize(19, e0, lk);
  32498. }
  32499. }
  32500. switch (lk)
  32501. {
  32502. case -1:
  32503. shift(281); // '{'
  32504. lookahead1W(91); // S^WS | '(:' | '}'
  32505. shift(287); // '}'
  32506. break;
  32507. default:
  32508. whitespace();
  32509. parse_BlockExpr();
  32510. }
  32511. eventHandler.endNonterminal("CompPIConstructor", e0);
  32512. }
  32513. function try_CompPIConstructor()
  32514. {
  32515. shiftT(220); // 'processing-instruction'
  32516. lookahead1W(241); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  32517. switch (l1)
  32518. {
  32519. case 281: // '{'
  32520. shiftT(281); // '{'
  32521. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32522. try_Expr();
  32523. shiftT(287); // '}'
  32524. break;
  32525. default:
  32526. try_NCName();
  32527. }
  32528. lookahead1W(90); // S^WS | '(:' | '{'
  32529. switch (l1)
  32530. {
  32531. case 281: // '{'
  32532. lookahead2W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32533. break;
  32534. default:
  32535. lk = l1;
  32536. }
  32537. if (lk == 147225) // '{' '}'
  32538. {
  32539. lk = memoized(19, e0);
  32540. if (lk == 0)
  32541. {
  32542. var b0A = b0; var e0A = e0; var l1A = l1;
  32543. var b1A = b1; var e1A = e1; var l2A = l2;
  32544. var b2A = b2; var e2A = e2;
  32545. try
  32546. {
  32547. shiftT(281); // '{'
  32548. lookahead1W(91); // S^WS | '(:' | '}'
  32549. shiftT(287); // '}'
  32550. memoize(19, e0A, -1);
  32551. lk = -3;
  32552. }
  32553. catch (p1A)
  32554. {
  32555. lk = -2;
  32556. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32557. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32558. b2 = b2A; e2 = e2A; end = e2A; }}
  32559. memoize(19, e0A, -2);
  32560. }
  32561. }
  32562. }
  32563. switch (lk)
  32564. {
  32565. case -1:
  32566. shiftT(281); // '{'
  32567. lookahead1W(91); // S^WS | '(:' | '}'
  32568. shiftT(287); // '}'
  32569. break;
  32570. case -3:
  32571. break;
  32572. default:
  32573. try_BlockExpr();
  32574. }
  32575. }
  32576. function parse_CompCommentConstructor()
  32577. {
  32578. eventHandler.startNonterminal("CompCommentConstructor", e0);
  32579. shift(97); // 'comment'
  32580. lookahead1W(90); // S^WS | '(:' | '{'
  32581. whitespace();
  32582. parse_BlockExpr();
  32583. eventHandler.endNonterminal("CompCommentConstructor", e0);
  32584. }
  32585. function try_CompCommentConstructor()
  32586. {
  32587. shiftT(97); // 'comment'
  32588. lookahead1W(90); // S^WS | '(:' | '{'
  32589. try_BlockExpr();
  32590. }
  32591. function parse_CompTextConstructor()
  32592. {
  32593. eventHandler.startNonterminal("CompTextConstructor", e0);
  32594. shift(249); // 'text'
  32595. lookahead1W(90); // S^WS | '(:' | '{'
  32596. whitespace();
  32597. parse_BlockExpr();
  32598. eventHandler.endNonterminal("CompTextConstructor", e0);
  32599. }
  32600. function try_CompTextConstructor()
  32601. {
  32602. shiftT(249); // 'text'
  32603. lookahead1W(90); // S^WS | '(:' | '{'
  32604. try_BlockExpr();
  32605. }
  32606. function parse_PrimaryExpr()
  32607. {
  32608. eventHandler.startNonterminal("PrimaryExpr", e0);
  32609. switch (l1)
  32610. {
  32611. case 187: // 'namespace'
  32612. lookahead2W(246); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  32613. break;
  32614. case 220: // 'processing-instruction'
  32615. lookahead2W(244); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  32616. break;
  32617. case 281: // '{'
  32618. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  32619. break;
  32620. case 83: // 'attribute'
  32621. case 122: // 'element'
  32622. lookahead2W(252); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  32623. break;
  32624. case 97: // 'comment'
  32625. case 249: // 'text'
  32626. lookahead2W(97); // S^WS | '#' | '(:' | '{'
  32627. break;
  32628. case 120: // 'document'
  32629. case 206: // 'ordered'
  32630. case 262: // 'unordered'
  32631. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  32632. break;
  32633. case 135: // 'false'
  32634. case 197: // 'null'
  32635. case 255: // 'true'
  32636. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' |
  32637. break;
  32638. case 6: // EQName^Token
  32639. case 71: // 'after'
  32640. case 73: // 'allowing'
  32641. case 74: // 'ancestor'
  32642. case 75: // 'ancestor-or-self'
  32643. case 76: // 'and'
  32644. case 78: // 'append'
  32645. case 80: // 'as'
  32646. case 81: // 'ascending'
  32647. case 82: // 'at'
  32648. case 84: // 'base-uri'
  32649. case 85: // 'before'
  32650. case 86: // 'boundary-space'
  32651. case 87: // 'break'
  32652. case 89: // 'case'
  32653. case 90: // 'cast'
  32654. case 91: // 'castable'
  32655. case 92: // 'catch'
  32656. case 94: // 'child'
  32657. case 95: // 'collation'
  32658. case 98: // 'constraint'
  32659. case 99: // 'construction'
  32660. case 102: // 'context'
  32661. case 103: // 'continue'
  32662. case 104: // 'copy'
  32663. case 105: // 'copy-namespaces'
  32664. case 106: // 'count'
  32665. case 107: // 'decimal-format'
  32666. case 109: // 'declare'
  32667. case 110: // 'default'
  32668. case 111: // 'delete'
  32669. case 112: // 'descendant'
  32670. case 113: // 'descendant-or-self'
  32671. case 114: // 'descending'
  32672. case 119: // 'div'
  32673. case 123: // 'else'
  32674. case 124: // 'empty'
  32675. case 126: // 'encoding'
  32676. case 127: // 'end'
  32677. case 129: // 'eq'
  32678. case 130: // 'every'
  32679. case 132: // 'except'
  32680. case 133: // 'exit'
  32681. case 134: // 'external'
  32682. case 136: // 'first'
  32683. case 137: // 'following'
  32684. case 138: // 'following-sibling'
  32685. case 139: // 'for'
  32686. case 142: // 'from'
  32687. case 143: // 'ft-option'
  32688. case 148: // 'ge'
  32689. case 150: // 'group'
  32690. case 152: // 'gt'
  32691. case 153: // 'idiv'
  32692. case 155: // 'import'
  32693. case 156: // 'in'
  32694. case 157: // 'index'
  32695. case 161: // 'insert'
  32696. case 162: // 'instance'
  32697. case 163: // 'integrity'
  32698. case 164: // 'intersect'
  32699. case 165: // 'into'
  32700. case 166: // 'is'
  32701. case 168: // 'json'
  32702. case 170: // 'jsoniq'
  32703. case 173: // 'last'
  32704. case 174: // 'lax'
  32705. case 175: // 'le'
  32706. case 177: // 'let'
  32707. case 179: // 'loop'
  32708. case 181: // 'lt'
  32709. case 183: // 'mod'
  32710. case 184: // 'modify'
  32711. case 185: // 'module'
  32712. case 189: // 'ne'
  32713. case 195: // 'nodes'
  32714. case 198: // 'object'
  32715. case 202: // 'only'
  32716. case 203: // 'option'
  32717. case 204: // 'or'
  32718. case 205: // 'order'
  32719. case 207: // 'ordering'
  32720. case 210: // 'parent'
  32721. case 216: // 'preceding'
  32722. case 217: // 'preceding-sibling'
  32723. case 222: // 'rename'
  32724. case 223: // 'replace'
  32725. case 224: // 'return'
  32726. case 225: // 'returning'
  32727. case 226: // 'revalidation'
  32728. case 228: // 'satisfies'
  32729. case 229: // 'schema'
  32730. case 232: // 'score'
  32731. case 233: // 'select'
  32732. case 234: // 'self'
  32733. case 239: // 'sliding'
  32734. case 240: // 'some'
  32735. case 241: // 'stable'
  32736. case 242: // 'start'
  32737. case 245: // 'strict'
  32738. case 253: // 'to'
  32739. case 254: // 'treat'
  32740. case 256: // 'try'
  32741. case 257: // 'tumbling'
  32742. case 258: // 'type'
  32743. case 260: // 'union'
  32744. case 263: // 'updating'
  32745. case 266: // 'validate'
  32746. case 267: // 'value'
  32747. case 268: // 'variable'
  32748. case 269: // 'version'
  32749. case 272: // 'where'
  32750. case 273: // 'while'
  32751. case 276: // 'with'
  32752. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  32753. break;
  32754. default:
  32755. lk = l1;
  32756. }
  32757. if (lk == 3353 // '{' EQName^Token
  32758. || lk == 4377 // '{' IntegerLiteral
  32759. || lk == 4889 // '{' DecimalLiteral
  32760. || lk == 5401 // '{' DoubleLiteral
  32761. || lk == 5913 // '{' StringLiteral
  32762. || lk == 16153 // '{' '$'
  32763. || lk == 16665 // '{' '$$'
  32764. || lk == 17177 // '{' '%'
  32765. || lk == 18055 // 'false' '('
  32766. || lk == 18117 // 'null' '('
  32767. || lk == 18175 // 'true' '('
  32768. || lk == 18201 // '{' '('
  32769. || lk == 18713 // '{' '(#'
  32770. || lk == 21273 // '{' '+'
  32771. || lk == 22297 // '{' '-'
  32772. || lk == 24345 // '{' '/'
  32773. || lk == 24857 // '{' '//'
  32774. || lk == 28441 // '{' '<'
  32775. || lk == 28953 // '{' '<!--'
  32776. || lk == 31001 // '{' '<?'
  32777. || lk == 35609 // '{' '['
  32778. || lk == 36633 // '{' 'after'
  32779. || lk == 37657 // '{' 'allowing'
  32780. || lk == 38169 // '{' 'ancestor'
  32781. || lk == 38681 // '{' 'ancestor-or-self'
  32782. || lk == 39193 // '{' 'and'
  32783. || lk == 40217 // '{' 'append'
  32784. || lk == 40729 // '{' 'array'
  32785. || lk == 41241 // '{' 'as'
  32786. || lk == 41753 // '{' 'ascending'
  32787. || lk == 42265 // '{' 'at'
  32788. || lk == 42777 // '{' 'attribute'
  32789. || lk == 43289 // '{' 'base-uri'
  32790. || lk == 43801 // '{' 'before'
  32791. || lk == 44313 // '{' 'boundary-space'
  32792. || lk == 44825 // '{' 'break'
  32793. || lk == 45849 // '{' 'case'
  32794. || lk == 46361 // '{' 'cast'
  32795. || lk == 46873 // '{' 'castable'
  32796. || lk == 47385 // '{' 'catch'
  32797. || lk == 48409 // '{' 'child'
  32798. || lk == 48921 // '{' 'collation'
  32799. || lk == 49945 // '{' 'comment'
  32800. || lk == 50457 // '{' 'constraint'
  32801. || lk == 50969 // '{' 'construction'
  32802. || lk == 52505 // '{' 'context'
  32803. || lk == 53017 // '{' 'continue'
  32804. || lk == 53529 // '{' 'copy'
  32805. || lk == 54041 // '{' 'copy-namespaces'
  32806. || lk == 54553 // '{' 'count'
  32807. || lk == 55065 // '{' 'decimal-format'
  32808. || lk == 56089 // '{' 'declare'
  32809. || lk == 56601 // '{' 'default'
  32810. || lk == 57113 // '{' 'delete'
  32811. || lk == 57625 // '{' 'descendant'
  32812. || lk == 58137 // '{' 'descendant-or-self'
  32813. || lk == 58649 // '{' 'descending'
  32814. || lk == 61209 // '{' 'div'
  32815. || lk == 61721 // '{' 'document'
  32816. || lk == 62233 // '{' 'document-node'
  32817. || lk == 62745 // '{' 'element'
  32818. || lk == 63257 // '{' 'else'
  32819. || lk == 63769 // '{' 'empty'
  32820. || lk == 64281 // '{' 'empty-sequence'
  32821. || lk == 64793 // '{' 'encoding'
  32822. || lk == 65305 // '{' 'end'
  32823. || lk == 66329 // '{' 'eq'
  32824. || lk == 66841 // '{' 'every'
  32825. || lk == 67865 // '{' 'except'
  32826. || lk == 68377 // '{' 'exit'
  32827. || lk == 68889 // '{' 'external'
  32828. || lk == 69401 // '{' 'false'
  32829. || lk == 69913 // '{' 'first'
  32830. || lk == 70425 // '{' 'following'
  32831. || lk == 70937 // '{' 'following-sibling'
  32832. || lk == 71449 // '{' 'for'
  32833. || lk == 72985 // '{' 'from'
  32834. || lk == 73497 // '{' 'ft-option'
  32835. || lk == 75545 // '{' 'function'
  32836. || lk == 76057 // '{' 'ge'
  32837. || lk == 77081 // '{' 'group'
  32838. || lk == 78105 // '{' 'gt'
  32839. || lk == 78617 // '{' 'idiv'
  32840. || lk == 79129 // '{' 'if'
  32841. || lk == 79641 // '{' 'import'
  32842. || lk == 80153 // '{' 'in'
  32843. || lk == 80665 // '{' 'index'
  32844. || lk == 82713 // '{' 'insert'
  32845. || lk == 83225 // '{' 'instance'
  32846. || lk == 83737 // '{' 'integrity'
  32847. || lk == 84249 // '{' 'intersect'
  32848. || lk == 84761 // '{' 'into'
  32849. || lk == 85273 // '{' 'is'
  32850. || lk == 85785 // '{' 'item'
  32851. || lk == 86297 // '{' 'json'
  32852. || lk == 86809 // '{' 'json-item'
  32853. || lk == 87321 // '{' 'jsoniq'
  32854. || lk == 88857 // '{' 'last'
  32855. || lk == 89369 // '{' 'lax'
  32856. || lk == 89881 // '{' 'le'
  32857. || lk == 90905 // '{' 'let'
  32858. || lk == 91929 // '{' 'loop'
  32859. || lk == 92953 // '{' 'lt'
  32860. || lk == 93977 // '{' 'mod'
  32861. || lk == 94489 // '{' 'modify'
  32862. || lk == 95001 // '{' 'module'
  32863. || lk == 96025 // '{' 'namespace'
  32864. || lk == 96537 // '{' 'namespace-node'
  32865. || lk == 97049 // '{' 'ne'
  32866. || lk == 99609 // '{' 'node'
  32867. || lk == 100121 // '{' 'nodes'
  32868. || lk == 100633 // '{' 'not'
  32869. || lk == 101145 // '{' 'null'
  32870. || lk == 101657 // '{' 'object'
  32871. || lk == 103705 // '{' 'only'
  32872. || lk == 104217 // '{' 'option'
  32873. || lk == 104729 // '{' 'or'
  32874. || lk == 105241 // '{' 'order'
  32875. || lk == 105753 // '{' 'ordered'
  32876. || lk == 106265 // '{' 'ordering'
  32877. || lk == 107801 // '{' 'parent'
  32878. || lk == 110873 // '{' 'preceding'
  32879. || lk == 111385 // '{' 'preceding-sibling'
  32880. || lk == 112921 // '{' 'processing-instruction'
  32881. || lk == 113945 // '{' 'rename'
  32882. || lk == 114457 // '{' 'replace'
  32883. || lk == 114969 // '{' 'return'
  32884. || lk == 115481 // '{' 'returning'
  32885. || lk == 115993 // '{' 'revalidation'
  32886. || lk == 117017 // '{' 'satisfies'
  32887. || lk == 117529 // '{' 'schema'
  32888. || lk == 118041 // '{' 'schema-attribute'
  32889. || lk == 118553 // '{' 'schema-element'
  32890. || lk == 119065 // '{' 'score'
  32891. || lk == 119577 // '{' 'select'
  32892. || lk == 120089 // '{' 'self'
  32893. || lk == 122649 // '{' 'sliding'
  32894. || lk == 123161 // '{' 'some'
  32895. || lk == 123673 // '{' 'stable'
  32896. || lk == 124185 // '{' 'start'
  32897. || lk == 125721 // '{' 'strict'
  32898. || lk == 126745 // '{' 'structured-item'
  32899. || lk == 127257 // '{' 'switch'
  32900. || lk == 127769 // '{' 'text'
  32901. || lk == 129817 // '{' 'to'
  32902. || lk == 130329 // '{' 'treat'
  32903. || lk == 130841 // '{' 'true'
  32904. || lk == 131353 // '{' 'try'
  32905. || lk == 131865 // '{' 'tumbling'
  32906. || lk == 132377 // '{' 'type'
  32907. || lk == 132889 // '{' 'typeswitch'
  32908. || lk == 133401 // '{' 'union'
  32909. || lk == 134425 // '{' 'unordered'
  32910. || lk == 134937 // '{' 'updating'
  32911. || lk == 136473 // '{' 'validate'
  32912. || lk == 136985 // '{' 'value'
  32913. || lk == 137497 // '{' 'variable'
  32914. || lk == 138009 // '{' 'version'
  32915. || lk == 139545 // '{' 'where'
  32916. || lk == 140057 // '{' 'while'
  32917. || lk == 141593 // '{' 'with'
  32918. || lk == 144153 // '{' '{'
  32919. || lk == 145177 // '{' '{|'
  32920. || lk == 147225) // '{' '}'
  32921. {
  32922. lk = memoized(20, e0);
  32923. if (lk == 0)
  32924. {
  32925. var b0A = b0; var e0A = e0; var l1A = l1;
  32926. var b1A = b1; var e1A = e1; var l2A = l2;
  32927. var b2A = b2; var e2A = e2;
  32928. try
  32929. {
  32930. try_Literal();
  32931. lk = -1;
  32932. }
  32933. catch (p1A)
  32934. {
  32935. try
  32936. {
  32937. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32938. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32939. b2 = b2A; e2 = e2A; end = e2A; }}
  32940. try_FunctionCall();
  32941. lk = -5;
  32942. }
  32943. catch (p5A)
  32944. {
  32945. try
  32946. {
  32947. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32948. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32949. b2 = b2A; e2 = e2A; end = e2A; }}
  32950. try_BlockExpr();
  32951. lk = -10;
  32952. }
  32953. catch (p10A)
  32954. {
  32955. lk = -11;
  32956. }
  32957. }
  32958. }
  32959. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  32960. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  32961. b2 = b2A; e2 = e2A; end = e2A; }}
  32962. memoize(20, e0, lk);
  32963. }
  32964. }
  32965. switch (lk)
  32966. {
  32967. case -1:
  32968. case 8: // IntegerLiteral
  32969. case 9: // DecimalLiteral
  32970. case 10: // DoubleLiteral
  32971. case 11: // StringLiteral
  32972. case 12935: // 'false' EOF
  32973. case 12997: // 'null' EOF
  32974. case 13055: // 'true' EOF
  32975. case 13447: // 'false' '!'
  32976. case 13509: // 'null' '!'
  32977. case 13567: // 'true' '!'
  32978. case 13959: // 'false' '!='
  32979. case 14021: // 'null' '!='
  32980. case 14079: // 'true' '!='
  32981. case 19591: // 'false' ')'
  32982. case 19653: // 'null' ')'
  32983. case 19711: // 'true' ')'
  32984. case 20103: // 'false' '*'
  32985. case 20165: // 'null' '*'
  32986. case 20223: // 'true' '*'
  32987. case 21127: // 'false' '+'
  32988. case 21189: // 'null' '+'
  32989. case 21247: // 'true' '+'
  32990. case 21639: // 'false' ','
  32991. case 21701: // 'null' ','
  32992. case 21759: // 'true' ','
  32993. case 22151: // 'false' '-'
  32994. case 22213: // 'null' '-'
  32995. case 22271: // 'true' '-'
  32996. case 23175: // 'false' '.'
  32997. case 23237: // 'null' '.'
  32998. case 23295: // 'true' '.'
  32999. case 24199: // 'false' '/'
  33000. case 24261: // 'null' '/'
  33001. case 24319: // 'true' '/'
  33002. case 24711: // 'false' '//'
  33003. case 24773: // 'null' '//'
  33004. case 24831: // 'true' '//'
  33005. case 25735: // 'false' ':'
  33006. case 25797: // 'null' ':'
  33007. case 25855: // 'true' ':'
  33008. case 27783: // 'false' ';'
  33009. case 27845: // 'null' ';'
  33010. case 27903: // 'true' ';'
  33011. case 28295: // 'false' '<'
  33012. case 28357: // 'null' '<'
  33013. case 28415: // 'true' '<'
  33014. case 29831: // 'false' '<<'
  33015. case 29893: // 'null' '<<'
  33016. case 29951: // 'true' '<<'
  33017. case 30343: // 'false' '<='
  33018. case 30405: // 'null' '<='
  33019. case 30463: // 'true' '<='
  33020. case 31367: // 'false' '='
  33021. case 31429: // 'null' '='
  33022. case 31487: // 'true' '='
  33023. case 31879: // 'false' '>'
  33024. case 31941: // 'null' '>'
  33025. case 31999: // 'true' '>'
  33026. case 32391: // 'false' '>='
  33027. case 32453: // 'null' '>='
  33028. case 32511: // 'true' '>='
  33029. case 32903: // 'false' '>>'
  33030. case 32965: // 'null' '>>'
  33031. case 33023: // 'true' '>>'
  33032. case 35463: // 'false' '['
  33033. case 35525: // 'null' '['
  33034. case 35583: // 'true' '['
  33035. case 35975: // 'false' ']'
  33036. case 36037: // 'null' ']'
  33037. case 36095: // 'true' ']'
  33038. case 36487: // 'false' 'after'
  33039. case 36549: // 'null' 'after'
  33040. case 36607: // 'true' 'after'
  33041. case 39047: // 'false' 'and'
  33042. case 39109: // 'null' 'and'
  33043. case 39167: // 'true' 'and'
  33044. case 41095: // 'false' 'as'
  33045. case 41157: // 'null' 'as'
  33046. case 41215: // 'true' 'as'
  33047. case 41607: // 'false' 'ascending'
  33048. case 41669: // 'null' 'ascending'
  33049. case 41727: // 'true' 'ascending'
  33050. case 42119: // 'false' 'at'
  33051. case 42181: // 'null' 'at'
  33052. case 42239: // 'true' 'at'
  33053. case 43655: // 'false' 'before'
  33054. case 43717: // 'null' 'before'
  33055. case 43775: // 'true' 'before'
  33056. case 45191: // 'false' 'by'
  33057. case 45253: // 'null' 'by'
  33058. case 45311: // 'true' 'by'
  33059. case 45703: // 'false' 'case'
  33060. case 45765: // 'null' 'case'
  33061. case 45823: // 'true' 'case'
  33062. case 46215: // 'false' 'cast'
  33063. case 46277: // 'null' 'cast'
  33064. case 46335: // 'true' 'cast'
  33065. case 46727: // 'false' 'castable'
  33066. case 46789: // 'null' 'castable'
  33067. case 46847: // 'true' 'castable'
  33068. case 48775: // 'false' 'collation'
  33069. case 48837: // 'null' 'collation'
  33070. case 48895: // 'true' 'collation'
  33071. case 51335: // 'false' 'contains'
  33072. case 51397: // 'null' 'contains'
  33073. case 51455: // 'true' 'contains'
  33074. case 54407: // 'false' 'count'
  33075. case 54469: // 'null' 'count'
  33076. case 54527: // 'true' 'count'
  33077. case 56455: // 'false' 'default'
  33078. case 56517: // 'null' 'default'
  33079. case 56575: // 'true' 'default'
  33080. case 58503: // 'false' 'descending'
  33081. case 58565: // 'null' 'descending'
  33082. case 58623: // 'true' 'descending'
  33083. case 61063: // 'false' 'div'
  33084. case 61125: // 'null' 'div'
  33085. case 61183: // 'true' 'div'
  33086. case 63111: // 'false' 'else'
  33087. case 63173: // 'null' 'else'
  33088. case 63231: // 'true' 'else'
  33089. case 63623: // 'false' 'empty'
  33090. case 63685: // 'null' 'empty'
  33091. case 63743: // 'true' 'empty'
  33092. case 65159: // 'false' 'end'
  33093. case 65221: // 'null' 'end'
  33094. case 65279: // 'true' 'end'
  33095. case 66183: // 'false' 'eq'
  33096. case 66245: // 'null' 'eq'
  33097. case 66303: // 'true' 'eq'
  33098. case 67719: // 'false' 'except'
  33099. case 67781: // 'null' 'except'
  33100. case 67839: // 'true' 'except'
  33101. case 71303: // 'false' 'for'
  33102. case 71365: // 'null' 'for'
  33103. case 71423: // 'true' 'for'
  33104. case 75911: // 'false' 'ge'
  33105. case 75973: // 'null' 'ge'
  33106. case 76031: // 'true' 'ge'
  33107. case 76935: // 'false' 'group'
  33108. case 76997: // 'null' 'group'
  33109. case 77055: // 'true' 'group'
  33110. case 77959: // 'false' 'gt'
  33111. case 78021: // 'null' 'gt'
  33112. case 78079: // 'true' 'gt'
  33113. case 78471: // 'false' 'idiv'
  33114. case 78533: // 'null' 'idiv'
  33115. case 78591: // 'true' 'idiv'
  33116. case 83079: // 'false' 'instance'
  33117. case 83141: // 'null' 'instance'
  33118. case 83199: // 'true' 'instance'
  33119. case 84103: // 'false' 'intersect'
  33120. case 84165: // 'null' 'intersect'
  33121. case 84223: // 'true' 'intersect'
  33122. case 84615: // 'false' 'into'
  33123. case 84677: // 'null' 'into'
  33124. case 84735: // 'true' 'into'
  33125. case 85127: // 'false' 'is'
  33126. case 85189: // 'null' 'is'
  33127. case 85247: // 'true' 'is'
  33128. case 89735: // 'false' 'le'
  33129. case 89797: // 'null' 'le'
  33130. case 89855: // 'true' 'le'
  33131. case 90759: // 'false' 'let'
  33132. case 90821: // 'null' 'let'
  33133. case 90879: // 'true' 'let'
  33134. case 92807: // 'false' 'lt'
  33135. case 92869: // 'null' 'lt'
  33136. case 92927: // 'true' 'lt'
  33137. case 93831: // 'false' 'mod'
  33138. case 93893: // 'null' 'mod'
  33139. case 93951: // 'true' 'mod'
  33140. case 94343: // 'false' 'modify'
  33141. case 94405: // 'null' 'modify'
  33142. case 94463: // 'true' 'modify'
  33143. case 96903: // 'false' 'ne'
  33144. case 96965: // 'null' 'ne'
  33145. case 97023: // 'true' 'ne'
  33146. case 103559: // 'false' 'only'
  33147. case 103621: // 'null' 'only'
  33148. case 103679: // 'true' 'only'
  33149. case 104583: // 'false' 'or'
  33150. case 104645: // 'null' 'or'
  33151. case 104703: // 'true' 'or'
  33152. case 105095: // 'false' 'order'
  33153. case 105157: // 'null' 'order'
  33154. case 105215: // 'true' 'order'
  33155. case 107143: // 'false' 'paragraphs'
  33156. case 107205: // 'null' 'paragraphs'
  33157. case 107263: // 'true' 'paragraphs'
  33158. case 114823: // 'false' 'return'
  33159. case 114885: // 'null' 'return'
  33160. case 114943: // 'true' 'return'
  33161. case 116871: // 'false' 'satisfies'
  33162. case 116933: // 'null' 'satisfies'
  33163. case 116991: // 'true' 'satisfies'
  33164. case 121479: // 'false' 'sentences'
  33165. case 121541: // 'null' 'sentences'
  33166. case 121599: // 'true' 'sentences'
  33167. case 123527: // 'false' 'stable'
  33168. case 123589: // 'null' 'stable'
  33169. case 123647: // 'true' 'stable'
  33170. case 124039: // 'false' 'start'
  33171. case 124101: // 'null' 'start'
  33172. case 124159: // 'true' 'start'
  33173. case 129159: // 'false' 'times'
  33174. case 129221: // 'null' 'times'
  33175. case 129279: // 'true' 'times'
  33176. case 129671: // 'false' 'to'
  33177. case 129733: // 'null' 'to'
  33178. case 129791: // 'true' 'to'
  33179. case 130183: // 'false' 'treat'
  33180. case 130245: // 'null' 'treat'
  33181. case 130303: // 'true' 'treat'
  33182. case 133255: // 'false' 'union'
  33183. case 133317: // 'null' 'union'
  33184. case 133375: // 'true' 'union'
  33185. case 139399: // 'false' 'where'
  33186. case 139461: // 'null' 'where'
  33187. case 139519: // 'true' 'where'
  33188. case 141447: // 'false' 'with'
  33189. case 141509: // 'null' 'with'
  33190. case 141567: // 'true' 'with'
  33191. case 142983: // 'false' 'words'
  33192. case 143045: // 'null' 'words'
  33193. case 143103: // 'true' 'words'
  33194. case 145543: // 'false' '|'
  33195. case 145605: // 'null' '|'
  33196. case 145663: // 'true' '|'
  33197. case 146055: // 'false' '||'
  33198. case 146117: // 'null' '||'
  33199. case 146175: // 'true' '||'
  33200. case 146567: // 'false' '|}'
  33201. case 146629: // 'null' '|}'
  33202. case 146687: // 'true' '|}'
  33203. case 147079: // 'false' '}'
  33204. case 147141: // 'null' '}'
  33205. case 147199: // 'true' '}'
  33206. parse_Literal();
  33207. break;
  33208. case 31: // '$'
  33209. parse_VarRef();
  33210. break;
  33211. case 35: // '('
  33212. parse_ParenthesizedExpr();
  33213. break;
  33214. case 32: // '$$'
  33215. parse_ContextItemExpr();
  33216. break;
  33217. case -5:
  33218. case 17926: // EQName^Token '('
  33219. case 17991: // 'after' '('
  33220. case 17993: // 'allowing' '('
  33221. case 17994: // 'ancestor' '('
  33222. case 17995: // 'ancestor-or-self' '('
  33223. case 17996: // 'and' '('
  33224. case 17998: // 'append' '('
  33225. case 18000: // 'as' '('
  33226. case 18001: // 'ascending' '('
  33227. case 18002: // 'at' '('
  33228. case 18004: // 'base-uri' '('
  33229. case 18005: // 'before' '('
  33230. case 18006: // 'boundary-space' '('
  33231. case 18007: // 'break' '('
  33232. case 18009: // 'case' '('
  33233. case 18010: // 'cast' '('
  33234. case 18011: // 'castable' '('
  33235. case 18012: // 'catch' '('
  33236. case 18014: // 'child' '('
  33237. case 18015: // 'collation' '('
  33238. case 18018: // 'constraint' '('
  33239. case 18019: // 'construction' '('
  33240. case 18022: // 'context' '('
  33241. case 18023: // 'continue' '('
  33242. case 18024: // 'copy' '('
  33243. case 18025: // 'copy-namespaces' '('
  33244. case 18026: // 'count' '('
  33245. case 18027: // 'decimal-format' '('
  33246. case 18029: // 'declare' '('
  33247. case 18030: // 'default' '('
  33248. case 18031: // 'delete' '('
  33249. case 18032: // 'descendant' '('
  33250. case 18033: // 'descendant-or-self' '('
  33251. case 18034: // 'descending' '('
  33252. case 18039: // 'div' '('
  33253. case 18040: // 'document' '('
  33254. case 18043: // 'else' '('
  33255. case 18044: // 'empty' '('
  33256. case 18046: // 'encoding' '('
  33257. case 18047: // 'end' '('
  33258. case 18049: // 'eq' '('
  33259. case 18050: // 'every' '('
  33260. case 18052: // 'except' '('
  33261. case 18053: // 'exit' '('
  33262. case 18054: // 'external' '('
  33263. case 18056: // 'first' '('
  33264. case 18057: // 'following' '('
  33265. case 18058: // 'following-sibling' '('
  33266. case 18059: // 'for' '('
  33267. case 18062: // 'from' '('
  33268. case 18063: // 'ft-option' '('
  33269. case 18068: // 'ge' '('
  33270. case 18070: // 'group' '('
  33271. case 18072: // 'gt' '('
  33272. case 18073: // 'idiv' '('
  33273. case 18075: // 'import' '('
  33274. case 18076: // 'in' '('
  33275. case 18077: // 'index' '('
  33276. case 18081: // 'insert' '('
  33277. case 18082: // 'instance' '('
  33278. case 18083: // 'integrity' '('
  33279. case 18084: // 'intersect' '('
  33280. case 18085: // 'into' '('
  33281. case 18086: // 'is' '('
  33282. case 18088: // 'json' '('
  33283. case 18090: // 'jsoniq' '('
  33284. case 18093: // 'last' '('
  33285. case 18094: // 'lax' '('
  33286. case 18095: // 'le' '('
  33287. case 18097: // 'let' '('
  33288. case 18099: // 'loop' '('
  33289. case 18101: // 'lt' '('
  33290. case 18103: // 'mod' '('
  33291. case 18104: // 'modify' '('
  33292. case 18105: // 'module' '('
  33293. case 18107: // 'namespace' '('
  33294. case 18109: // 'ne' '('
  33295. case 18115: // 'nodes' '('
  33296. case 18118: // 'object' '('
  33297. case 18122: // 'only' '('
  33298. case 18123: // 'option' '('
  33299. case 18124: // 'or' '('
  33300. case 18125: // 'order' '('
  33301. case 18126: // 'ordered' '('
  33302. case 18127: // 'ordering' '('
  33303. case 18130: // 'parent' '('
  33304. case 18136: // 'preceding' '('
  33305. case 18137: // 'preceding-sibling' '('
  33306. case 18142: // 'rename' '('
  33307. case 18143: // 'replace' '('
  33308. case 18144: // 'return' '('
  33309. case 18145: // 'returning' '('
  33310. case 18146: // 'revalidation' '('
  33311. case 18148: // 'satisfies' '('
  33312. case 18149: // 'schema' '('
  33313. case 18152: // 'score' '('
  33314. case 18153: // 'select' '('
  33315. case 18154: // 'self' '('
  33316. case 18159: // 'sliding' '('
  33317. case 18160: // 'some' '('
  33318. case 18161: // 'stable' '('
  33319. case 18162: // 'start' '('
  33320. case 18165: // 'strict' '('
  33321. case 18173: // 'to' '('
  33322. case 18174: // 'treat' '('
  33323. case 18176: // 'try' '('
  33324. case 18177: // 'tumbling' '('
  33325. case 18178: // 'type' '('
  33326. case 18180: // 'union' '('
  33327. case 18182: // 'unordered' '('
  33328. case 18183: // 'updating' '('
  33329. case 18186: // 'validate' '('
  33330. case 18187: // 'value' '('
  33331. case 18188: // 'variable' '('
  33332. case 18189: // 'version' '('
  33333. case 18192: // 'where' '('
  33334. case 18193: // 'while' '('
  33335. case 18196: // 'with' '('
  33336. parse_FunctionCall();
  33337. break;
  33338. case 144078: // 'ordered' '{'
  33339. parse_OrderedExpr();
  33340. break;
  33341. case 144134: // 'unordered' '{'
  33342. parse_UnorderedExpr();
  33343. break;
  33344. case 33: // '%'
  33345. case 79: // 'array'
  33346. case 121: // 'document-node'
  33347. case 125: // 'empty-sequence'
  33348. case 147: // 'function'
  33349. case 154: // 'if'
  33350. case 167: // 'item'
  33351. case 169: // 'json-item'
  33352. case 188: // 'namespace-node'
  33353. case 194: // 'node'
  33354. case 230: // 'schema-attribute'
  33355. case 231: // 'schema-element'
  33356. case 247: // 'structured-item'
  33357. case 248: // 'switch'
  33358. case 259: // 'typeswitch'
  33359. case 14854: // EQName^Token '#'
  33360. case 14919: // 'after' '#'
  33361. case 14921: // 'allowing' '#'
  33362. case 14922: // 'ancestor' '#'
  33363. case 14923: // 'ancestor-or-self' '#'
  33364. case 14924: // 'and' '#'
  33365. case 14926: // 'append' '#'
  33366. case 14928: // 'as' '#'
  33367. case 14929: // 'ascending' '#'
  33368. case 14930: // 'at' '#'
  33369. case 14931: // 'attribute' '#'
  33370. case 14932: // 'base-uri' '#'
  33371. case 14933: // 'before' '#'
  33372. case 14934: // 'boundary-space' '#'
  33373. case 14935: // 'break' '#'
  33374. case 14937: // 'case' '#'
  33375. case 14938: // 'cast' '#'
  33376. case 14939: // 'castable' '#'
  33377. case 14940: // 'catch' '#'
  33378. case 14942: // 'child' '#'
  33379. case 14943: // 'collation' '#'
  33380. case 14945: // 'comment' '#'
  33381. case 14946: // 'constraint' '#'
  33382. case 14947: // 'construction' '#'
  33383. case 14950: // 'context' '#'
  33384. case 14951: // 'continue' '#'
  33385. case 14952: // 'copy' '#'
  33386. case 14953: // 'copy-namespaces' '#'
  33387. case 14954: // 'count' '#'
  33388. case 14955: // 'decimal-format' '#'
  33389. case 14957: // 'declare' '#'
  33390. case 14958: // 'default' '#'
  33391. case 14959: // 'delete' '#'
  33392. case 14960: // 'descendant' '#'
  33393. case 14961: // 'descendant-or-self' '#'
  33394. case 14962: // 'descending' '#'
  33395. case 14967: // 'div' '#'
  33396. case 14968: // 'document' '#'
  33397. case 14970: // 'element' '#'
  33398. case 14971: // 'else' '#'
  33399. case 14972: // 'empty' '#'
  33400. case 14974: // 'encoding' '#'
  33401. case 14975: // 'end' '#'
  33402. case 14977: // 'eq' '#'
  33403. case 14978: // 'every' '#'
  33404. case 14980: // 'except' '#'
  33405. case 14981: // 'exit' '#'
  33406. case 14982: // 'external' '#'
  33407. case 14983: // 'false' '#'
  33408. case 14984: // 'first' '#'
  33409. case 14985: // 'following' '#'
  33410. case 14986: // 'following-sibling' '#'
  33411. case 14987: // 'for' '#'
  33412. case 14990: // 'from' '#'
  33413. case 14991: // 'ft-option' '#'
  33414. case 14996: // 'ge' '#'
  33415. case 14998: // 'group' '#'
  33416. case 15000: // 'gt' '#'
  33417. case 15001: // 'idiv' '#'
  33418. case 15003: // 'import' '#'
  33419. case 15004: // 'in' '#'
  33420. case 15005: // 'index' '#'
  33421. case 15009: // 'insert' '#'
  33422. case 15010: // 'instance' '#'
  33423. case 15011: // 'integrity' '#'
  33424. case 15012: // 'intersect' '#'
  33425. case 15013: // 'into' '#'
  33426. case 15014: // 'is' '#'
  33427. case 15016: // 'json' '#'
  33428. case 15018: // 'jsoniq' '#'
  33429. case 15021: // 'last' '#'
  33430. case 15022: // 'lax' '#'
  33431. case 15023: // 'le' '#'
  33432. case 15025: // 'let' '#'
  33433. case 15027: // 'loop' '#'
  33434. case 15029: // 'lt' '#'
  33435. case 15031: // 'mod' '#'
  33436. case 15032: // 'modify' '#'
  33437. case 15033: // 'module' '#'
  33438. case 15035: // 'namespace' '#'
  33439. case 15037: // 'ne' '#'
  33440. case 15043: // 'nodes' '#'
  33441. case 15045: // 'null' '#'
  33442. case 15046: // 'object' '#'
  33443. case 15050: // 'only' '#'
  33444. case 15051: // 'option' '#'
  33445. case 15052: // 'or' '#'
  33446. case 15053: // 'order' '#'
  33447. case 15054: // 'ordered' '#'
  33448. case 15055: // 'ordering' '#'
  33449. case 15058: // 'parent' '#'
  33450. case 15064: // 'preceding' '#'
  33451. case 15065: // 'preceding-sibling' '#'
  33452. case 15068: // 'processing-instruction' '#'
  33453. case 15070: // 'rename' '#'
  33454. case 15071: // 'replace' '#'
  33455. case 15072: // 'return' '#'
  33456. case 15073: // 'returning' '#'
  33457. case 15074: // 'revalidation' '#'
  33458. case 15076: // 'satisfies' '#'
  33459. case 15077: // 'schema' '#'
  33460. case 15080: // 'score' '#'
  33461. case 15081: // 'select' '#'
  33462. case 15082: // 'self' '#'
  33463. case 15087: // 'sliding' '#'
  33464. case 15088: // 'some' '#'
  33465. case 15089: // 'stable' '#'
  33466. case 15090: // 'start' '#'
  33467. case 15093: // 'strict' '#'
  33468. case 15097: // 'text' '#'
  33469. case 15101: // 'to' '#'
  33470. case 15102: // 'treat' '#'
  33471. case 15103: // 'true' '#'
  33472. case 15104: // 'try' '#'
  33473. case 15105: // 'tumbling' '#'
  33474. case 15106: // 'type' '#'
  33475. case 15108: // 'union' '#'
  33476. case 15110: // 'unordered' '#'
  33477. case 15111: // 'updating' '#'
  33478. case 15114: // 'validate' '#'
  33479. case 15115: // 'value' '#'
  33480. case 15116: // 'variable' '#'
  33481. case 15117: // 'version' '#'
  33482. case 15120: // 'where' '#'
  33483. case 15121: // 'while' '#'
  33484. case 15124: // 'with' '#'
  33485. parse_FunctionItemExpr();
  33486. break;
  33487. case -10:
  33488. case 27929: // '{' ';'
  33489. parse_BlockExpr();
  33490. break;
  33491. case -11:
  33492. case 10009: // '{' NCName^Token
  33493. parse_ObjectConstructor();
  33494. break;
  33495. case 69: // '['
  33496. parse_ArrayConstructor();
  33497. break;
  33498. case 283: // '{|'
  33499. parse_JSONSimpleObjectUnion();
  33500. break;
  33501. default:
  33502. parse_Constructor();
  33503. }
  33504. eventHandler.endNonterminal("PrimaryExpr", e0);
  33505. }
  33506. function try_PrimaryExpr()
  33507. {
  33508. switch (l1)
  33509. {
  33510. case 187: // 'namespace'
  33511. lookahead2W(246); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  33512. break;
  33513. case 220: // 'processing-instruction'
  33514. lookahead2W(244); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  33515. break;
  33516. case 281: // '{'
  33517. lookahead2W(282); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  33518. break;
  33519. case 83: // 'attribute'
  33520. case 122: // 'element'
  33521. lookahead2W(252); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  33522. break;
  33523. case 97: // 'comment'
  33524. case 249: // 'text'
  33525. lookahead2W(97); // S^WS | '#' | '(:' | '{'
  33526. break;
  33527. case 120: // 'document'
  33528. case 206: // 'ordered'
  33529. case 262: // 'unordered'
  33530. lookahead2W(148); // S^WS | '#' | '(' | '(:' | '{'
  33531. break;
  33532. case 135: // 'false'
  33533. case 197: // 'null'
  33534. case 255: // 'true'
  33535. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '.' |
  33536. break;
  33537. case 6: // EQName^Token
  33538. case 71: // 'after'
  33539. case 73: // 'allowing'
  33540. case 74: // 'ancestor'
  33541. case 75: // 'ancestor-or-self'
  33542. case 76: // 'and'
  33543. case 78: // 'append'
  33544. case 80: // 'as'
  33545. case 81: // 'ascending'
  33546. case 82: // 'at'
  33547. case 84: // 'base-uri'
  33548. case 85: // 'before'
  33549. case 86: // 'boundary-space'
  33550. case 87: // 'break'
  33551. case 89: // 'case'
  33552. case 90: // 'cast'
  33553. case 91: // 'castable'
  33554. case 92: // 'catch'
  33555. case 94: // 'child'
  33556. case 95: // 'collation'
  33557. case 98: // 'constraint'
  33558. case 99: // 'construction'
  33559. case 102: // 'context'
  33560. case 103: // 'continue'
  33561. case 104: // 'copy'
  33562. case 105: // 'copy-namespaces'
  33563. case 106: // 'count'
  33564. case 107: // 'decimal-format'
  33565. case 109: // 'declare'
  33566. case 110: // 'default'
  33567. case 111: // 'delete'
  33568. case 112: // 'descendant'
  33569. case 113: // 'descendant-or-self'
  33570. case 114: // 'descending'
  33571. case 119: // 'div'
  33572. case 123: // 'else'
  33573. case 124: // 'empty'
  33574. case 126: // 'encoding'
  33575. case 127: // 'end'
  33576. case 129: // 'eq'
  33577. case 130: // 'every'
  33578. case 132: // 'except'
  33579. case 133: // 'exit'
  33580. case 134: // 'external'
  33581. case 136: // 'first'
  33582. case 137: // 'following'
  33583. case 138: // 'following-sibling'
  33584. case 139: // 'for'
  33585. case 142: // 'from'
  33586. case 143: // 'ft-option'
  33587. case 148: // 'ge'
  33588. case 150: // 'group'
  33589. case 152: // 'gt'
  33590. case 153: // 'idiv'
  33591. case 155: // 'import'
  33592. case 156: // 'in'
  33593. case 157: // 'index'
  33594. case 161: // 'insert'
  33595. case 162: // 'instance'
  33596. case 163: // 'integrity'
  33597. case 164: // 'intersect'
  33598. case 165: // 'into'
  33599. case 166: // 'is'
  33600. case 168: // 'json'
  33601. case 170: // 'jsoniq'
  33602. case 173: // 'last'
  33603. case 174: // 'lax'
  33604. case 175: // 'le'
  33605. case 177: // 'let'
  33606. case 179: // 'loop'
  33607. case 181: // 'lt'
  33608. case 183: // 'mod'
  33609. case 184: // 'modify'
  33610. case 185: // 'module'
  33611. case 189: // 'ne'
  33612. case 195: // 'nodes'
  33613. case 198: // 'object'
  33614. case 202: // 'only'
  33615. case 203: // 'option'
  33616. case 204: // 'or'
  33617. case 205: // 'order'
  33618. case 207: // 'ordering'
  33619. case 210: // 'parent'
  33620. case 216: // 'preceding'
  33621. case 217: // 'preceding-sibling'
  33622. case 222: // 'rename'
  33623. case 223: // 'replace'
  33624. case 224: // 'return'
  33625. case 225: // 'returning'
  33626. case 226: // 'revalidation'
  33627. case 228: // 'satisfies'
  33628. case 229: // 'schema'
  33629. case 232: // 'score'
  33630. case 233: // 'select'
  33631. case 234: // 'self'
  33632. case 239: // 'sliding'
  33633. case 240: // 'some'
  33634. case 241: // 'stable'
  33635. case 242: // 'start'
  33636. case 245: // 'strict'
  33637. case 253: // 'to'
  33638. case 254: // 'treat'
  33639. case 256: // 'try'
  33640. case 257: // 'tumbling'
  33641. case 258: // 'type'
  33642. case 260: // 'union'
  33643. case 263: // 'updating'
  33644. case 266: // 'validate'
  33645. case 267: // 'value'
  33646. case 268: // 'variable'
  33647. case 269: // 'version'
  33648. case 272: // 'where'
  33649. case 273: // 'while'
  33650. case 276: // 'with'
  33651. lookahead2W(95); // S^WS | '#' | '(' | '(:'
  33652. break;
  33653. default:
  33654. lk = l1;
  33655. }
  33656. if (lk == 3353 // '{' EQName^Token
  33657. || lk == 4377 // '{' IntegerLiteral
  33658. || lk == 4889 // '{' DecimalLiteral
  33659. || lk == 5401 // '{' DoubleLiteral
  33660. || lk == 5913 // '{' StringLiteral
  33661. || lk == 16153 // '{' '$'
  33662. || lk == 16665 // '{' '$$'
  33663. || lk == 17177 // '{' '%'
  33664. || lk == 18055 // 'false' '('
  33665. || lk == 18117 // 'null' '('
  33666. || lk == 18175 // 'true' '('
  33667. || lk == 18201 // '{' '('
  33668. || lk == 18713 // '{' '(#'
  33669. || lk == 21273 // '{' '+'
  33670. || lk == 22297 // '{' '-'
  33671. || lk == 24345 // '{' '/'
  33672. || lk == 24857 // '{' '//'
  33673. || lk == 28441 // '{' '<'
  33674. || lk == 28953 // '{' '<!--'
  33675. || lk == 31001 // '{' '<?'
  33676. || lk == 35609 // '{' '['
  33677. || lk == 36633 // '{' 'after'
  33678. || lk == 37657 // '{' 'allowing'
  33679. || lk == 38169 // '{' 'ancestor'
  33680. || lk == 38681 // '{' 'ancestor-or-self'
  33681. || lk == 39193 // '{' 'and'
  33682. || lk == 40217 // '{' 'append'
  33683. || lk == 40729 // '{' 'array'
  33684. || lk == 41241 // '{' 'as'
  33685. || lk == 41753 // '{' 'ascending'
  33686. || lk == 42265 // '{' 'at'
  33687. || lk == 42777 // '{' 'attribute'
  33688. || lk == 43289 // '{' 'base-uri'
  33689. || lk == 43801 // '{' 'before'
  33690. || lk == 44313 // '{' 'boundary-space'
  33691. || lk == 44825 // '{' 'break'
  33692. || lk == 45849 // '{' 'case'
  33693. || lk == 46361 // '{' 'cast'
  33694. || lk == 46873 // '{' 'castable'
  33695. || lk == 47385 // '{' 'catch'
  33696. || lk == 48409 // '{' 'child'
  33697. || lk == 48921 // '{' 'collation'
  33698. || lk == 49945 // '{' 'comment'
  33699. || lk == 50457 // '{' 'constraint'
  33700. || lk == 50969 // '{' 'construction'
  33701. || lk == 52505 // '{' 'context'
  33702. || lk == 53017 // '{' 'continue'
  33703. || lk == 53529 // '{' 'copy'
  33704. || lk == 54041 // '{' 'copy-namespaces'
  33705. || lk == 54553 // '{' 'count'
  33706. || lk == 55065 // '{' 'decimal-format'
  33707. || lk == 56089 // '{' 'declare'
  33708. || lk == 56601 // '{' 'default'
  33709. || lk == 57113 // '{' 'delete'
  33710. || lk == 57625 // '{' 'descendant'
  33711. || lk == 58137 // '{' 'descendant-or-self'
  33712. || lk == 58649 // '{' 'descending'
  33713. || lk == 61209 // '{' 'div'
  33714. || lk == 61721 // '{' 'document'
  33715. || lk == 62233 // '{' 'document-node'
  33716. || lk == 62745 // '{' 'element'
  33717. || lk == 63257 // '{' 'else'
  33718. || lk == 63769 // '{' 'empty'
  33719. || lk == 64281 // '{' 'empty-sequence'
  33720. || lk == 64793 // '{' 'encoding'
  33721. || lk == 65305 // '{' 'end'
  33722. || lk == 66329 // '{' 'eq'
  33723. || lk == 66841 // '{' 'every'
  33724. || lk == 67865 // '{' 'except'
  33725. || lk == 68377 // '{' 'exit'
  33726. || lk == 68889 // '{' 'external'
  33727. || lk == 69401 // '{' 'false'
  33728. || lk == 69913 // '{' 'first'
  33729. || lk == 70425 // '{' 'following'
  33730. || lk == 70937 // '{' 'following-sibling'
  33731. || lk == 71449 // '{' 'for'
  33732. || lk == 72985 // '{' 'from'
  33733. || lk == 73497 // '{' 'ft-option'
  33734. || lk == 75545 // '{' 'function'
  33735. || lk == 76057 // '{' 'ge'
  33736. || lk == 77081 // '{' 'group'
  33737. || lk == 78105 // '{' 'gt'
  33738. || lk == 78617 // '{' 'idiv'
  33739. || lk == 79129 // '{' 'if'
  33740. || lk == 79641 // '{' 'import'
  33741. || lk == 80153 // '{' 'in'
  33742. || lk == 80665 // '{' 'index'
  33743. || lk == 82713 // '{' 'insert'
  33744. || lk == 83225 // '{' 'instance'
  33745. || lk == 83737 // '{' 'integrity'
  33746. || lk == 84249 // '{' 'intersect'
  33747. || lk == 84761 // '{' 'into'
  33748. || lk == 85273 // '{' 'is'
  33749. || lk == 85785 // '{' 'item'
  33750. || lk == 86297 // '{' 'json'
  33751. || lk == 86809 // '{' 'json-item'
  33752. || lk == 87321 // '{' 'jsoniq'
  33753. || lk == 88857 // '{' 'last'
  33754. || lk == 89369 // '{' 'lax'
  33755. || lk == 89881 // '{' 'le'
  33756. || lk == 90905 // '{' 'let'
  33757. || lk == 91929 // '{' 'loop'
  33758. || lk == 92953 // '{' 'lt'
  33759. || lk == 93977 // '{' 'mod'
  33760. || lk == 94489 // '{' 'modify'
  33761. || lk == 95001 // '{' 'module'
  33762. || lk == 96025 // '{' 'namespace'
  33763. || lk == 96537 // '{' 'namespace-node'
  33764. || lk == 97049 // '{' 'ne'
  33765. || lk == 99609 // '{' 'node'
  33766. || lk == 100121 // '{' 'nodes'
  33767. || lk == 100633 // '{' 'not'
  33768. || lk == 101145 // '{' 'null'
  33769. || lk == 101657 // '{' 'object'
  33770. || lk == 103705 // '{' 'only'
  33771. || lk == 104217 // '{' 'option'
  33772. || lk == 104729 // '{' 'or'
  33773. || lk == 105241 // '{' 'order'
  33774. || lk == 105753 // '{' 'ordered'
  33775. || lk == 106265 // '{' 'ordering'
  33776. || lk == 107801 // '{' 'parent'
  33777. || lk == 110873 // '{' 'preceding'
  33778. || lk == 111385 // '{' 'preceding-sibling'
  33779. || lk == 112921 // '{' 'processing-instruction'
  33780. || lk == 113945 // '{' 'rename'
  33781. || lk == 114457 // '{' 'replace'
  33782. || lk == 114969 // '{' 'return'
  33783. || lk == 115481 // '{' 'returning'
  33784. || lk == 115993 // '{' 'revalidation'
  33785. || lk == 117017 // '{' 'satisfies'
  33786. || lk == 117529 // '{' 'schema'
  33787. || lk == 118041 // '{' 'schema-attribute'
  33788. || lk == 118553 // '{' 'schema-element'
  33789. || lk == 119065 // '{' 'score'
  33790. || lk == 119577 // '{' 'select'
  33791. || lk == 120089 // '{' 'self'
  33792. || lk == 122649 // '{' 'sliding'
  33793. || lk == 123161 // '{' 'some'
  33794. || lk == 123673 // '{' 'stable'
  33795. || lk == 124185 // '{' 'start'
  33796. || lk == 125721 // '{' 'strict'
  33797. || lk == 126745 // '{' 'structured-item'
  33798. || lk == 127257 // '{' 'switch'
  33799. || lk == 127769 // '{' 'text'
  33800. || lk == 129817 // '{' 'to'
  33801. || lk == 130329 // '{' 'treat'
  33802. || lk == 130841 // '{' 'true'
  33803. || lk == 131353 // '{' 'try'
  33804. || lk == 131865 // '{' 'tumbling'
  33805. || lk == 132377 // '{' 'type'
  33806. || lk == 132889 // '{' 'typeswitch'
  33807. || lk == 133401 // '{' 'union'
  33808. || lk == 134425 // '{' 'unordered'
  33809. || lk == 134937 // '{' 'updating'
  33810. || lk == 136473 // '{' 'validate'
  33811. || lk == 136985 // '{' 'value'
  33812. || lk == 137497 // '{' 'variable'
  33813. || lk == 138009 // '{' 'version'
  33814. || lk == 139545 // '{' 'where'
  33815. || lk == 140057 // '{' 'while'
  33816. || lk == 141593 // '{' 'with'
  33817. || lk == 144153 // '{' '{'
  33818. || lk == 145177 // '{' '{|'
  33819. || lk == 147225) // '{' '}'
  33820. {
  33821. lk = memoized(20, e0);
  33822. if (lk == 0)
  33823. {
  33824. var b0A = b0; var e0A = e0; var l1A = l1;
  33825. var b1A = b1; var e1A = e1; var l2A = l2;
  33826. var b2A = b2; var e2A = e2;
  33827. try
  33828. {
  33829. try_Literal();
  33830. memoize(20, e0A, -1);
  33831. lk = -14;
  33832. }
  33833. catch (p1A)
  33834. {
  33835. try
  33836. {
  33837. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  33838. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  33839. b2 = b2A; e2 = e2A; end = e2A; }}
  33840. try_FunctionCall();
  33841. memoize(20, e0A, -5);
  33842. lk = -14;
  33843. }
  33844. catch (p5A)
  33845. {
  33846. try
  33847. {
  33848. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  33849. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  33850. b2 = b2A; e2 = e2A; end = e2A; }}
  33851. try_BlockExpr();
  33852. memoize(20, e0A, -10);
  33853. lk = -14;
  33854. }
  33855. catch (p10A)
  33856. {
  33857. lk = -11;
  33858. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  33859. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  33860. b2 = b2A; e2 = e2A; end = e2A; }}
  33861. memoize(20, e0A, -11);
  33862. }
  33863. }
  33864. }
  33865. }
  33866. }
  33867. switch (lk)
  33868. {
  33869. case -1:
  33870. case 8: // IntegerLiteral
  33871. case 9: // DecimalLiteral
  33872. case 10: // DoubleLiteral
  33873. case 11: // StringLiteral
  33874. case 12935: // 'false' EOF
  33875. case 12997: // 'null' EOF
  33876. case 13055: // 'true' EOF
  33877. case 13447: // 'false' '!'
  33878. case 13509: // 'null' '!'
  33879. case 13567: // 'true' '!'
  33880. case 13959: // 'false' '!='
  33881. case 14021: // 'null' '!='
  33882. case 14079: // 'true' '!='
  33883. case 19591: // 'false' ')'
  33884. case 19653: // 'null' ')'
  33885. case 19711: // 'true' ')'
  33886. case 20103: // 'false' '*'
  33887. case 20165: // 'null' '*'
  33888. case 20223: // 'true' '*'
  33889. case 21127: // 'false' '+'
  33890. case 21189: // 'null' '+'
  33891. case 21247: // 'true' '+'
  33892. case 21639: // 'false' ','
  33893. case 21701: // 'null' ','
  33894. case 21759: // 'true' ','
  33895. case 22151: // 'false' '-'
  33896. case 22213: // 'null' '-'
  33897. case 22271: // 'true' '-'
  33898. case 23175: // 'false' '.'
  33899. case 23237: // 'null' '.'
  33900. case 23295: // 'true' '.'
  33901. case 24199: // 'false' '/'
  33902. case 24261: // 'null' '/'
  33903. case 24319: // 'true' '/'
  33904. case 24711: // 'false' '//'
  33905. case 24773: // 'null' '//'
  33906. case 24831: // 'true' '//'
  33907. case 25735: // 'false' ':'
  33908. case 25797: // 'null' ':'
  33909. case 25855: // 'true' ':'
  33910. case 27783: // 'false' ';'
  33911. case 27845: // 'null' ';'
  33912. case 27903: // 'true' ';'
  33913. case 28295: // 'false' '<'
  33914. case 28357: // 'null' '<'
  33915. case 28415: // 'true' '<'
  33916. case 29831: // 'false' '<<'
  33917. case 29893: // 'null' '<<'
  33918. case 29951: // 'true' '<<'
  33919. case 30343: // 'false' '<='
  33920. case 30405: // 'null' '<='
  33921. case 30463: // 'true' '<='
  33922. case 31367: // 'false' '='
  33923. case 31429: // 'null' '='
  33924. case 31487: // 'true' '='
  33925. case 31879: // 'false' '>'
  33926. case 31941: // 'null' '>'
  33927. case 31999: // 'true' '>'
  33928. case 32391: // 'false' '>='
  33929. case 32453: // 'null' '>='
  33930. case 32511: // 'true' '>='
  33931. case 32903: // 'false' '>>'
  33932. case 32965: // 'null' '>>'
  33933. case 33023: // 'true' '>>'
  33934. case 35463: // 'false' '['
  33935. case 35525: // 'null' '['
  33936. case 35583: // 'true' '['
  33937. case 35975: // 'false' ']'
  33938. case 36037: // 'null' ']'
  33939. case 36095: // 'true' ']'
  33940. case 36487: // 'false' 'after'
  33941. case 36549: // 'null' 'after'
  33942. case 36607: // 'true' 'after'
  33943. case 39047: // 'false' 'and'
  33944. case 39109: // 'null' 'and'
  33945. case 39167: // 'true' 'and'
  33946. case 41095: // 'false' 'as'
  33947. case 41157: // 'null' 'as'
  33948. case 41215: // 'true' 'as'
  33949. case 41607: // 'false' 'ascending'
  33950. case 41669: // 'null' 'ascending'
  33951. case 41727: // 'true' 'ascending'
  33952. case 42119: // 'false' 'at'
  33953. case 42181: // 'null' 'at'
  33954. case 42239: // 'true' 'at'
  33955. case 43655: // 'false' 'before'
  33956. case 43717: // 'null' 'before'
  33957. case 43775: // 'true' 'before'
  33958. case 45191: // 'false' 'by'
  33959. case 45253: // 'null' 'by'
  33960. case 45311: // 'true' 'by'
  33961. case 45703: // 'false' 'case'
  33962. case 45765: // 'null' 'case'
  33963. case 45823: // 'true' 'case'
  33964. case 46215: // 'false' 'cast'
  33965. case 46277: // 'null' 'cast'
  33966. case 46335: // 'true' 'cast'
  33967. case 46727: // 'false' 'castable'
  33968. case 46789: // 'null' 'castable'
  33969. case 46847: // 'true' 'castable'
  33970. case 48775: // 'false' 'collation'
  33971. case 48837: // 'null' 'collation'
  33972. case 48895: // 'true' 'collation'
  33973. case 51335: // 'false' 'contains'
  33974. case 51397: // 'null' 'contains'
  33975. case 51455: // 'true' 'contains'
  33976. case 54407: // 'false' 'count'
  33977. case 54469: // 'null' 'count'
  33978. case 54527: // 'true' 'count'
  33979. case 56455: // 'false' 'default'
  33980. case 56517: // 'null' 'default'
  33981. case 56575: // 'true' 'default'
  33982. case 58503: // 'false' 'descending'
  33983. case 58565: // 'null' 'descending'
  33984. case 58623: // 'true' 'descending'
  33985. case 61063: // 'false' 'div'
  33986. case 61125: // 'null' 'div'
  33987. case 61183: // 'true' 'div'
  33988. case 63111: // 'false' 'else'
  33989. case 63173: // 'null' 'else'
  33990. case 63231: // 'true' 'else'
  33991. case 63623: // 'false' 'empty'
  33992. case 63685: // 'null' 'empty'
  33993. case 63743: // 'true' 'empty'
  33994. case 65159: // 'false' 'end'
  33995. case 65221: // 'null' 'end'
  33996. case 65279: // 'true' 'end'
  33997. case 66183: // 'false' 'eq'
  33998. case 66245: // 'null' 'eq'
  33999. case 66303: // 'true' 'eq'
  34000. case 67719: // 'false' 'except'
  34001. case 67781: // 'null' 'except'
  34002. case 67839: // 'true' 'except'
  34003. case 71303: // 'false' 'for'
  34004. case 71365: // 'null' 'for'
  34005. case 71423: // 'true' 'for'
  34006. case 75911: // 'false' 'ge'
  34007. case 75973: // 'null' 'ge'
  34008. case 76031: // 'true' 'ge'
  34009. case 76935: // 'false' 'group'
  34010. case 76997: // 'null' 'group'
  34011. case 77055: // 'true' 'group'
  34012. case 77959: // 'false' 'gt'
  34013. case 78021: // 'null' 'gt'
  34014. case 78079: // 'true' 'gt'
  34015. case 78471: // 'false' 'idiv'
  34016. case 78533: // 'null' 'idiv'
  34017. case 78591: // 'true' 'idiv'
  34018. case 83079: // 'false' 'instance'
  34019. case 83141: // 'null' 'instance'
  34020. case 83199: // 'true' 'instance'
  34021. case 84103: // 'false' 'intersect'
  34022. case 84165: // 'null' 'intersect'
  34023. case 84223: // 'true' 'intersect'
  34024. case 84615: // 'false' 'into'
  34025. case 84677: // 'null' 'into'
  34026. case 84735: // 'true' 'into'
  34027. case 85127: // 'false' 'is'
  34028. case 85189: // 'null' 'is'
  34029. case 85247: // 'true' 'is'
  34030. case 89735: // 'false' 'le'
  34031. case 89797: // 'null' 'le'
  34032. case 89855: // 'true' 'le'
  34033. case 90759: // 'false' 'let'
  34034. case 90821: // 'null' 'let'
  34035. case 90879: // 'true' 'let'
  34036. case 92807: // 'false' 'lt'
  34037. case 92869: // 'null' 'lt'
  34038. case 92927: // 'true' 'lt'
  34039. case 93831: // 'false' 'mod'
  34040. case 93893: // 'null' 'mod'
  34041. case 93951: // 'true' 'mod'
  34042. case 94343: // 'false' 'modify'
  34043. case 94405: // 'null' 'modify'
  34044. case 94463: // 'true' 'modify'
  34045. case 96903: // 'false' 'ne'
  34046. case 96965: // 'null' 'ne'
  34047. case 97023: // 'true' 'ne'
  34048. case 103559: // 'false' 'only'
  34049. case 103621: // 'null' 'only'
  34050. case 103679: // 'true' 'only'
  34051. case 104583: // 'false' 'or'
  34052. case 104645: // 'null' 'or'
  34053. case 104703: // 'true' 'or'
  34054. case 105095: // 'false' 'order'
  34055. case 105157: // 'null' 'order'
  34056. case 105215: // 'true' 'order'
  34057. case 107143: // 'false' 'paragraphs'
  34058. case 107205: // 'null' 'paragraphs'
  34059. case 107263: // 'true' 'paragraphs'
  34060. case 114823: // 'false' 'return'
  34061. case 114885: // 'null' 'return'
  34062. case 114943: // 'true' 'return'
  34063. case 116871: // 'false' 'satisfies'
  34064. case 116933: // 'null' 'satisfies'
  34065. case 116991: // 'true' 'satisfies'
  34066. case 121479: // 'false' 'sentences'
  34067. case 121541: // 'null' 'sentences'
  34068. case 121599: // 'true' 'sentences'
  34069. case 123527: // 'false' 'stable'
  34070. case 123589: // 'null' 'stable'
  34071. case 123647: // 'true' 'stable'
  34072. case 124039: // 'false' 'start'
  34073. case 124101: // 'null' 'start'
  34074. case 124159: // 'true' 'start'
  34075. case 129159: // 'false' 'times'
  34076. case 129221: // 'null' 'times'
  34077. case 129279: // 'true' 'times'
  34078. case 129671: // 'false' 'to'
  34079. case 129733: // 'null' 'to'
  34080. case 129791: // 'true' 'to'
  34081. case 130183: // 'false' 'treat'
  34082. case 130245: // 'null' 'treat'
  34083. case 130303: // 'true' 'treat'
  34084. case 133255: // 'false' 'union'
  34085. case 133317: // 'null' 'union'
  34086. case 133375: // 'true' 'union'
  34087. case 139399: // 'false' 'where'
  34088. case 139461: // 'null' 'where'
  34089. case 139519: // 'true' 'where'
  34090. case 141447: // 'false' 'with'
  34091. case 141509: // 'null' 'with'
  34092. case 141567: // 'true' 'with'
  34093. case 142983: // 'false' 'words'
  34094. case 143045: // 'null' 'words'
  34095. case 143103: // 'true' 'words'
  34096. case 145543: // 'false' '|'
  34097. case 145605: // 'null' '|'
  34098. case 145663: // 'true' '|'
  34099. case 146055: // 'false' '||'
  34100. case 146117: // 'null' '||'
  34101. case 146175: // 'true' '||'
  34102. case 146567: // 'false' '|}'
  34103. case 146629: // 'null' '|}'
  34104. case 146687: // 'true' '|}'
  34105. case 147079: // 'false' '}'
  34106. case 147141: // 'null' '}'
  34107. case 147199: // 'true' '}'
  34108. try_Literal();
  34109. break;
  34110. case 31: // '$'
  34111. try_VarRef();
  34112. break;
  34113. case 35: // '('
  34114. try_ParenthesizedExpr();
  34115. break;
  34116. case 32: // '$$'
  34117. try_ContextItemExpr();
  34118. break;
  34119. case -5:
  34120. case 17926: // EQName^Token '('
  34121. case 17991: // 'after' '('
  34122. case 17993: // 'allowing' '('
  34123. case 17994: // 'ancestor' '('
  34124. case 17995: // 'ancestor-or-self' '('
  34125. case 17996: // 'and' '('
  34126. case 17998: // 'append' '('
  34127. case 18000: // 'as' '('
  34128. case 18001: // 'ascending' '('
  34129. case 18002: // 'at' '('
  34130. case 18004: // 'base-uri' '('
  34131. case 18005: // 'before' '('
  34132. case 18006: // 'boundary-space' '('
  34133. case 18007: // 'break' '('
  34134. case 18009: // 'case' '('
  34135. case 18010: // 'cast' '('
  34136. case 18011: // 'castable' '('
  34137. case 18012: // 'catch' '('
  34138. case 18014: // 'child' '('
  34139. case 18015: // 'collation' '('
  34140. case 18018: // 'constraint' '('
  34141. case 18019: // 'construction' '('
  34142. case 18022: // 'context' '('
  34143. case 18023: // 'continue' '('
  34144. case 18024: // 'copy' '('
  34145. case 18025: // 'copy-namespaces' '('
  34146. case 18026: // 'count' '('
  34147. case 18027: // 'decimal-format' '('
  34148. case 18029: // 'declare' '('
  34149. case 18030: // 'default' '('
  34150. case 18031: // 'delete' '('
  34151. case 18032: // 'descendant' '('
  34152. case 18033: // 'descendant-or-self' '('
  34153. case 18034: // 'descending' '('
  34154. case 18039: // 'div' '('
  34155. case 18040: // 'document' '('
  34156. case 18043: // 'else' '('
  34157. case 18044: // 'empty' '('
  34158. case 18046: // 'encoding' '('
  34159. case 18047: // 'end' '('
  34160. case 18049: // 'eq' '('
  34161. case 18050: // 'every' '('
  34162. case 18052: // 'except' '('
  34163. case 18053: // 'exit' '('
  34164. case 18054: // 'external' '('
  34165. case 18056: // 'first' '('
  34166. case 18057: // 'following' '('
  34167. case 18058: // 'following-sibling' '('
  34168. case 18059: // 'for' '('
  34169. case 18062: // 'from' '('
  34170. case 18063: // 'ft-option' '('
  34171. case 18068: // 'ge' '('
  34172. case 18070: // 'group' '('
  34173. case 18072: // 'gt' '('
  34174. case 18073: // 'idiv' '('
  34175. case 18075: // 'import' '('
  34176. case 18076: // 'in' '('
  34177. case 18077: // 'index' '('
  34178. case 18081: // 'insert' '('
  34179. case 18082: // 'instance' '('
  34180. case 18083: // 'integrity' '('
  34181. case 18084: // 'intersect' '('
  34182. case 18085: // 'into' '('
  34183. case 18086: // 'is' '('
  34184. case 18088: // 'json' '('
  34185. case 18090: // 'jsoniq' '('
  34186. case 18093: // 'last' '('
  34187. case 18094: // 'lax' '('
  34188. case 18095: // 'le' '('
  34189. case 18097: // 'let' '('
  34190. case 18099: // 'loop' '('
  34191. case 18101: // 'lt' '('
  34192. case 18103: // 'mod' '('
  34193. case 18104: // 'modify' '('
  34194. case 18105: // 'module' '('
  34195. case 18107: // 'namespace' '('
  34196. case 18109: // 'ne' '('
  34197. case 18115: // 'nodes' '('
  34198. case 18118: // 'object' '('
  34199. case 18122: // 'only' '('
  34200. case 18123: // 'option' '('
  34201. case 18124: // 'or' '('
  34202. case 18125: // 'order' '('
  34203. case 18126: // 'ordered' '('
  34204. case 18127: // 'ordering' '('
  34205. case 18130: // 'parent' '('
  34206. case 18136: // 'preceding' '('
  34207. case 18137: // 'preceding-sibling' '('
  34208. case 18142: // 'rename' '('
  34209. case 18143: // 'replace' '('
  34210. case 18144: // 'return' '('
  34211. case 18145: // 'returning' '('
  34212. case 18146: // 'revalidation' '('
  34213. case 18148: // 'satisfies' '('
  34214. case 18149: // 'schema' '('
  34215. case 18152: // 'score' '('
  34216. case 18153: // 'select' '('
  34217. case 18154: // 'self' '('
  34218. case 18159: // 'sliding' '('
  34219. case 18160: // 'some' '('
  34220. case 18161: // 'stable' '('
  34221. case 18162: // 'start' '('
  34222. case 18165: // 'strict' '('
  34223. case 18173: // 'to' '('
  34224. case 18174: // 'treat' '('
  34225. case 18176: // 'try' '('
  34226. case 18177: // 'tumbling' '('
  34227. case 18178: // 'type' '('
  34228. case 18180: // 'union' '('
  34229. case 18182: // 'unordered' '('
  34230. case 18183: // 'updating' '('
  34231. case 18186: // 'validate' '('
  34232. case 18187: // 'value' '('
  34233. case 18188: // 'variable' '('
  34234. case 18189: // 'version' '('
  34235. case 18192: // 'where' '('
  34236. case 18193: // 'while' '('
  34237. case 18196: // 'with' '('
  34238. try_FunctionCall();
  34239. break;
  34240. case 144078: // 'ordered' '{'
  34241. try_OrderedExpr();
  34242. break;
  34243. case 144134: // 'unordered' '{'
  34244. try_UnorderedExpr();
  34245. break;
  34246. case 33: // '%'
  34247. case 79: // 'array'
  34248. case 121: // 'document-node'
  34249. case 125: // 'empty-sequence'
  34250. case 147: // 'function'
  34251. case 154: // 'if'
  34252. case 167: // 'item'
  34253. case 169: // 'json-item'
  34254. case 188: // 'namespace-node'
  34255. case 194: // 'node'
  34256. case 230: // 'schema-attribute'
  34257. case 231: // 'schema-element'
  34258. case 247: // 'structured-item'
  34259. case 248: // 'switch'
  34260. case 259: // 'typeswitch'
  34261. case 14854: // EQName^Token '#'
  34262. case 14919: // 'after' '#'
  34263. case 14921: // 'allowing' '#'
  34264. case 14922: // 'ancestor' '#'
  34265. case 14923: // 'ancestor-or-self' '#'
  34266. case 14924: // 'and' '#'
  34267. case 14926: // 'append' '#'
  34268. case 14928: // 'as' '#'
  34269. case 14929: // 'ascending' '#'
  34270. case 14930: // 'at' '#'
  34271. case 14931: // 'attribute' '#'
  34272. case 14932: // 'base-uri' '#'
  34273. case 14933: // 'before' '#'
  34274. case 14934: // 'boundary-space' '#'
  34275. case 14935: // 'break' '#'
  34276. case 14937: // 'case' '#'
  34277. case 14938: // 'cast' '#'
  34278. case 14939: // 'castable' '#'
  34279. case 14940: // 'catch' '#'
  34280. case 14942: // 'child' '#'
  34281. case 14943: // 'collation' '#'
  34282. case 14945: // 'comment' '#'
  34283. case 14946: // 'constraint' '#'
  34284. case 14947: // 'construction' '#'
  34285. case 14950: // 'context' '#'
  34286. case 14951: // 'continue' '#'
  34287. case 14952: // 'copy' '#'
  34288. case 14953: // 'copy-namespaces' '#'
  34289. case 14954: // 'count' '#'
  34290. case 14955: // 'decimal-format' '#'
  34291. case 14957: // 'declare' '#'
  34292. case 14958: // 'default' '#'
  34293. case 14959: // 'delete' '#'
  34294. case 14960: // 'descendant' '#'
  34295. case 14961: // 'descendant-or-self' '#'
  34296. case 14962: // 'descending' '#'
  34297. case 14967: // 'div' '#'
  34298. case 14968: // 'document' '#'
  34299. case 14970: // 'element' '#'
  34300. case 14971: // 'else' '#'
  34301. case 14972: // 'empty' '#'
  34302. case 14974: // 'encoding' '#'
  34303. case 14975: // 'end' '#'
  34304. case 14977: // 'eq' '#'
  34305. case 14978: // 'every' '#'
  34306. case 14980: // 'except' '#'
  34307. case 14981: // 'exit' '#'
  34308. case 14982: // 'external' '#'
  34309. case 14983: // 'false' '#'
  34310. case 14984: // 'first' '#'
  34311. case 14985: // 'following' '#'
  34312. case 14986: // 'following-sibling' '#'
  34313. case 14987: // 'for' '#'
  34314. case 14990: // 'from' '#'
  34315. case 14991: // 'ft-option' '#'
  34316. case 14996: // 'ge' '#'
  34317. case 14998: // 'group' '#'
  34318. case 15000: // 'gt' '#'
  34319. case 15001: // 'idiv' '#'
  34320. case 15003: // 'import' '#'
  34321. case 15004: // 'in' '#'
  34322. case 15005: // 'index' '#'
  34323. case 15009: // 'insert' '#'
  34324. case 15010: // 'instance' '#'
  34325. case 15011: // 'integrity' '#'
  34326. case 15012: // 'intersect' '#'
  34327. case 15013: // 'into' '#'
  34328. case 15014: // 'is' '#'
  34329. case 15016: // 'json' '#'
  34330. case 15018: // 'jsoniq' '#'
  34331. case 15021: // 'last' '#'
  34332. case 15022: // 'lax' '#'
  34333. case 15023: // 'le' '#'
  34334. case 15025: // 'let' '#'
  34335. case 15027: // 'loop' '#'
  34336. case 15029: // 'lt' '#'
  34337. case 15031: // 'mod' '#'
  34338. case 15032: // 'modify' '#'
  34339. case 15033: // 'module' '#'
  34340. case 15035: // 'namespace' '#'
  34341. case 15037: // 'ne' '#'
  34342. case 15043: // 'nodes' '#'
  34343. case 15045: // 'null' '#'
  34344. case 15046: // 'object' '#'
  34345. case 15050: // 'only' '#'
  34346. case 15051: // 'option' '#'
  34347. case 15052: // 'or' '#'
  34348. case 15053: // 'order' '#'
  34349. case 15054: // 'ordered' '#'
  34350. case 15055: // 'ordering' '#'
  34351. case 15058: // 'parent' '#'
  34352. case 15064: // 'preceding' '#'
  34353. case 15065: // 'preceding-sibling' '#'
  34354. case 15068: // 'processing-instruction' '#'
  34355. case 15070: // 'rename' '#'
  34356. case 15071: // 'replace' '#'
  34357. case 15072: // 'return' '#'
  34358. case 15073: // 'returning' '#'
  34359. case 15074: // 'revalidation' '#'
  34360. case 15076: // 'satisfies' '#'
  34361. case 15077: // 'schema' '#'
  34362. case 15080: // 'score' '#'
  34363. case 15081: // 'select' '#'
  34364. case 15082: // 'self' '#'
  34365. case 15087: // 'sliding' '#'
  34366. case 15088: // 'some' '#'
  34367. case 15089: // 'stable' '#'
  34368. case 15090: // 'start' '#'
  34369. case 15093: // 'strict' '#'
  34370. case 15097: // 'text' '#'
  34371. case 15101: // 'to' '#'
  34372. case 15102: // 'treat' '#'
  34373. case 15103: // 'true' '#'
  34374. case 15104: // 'try' '#'
  34375. case 15105: // 'tumbling' '#'
  34376. case 15106: // 'type' '#'
  34377. case 15108: // 'union' '#'
  34378. case 15110: // 'unordered' '#'
  34379. case 15111: // 'updating' '#'
  34380. case 15114: // 'validate' '#'
  34381. case 15115: // 'value' '#'
  34382. case 15116: // 'variable' '#'
  34383. case 15117: // 'version' '#'
  34384. case 15120: // 'where' '#'
  34385. case 15121: // 'while' '#'
  34386. case 15124: // 'with' '#'
  34387. try_FunctionItemExpr();
  34388. break;
  34389. case -10:
  34390. case 27929: // '{' ';'
  34391. try_BlockExpr();
  34392. break;
  34393. case -11:
  34394. case 10009: // '{' NCName^Token
  34395. try_ObjectConstructor();
  34396. break;
  34397. case 69: // '['
  34398. try_ArrayConstructor();
  34399. break;
  34400. case 283: // '{|'
  34401. try_JSONSimpleObjectUnion();
  34402. break;
  34403. case -14:
  34404. break;
  34405. default:
  34406. try_Constructor();
  34407. }
  34408. }
  34409. function parse_JSONSimpleObjectUnion()
  34410. {
  34411. eventHandler.startNonterminal("JSONSimpleObjectUnion", e0);
  34412. shift(283); // '{|'
  34413. lookahead1W(273); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34414. if (l1 != 286) // '|}'
  34415. {
  34416. whitespace();
  34417. parse_Expr();
  34418. }
  34419. shift(286); // '|}'
  34420. eventHandler.endNonterminal("JSONSimpleObjectUnion", e0);
  34421. }
  34422. function try_JSONSimpleObjectUnion()
  34423. {
  34424. shiftT(283); // '{|'
  34425. lookahead1W(273); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34426. if (l1 != 286) // '|}'
  34427. {
  34428. try_Expr();
  34429. }
  34430. shiftT(286); // '|}'
  34431. }
  34432. function parse_ObjectConstructor()
  34433. {
  34434. eventHandler.startNonterminal("ObjectConstructor", e0);
  34435. shift(281); // '{'
  34436. lookahead1W(276); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34437. if (l1 != 287) // '}'
  34438. {
  34439. whitespace();
  34440. parse_PairConstructorList();
  34441. }
  34442. shift(287); // '}'
  34443. eventHandler.endNonterminal("ObjectConstructor", e0);
  34444. }
  34445. function try_ObjectConstructor()
  34446. {
  34447. shiftT(281); // '{'
  34448. lookahead1W(276); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34449. if (l1 != 287) // '}'
  34450. {
  34451. try_PairConstructorList();
  34452. }
  34453. shiftT(287); // '}'
  34454. }
  34455. function parse_PairConstructorList()
  34456. {
  34457. eventHandler.startNonterminal("PairConstructorList", e0);
  34458. parse_PairConstructor();
  34459. for (;;)
  34460. {
  34461. if (l1 != 42) // ','
  34462. {
  34463. break;
  34464. }
  34465. shift(42); // ','
  34466. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34467. whitespace();
  34468. parse_PairConstructor();
  34469. }
  34470. eventHandler.endNonterminal("PairConstructorList", e0);
  34471. }
  34472. function try_PairConstructorList()
  34473. {
  34474. try_PairConstructor();
  34475. for (;;)
  34476. {
  34477. if (l1 != 42) // ','
  34478. {
  34479. break;
  34480. }
  34481. shiftT(42); // ','
  34482. lookahead1W(267); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34483. try_PairConstructor();
  34484. }
  34485. }
  34486. function parse_PairConstructor()
  34487. {
  34488. eventHandler.startNonterminal("PairConstructor", e0);
  34489. switch (l1)
  34490. {
  34491. case 78: // 'append'
  34492. lookahead2W(278); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34493. break;
  34494. case 139: // 'for'
  34495. lookahead2W(187); // S^WS | '#' | '$' | '(' | '(:' | ':' | 'sliding' | 'tumbling'
  34496. break;
  34497. case 161: // 'insert'
  34498. lookahead2W(281); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34499. break;
  34500. case 177: // 'let'
  34501. lookahead2W(178); // S^WS | '#' | '$' | '(' | '(:' | ':' | 'score'
  34502. break;
  34503. case 187: // 'namespace'
  34504. lookahead2W(251); // NCName^Token | S^WS | '#' | '(' | '(:' | ':' | 'after' | 'allowing' |
  34505. break;
  34506. case 220: // 'processing-instruction'
  34507. lookahead2W(247); // NCName^Token | S^WS | '#' | '(:' | ':' | 'after' | 'allowing' | 'ancestor' |
  34508. break;
  34509. case 223: // 'replace'
  34510. lookahead2W(180); // S^WS | '#' | '(' | '(:' | ':' | 'node' | 'value'
  34511. break;
  34512. case 266: // 'validate'
  34513. lookahead2W(191); // S^WS | '#' | '(' | '(:' | ':' | 'lax' | 'strict' | 'type' | '{'
  34514. break;
  34515. case 83: // 'attribute'
  34516. case 122: // 'element'
  34517. lookahead2W(256); // EQName^Token | S^WS | '#' | '(:' | ':' | 'after' | 'allowing' | 'ancestor' |
  34518. break;
  34519. case 97: // 'comment'
  34520. case 249: // 'text'
  34521. lookahead2W(149); // S^WS | '#' | '(:' | ':' | '{'
  34522. break;
  34523. case 111: // 'delete'
  34524. case 222: // 'rename'
  34525. lookahead2W(261); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34526. break;
  34527. case 104: // 'copy'
  34528. case 130: // 'every'
  34529. case 240: // 'some'
  34530. lookahead2W(165); // S^WS | '#' | '$' | '(' | '(:' | ':'
  34531. break;
  34532. case 135: // 'false'
  34533. case 197: // 'null'
  34534. case 255: // 'true'
  34535. lookahead2W(208); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '.' | '/' | '//' | ':' |
  34536. break;
  34537. case 120: // 'document'
  34538. case 206: // 'ordered'
  34539. case 256: // 'try'
  34540. case 262: // 'unordered'
  34541. lookahead2W(167); // S^WS | '#' | '(' | '(:' | ':' | '{'
  34542. break;
  34543. case 121: // 'document-node'
  34544. case 125: // 'empty-sequence'
  34545. case 167: // 'item'
  34546. case 188: // 'namespace-node'
  34547. case 194: // 'node'
  34548. case 230: // 'schema-attribute'
  34549. case 231: // 'schema-element'
  34550. lookahead2W(96); // S^WS | '#' | '(:' | ':'
  34551. break;
  34552. case 71: // 'after'
  34553. case 73: // 'allowing'
  34554. case 74: // 'ancestor'
  34555. case 75: // 'ancestor-or-self'
  34556. case 76: // 'and'
  34557. case 80: // 'as'
  34558. case 81: // 'ascending'
  34559. case 82: // 'at'
  34560. case 84: // 'base-uri'
  34561. case 85: // 'before'
  34562. case 86: // 'boundary-space'
  34563. case 87: // 'break'
  34564. case 89: // 'case'
  34565. case 90: // 'cast'
  34566. case 91: // 'castable'
  34567. case 92: // 'catch'
  34568. case 94: // 'child'
  34569. case 95: // 'collation'
  34570. case 98: // 'constraint'
  34571. case 99: // 'construction'
  34572. case 102: // 'context'
  34573. case 103: // 'continue'
  34574. case 105: // 'copy-namespaces'
  34575. case 106: // 'count'
  34576. case 107: // 'decimal-format'
  34577. case 109: // 'declare'
  34578. case 110: // 'default'
  34579. case 112: // 'descendant'
  34580. case 113: // 'descendant-or-self'
  34581. case 114: // 'descending'
  34582. case 119: // 'div'
  34583. case 123: // 'else'
  34584. case 124: // 'empty'
  34585. case 126: // 'encoding'
  34586. case 127: // 'end'
  34587. case 129: // 'eq'
  34588. case 132: // 'except'
  34589. case 133: // 'exit'
  34590. case 134: // 'external'
  34591. case 136: // 'first'
  34592. case 137: // 'following'
  34593. case 138: // 'following-sibling'
  34594. case 142: // 'from'
  34595. case 143: // 'ft-option'
  34596. case 147: // 'function'
  34597. case 148: // 'ge'
  34598. case 150: // 'group'
  34599. case 152: // 'gt'
  34600. case 153: // 'idiv'
  34601. case 154: // 'if'
  34602. case 155: // 'import'
  34603. case 156: // 'in'
  34604. case 157: // 'index'
  34605. case 162: // 'instance'
  34606. case 163: // 'integrity'
  34607. case 164: // 'intersect'
  34608. case 165: // 'into'
  34609. case 166: // 'is'
  34610. case 168: // 'json'
  34611. case 170: // 'jsoniq'
  34612. case 173: // 'last'
  34613. case 174: // 'lax'
  34614. case 175: // 'le'
  34615. case 179: // 'loop'
  34616. case 181: // 'lt'
  34617. case 183: // 'mod'
  34618. case 184: // 'modify'
  34619. case 185: // 'module'
  34620. case 189: // 'ne'
  34621. case 195: // 'nodes'
  34622. case 198: // 'object'
  34623. case 202: // 'only'
  34624. case 203: // 'option'
  34625. case 204: // 'or'
  34626. case 205: // 'order'
  34627. case 207: // 'ordering'
  34628. case 210: // 'parent'
  34629. case 216: // 'preceding'
  34630. case 217: // 'preceding-sibling'
  34631. case 224: // 'return'
  34632. case 225: // 'returning'
  34633. case 226: // 'revalidation'
  34634. case 228: // 'satisfies'
  34635. case 229: // 'schema'
  34636. case 232: // 'score'
  34637. case 233: // 'select'
  34638. case 234: // 'self'
  34639. case 239: // 'sliding'
  34640. case 241: // 'stable'
  34641. case 242: // 'start'
  34642. case 245: // 'strict'
  34643. case 248: // 'switch'
  34644. case 253: // 'to'
  34645. case 254: // 'treat'
  34646. case 257: // 'tumbling'
  34647. case 258: // 'type'
  34648. case 259: // 'typeswitch'
  34649. case 260: // 'union'
  34650. case 263: // 'updating'
  34651. case 267: // 'value'
  34652. case 268: // 'variable'
  34653. case 269: // 'version'
  34654. case 272: // 'where'
  34655. case 273: // 'while'
  34656. case 276: // 'with'
  34657. lookahead2W(144); // S^WS | '#' | '(' | '(:' | ':'
  34658. break;
  34659. default:
  34660. lk = l1;
  34661. }
  34662. if (lk == 25735 // 'false' ':'
  34663. || lk == 25797 // 'null' ':'
  34664. || lk == 25855) // 'true' ':'
  34665. {
  34666. lk = memoized(21, e0);
  34667. if (lk == 0)
  34668. {
  34669. var b0A = b0; var e0A = e0; var l1A = l1;
  34670. var b1A = b1; var e1A = e1; var l2A = l2;
  34671. var b2A = b2; var e2A = e2;
  34672. try
  34673. {
  34674. try_ExprSingle();
  34675. lk = -1;
  34676. }
  34677. catch (p1A)
  34678. {
  34679. lk = -2;
  34680. }
  34681. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  34682. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  34683. b2 = b2A; e2 = e2A; end = e2A; }}
  34684. memoize(21, e0, lk);
  34685. }
  34686. }
  34687. switch (lk)
  34688. {
  34689. case -2:
  34690. case 19: // NCName^Token
  34691. case 25671: // 'after' ':'
  34692. case 25673: // 'allowing' ':'
  34693. case 25674: // 'ancestor' ':'
  34694. case 25675: // 'ancestor-or-self' ':'
  34695. case 25676: // 'and' ':'
  34696. case 25678: // 'append' ':'
  34697. case 25680: // 'as' ':'
  34698. case 25681: // 'ascending' ':'
  34699. case 25682: // 'at' ':'
  34700. case 25683: // 'attribute' ':'
  34701. case 25684: // 'base-uri' ':'
  34702. case 25685: // 'before' ':'
  34703. case 25686: // 'boundary-space' ':'
  34704. case 25687: // 'break' ':'
  34705. case 25689: // 'case' ':'
  34706. case 25690: // 'cast' ':'
  34707. case 25691: // 'castable' ':'
  34708. case 25692: // 'catch' ':'
  34709. case 25694: // 'child' ':'
  34710. case 25695: // 'collation' ':'
  34711. case 25697: // 'comment' ':'
  34712. case 25698: // 'constraint' ':'
  34713. case 25699: // 'construction' ':'
  34714. case 25702: // 'context' ':'
  34715. case 25703: // 'continue' ':'
  34716. case 25704: // 'copy' ':'
  34717. case 25705: // 'copy-namespaces' ':'
  34718. case 25706: // 'count' ':'
  34719. case 25707: // 'decimal-format' ':'
  34720. case 25709: // 'declare' ':'
  34721. case 25710: // 'default' ':'
  34722. case 25711: // 'delete' ':'
  34723. case 25712: // 'descendant' ':'
  34724. case 25713: // 'descendant-or-self' ':'
  34725. case 25714: // 'descending' ':'
  34726. case 25719: // 'div' ':'
  34727. case 25720: // 'document' ':'
  34728. case 25721: // 'document-node' ':'
  34729. case 25722: // 'element' ':'
  34730. case 25723: // 'else' ':'
  34731. case 25724: // 'empty' ':'
  34732. case 25725: // 'empty-sequence' ':'
  34733. case 25726: // 'encoding' ':'
  34734. case 25727: // 'end' ':'
  34735. case 25729: // 'eq' ':'
  34736. case 25730: // 'every' ':'
  34737. case 25732: // 'except' ':'
  34738. case 25733: // 'exit' ':'
  34739. case 25734: // 'external' ':'
  34740. case 25736: // 'first' ':'
  34741. case 25737: // 'following' ':'
  34742. case 25738: // 'following-sibling' ':'
  34743. case 25739: // 'for' ':'
  34744. case 25742: // 'from' ':'
  34745. case 25743: // 'ft-option' ':'
  34746. case 25747: // 'function' ':'
  34747. case 25748: // 'ge' ':'
  34748. case 25750: // 'group' ':'
  34749. case 25752: // 'gt' ':'
  34750. case 25753: // 'idiv' ':'
  34751. case 25754: // 'if' ':'
  34752. case 25755: // 'import' ':'
  34753. case 25756: // 'in' ':'
  34754. case 25757: // 'index' ':'
  34755. case 25761: // 'insert' ':'
  34756. case 25762: // 'instance' ':'
  34757. case 25763: // 'integrity' ':'
  34758. case 25764: // 'intersect' ':'
  34759. case 25765: // 'into' ':'
  34760. case 25766: // 'is' ':'
  34761. case 25767: // 'item' ':'
  34762. case 25768: // 'json' ':'
  34763. case 25770: // 'jsoniq' ':'
  34764. case 25773: // 'last' ':'
  34765. case 25774: // 'lax' ':'
  34766. case 25775: // 'le' ':'
  34767. case 25777: // 'let' ':'
  34768. case 25779: // 'loop' ':'
  34769. case 25781: // 'lt' ':'
  34770. case 25783: // 'mod' ':'
  34771. case 25784: // 'modify' ':'
  34772. case 25785: // 'module' ':'
  34773. case 25787: // 'namespace' ':'
  34774. case 25788: // 'namespace-node' ':'
  34775. case 25789: // 'ne' ':'
  34776. case 25794: // 'node' ':'
  34777. case 25795: // 'nodes' ':'
  34778. case 25798: // 'object' ':'
  34779. case 25802: // 'only' ':'
  34780. case 25803: // 'option' ':'
  34781. case 25804: // 'or' ':'
  34782. case 25805: // 'order' ':'
  34783. case 25806: // 'ordered' ':'
  34784. case 25807: // 'ordering' ':'
  34785. case 25810: // 'parent' ':'
  34786. case 25816: // 'preceding' ':'
  34787. case 25817: // 'preceding-sibling' ':'
  34788. case 25820: // 'processing-instruction' ':'
  34789. case 25822: // 'rename' ':'
  34790. case 25823: // 'replace' ':'
  34791. case 25824: // 'return' ':'
  34792. case 25825: // 'returning' ':'
  34793. case 25826: // 'revalidation' ':'
  34794. case 25828: // 'satisfies' ':'
  34795. case 25829: // 'schema' ':'
  34796. case 25830: // 'schema-attribute' ':'
  34797. case 25831: // 'schema-element' ':'
  34798. case 25832: // 'score' ':'
  34799. case 25833: // 'select' ':'
  34800. case 25834: // 'self' ':'
  34801. case 25839: // 'sliding' ':'
  34802. case 25840: // 'some' ':'
  34803. case 25841: // 'stable' ':'
  34804. case 25842: // 'start' ':'
  34805. case 25845: // 'strict' ':'
  34806. case 25848: // 'switch' ':'
  34807. case 25849: // 'text' ':'
  34808. case 25853: // 'to' ':'
  34809. case 25854: // 'treat' ':'
  34810. case 25856: // 'try' ':'
  34811. case 25857: // 'tumbling' ':'
  34812. case 25858: // 'type' ':'
  34813. case 25859: // 'typeswitch' ':'
  34814. case 25860: // 'union' ':'
  34815. case 25862: // 'unordered' ':'
  34816. case 25863: // 'updating' ':'
  34817. case 25866: // 'validate' ':'
  34818. case 25867: // 'value' ':'
  34819. case 25868: // 'variable' ':'
  34820. case 25869: // 'version' ':'
  34821. case 25872: // 'where' ':'
  34822. case 25873: // 'while' ':'
  34823. case 25876: // 'with' ':'
  34824. parse_NCName();
  34825. break;
  34826. default:
  34827. parse_ExprSingle();
  34828. }
  34829. lookahead1W(26); // S^WS | '(:' | ':'
  34830. shift(50); // ':'
  34831. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34832. whitespace();
  34833. parse_ExprSingle();
  34834. eventHandler.endNonterminal("PairConstructor", e0);
  34835. }
  34836. function try_PairConstructor()
  34837. {
  34838. switch (l1)
  34839. {
  34840. case 78: // 'append'
  34841. lookahead2W(278); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34842. break;
  34843. case 139: // 'for'
  34844. lookahead2W(187); // S^WS | '#' | '$' | '(' | '(:' | ':' | 'sliding' | 'tumbling'
  34845. break;
  34846. case 161: // 'insert'
  34847. lookahead2W(281); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34848. break;
  34849. case 177: // 'let'
  34850. lookahead2W(178); // S^WS | '#' | '$' | '(' | '(:' | ':' | 'score'
  34851. break;
  34852. case 187: // 'namespace'
  34853. lookahead2W(251); // NCName^Token | S^WS | '#' | '(' | '(:' | ':' | 'after' | 'allowing' |
  34854. break;
  34855. case 220: // 'processing-instruction'
  34856. lookahead2W(247); // NCName^Token | S^WS | '#' | '(:' | ':' | 'after' | 'allowing' | 'ancestor' |
  34857. break;
  34858. case 223: // 'replace'
  34859. lookahead2W(180); // S^WS | '#' | '(' | '(:' | ':' | 'node' | 'value'
  34860. break;
  34861. case 266: // 'validate'
  34862. lookahead2W(191); // S^WS | '#' | '(' | '(:' | ':' | 'lax' | 'strict' | 'type' | '{'
  34863. break;
  34864. case 83: // 'attribute'
  34865. case 122: // 'element'
  34866. lookahead2W(256); // EQName^Token | S^WS | '#' | '(:' | ':' | 'after' | 'allowing' | 'ancestor' |
  34867. break;
  34868. case 97: // 'comment'
  34869. case 249: // 'text'
  34870. lookahead2W(149); // S^WS | '#' | '(:' | ':' | '{'
  34871. break;
  34872. case 111: // 'delete'
  34873. case 222: // 'rename'
  34874. lookahead2W(261); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  34875. break;
  34876. case 104: // 'copy'
  34877. case 130: // 'every'
  34878. case 240: // 'some'
  34879. lookahead2W(165); // S^WS | '#' | '$' | '(' | '(:' | ':'
  34880. break;
  34881. case 135: // 'false'
  34882. case 197: // 'null'
  34883. case 255: // 'true'
  34884. lookahead2W(208); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '.' | '/' | '//' | ':' |
  34885. break;
  34886. case 120: // 'document'
  34887. case 206: // 'ordered'
  34888. case 256: // 'try'
  34889. case 262: // 'unordered'
  34890. lookahead2W(167); // S^WS | '#' | '(' | '(:' | ':' | '{'
  34891. break;
  34892. case 121: // 'document-node'
  34893. case 125: // 'empty-sequence'
  34894. case 167: // 'item'
  34895. case 188: // 'namespace-node'
  34896. case 194: // 'node'
  34897. case 230: // 'schema-attribute'
  34898. case 231: // 'schema-element'
  34899. lookahead2W(96); // S^WS | '#' | '(:' | ':'
  34900. break;
  34901. case 71: // 'after'
  34902. case 73: // 'allowing'
  34903. case 74: // 'ancestor'
  34904. case 75: // 'ancestor-or-self'
  34905. case 76: // 'and'
  34906. case 80: // 'as'
  34907. case 81: // 'ascending'
  34908. case 82: // 'at'
  34909. case 84: // 'base-uri'
  34910. case 85: // 'before'
  34911. case 86: // 'boundary-space'
  34912. case 87: // 'break'
  34913. case 89: // 'case'
  34914. case 90: // 'cast'
  34915. case 91: // 'castable'
  34916. case 92: // 'catch'
  34917. case 94: // 'child'
  34918. case 95: // 'collation'
  34919. case 98: // 'constraint'
  34920. case 99: // 'construction'
  34921. case 102: // 'context'
  34922. case 103: // 'continue'
  34923. case 105: // 'copy-namespaces'
  34924. case 106: // 'count'
  34925. case 107: // 'decimal-format'
  34926. case 109: // 'declare'
  34927. case 110: // 'default'
  34928. case 112: // 'descendant'
  34929. case 113: // 'descendant-or-self'
  34930. case 114: // 'descending'
  34931. case 119: // 'div'
  34932. case 123: // 'else'
  34933. case 124: // 'empty'
  34934. case 126: // 'encoding'
  34935. case 127: // 'end'
  34936. case 129: // 'eq'
  34937. case 132: // 'except'
  34938. case 133: // 'exit'
  34939. case 134: // 'external'
  34940. case 136: // 'first'
  34941. case 137: // 'following'
  34942. case 138: // 'following-sibling'
  34943. case 142: // 'from'
  34944. case 143: // 'ft-option'
  34945. case 147: // 'function'
  34946. case 148: // 'ge'
  34947. case 150: // 'group'
  34948. case 152: // 'gt'
  34949. case 153: // 'idiv'
  34950. case 154: // 'if'
  34951. case 155: // 'import'
  34952. case 156: // 'in'
  34953. case 157: // 'index'
  34954. case 162: // 'instance'
  34955. case 163: // 'integrity'
  34956. case 164: // 'intersect'
  34957. case 165: // 'into'
  34958. case 166: // 'is'
  34959. case 168: // 'json'
  34960. case 170: // 'jsoniq'
  34961. case 173: // 'last'
  34962. case 174: // 'lax'
  34963. case 175: // 'le'
  34964. case 179: // 'loop'
  34965. case 181: // 'lt'
  34966. case 183: // 'mod'
  34967. case 184: // 'modify'
  34968. case 185: // 'module'
  34969. case 189: // 'ne'
  34970. case 195: // 'nodes'
  34971. case 198: // 'object'
  34972. case 202: // 'only'
  34973. case 203: // 'option'
  34974. case 204: // 'or'
  34975. case 205: // 'order'
  34976. case 207: // 'ordering'
  34977. case 210: // 'parent'
  34978. case 216: // 'preceding'
  34979. case 217: // 'preceding-sibling'
  34980. case 224: // 'return'
  34981. case 225: // 'returning'
  34982. case 226: // 'revalidation'
  34983. case 228: // 'satisfies'
  34984. case 229: // 'schema'
  34985. case 232: // 'score'
  34986. case 233: // 'select'
  34987. case 234: // 'self'
  34988. case 239: // 'sliding'
  34989. case 241: // 'stable'
  34990. case 242: // 'start'
  34991. case 245: // 'strict'
  34992. case 248: // 'switch'
  34993. case 253: // 'to'
  34994. case 254: // 'treat'
  34995. case 257: // 'tumbling'
  34996. case 258: // 'type'
  34997. case 259: // 'typeswitch'
  34998. case 260: // 'union'
  34999. case 263: // 'updating'
  35000. case 267: // 'value'
  35001. case 268: // 'variable'
  35002. case 269: // 'version'
  35003. case 272: // 'where'
  35004. case 273: // 'while'
  35005. case 276: // 'with'
  35006. lookahead2W(144); // S^WS | '#' | '(' | '(:' | ':'
  35007. break;
  35008. default:
  35009. lk = l1;
  35010. }
  35011. if (lk == 25735 // 'false' ':'
  35012. || lk == 25797 // 'null' ':'
  35013. || lk == 25855) // 'true' ':'
  35014. {
  35015. lk = memoized(21, e0);
  35016. if (lk == 0)
  35017. {
  35018. var b0A = b0; var e0A = e0; var l1A = l1;
  35019. var b1A = b1; var e1A = e1; var l2A = l2;
  35020. var b2A = b2; var e2A = e2;
  35021. try
  35022. {
  35023. try_ExprSingle();
  35024. memoize(21, e0A, -1);
  35025. lk = -3;
  35026. }
  35027. catch (p1A)
  35028. {
  35029. lk = -2;
  35030. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  35031. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  35032. b2 = b2A; e2 = e2A; end = e2A; }}
  35033. memoize(21, e0A, -2);
  35034. }
  35035. }
  35036. }
  35037. switch (lk)
  35038. {
  35039. case -2:
  35040. case 19: // NCName^Token
  35041. case 25671: // 'after' ':'
  35042. case 25673: // 'allowing' ':'
  35043. case 25674: // 'ancestor' ':'
  35044. case 25675: // 'ancestor-or-self' ':'
  35045. case 25676: // 'and' ':'
  35046. case 25678: // 'append' ':'
  35047. case 25680: // 'as' ':'
  35048. case 25681: // 'ascending' ':'
  35049. case 25682: // 'at' ':'
  35050. case 25683: // 'attribute' ':'
  35051. case 25684: // 'base-uri' ':'
  35052. case 25685: // 'before' ':'
  35053. case 25686: // 'boundary-space' ':'
  35054. case 25687: // 'break' ':'
  35055. case 25689: // 'case' ':'
  35056. case 25690: // 'cast' ':'
  35057. case 25691: // 'castable' ':'
  35058. case 25692: // 'catch' ':'
  35059. case 25694: // 'child' ':'
  35060. case 25695: // 'collation' ':'
  35061. case 25697: // 'comment' ':'
  35062. case 25698: // 'constraint' ':'
  35063. case 25699: // 'construction' ':'
  35064. case 25702: // 'context' ':'
  35065. case 25703: // 'continue' ':'
  35066. case 25704: // 'copy' ':'
  35067. case 25705: // 'copy-namespaces' ':'
  35068. case 25706: // 'count' ':'
  35069. case 25707: // 'decimal-format' ':'
  35070. case 25709: // 'declare' ':'
  35071. case 25710: // 'default' ':'
  35072. case 25711: // 'delete' ':'
  35073. case 25712: // 'descendant' ':'
  35074. case 25713: // 'descendant-or-self' ':'
  35075. case 25714: // 'descending' ':'
  35076. case 25719: // 'div' ':'
  35077. case 25720: // 'document' ':'
  35078. case 25721: // 'document-node' ':'
  35079. case 25722: // 'element' ':'
  35080. case 25723: // 'else' ':'
  35081. case 25724: // 'empty' ':'
  35082. case 25725: // 'empty-sequence' ':'
  35083. case 25726: // 'encoding' ':'
  35084. case 25727: // 'end' ':'
  35085. case 25729: // 'eq' ':'
  35086. case 25730: // 'every' ':'
  35087. case 25732: // 'except' ':'
  35088. case 25733: // 'exit' ':'
  35089. case 25734: // 'external' ':'
  35090. case 25736: // 'first' ':'
  35091. case 25737: // 'following' ':'
  35092. case 25738: // 'following-sibling' ':'
  35093. case 25739: // 'for' ':'
  35094. case 25742: // 'from' ':'
  35095. case 25743: // 'ft-option' ':'
  35096. case 25747: // 'function' ':'
  35097. case 25748: // 'ge' ':'
  35098. case 25750: // 'group' ':'
  35099. case 25752: // 'gt' ':'
  35100. case 25753: // 'idiv' ':'
  35101. case 25754: // 'if' ':'
  35102. case 25755: // 'import' ':'
  35103. case 25756: // 'in' ':'
  35104. case 25757: // 'index' ':'
  35105. case 25761: // 'insert' ':'
  35106. case 25762: // 'instance' ':'
  35107. case 25763: // 'integrity' ':'
  35108. case 25764: // 'intersect' ':'
  35109. case 25765: // 'into' ':'
  35110. case 25766: // 'is' ':'
  35111. case 25767: // 'item' ':'
  35112. case 25768: // 'json' ':'
  35113. case 25770: // 'jsoniq' ':'
  35114. case 25773: // 'last' ':'
  35115. case 25774: // 'lax' ':'
  35116. case 25775: // 'le' ':'
  35117. case 25777: // 'let' ':'
  35118. case 25779: // 'loop' ':'
  35119. case 25781: // 'lt' ':'
  35120. case 25783: // 'mod' ':'
  35121. case 25784: // 'modify' ':'
  35122. case 25785: // 'module' ':'
  35123. case 25787: // 'namespace' ':'
  35124. case 25788: // 'namespace-node' ':'
  35125. case 25789: // 'ne' ':'
  35126. case 25794: // 'node' ':'
  35127. case 25795: // 'nodes' ':'
  35128. case 25798: // 'object' ':'
  35129. case 25802: // 'only' ':'
  35130. case 25803: // 'option' ':'
  35131. case 25804: // 'or' ':'
  35132. case 25805: // 'order' ':'
  35133. case 25806: // 'ordered' ':'
  35134. case 25807: // 'ordering' ':'
  35135. case 25810: // 'parent' ':'
  35136. case 25816: // 'preceding' ':'
  35137. case 25817: // 'preceding-sibling' ':'
  35138. case 25820: // 'processing-instruction' ':'
  35139. case 25822: // 'rename' ':'
  35140. case 25823: // 'replace' ':'
  35141. case 25824: // 'return' ':'
  35142. case 25825: // 'returning' ':'
  35143. case 25826: // 'revalidation' ':'
  35144. case 25828: // 'satisfies' ':'
  35145. case 25829: // 'schema' ':'
  35146. case 25830: // 'schema-attribute' ':'
  35147. case 25831: // 'schema-element' ':'
  35148. case 25832: // 'score' ':'
  35149. case 25833: // 'select' ':'
  35150. case 25834: // 'self' ':'
  35151. case 25839: // 'sliding' ':'
  35152. case 25840: // 'some' ':'
  35153. case 25841: // 'stable' ':'
  35154. case 25842: // 'start' ':'
  35155. case 25845: // 'strict' ':'
  35156. case 25848: // 'switch' ':'
  35157. case 25849: // 'text' ':'
  35158. case 25853: // 'to' ':'
  35159. case 25854: // 'treat' ':'
  35160. case 25856: // 'try' ':'
  35161. case 25857: // 'tumbling' ':'
  35162. case 25858: // 'type' ':'
  35163. case 25859: // 'typeswitch' ':'
  35164. case 25860: // 'union' ':'
  35165. case 25862: // 'unordered' ':'
  35166. case 25863: // 'updating' ':'
  35167. case 25866: // 'validate' ':'
  35168. case 25867: // 'value' ':'
  35169. case 25868: // 'variable' ':'
  35170. case 25869: // 'version' ':'
  35171. case 25872: // 'where' ':'
  35172. case 25873: // 'while' ':'
  35173. case 25876: // 'with' ':'
  35174. try_NCName();
  35175. break;
  35176. case -3:
  35177. break;
  35178. default:
  35179. try_ExprSingle();
  35180. }
  35181. lookahead1W(26); // S^WS | '(:' | ':'
  35182. shiftT(50); // ':'
  35183. lookahead1W(266); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35184. try_ExprSingle();
  35185. }
  35186. function parse_ArrayConstructor()
  35187. {
  35188. eventHandler.startNonterminal("ArrayConstructor", e0);
  35189. shift(69); // '['
  35190. lookahead1W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35191. if (l1 != 70) // ']'
  35192. {
  35193. whitespace();
  35194. parse_Expr();
  35195. }
  35196. shift(70); // ']'
  35197. eventHandler.endNonterminal("ArrayConstructor", e0);
  35198. }
  35199. function try_ArrayConstructor()
  35200. {
  35201. shiftT(69); // '['
  35202. lookahead1W(272); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35203. if (l1 != 70) // ']'
  35204. {
  35205. try_Expr();
  35206. }
  35207. shiftT(70); // ']'
  35208. }
  35209. function parse_BlockExpr()
  35210. {
  35211. eventHandler.startNonterminal("BlockExpr", e0);
  35212. shift(281); // '{'
  35213. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35214. whitespace();
  35215. parse_StatementsAndOptionalExpr();
  35216. shift(287); // '}'
  35217. eventHandler.endNonterminal("BlockExpr", e0);
  35218. }
  35219. function try_BlockExpr()
  35220. {
  35221. shiftT(281); // '{'
  35222. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35223. try_StatementsAndOptionalExpr();
  35224. shiftT(287); // '}'
  35225. }
  35226. function parse_FunctionDecl()
  35227. {
  35228. eventHandler.startNonterminal("FunctionDecl", e0);
  35229. shift(147); // 'function'
  35230. lookahead1W(245); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  35231. whitespace();
  35232. parse_EQName();
  35233. lookahead1W(22); // S^WS | '(' | '(:'
  35234. shift(35); // '('
  35235. lookahead1W(98); // S^WS | '$' | '(:' | ')'
  35236. if (l1 == 31) // '$'
  35237. {
  35238. whitespace();
  35239. parse_ParamList();
  35240. }
  35241. shift(38); // ')'
  35242. lookahead1W(158); // S^WS | '(:' | 'as' | 'external' | '{'
  35243. if (l1 == 80) // 'as'
  35244. {
  35245. whitespace();
  35246. parse_ReturnType();
  35247. }
  35248. lookahead1W(122); // S^WS | '(:' | 'external' | '{'
  35249. switch (l1)
  35250. {
  35251. case 281: // '{'
  35252. shift(281); // '{'
  35253. lookahead1W(280); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  35254. whitespace();
  35255. parse_StatementsAndOptionalExpr();
  35256. shift(287); // '}'
  35257. break;
  35258. default:
  35259. shift(134); // 'external'
  35260. }
  35261. eventHandler.endNonterminal("FunctionDecl", e0);
  35262. }
  35263. function parse_ReturnType()
  35264. {
  35265. eventHandler.startNonterminal("ReturnType", e0);
  35266. shift(80); // 'as'
  35267. lookahead1W(253); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  35268. whitespace();
  35269. parse_SequenceType();
  35270. eventHandler.endNonterminal("ReturnType", e0);
  35271. }
  35272. function shift(t)
  35273. {
  35274. if (l1 == t)
  35275. {
  35276. whitespace();
  35277. eventHandler.terminal(JSONiqParser.TOKEN[l1], b1, e1 > size ? size : e1);
  35278. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  35279. b1 = b2; e1 = e2; l2 = 0; }
  35280. }
  35281. else
  35282. {
  35283. error(b1, e1, 0, l1, t);
  35284. }
  35285. }
  35286. function shiftT(t)
  35287. {
  35288. if (l1 == t)
  35289. {
  35290. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  35291. b1 = b2; e1 = e2; l2 = 0; }
  35292. }
  35293. else
  35294. {
  35295. error(b1, e1, 0, l1, t);
  35296. }
  35297. }
  35298. function skip(code)
  35299. {
  35300. var b0W = b0; var e0W = e0; var l1W = l1;
  35301. var b1W = b1; var e1W = e1;
  35302. l1 = code; b1 = begin; e1 = end;
  35303. l2 = 0;
  35304. try_Whitespace();
  35305. b0 = b0W; e0 = e0W; l1 = l1W; if (l1 != 0) {
  35306. b1 = b1W; e1 = e1W; }
  35307. }
  35308. function whitespace()
  35309. {
  35310. if (e0 != b1)
  35311. {
  35312. eventHandler.whitespace(e0, b1);
  35313. e0 = b1;
  35314. }
  35315. }
  35316. function matchW(set)
  35317. {
  35318. var code;
  35319. for (;;)
  35320. {
  35321. code = match(set);
  35322. if (code != 22) // S^WS
  35323. {
  35324. if (code != 37) // '(:'
  35325. {
  35326. break;
  35327. }
  35328. skip(code);
  35329. }
  35330. }
  35331. return code;
  35332. }
  35333. function lookahead1W(set)
  35334. {
  35335. if (l1 == 0)
  35336. {
  35337. l1 = matchW(set);
  35338. b1 = begin;
  35339. e1 = end;
  35340. }
  35341. }
  35342. function lookahead2W(set)
  35343. {
  35344. if (l2 == 0)
  35345. {
  35346. l2 = matchW(set);
  35347. b2 = begin;
  35348. e2 = end;
  35349. }
  35350. lk = (l2 << 9) | l1;
  35351. }
  35352. function lookahead1(set)
  35353. {
  35354. if (l1 == 0)
  35355. {
  35356. l1 = match(set);
  35357. b1 = begin;
  35358. e1 = end;
  35359. }
  35360. }
  35361. function lookahead2(set)
  35362. {
  35363. if (l2 == 0)
  35364. {
  35365. l2 = match(set);
  35366. b2 = begin;
  35367. e2 = end;
  35368. }
  35369. lk = (l2 << 9) | l1;
  35370. }
  35371. function error(b, e, s, l, t)
  35372. {
  35373. if (e >= ex)
  35374. {
  35375. bx = b;
  35376. ex = e;
  35377. sx = s;
  35378. lx = l;
  35379. tx = t;
  35380. }
  35381. throw new self.ParseException(bx, ex, sx, lx, tx);
  35382. }
  35383. var lk, b0, e0;
  35384. var l1, b1, e1;
  35385. var l2, b2, e2;
  35386. var bx, ex, sx, lx, tx;
  35387. var eventHandler;
  35388. var memo;
  35389. function memoize(i, e, v)
  35390. {
  35391. memo[(e << 5) + i] = v;
  35392. }
  35393. function memoized(i, e)
  35394. {
  35395. var v = memo[(e << 5) + i];
  35396. return typeof v != "undefined" ? v : 0;
  35397. }
  35398. var input;
  35399. var size;
  35400. var begin;
  35401. var end;
  35402. function match(tokenSetId)
  35403. {
  35404. var nonbmp = false;
  35405. begin = end;
  35406. var current = end;
  35407. var result = JSONiqParser.INITIAL[tokenSetId];
  35408. var state = 0;
  35409. for (var code = result & 8191; code != 0; )
  35410. {
  35411. var charclass;
  35412. var c0 = current < size ? input.charCodeAt(current) : 0;
  35413. ++current;
  35414. if (c0 < 0x80)
  35415. {
  35416. charclass = JSONiqParser.MAP0[c0];
  35417. }
  35418. else if (c0 < 0xd800)
  35419. {
  35420. var c1 = c0 >> 4;
  35421. charclass = JSONiqParser.MAP1[(c0 & 15) + JSONiqParser.MAP1[(c1 & 31) + JSONiqParser.MAP1[c1 >> 5]]];
  35422. }
  35423. else
  35424. {
  35425. if (c0 < 0xdc00)
  35426. {
  35427. var c1 = current < size ? input.charCodeAt(current) : 0;
  35428. if (c1 >= 0xdc00 && c1 < 0xe000)
  35429. {
  35430. ++current;
  35431. c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
  35432. nonbmp = true;
  35433. }
  35434. }
  35435. var lo = 0, hi = 5;
  35436. for (var m = 3; ; m = (hi + lo) >> 1)
  35437. {
  35438. if (JSONiqParser.MAP2[m] > c0) hi = m - 1;
  35439. else if (JSONiqParser.MAP2[6 + m] < c0) lo = m + 1;
  35440. else {charclass = JSONiqParser.MAP2[12 + m]; break;}
  35441. if (lo > hi) {charclass = 0; break;}
  35442. }
  35443. }
  35444. state = code;
  35445. var i0 = (charclass << 13) + code - 1;
  35446. code = JSONiqParser.TRANSITION[(i0 & 31) + JSONiqParser.TRANSITION[i0 >> 5]];
  35447. if (code > 8191)
  35448. {
  35449. result = code;
  35450. code &= 8191;
  35451. end = current;
  35452. }
  35453. }
  35454. result >>= 13;
  35455. if (result == 0)
  35456. {
  35457. end = current - 1;
  35458. var c1 = end < size ? input.charCodeAt(end) : 0;
  35459. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  35460. return error(begin, end, state, -1, -1);
  35461. }
  35462. if (nonbmp)
  35463. {
  35464. for (var i = result >> 9; i > 0; --i)
  35465. {
  35466. --end;
  35467. var c1 = end < size ? input.charCodeAt(end) : 0;
  35468. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  35469. }
  35470. }
  35471. else
  35472. {
  35473. end -= result >> 9;
  35474. }
  35475. return (result & 511) - 1;
  35476. }
  35477. }
  35478. JSONiqParser.getTokenSet = function(tokenSetId)
  35479. {
  35480. var set = [];
  35481. var s = tokenSetId < 0 ? - tokenSetId : JSONiqParser.INITIAL[tokenSetId] & 8191;
  35482. for (var i = 0; i < 289; i += 32)
  35483. {
  35484. var j = i;
  35485. var i0 = (i >> 5) * 4235 + s - 1;
  35486. var i1 = i0 >> 2;
  35487. var i2 = i1 >> 2;
  35488. var f = JSONiqParser.EXPECTED[(i0 & 3) + JSONiqParser.EXPECTED[(i1 & 3) + JSONiqParser.EXPECTED[(i2 & 15) + JSONiqParser.EXPECTED[i2 >> 4]]]];
  35489. for ( ; f != 0; f >>>= 1, ++j)
  35490. {
  35491. if ((f & 1) != 0)
  35492. {
  35493. set.push(JSONiqParser.TOKEN[j]);
  35494. }
  35495. }
  35496. }
  35497. return set;
  35498. };
  35499. JSONiqParser.MAP0 =
  35500. [
  35501. 71, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4,
  35502. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 20, 21, 22, 23,
  35503. 24, 25, 26, 27, 28, 29, 26, 30, 30, 30, 30, 30, 31, 32, 33, 30, 30, 34, 30, 30, 35, 30, 30, 30, 36, 30, 30,
  35504. 37, 38, 39, 40, 30, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
  35505. 62, 63, 64, 65, 66, 67, 68, 69, 40, 40
  35506. ];
  35507. JSONiqParser.MAP1 =
  35508. [
  35509. 108, 124, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 156, 181, 181, 181, 181,
  35510. 181, 214, 215, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  35511. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  35512. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  35513. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  35514. 214, 214, 214, 247, 261, 277, 293, 309, 355, 371, 387, 423, 423, 423, 415, 339, 331, 339, 331, 339, 339,
  35515. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 440, 440, 440, 440, 440, 440, 440,
  35516. 324, 339, 339, 339, 339, 339, 339, 339, 339, 401, 423, 423, 424, 422, 423, 423, 339, 339, 339, 339, 339,
  35517. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 423, 423, 423, 423, 423, 423, 423, 423,
  35518. 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423,
  35519. 423, 423, 423, 338, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339,
  35520. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 423, 71, 0, 0, 0, 0, 0, 0, 0, 0,
  35521. 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
  35522. 14, 15, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 26, 30,
  35523. 30, 30, 30, 30, 31, 32, 33, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 40, 30, 30, 30, 30, 30,
  35524. 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 34, 30, 30, 35, 30, 30, 30, 36, 30, 30, 37, 38, 39, 40, 30,
  35525. 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
  35526. 67, 68, 69, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 30, 30, 40, 40, 40, 40, 40, 40, 40, 70, 40, 40,
  35527. 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70,
  35528. 70, 70, 70, 70
  35529. ];
  35530. JSONiqParser.MAP2 =
  35531. [
  35532. 57344, 63744, 64976, 65008, 65536, 983040, 63743, 64975, 65007, 65533, 983039, 1114111, 40, 30, 40, 30, 30,
  35533. 40
  35534. ];
  35535. JSONiqParser.INITIAL =
  35536. [
  35537. 1, 24578, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
  35538. 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
  35539. 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
  35540. 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
  35541. 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
  35542. 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
  35543. 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
  35544. 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
  35545. 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
  35546. 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
  35547. 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
  35548. 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
  35549. 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289
  35550. ];
  35551. JSONiqParser.TRANSITION =
  35552. [
  35553. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35554. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35555. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35556. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35557. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35558. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35559. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35560. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35561. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35562. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35563. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35564. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35565. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35566. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35567. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35568. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35569. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35570. 32640, 18432, 18508, 18512, 18508, 18508, 18471, 18503, 18452, 18508, 18544, 32640, 25253, 32640, 72986,
  35571. 32640, 32640, 18907, 32640, 23058, 21807, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037,
  35572. 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819,
  35573. 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334,
  35574. 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811,
  35575. 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211,
  35576. 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885,
  35577. 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618,
  35578. 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640,
  35579. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35580. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35581. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35582. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35583. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35584. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35585. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35586. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35587. 32640, 32640, 22530, 32640, 61740, 32640, 32640, 53140, 22565, 22594, 54694, 22641, 32640, 25253, 32640,
  35588. 22707, 32640, 32640, 18907, 32640, 40804, 19219, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959,
  35589. 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134,
  35590. 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014,
  35591. 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735,
  35592. 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138,
  35593. 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853,
  35594. 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484,
  35595. 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487,
  35596. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35597. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35598. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35599. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35600. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35601. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35602. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35603. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35604. 32640, 32640, 32640, 22757, 32640, 23442, 32640, 20728, 22822, 22912, 62853, 22949, 23023, 32640, 25253,
  35605. 37379, 72986, 32640, 32640, 18907, 32640, 23058, 40482, 31154, 19779, 32640, 18612, 18649, 18757, 18789,
  35606. 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458,
  35607. 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244,
  35608. 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661,
  35609. 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090,
  35610. 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870,
  35611. 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431,
  35612. 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459,
  35613. 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35614. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35615. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35616. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35617. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35618. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35619. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35620. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35621. 32640, 32640, 32640, 32640, 23090, 32640, 70756, 57235, 23625, 57174, 23143, 53889, 57205, 23194, 32640,
  35622. 44590, 57237, 72986, 32640, 32640, 18907, 32640, 23058, 18925, 31154, 19779, 32640, 18612, 18649, 18757,
  35623. 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041,
  35624. 62458, 19134, 40819, 22132, 19073, 46732, 23294, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251,
  35625. 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422,
  35626. 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969,
  35627. 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821,
  35628. 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374,
  35629. 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427,
  35630. 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35631. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35632. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35633. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35634. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35635. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35636. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35637. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35638. 32640, 32640, 32640, 32640, 32640, 23361, 32640, 61740, 23437, 23807, 23824, 22912, 35136, 23474, 23607,
  35639. 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 40461, 21807, 31154, 19779, 32640, 18612, 18649,
  35640. 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179,
  35641. 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570,
  35642. 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629,
  35643. 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927,
  35644. 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774,
  35645. 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452,
  35646. 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281,
  35647. 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35648. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35649. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35650. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35651. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35652. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35653. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35654. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35655. 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 57592, 32640, 53140, 23657, 43708, 23704,
  35656. 23789, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154, 19779, 32640, 18612,
  35657. 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875,
  35658. 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438,
  35659. 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359,
  35660. 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907,
  35661. 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709,
  35662. 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310,
  35663. 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249,
  35664. 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35665. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35666. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35667. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35668. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35669. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35670. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35671. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35672. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640, 39259, 23856, 32640,
  35673. 32640, 23893, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154, 19779, 32640,
  35674. 18612, 18649, 18757, 18789, 18959, 73053, 22069, 23965, 22057, 18887, 18787, 18957, 18991, 36451, 32640,
  35675. 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822,
  35676. 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570,
  35677. 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058,
  35678. 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579,
  35679. 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186,
  35680. 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154,
  35681. 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35682. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35683. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35684. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35685. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35686. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35687. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35688. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35689. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 24031, 32640, 23861, 32640, 22776, 24082, 22912,
  35690. 56240, 24206, 24329, 32640, 25253, 32640, 24379, 32640, 32640, 18907, 32640, 23058, 57529, 31154, 19779,
  35691. 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451,
  35692. 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193,
  35693. 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534,
  35694. 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858,
  35695. 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291,
  35696. 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126,
  35697. 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101,
  35698. 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35699. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35700. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35701. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35702. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35703. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35704. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35705. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35706. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 24415, 24449, 24453, 24440, 24534, 24485,
  35707. 24515, 24566, 24596, 24628, 32640, 32105, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154,
  35708. 45903, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991,
  35709. 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106,
  35710. 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498,
  35711. 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026,
  35712. 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547,
  35713. 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084,
  35714. 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959,
  35715. 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35716. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35717. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35718. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35719. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35720. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35721. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35722. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35723. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 24678, 32640, 61740, 24746, 48361,
  35724. 53140, 24789, 24808, 24825, 24857, 32640, 27397, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807,
  35725. 31154, 45563, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957,
  35726. 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733,
  35727. 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119,
  35728. 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993,
  35729. 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488,
  35730. 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094,
  35731. 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899,
  35732. 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35733. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35734. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35735. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35736. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35737. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35738. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35739. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35740. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 24907, 32640, 61740, 32640,
  35741. 32640, 52064, 24984, 25013, 61799, 25045, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058,
  35742. 21807, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 25095, 22057, 18887, 18787,
  35743. 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074,
  35744. 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538,
  35745. 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851,
  35746. 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518,
  35747. 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062,
  35748. 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839,
  35749. 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640,
  35750. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35751. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35752. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35753. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35754. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35755. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35756. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35757. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740,
  35758. 32640, 32640, 54034, 25151, 25188, 25171, 25235, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640,
  35759. 23058, 21807, 31154, 19779, 32640, 25302, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887,
  35760. 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342,
  35761. 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502,
  35762. 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019,
  35763. 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412,
  35764. 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030,
  35765. 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057,
  35766. 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640,
  35767. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35768. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35769. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35770. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35771. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35772. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35773. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35774. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 25340, 32640,
  35775. 61740, 24702, 35413, 25353, 25385, 25402, 58363, 25449, 32640, 25253, 32640, 72986, 32640, 32640, 18907,
  35776. 32640, 23058, 21807, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057,
  35777. 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732,
  35778. 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470,
  35779. 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942,
  35780. 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521,
  35781. 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949,
  35782. 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802,
  35783. 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640,
  35784. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35785. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35786. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35787. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35788. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35789. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35790. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35791. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 25499,
  35792. 32640, 61740, 32640, 32640, 53140, 25538, 25575, 25558, 25622, 32640, 25253, 32640, 72986, 32640, 32640,
  35793. 49347, 54782, 64809, 35297, 64457, 32024, 25672, 25724, 32640, 25308, 42746, 72012, 48724, 25775, 59604,
  35794. 63895, 70062, 53329, 26051, 44572, 32640, 32640, 53365, 69246, 32640, 64131, 72012, 72012, 25809, 25776,
  35795. 25776, 25844, 25983, 25984, 26051, 26051, 26018, 36217, 25878, 32640, 32640, 25912, 56403, 72012, 72012,
  35796. 47453, 69896, 25776, 64787, 25947, 25982, 26472, 26016, 26050, 68602, 32640, 32640, 21278, 65491, 41507,
  35797. 72012, 47768, 59999, 36922, 55439, 25983, 53287, 66001, 26051, 68608, 32640, 35129, 65495, 72012, 26084,
  35798. 25776, 26132, 25983, 66375, 26051, 26181, 26227, 36550, 62167, 71378, 26264, 56947, 53286, 26299, 56814,
  35799. 66968, 50229, 37146, 26336, 26407, 64681, 37193, 26609, 67516, 26450, 26504, 26590, 60773, 47253, 26654,
  35800. 26722, 26771, 49912, 26461, 51539, 26820, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640,
  35801. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35802. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35803. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35804. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35805. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35806. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35807. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35808. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35809. 22530, 32640, 61740, 32640, 32640, 29428, 26976, 69042, 27027, 27107, 32640, 25253, 32640, 27176, 32640,
  35810. 32640, 18907, 32640, 35800, 21807, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069,
  35811. 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341,
  35812. 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366,
  35813. 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878,
  35814. 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265,
  35815. 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789,
  35816. 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650,
  35817. 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640,
  35818. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35819. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35820. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35821. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35822. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35823. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35824. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35825. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35826. 32640, 27212, 32640, 18617, 32640, 32640, 53140, 27264, 27332, 41428, 27379, 32640, 25253, 32640, 27446,
  35827. 36386, 32640, 18907, 32640, 23058, 40482, 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037,
  35828. 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819,
  35829. 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334,
  35830. 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811,
  35831. 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211,
  35832. 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885,
  35833. 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618,
  35834. 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640,
  35835. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35836. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35837. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35838. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35839. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35840. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35841. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35842. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35843. 32640, 32640, 27496, 32640, 61740, 32640, 32640, 45704, 22912, 32640, 27545, 27614, 32640, 25253, 32640,
  35844. 27679, 32640, 32640, 49347, 54782, 51035, 35297, 32640, 32024, 32640, 27715, 32640, 25308, 72012, 72012,
  35845. 48724, 25776, 59604, 25983, 61672, 26051, 26051, 49853, 32640, 32640, 70980, 32640, 32640, 64131, 72012,
  35846. 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 40010, 32640, 32640, 25692, 32640,
  35847. 68393, 72012, 72012, 27753, 25776, 25776, 39830, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640,
  35848. 32640, 65491, 72012, 72012, 27795, 25776, 60349, 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640,
  35849. 65495, 72012, 46827, 25776, 55996, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955,
  35850. 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860,
  35851. 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933,
  35852. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35853. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35854. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35855. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35856. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35857. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35858. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35859. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35860. 32640, 32640, 32640, 27836, 32640, 26232, 27985, 34535, 60068, 27930, 27958, 60099, 28032, 32640, 32366,
  35861. 32640, 72986, 32640, 32640, 73079, 29194, 30273, 28620, 31154, 44986, 32640, 18612, 18649, 18757, 18789,
  35862. 18959, 32755, 28084, 30249, 28403, 29274, 28141, 28173, 28885, 36451, 32640, 24875, 69179, 19041, 62458,
  35863. 19134, 40819, 21681, 28259, 30189, 28317, 28376, 29214, 30382, 28201, 30288, 28732, 66570, 19251, 21244,
  35864. 41014, 19334, 19366, 19398, 28435, 28285, 28497, 28109, 28529, 28561, 28593, 28652, 28684, 28716, 19661,
  35865. 19735, 19811, 19878, 19910, 19942, 28764, 21709, 32781, 28826, 28935, 28991, 29023, 29361, 30055, 20090,
  35866. 20138, 20211, 20265, 29171, 28465, 29246, 28344, 29334, 29302, 29393, 20579, 20709, 20774, 29460, 29082,
  35867. 29111, 29139, 29492, 29611, 20949, 21030, 29555, 29643, 29675, 28857, 29707, 21310, 29804, 29832, 29864,
  35868. 29896, 29992, 30024, 30105, 30173, 28959, 30221, 29583, 29053, 28794, 28227, 30320, 30352, 29523, 30414,
  35869. 30442, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35870. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35871. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35872. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35873. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35874. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35875. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35876. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35877. 32640, 32640, 32640, 32640, 30485, 32640, 61740, 55714, 40332, 67370, 30532, 30549, 30500, 30596, 32640,
  35878. 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154, 19779, 32640, 18612, 18649, 18757,
  35879. 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 25063, 69179, 19041,
  35880. 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 62487, 66570, 19251,
  35881. 64424, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629, 30661,
  35882. 19661, 19735, 19811, 19878, 19910, 19942, 30758, 30851, 33683, 30826, 30858, 20058, 19907, 21927, 19969,
  35883. 20090, 20138, 20211, 20265, 30890, 63521, 30967, 63518, 20488, 20547, 20291, 20579, 20709, 20774, 20821,
  35884. 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452, 21374,
  35885. 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281, 22427,
  35886. 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35887. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35888. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35889. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35890. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35891. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35892. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35893. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35894. 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640, 32640, 31025, 31042, 31089, 31121,
  35895. 32640, 25253, 32640, 72986, 41921, 32640, 18907, 32640, 23058, 19161, 31154, 19779, 32640, 18612, 18649,
  35896. 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875, 69179,
  35897. 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438, 66570,
  35898. 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359, 19629,
  35899. 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907, 21927,
  35900. 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709, 20774,
  35901. 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310, 21452,
  35902. 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249, 22281,
  35903. 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35904. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35905. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35906. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35907. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35908. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35909. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35910. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35911. 32640, 32640, 32640, 32640, 32640, 32640, 31186, 32640, 61740, 32640, 32640, 53140, 31304, 31321, 61422,
  35912. 31368, 32640, 25253, 32640, 72986, 38336, 32640, 18907, 32640, 23058, 19597, 31154, 19779, 32640, 18612,
  35913. 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640, 24875,
  35914. 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822, 19438,
  35915. 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570, 19359,
  35916. 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058, 19907,
  35917. 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579, 20709,
  35918. 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186, 21310,
  35919. 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154, 22249,
  35920. 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35921. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35922. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35923. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35924. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35925. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35926. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35927. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35928. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31436, 32640, 22917, 32640, 32640, 53140, 31488, 31505,
  35929. 63455, 31552, 32640, 25253, 32640, 72986, 23911, 32640, 18907, 32640, 23058, 20233, 31154, 19779, 32640,
  35930. 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640,
  35931. 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822,
  35932. 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570,
  35933. 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058,
  35934. 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579,
  35935. 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186,
  35936. 21310, 21452, 21374, 21431, 21484, 21618, 21650, 31603, 21802, 23057, 21839, 21899, 21959, 22101, 21154,
  35937. 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35938. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35939. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35940. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35941. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35942. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35943. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35944. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35945. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31688, 32640, 61740, 27887, 32640, 57839, 22912,
  35946. 31734, 24347, 31775, 32640, 25253, 32640, 31840, 32640, 32640, 18907, 32640, 57508, 20515, 31154, 19779,
  35947. 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451,
  35948. 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193,
  35949. 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534,
  35950. 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858,
  35951. 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291,
  35952. 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126,
  35953. 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101,
  35954. 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35955. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35956. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35957. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35958. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35959. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35960. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35961. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35962. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640, 53140,
  35963. 22912, 32640, 62571, 27379, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154,
  35964. 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991,
  35965. 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106,
  35966. 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498,
  35967. 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026,
  35968. 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547,
  35969. 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084,
  35970. 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959,
  35971. 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35972. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35973. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35974. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35975. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35976. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35977. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35978. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35979. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640,
  35980. 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195,
  35981. 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051,
  35982. 53000, 32640, 32640, 25682, 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984,
  35983. 26051, 26051, 26018, 34467, 32640, 32640, 25692, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427,
  35984. 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640, 46497, 65491, 72012, 72012, 51277, 25776, 46932,
  35985. 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640, 65495, 72012, 46827, 25776, 55996, 25983, 53288,
  35986. 26051, 37187, 32640, 52315, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947,
  35987. 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461,
  35988. 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35989. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35990. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35991. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35992. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35993. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35994. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35995. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  35996. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640,
  35997. 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809,
  35998. 51195, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051,
  35999. 26051, 53000, 32640, 32640, 25682, 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983,
  36000. 25984, 26051, 26051, 26018, 34467, 32640, 32640, 25692, 32640, 68393, 72012, 72012, 33962, 25776, 25776,
  36001. 55427, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640, 32640, 65491, 72012, 72012, 51277, 25776,
  36002. 46932, 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640, 65495, 72012, 46827, 25776, 55996, 25983,
  36003. 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381,
  36004. 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912,
  36005. 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640,
  36006. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36007. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36008. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36009. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36010. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36011. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36012. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36013. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814,
  36014. 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782,
  36015. 64809, 51195, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672,
  36016. 26051, 26051, 53000, 32640, 32640, 25682, 32497, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844,
  36017. 25983, 25984, 26051, 26051, 26018, 34467, 32640, 32640, 25692, 32640, 68393, 72012, 72012, 33962, 25776,
  36018. 25776, 55427, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640, 32640, 65491, 72012, 72012, 51277,
  36019. 25776, 46932, 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640, 65495, 72012, 46827, 25776, 55996,
  36020. 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392,
  36021. 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861,
  36022. 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640,
  36023. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36024. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36025. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36026. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36027. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36028. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36029. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36030. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640,
  36031. 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347,
  36032. 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983,
  36033. 61672, 26051, 26051, 53000, 32640, 32640, 25682, 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776,
  36034. 25844, 25983, 25984, 26051, 26051, 26018, 34467, 32640, 32640, 20179, 32640, 68393, 72012, 72012, 33962,
  36035. 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640, 32640, 65491, 72012, 72012,
  36036. 51277, 25776, 46932, 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640, 65495, 72012, 46827, 25776,
  36037. 55996, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640,
  36038. 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921,
  36039. 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640,
  36040. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36041. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36042. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36043. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36044. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36045. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36046. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36047. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905,
  36048. 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 31980, 32640, 32640,
  36049. 49347, 54782, 64809, 51195, 32640, 32024, 32640, 31979, 32640, 25308, 72012, 72012, 31942, 25776, 62010,
  36050. 25983, 61672, 26051, 26051, 53000, 32640, 32640, 25682, 32640, 32640, 64131, 72012, 72012, 25809, 25776,
  36051. 25776, 25844, 25983, 25984, 26051, 26051, 26018, 34467, 32640, 32640, 25692, 32640, 68393, 72012, 72012,
  36052. 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 32640, 32640, 65491, 72012,
  36053. 72012, 51277, 25776, 46932, 39842, 25983, 53287, 26051, 26051, 70527, 32640, 32640, 65495, 72012, 46827,
  36054. 25776, 55996, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302,
  36055. 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746,
  36056. 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640,
  36057. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36058. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36059. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36060. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36061. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36062. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36063. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36064. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36065. 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640, 32640,
  36066. 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776,
  36067. 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640, 64131, 72012, 72012, 25809,
  36068. 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 32640, 32640, 68393, 72012,
  36069. 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640, 32640, 65491,
  36070. 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 32640, 32640, 65495, 72012,
  36071. 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051,
  36072. 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146,
  36073. 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640,
  36074. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36075. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36076. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36077. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36078. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36079. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36080. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36081. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36082. 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 32640, 32640,
  36083. 32640, 32640, 49347, 54782, 64809, 69771, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942,
  36084. 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640, 64131, 72012, 72012,
  36085. 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 32640, 32640, 68393,
  36086. 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640, 32640,
  36087. 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 32640, 32640, 65495,
  36088. 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286,
  36089. 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375,
  36090. 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640,
  36091. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36092. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36093. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36094. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36095. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36096. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36097. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36098. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36099. 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 41903, 32640, 25253, 32640,
  36100. 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012,
  36101. 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640, 64131, 72012,
  36102. 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 32640, 32640,
  36103. 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640,
  36104. 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 32640, 32640,
  36105. 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955,
  36106. 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860,
  36107. 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933,
  36108. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36109. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36110. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36111. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36112. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36113. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36114. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36115. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36116. 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 32012, 36567, 70299, 34240, 32640, 25253,
  36117. 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 57111, 32640, 25308, 72012,
  36118. 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640, 64131,
  36119. 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 32640,
  36120. 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640,
  36121. 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 32640,
  36122. 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776,
  36123. 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860,
  36124. 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905,
  36125. 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36126. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36127. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36128. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36129. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36130. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36131. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36132. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36133. 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 27513, 32056, 32087, 32640,
  36134. 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640, 25308,
  36135. 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640,
  36136. 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640,
  36137. 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602,
  36138. 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608,
  36139. 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378,
  36140. 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465,
  36141. 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815,
  36142. 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36143. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36144. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36145. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36146. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36147. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36148. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36149. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36150. 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240,
  36151. 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640,
  36152. 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640,
  36153. 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640,
  36154. 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051,
  36155. 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051,
  36156. 68608, 32640, 31793, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131,
  36157. 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375,
  36158. 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535,
  36159. 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36160. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36161. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36162. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36163. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36164. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36165. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36166. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36167. 32640, 32640, 32640, 32640, 32640, 32640, 32154, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299,
  36168. 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640,
  36169. 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640,
  36170. 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552,
  36171. 32640, 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051,
  36172. 26051, 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051,
  36173. 26051, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640,
  36174. 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609,
  36175. 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716,
  36176. 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36177. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36178. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36179. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36180. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36181. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36182. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36183. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36184. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32191, 32640, 61740, 32640, 32640, 53140, 32266, 32219,
  36185. 32317, 32348, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154, 19779, 32640,
  36186. 32398, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451, 32640,
  36187. 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822,
  36188. 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570,
  36189. 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058,
  36190. 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579,
  36191. 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 32449, 21030, 21062, 21094, 21084, 21126, 21186,
  36192. 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154,
  36193. 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36194. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36195. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36196. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36197. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36198. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36199. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36200. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36201. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640, 53140, 22912,
  36202. 32640, 32640, 32541, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 40482, 31154, 19779,
  36203. 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451,
  36204. 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193,
  36205. 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534,
  36206. 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858,
  36207. 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291,
  36208. 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126,
  36209. 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101,
  36210. 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36211. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36212. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36213. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36214. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36215. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36216. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36217. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36218. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32639, 61740, 32640, 32640, 53140,
  36219. 32606, 32625, 66147, 32673, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807, 31154,
  36220. 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991,
  36221. 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106,
  36222. 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498,
  36223. 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026,
  36224. 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547,
  36225. 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084,
  36226. 21126, 21186, 32724, 21452, 21374, 21431, 32813, 21618, 21650, 32920, 21802, 23057, 21839, 21899, 21959,
  36227. 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36228. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36229. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36230. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36231. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36232. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36233. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36234. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36235. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640,
  36236. 53140, 22912, 32640, 32640, 27379, 32640, 25253, 32640, 72986, 32640, 32640, 18907, 32640, 23058, 21807,
  36237. 31154, 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957,
  36238. 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733,
  36239. 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119,
  36240. 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993,
  36241. 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488,
  36242. 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094,
  36243. 21084, 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899,
  36244. 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36245. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36246. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36247. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36248. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36249. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36250. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36251. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36252. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 33014, 72814, 65242,
  36253. 23329, 65262, 33049, 33078, 33110, 33141, 72172, 33868, 38406, 33224, 33302, 35892, 33415, 33497, 33529,
  36254. 33657, 32640, 70241, 33715, 23262, 70547, 65483, 72012, 56115, 31942, 25776, 33771, 25983, 62395, 26051,
  36255. 60426, 53000, 43338, 33820, 20169, 33900, 28052, 33936, 72012, 34004, 34096, 25776, 69679, 34153, 25983,
  36256. 34209, 34305, 26051, 34381, 34413, 59316, 60982, 34567, 18580, 43988, 66280, 56105, 34613, 34671, 54769,
  36257. 57995, 34763, 50540, 69616, 34835, 44365, 69116, 72659, 27683, 51215, 45101, 34941, 55781, 57901, 25776,
  36258. 68182, 34981, 25983, 35037, 38017, 43551, 35100, 35168, 46148, 32692, 38542, 69316, 67857, 54357, 35200,
  36259. 37506, 35270, 39191, 36089, 32640, 37090, 24260, 50683, 56669, 60278, 35348, 46302, 32640, 68392, 71381,
  36260. 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 43929, 35445, 35530, 35582,
  36261. 50980, 66874, 47849, 48295, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640,
  36262. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36263. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36264. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36265. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36266. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36267. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36268. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36269. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 35651, 72814,
  36270. 32640, 32640, 53140, 35689, 35718, 35750, 35781, 32640, 25253, 32640, 32640, 32640, 32640, 42703, 63159,
  36271. 35832, 71490, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672,
  36272. 26051, 26051, 53000, 32640, 32640, 71083, 54414, 54421, 64131, 72012, 55872, 25809, 25776, 60149, 25844,
  36273. 25983, 63179, 26051, 26051, 34327, 34467, 32640, 32640, 25692, 32640, 68393, 72012, 72012, 33962, 25776,
  36274. 25776, 55427, 25983, 25983, 39566, 26051, 26051, 43098, 32640, 35952, 27144, 30726, 72012, 63213, 63138,
  36275. 25776, 69714, 35989, 25983, 42068, 36035, 26051, 36069, 32640, 32640, 65495, 72012, 46827, 25776, 55996,
  36276. 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392,
  36277. 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861,
  36278. 20456, 36134, 36191, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640,
  36279. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36280. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36281. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36282. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36283. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36284. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36285. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36286. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 64516,
  36287. 72814, 48426, 59530, 63767, 36272, 36304, 36336, 36367, 32640, 36432, 25203, 32640, 32640, 41660, 37716,
  36288. 55922, 36483, 36530, 48415, 59494, 31702, 18855, 62820, 64973, 39682, 72012, 36599, 25776, 18725, 36659,
  36289. 69934, 36699, 26051, 52493, 36750, 23246, 55732, 34581, 32640, 18679, 55301, 36783, 36820, 35485, 36918,
  36290. 36954, 37494, 37030, 64702, 65892, 37178, 34467, 32640, 37225, 65319, 32640, 68393, 72012, 37261, 33962,
  36291. 25776, 37316, 55427, 25983, 39119, 39566, 26051, 49047, 43098, 37375, 42559, 23999, 65491, 72012, 48479,
  36292. 51277, 25776, 37411, 39842, 45287, 53287, 26051, 67220, 70527, 32640, 37538, 37571, 37131, 46827, 23541,
  36293. 55996, 67894, 53288, 53572, 47622, 37618, 25915, 66600, 37659, 46843, 32872, 37796, 37836, 46302, 47046,
  36294. 68392, 23524, 65621, 25983, 37889, 41315, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921,
  36295. 43861, 37927, 37988, 38060, 47849, 36159, 34716, 26535, 44815, 38151, 26933, 32640, 32640, 32640, 32640,
  36296. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36297. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36298. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36299. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36300. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36301. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36302. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36303. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905,
  36304. 20106, 72814, 32509, 23162, 53140, 38224, 38253, 38285, 38316, 32640, 25253, 32640, 32640, 60657, 39330,
  36305. 34441, 50711, 54836, 51195, 33270, 38384, 46719, 22206, 33192, 38438, 72385, 38511, 38616, 40937, 20657,
  36306. 38673, 38705, 39528, 38892, 38940, 32640, 47380, 49323, 32640, 70823, 64131, 72012, 32968, 25809, 25776,
  36307. 45195, 25844, 25983, 46666, 26051, 26051, 58683, 38996, 32640, 59450, 25692, 27180, 22361, 39052, 64136,
  36308. 40912, 42209, 25776, 39090, 66443, 25983, 39151, 60300, 26051, 39223, 32640, 32640, 36102, 70444, 72012,
  36309. 71366, 65683, 25776, 39291, 39362, 35619, 34803, 26051, 43538, 70527, 72942, 37229, 65495, 39402, 46827,
  36310. 39434, 39492, 52767, 39560, 39598, 39731, 22659, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302,
  36311. 19837, 68392, 68106, 33972, 25983, 39769, 58918, 26609, 71375, 56493, 39511, 67952, 33375, 70146, 67746,
  36312. 39807, 39877, 27300, 39932, 39984, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640,
  36313. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36314. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36315. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36316. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36317. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36318. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36319. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36320. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36321. 31905, 22609, 72814, 27464, 30794, 40060, 40119, 40148, 40180, 40211, 40263, 40295, 40364, 40412, 40514,
  36322. 40546, 40606, 40667, 40699, 40731, 40783, 20976, 40854, 40994, 52527, 25308, 41046, 39699, 41078, 46357,
  36323. 49141, 41137, 44544, 41236, 41286, 41368, 47192, 41460, 41554, 41610, 40087, 41703, 41735, 41816, 41872,
  36324. 41968, 42030, 42100, 42250, 42282, 42373, 42458, 42490, 42522, 42554, 42591, 31571, 42679, 24113, 42735,
  36325. 42778, 42826, 42887, 59586, 42933, 43014, 20677, 52796, 43080, 37857, 50773, 19009, 50153, 72778, 68055,
  36326. 66201, 43130, 61992, 43205, 43285, 43380, 36003, 43457, 50341, 43583, 43639, 62580, 43704, 43740, 65764,
  36327. 46827, 43772, 55996, 43804, 43857, 43893, 43961, 72604, 44020, 44104, 67022, 44136, 44196, 44228, 44289,
  36328. 44397, 41399, 46788, 44452, 69369, 44513, 44648, 70208, 20438, 68896, 51376, 63626, 44257, 54317, 44622,
  36329. 67433, 55113, 55250, 49487, 51457, 67801, 44680, 44712, 34716, 38736, 44788, 26905, 26933, 32640, 32640,
  36330. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36331. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36332. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36333. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36334. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36335. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36336. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36337. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36338. 32640, 31905, 54076, 72814, 67462, 71804, 46979, 44874, 44903, 44935, 44966, 65157, 25253, 32640, 32640,
  36339. 45018, 45029, 45061, 36627, 47904, 71490, 70229, 49986, 32640, 30141, 65148, 45093, 45133, 72012, 45175,
  36340. 25776, 67154, 25983, 61672, 45240, 26051, 53000, 32640, 32640, 25682, 32640, 30614, 64131, 72012, 62187,
  36341. 25809, 25776, 34052, 25844, 25983, 58051, 26051, 26051, 68586, 34467, 32640, 32640, 25692, 49974, 68393,
  36342. 36788, 72012, 33962, 51715, 25776, 55427, 25983, 45283, 39566, 26051, 45319, 43098, 32640, 32640, 22533,
  36343. 65491, 72012, 65748, 51277, 25776, 40635, 39842, 48131, 53287, 26051, 72059, 70527, 32640, 32640, 65495,
  36344. 72012, 46827, 25776, 55996, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286,
  36345. 26051, 26195, 32640, 30913, 33383, 31947, 68516, 43425, 37193, 26609, 71375, 60465, 43860, 58860, 33375,
  36346. 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 38767, 44815, 45355, 26933, 32640,
  36347. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36348. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36349. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36350. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36351. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36352. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36353. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36354. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36355. 32640, 32640, 31905, 32640, 72814, 72990, 32640, 53140, 45461, 45480, 45512, 45543, 32640, 25253, 25880,
  36356. 32640, 32640, 32640, 49347, 54782, 64809, 65216, 32640, 32024, 32640, 29772, 32640, 25308, 72012, 72012,
  36357. 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 26944, 43348, 64131, 72012,
  36358. 72012, 45595, 25776, 25776, 45631, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 45666, 62963, 32640,
  36359. 45736, 45143, 72012, 33962, 47777, 25776, 55427, 45634, 25983, 39566, 62106, 26051, 66507, 32640, 61374,
  36360. 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 32640, 45776,
  36361. 65495, 72012, 45833, 25776, 43236, 25983, 48970, 26051, 35378, 19759, 45883, 40885, 45935, 34121, 45988,
  36362. 46059, 68691, 46114, 46509, 48784, 46180, 46232, 52911, 56583, 46294, 61320, 46334, 46389, 52972, 46541,
  36363. 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 57068, 26905, 26933,
  36364. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36365. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36366. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36367. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36368. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36369. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36370. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36371. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36372. 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 37061, 32640, 46592,
  36373. 32640, 23927, 23933, 35920, 72528, 46641, 71255, 46698, 32640, 41638, 46765, 32640, 32640, 25308, 72012,
  36374. 32982, 31942, 25812, 62010, 25983, 52465, 26051, 62071, 44572, 32640, 32640, 32640, 32640, 46875, 64131,
  36375. 72012, 72012, 46928, 25776, 25777, 25844, 25983, 25846, 26051, 26051, 48238, 66922, 32640, 32640, 32640,
  36376. 58432, 34888, 72012, 72012, 24139, 25776, 25776, 64186, 25983, 25983, 64365, 26051, 26051, 68602, 32640,
  36377. 31139, 32640, 65491, 72012, 59125, 47768, 25776, 23575, 39842, 25983, 43409, 26051, 51585, 68608, 32640,
  36378. 40326, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776,
  36379. 29955, 53286, 26051, 46302, 23989, 59115, 71381, 31947, 25983, 51580, 26788, 46560, 61892, 58181, 67203,
  36380. 61301, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905,
  36381. 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36382. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36383. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36384. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36385. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36386. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36387. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36388. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36389. 32640, 32640, 32640, 32640, 31905, 48851, 72814, 23672, 46964, 47011, 47078, 47108, 47140, 47171, 32640,
  36390. 41336, 32640, 50620, 20998, 40574, 47224, 47285, 49169, 47359, 32640, 35316, 31404, 32640, 22498, 71540,
  36391. 47426, 22395, 47485, 41998, 47553, 68243, 35005, 43487, 49590, 47654, 45801, 22675, 32476, 32285, 47707,
  36392. 67491, 67589, 47739, 47809, 47521, 53771, 47881, 39370, 54202, 70106, 63727, 47936, 58552, 32640, 49793,
  36393. 48007, 32640, 65551, 71979, 37586, 48049, 48729, 71596, 33444, 48130, 48163, 50320, 48235, 48270, 34864,
  36394. 70560, 48327, 48393, 48458, 72887, 48523, 38468, 37956, 42313, 48632, 55501, 51516, 36886, 48664, 48761,
  36395. 48816, 50855, 27414, 41840, 48883, 63268, 48941, 45429, 49017, 55015, 49079, 32640, 22725, 23734, 49111,
  36396. 51113, 69533, 55593, 49224, 46302, 49298, 68392, 71381, 31947, 25983, 51580, 58698, 26609, 49388, 58232,
  36397. 70503, 49450, 42622, 70146, 67746, 49519, 60834, 49912, 26461, 39900, 47849, 56608, 49551, 26535, 44815,
  36398. 49622, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36399. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36400. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36401. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36402. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36403. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36404. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36405. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36406. 32640, 32640, 32640, 32640, 32640, 31905, 69860, 72814, 32640, 32640, 53140, 22912, 46609, 49741, 49772,
  36407. 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640, 32640,
  36408. 25308, 72012, 57444, 31942, 38479, 62010, 25983, 49825, 26051, 53559, 44572, 32640, 32640, 32640, 32640,
  36409. 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640,
  36410. 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051,
  36411. 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051,
  36412. 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131,
  36413. 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375,
  36414. 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535,
  36415. 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36416. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36417. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36418. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36419. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36420. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36421. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36422. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36423. 32640, 32640, 32640, 32640, 32640, 32640, 31905, 59709, 72814, 32640, 32640, 53140, 22912, 36567, 70299,
  36424. 34240, 32640, 25253, 61385, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640,
  36425. 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640,
  36426. 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 55063,
  36427. 32640, 32640, 32640, 32640, 51342, 72012, 72012, 34031, 25776, 25776, 21586, 25983, 25983, 37804, 26051,
  36428. 26051, 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051,
  36429. 26051, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640,
  36430. 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609,
  36431. 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716,
  36432. 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36433. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36434. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36435. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36436. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36437. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36438. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36439. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36440. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 52831, 72814, 72305, 49953, 50018, 50050, 50069,
  36441. 50101, 50132, 70815, 25253, 24050, 32640, 72261, 50206, 50261, 50293, 50389, 50456, 50572, 49266, 32159,
  36442. 46476, 50609, 46896, 49653, 37284, 50652, 61556, 51136, 34792, 50743, 43516, 41182, 50834, 50887, 32640,
  36443. 37764, 32640, 32640, 39657, 23757, 50924, 50956, 53683, 55377, 51012, 52437, 51082, 71275, 51168, 51247,
  36444. 58552, 31456, 32640, 51318, 32640, 68393, 71632, 34909, 33962, 25776, 51408, 55427, 25983, 51489, 51571,
  36445. 26051, 51617, 51676, 60646, 71309, 32640, 65491, 66269, 72012, 47768, 51714, 36922, 67551, 25983, 53287,
  36446. 50411, 26051, 51682, 70346, 19987, 51747, 72012, 24952, 25776, 68123, 51821, 47327, 51856, 50424, 31808,
  36447. 72723, 44072, 71378, 24163, 55203, 53286, 67732, 46302, 62840, 68392, 67136, 45208, 51824, 51580, 51892,
  36448. 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 49192, 51996, 52096,
  36449. 48579, 26535, 57041, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36450. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36451. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36452. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36453. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36454. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36455. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36456. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36457. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32641, 72814, 32640, 52167, 20380, 52202,
  36458. 52231, 52263, 52294, 52373, 25253, 38352, 32640, 52375, 52359, 29926, 52407, 61167, 51195, 57599, 32024,
  36459. 25590, 52525, 32640, 52559, 51778, 52613, 52685, 43173, 52736, 25950, 43825, 49580, 44319, 53632, 52043,
  36460. 52828, 32640, 32640, 32640, 58759, 38563, 72012, 52863, 54749, 25776, 52943, 55231, 25984, 38908, 53056,
  36461. 26018, 58552, 53105, 32640, 22853, 53172, 39020, 53205, 55838, 69472, 53239, 53488, 67539, 53276, 33788,
  36462. 39566, 53320, 63643, 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983,
  36463. 53287, 26051, 26051, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187,
  36464. 53361, 32640, 72366, 71378, 53397, 57660, 53286, 53431, 46302, 32640, 68392, 71381, 47833, 35238, 66390,
  36465. 37193, 26609, 71375, 60465, 43860, 63958, 50482, 38641, 53073, 53467, 53538, 49912, 26461, 39900, 47849,
  36466. 36159, 48078, 53604, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36467. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36468. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36469. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36470. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36471. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36472. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36473. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36474. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 53715, 36751, 53803, 53858,
  36475. 53921, 53950, 53982, 54013, 68341, 65423, 54066, 22337, 73196, 54108, 54140, 54172, 54234, 54389, 39321,
  36476. 25417, 42341, 50174, 54455, 44050, 56059, 66616, 54504, 54555, 45851, 57679, 42130, 56789, 64232, 60925,
  36477. 56829, 19692, 32640, 54689, 69055, 20609, 57455, 72012, 54726, 52653, 25776, 54814, 63908, 25984, 61227,
  36478. 36498, 26018, 58552, 32640, 47394, 24383, 68318, 72870, 72012, 54868, 18707, 25776, 69705, 54929, 25983,
  36479. 71927, 54995, 26051, 43915, 55047, 31632, 29738, 32574, 55095, 55145, 55282, 55174, 55347, 55409, 55471,
  36480. 55533, 55625, 55661, 26850, 67349, 33333, 55693, 55764, 55813, 55904, 55954, 45409, 55563, 59673, 58326,
  36481. 64010, 31239, 37627, 56028, 56147, 63574, 71739, 56202, 48600, 52021, 33017, 44420, 56272, 51439, 56304,
  36482. 26558, 56379, 49469, 56435, 56525, 55629, 58860, 53658, 56557, 38796, 56640, 56760, 53746, 56861, 56918,
  36483. 47849, 36159, 34716, 35068, 57014, 26905, 57100, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36484. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36485. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36486. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36487. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36488. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36489. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36490. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36491. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 57143, 60501, 46140,
  36492. 53140, 57269, 57298, 57330, 57361, 57393, 21867, 57487, 53826, 57561, 73137, 57631, 57725, 57757, 57818,
  36493. 64532, 33845, 25743, 28903, 32640, 30718, 48491, 57871, 57933, 57965, 50507, 34177, 46420, 65902, 58083,
  36494. 44572, 34502, 27347, 47675, 69192, 32417, 27057, 58115, 45744, 58167, 58213, 58473, 58264, 36980, 26375,
  36495. 58296, 44349, 69977, 37742, 31057, 58358, 32640, 35957, 68393, 49673, 58395, 33962, 23558, 65824, 55427,
  36496. 66456, 46015, 39566, 60313, 47611, 68602, 32640, 47038, 58431, 65491, 72012, 72012, 58464, 25776, 27804,
  36497. 58505, 25983, 57693, 26051, 26051, 58542, 33253, 32640, 51913, 22383, 49691, 64312, 64327, 50524, 46027,
  36498. 71028, 38028, 53132, 32640, 21514, 49356, 67641, 68454, 61634, 65986, 49249, 32640, 68392, 71381, 31947,
  36499. 25983, 51580, 39737, 67971, 58592, 35498, 68821, 42982, 65031, 58624, 58730, 58791, 58892, 49912, 26461,
  36500. 39900, 47849, 36159, 34716, 60897, 62262, 58971, 59003, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36501. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36502. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36503. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36504. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36505. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36506. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36507. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36508. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 53024, 32640,
  36509. 59046, 59088, 59157, 59186, 59218, 59249, 26690, 25253, 32640, 62512, 59314, 32640, 21399, 45956, 59348,
  36510. 59428, 60204, 32024, 59282, 59482, 59526, 27721, 62325, 42794, 59562, 37343, 41105, 59653, 46262, 57786,
  36511. 56728, 42158, 59014, 59705, 59741, 32640, 32640, 64131, 27582, 72012, 25809, 51286, 25776, 25844, 68525,
  36512. 25984, 26051, 69412, 26018, 38086, 59766, 53173, 30453, 31873, 68393, 59807, 72012, 38182, 56458, 25776,
  36513. 67880, 68261, 25983, 39566, 61247, 26051, 68602, 40380, 32640, 32640, 65491, 72012, 59857, 47966, 60005,
  36514. 45599, 39842, 71940, 53287, 26051, 59892, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983,
  36515. 53288, 26051, 37187, 71116, 32640, 59931, 71378, 25776, 29955, 53286, 26051, 56227, 32640, 68392, 71381,
  36516. 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 36718, 59969, 24280, 60037, 60131, 43861, 49912,
  36517. 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640,
  36518. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36519. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36520. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36521. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36522. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36523. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36524. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36525. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814,
  36526. 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640, 25253, 54423, 32640, 20742, 60181, 32843, 60251,
  36527. 67710, 54291, 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672,
  36528. 26051, 26051, 44572, 32640, 29420, 32640, 32640, 32640, 64131, 72012, 72012, 60345, 25776, 25776, 60381,
  36529. 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776,
  36530. 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640, 32640, 65491, 53207, 72012, 47768,
  36531. 27763, 36922, 39842, 71874, 53287, 26051, 60418, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698,
  36532. 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 70720,
  36533. 71381, 60458, 35226, 48985, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861,
  36534. 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640,
  36535. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36536. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36537. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36538. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36539. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36540. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36541. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36542. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640,
  36543. 36240, 60497, 23383, 53140, 60533, 60561, 60593, 60624, 23405, 25467, 22160, 33169, 60689, 60747, 60715,
  36544. 60805, 60866, 60957, 32640, 36400, 61023, 26995, 32640, 33355, 55315, 59825, 61082, 65831, 61145, 47313,
  36545. 61199, 61279, 67236, 61352, 32640, 30073, 61417, 71794, 61454, 22979, 61508, 38584, 61544, 61588, 56170,
  36546. 61624, 61666, 64623, 61704, 26051, 48694, 58552, 65333, 72472, 61736, 61772, 61831, 56082, 61881, 64292,
  36547. 46200, 55981, 63076, 32888, 56329, 36998, 50357, 58842, 68602, 61924, 31336, 31217, 32949, 61962, 72012,
  36548. 54897, 52135, 36922, 43253, 54949, 53287, 62059, 62103, 54635, 69791, 32640, 71552, 72012, 20633, 25776,
  36549. 66700, 25983, 70631, 26051, 43048, 60991, 32640, 27575, 38860, 26267, 35612, 71431, 26052, 46302, 39252,
  36550. 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860, 59396, 61050, 48909, 62138, 49921,
  36551. 43861, 50802, 44756, 26873, 47849, 36159, 34716, 33560, 62235, 62294, 26933, 32640, 32640, 32640, 32640,
  36552. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36553. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36554. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36555. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36556. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36557. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36558. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36559. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 31905,
  36560. 32640, 69266, 62427, 62544, 62612, 62644, 62673, 62705, 62736, 31256, 49878, 31910, 32640, 62790, 62885,
  36561. 62917, 44164, 69556, 51644, 62949, 62995, 45696, 32640, 19278, 63027, 63108, 63211, 63245, 54342, 53506,
  36562. 63300, 61672, 63378, 63410, 44572, 63450, 21770, 63487, 58560, 32640, 57422, 68884, 61512, 63553, 47513,
  36563. 61592, 63606, 63675, 29960, 51050, 63717, 37895, 63759, 18562, 21217, 40028, 32560, 63799, 59860, 58135,
  36564. 43158, 25776, 63843, 70614, 25983, 63875, 63940, 26051, 63990, 64042, 64442, 21262, 32640, 64117, 58399,
  36565. 38848, 47768, 24174, 64168, 39842, 56347, 53287, 26051, 64218, 68608, 27898, 31520, 65495, 64264, 51931,
  36566. 42855, 67656, 26365, 64359, 39180, 64397, 32640, 22880, 64131, 71378, 25776, 29955, 53286, 26051, 56886,
  36567. 32234, 41489, 41766, 51964, 60386, 51580, 64489, 54657, 64564, 34064, 72128, 35550, 42184, 64655, 39628,
  36568. 49921, 43861, 62758, 40962, 68714, 54610, 64734, 36847, 26535, 44815, 26905, 26933, 32640, 32640, 32640,
  36569. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36570. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36571. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36572. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36573. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36574. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36575. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36576. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36577. 31905, 32640, 25270, 32640, 23111, 32122, 64856, 64887, 64919, 64950, 31389, 65005, 27232, 34519, 65063,
  36578. 65120, 65088, 61113, 65189, 65294, 65365, 65397, 32640, 65455, 65527, 65583, 65653, 65730, 65796, 42647,
  36579. 52704, 58025, 65863, 65934, 65966, 66033, 64072, 66099, 26683, 30564, 66131, 66179, 66246, 41522, 66312,
  36580. 64765, 26100, 66344, 66422, 62027, 63346, 66488, 48098, 66539, 38119, 40439, 30690, 24714, 66648, 46809,
  36581. 22991, 67082, 66680, 47975, 66732, 66764, 58510, 66819, 66851, 26304, 66906, 66954, 31272, 32640, 67000,
  36582. 67054, 67114, 21544, 34639, 21568, 67186, 67268, 67325, 67402, 54264, 43607, 48017, 34273, 42426, 67583,
  36583. 30935, 67621, 41784, 67688, 48203, 67778, 64824, 41671, 20315, 24236, 67833, 44481, 37470, 67926, 59378,
  36584. 68003, 32640, 68087, 68155, 34696, 68214, 39952, 68293, 68373, 68425, 68486, 66787, 35862, 33375, 70146,
  36585. 67746, 49921, 43861, 49912, 58817, 68777, 68557, 68640, 68746, 58655, 44815, 68853, 26933, 32640, 32640,
  36586. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36587. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36588. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36589. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36590. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36591. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36592. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36593. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36594. 32640, 31905, 32640, 64085, 32640, 48353, 53140, 68928, 68957, 68989, 69020, 32640, 27125, 27632, 30788,
  36595. 27143, 32640, 31656, 64595, 69087, 69148, 32640, 32024, 32640, 69224, 32640, 49895, 69298, 39058, 69348,
  36596. 25776, 49418, 25983, 70024, 69401, 45323, 46448, 24757, 70970, 32640, 27865, 31743, 52581, 61849, 69444,
  36597. 69504, 54523, 54583, 69588, 33465, 69648, 59899, 33588, 69746, 58552, 69823, 32640, 32640, 69855, 38964,
  36598. 72012, 72012, 65611, 69892, 25776, 72113, 69928, 25983, 39566, 69966, 26051, 41254, 35657, 32640, 32640,
  36599. 61476, 72012, 72012, 62354, 25776, 36922, 70009, 25983, 26418, 26051, 26051, 34349, 32640, 18845, 26622,
  36600. 72012, 27075, 25776, 39460, 70056, 67293, 70094, 41204, 31858, 32640, 64131, 71378, 25776, 29955, 53286,
  36601. 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 45386, 70138, 70178, 58860, 33375,
  36602. 70146, 67746, 49921, 43861, 49912, 26461, 46082, 68666, 70273, 34716, 26535, 44842, 26905, 26933, 32640,
  36603. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36604. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36605. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36606. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36607. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36608. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36609. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36610. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36611. 32640, 32640, 31905, 32640, 22217, 68030, 66060, 33739, 70331, 54472, 70378, 70409, 32640, 25253, 32640,
  36612. 32640, 32640, 32640, 19302, 70476, 56692, 51195, 59775, 43315, 32640, 32640, 27647, 25308, 37113, 62203,
  36613. 70592, 53244, 62010, 70663, 47583, 56714, 33625, 44572, 32640, 32640, 28000, 32640, 29763, 64131, 55855,
  36614. 72012, 25809, 51949, 25776, 25844, 56967, 25984, 26051, 33611, 26018, 58552, 32640, 32640, 32640, 32640,
  36615. 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640,
  36616. 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051, 26051, 68608, 50577, 32640,
  36617. 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 25506, 32640, 64131, 71378, 25776, 29955,
  36618. 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 70701, 71375, 60465, 43860, 58860,
  36619. 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933,
  36620. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36621. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36622. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36623. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36624. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36625. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36626. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36627. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36628. 32640, 32640, 32640, 31905, 32640, 59056, 32640, 70752, 70788, 70855, 70884, 70916, 70947, 32640, 25253,
  36629. 32640, 32640, 32640, 32640, 41578, 49709, 71012, 71060, 32640, 32024, 32640, 32640, 71115, 25308, 72012,
  36630. 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640, 32640, 32640, 64131,
  36631. 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640, 38108,
  36632. 32640, 24932, 72012, 72012, 52641, 25776, 25776, 71858, 25983, 25983, 43032, 26051, 26051, 68602, 32640,
  36633. 71148, 32640, 65491, 51789, 34949, 47768, 56478, 42901, 39842, 71181, 63325, 63418, 36037, 68608, 32640,
  36634. 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378, 25776,
  36635. 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465, 43860,
  36636. 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815, 26905,
  36637. 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36638. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36639. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36640. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36641. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36642. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36643. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36644. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36645. 32640, 32640, 32640, 32640, 32154, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 34240, 32640,
  36646. 25640, 43672, 32640, 22790, 58939, 37441, 71228, 41160, 51195, 32640, 22183, 71515, 71307, 32640, 25308,
  36647. 72012, 71341, 31942, 35465, 71413, 36667, 59621, 26051, 71463, 42401, 32640, 32640, 32640, 32640, 32640,
  36648. 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552, 32640, 32640,
  36649. 41936, 32640, 68393, 66214, 72012, 71584, 38192, 25776, 42053, 70669, 25983, 39566, 39775, 26051, 68602,
  36650. 35405, 32640, 32640, 65491, 71628, 72012, 48552, 25776, 36922, 26149, 25983, 53287, 71664, 26051, 68608,
  36651. 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640, 64131, 71378,
  36652. 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609, 71375, 60465,
  36653. 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535, 44815,
  36654. 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36655. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36656. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36657. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36658. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36659. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36660. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36661. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36662. 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 22912, 36567, 70299, 37690,
  36663. 32640, 25253, 66067, 32640, 32640, 32640, 71710, 26739, 42964, 71771, 20325, 32024, 32640, 32640, 32640,
  36664. 27283, 72012, 59937, 31942, 25776, 52893, 25983, 56982, 26051, 51860, 44572, 23321, 32640, 32640, 37539,
  36665. 32640, 38825, 72013, 72012, 71836, 53399, 25776, 71906, 39845, 25984, 71678, 53435, 26018, 58552, 30134,
  36666. 32640, 32640, 32640, 68393, 71972, 72012, 63054, 52123, 25776, 62376, 48188, 25983, 24297, 36872, 26051,
  36667. 68602, 32640, 32640, 33904, 65491, 72012, 72011, 47768, 42218, 36922, 39842, 71196, 53287, 26051, 72045,
  36668. 68608, 32640, 48843, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 45251, 32640, 34258, 23504,
  36669. 63811, 25776, 68806, 63685, 26051, 46302, 23041, 68392, 72091, 44738, 54963, 34731, 37193, 26609, 71375,
  36670. 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716, 26535,
  36671. 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36672. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36673. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36674. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36675. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36676. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36677. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36678. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36679. 32640, 32640, 32640, 32640, 32640, 32640, 31905, 32640, 72814, 32640, 32640, 53140, 72160, 36567, 70299,
  36680. 34240, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 51195, 32640, 32024, 32640, 32640,
  36681. 32640, 25308, 72012, 72012, 31942, 25776, 62010, 25983, 61672, 26051, 26051, 44572, 32640, 32640, 32640,
  36682. 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984, 26051, 26051, 26018, 58552,
  36683. 32640, 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427, 25983, 25983, 39566, 26051,
  36684. 26051, 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922, 39842, 25983, 53287, 26051,
  36685. 26051, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288, 26051, 37187, 32640, 32640,
  36686. 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947, 25983, 51580, 37193, 26609,
  36687. 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461, 39900, 47849, 36159, 34716,
  36688. 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36689. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36690. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36691. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36692. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36693. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36694. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36695. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36696. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 72268, 72234, 40231, 72204, 72300, 72337,
  36697. 72417, 72449, 32640, 25253, 71149, 72986, 32640, 32640, 22011, 19703, 24646, 21807, 31154, 19779, 32640,
  36698. 18612, 18649, 18757, 18789, 18959, 21985, 22069, 72504, 22057, 18887, 18787, 18957, 18991, 36451, 32640,
  36699. 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193, 40822,
  36700. 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534, 19570,
  36701. 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858, 20058,
  36702. 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291, 20579,
  36703. 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126, 21186,
  36704. 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101, 21154,
  36705. 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36706. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36707. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36708. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36709. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36710. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36711. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36712. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36713. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 70431, 53140, 72560,
  36714. 72589, 60219, 72636, 32640, 25253, 32640, 72986, 50892, 50890, 18907, 32640, 40751, 21807, 31154, 19779,
  36715. 32640, 18612, 18649, 18757, 18789, 18959, 22037, 22069, 18821, 22057, 18887, 18787, 18957, 18991, 36451,
  36716. 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106, 19193,
  36717. 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498, 19534,
  36718. 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026, 30858,
  36719. 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547, 20291,
  36720. 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084, 21126,
  36721. 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959, 22101,
  36722. 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36723. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36724. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36725. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36726. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36727. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36728. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36729. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36730. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61930, 32640, 32640, 19846,
  36731. 72691, 72708, 30629, 72755, 32640, 25253, 32640, 72810, 59270, 52170, 18907, 32640, 23058, 21807, 31154,
  36732. 19779, 32640, 18612, 18649, 18757, 18789, 18959, 22311, 22069, 72846, 22057, 18887, 18787, 18957, 18991,
  36733. 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074, 46733, 19106,
  36734. 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538, 25119, 19498,
  36735. 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851, 30993, 20026,
  36736. 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518, 20488, 20547,
  36737. 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062, 21094, 21084,
  36738. 21126, 21186, 21310, 21452, 21374, 21431, 21484, 21618, 21650, 21741, 21802, 23057, 21839, 21899, 21959,
  36739. 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36740. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36741. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36742. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36743. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36744. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36745. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36746. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36747. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 22530, 32640, 61740, 32640, 32640,
  36748. 53140, 22912, 32640, 32640, 72919, 32640, 25253, 32640, 32640, 32640, 32640, 49347, 54782, 64809, 35297,
  36749. 32640, 32024, 32640, 32640, 32640, 25308, 72012, 72012, 48724, 25776, 59604, 25983, 61672, 26051, 26051,
  36750. 44572, 32640, 32640, 32640, 32640, 32640, 64131, 72012, 72012, 25809, 25776, 25776, 25844, 25983, 25984,
  36751. 26051, 26051, 26018, 58552, 32640, 32640, 32640, 32640, 68393, 72012, 72012, 33962, 25776, 25776, 55427,
  36752. 25983, 25983, 39566, 26051, 26051, 68602, 32640, 32640, 32640, 65491, 72012, 72012, 47768, 25776, 36922,
  36753. 39842, 25983, 53287, 26051, 26051, 68608, 32640, 32640, 65495, 72012, 51360, 25776, 65698, 25983, 53288,
  36754. 26051, 37187, 32640, 32640, 64131, 71378, 25776, 29955, 53286, 26051, 46302, 32640, 68392, 71381, 31947,
  36755. 25983, 51580, 37193, 26609, 71375, 60465, 43860, 58860, 33375, 70146, 67746, 49921, 43861, 49912, 26461,
  36756. 39900, 47849, 36159, 34716, 26535, 44815, 26905, 26933, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36757. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36758. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36759. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36760. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36761. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36762. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36763. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36764. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36765. 34485, 32640, 23212, 23229, 52327, 72974, 32640, 32640, 32640, 72986, 32640, 32640, 18907, 32640, 23058,
  36766. 21807, 31154, 43659, 32640, 18612, 18649, 18757, 18789, 18959, 21985, 22069, 72504, 22057, 18887, 18787,
  36767. 18957, 18991, 36451, 32640, 24875, 69179, 19041, 62458, 19134, 40819, 21341, 19073, 46732, 21342, 19074,
  36768. 46733, 19106, 19193, 40822, 19438, 66570, 19251, 21244, 41014, 19334, 19366, 19398, 19470, 19502, 19538,
  36769. 25119, 19498, 19534, 19570, 19359, 19629, 19422, 19661, 19735, 19811, 19878, 19910, 19942, 20019, 30851,
  36770. 30993, 20026, 30858, 20058, 19907, 21927, 19969, 20090, 20138, 20211, 20265, 20357, 63521, 20412, 63518,
  36771. 20488, 20547, 20291, 20579, 20709, 20774, 20821, 20870, 20853, 20885, 20789, 20917, 20949, 21030, 21062,
  36772. 21094, 21084, 21126, 21186, 73022, 21452, 21374, 21431, 73111, 21618, 21650, 73169, 21802, 23057, 21839,
  36773. 21899, 21959, 22101, 21154, 22249, 22281, 22427, 22459, 22487, 32640, 32640, 32640, 32640, 32640, 32640,
  36774. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36775. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36776. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36777. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36778. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36779. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36780. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640,
  36781. 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 32640, 1, 24578, 3, 0, 0, 0,
  36782. 0, 0, 0, 0, 180523, 180523, 180523, 180523, 0, 188716, 188716, 188716, 180523, 180523, 188716, 188716,
  36783. 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36784. 188716, 0, 188716, 180523, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36785. 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36786. 188716, 188716, 139264, 147456, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36787. 131072, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36788. 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716, 188716,
  36789. 188716, 188716, 188716, 188716, 188716, 188716, 188716, 367, 188716, 180523, 188716, 188716, 1, 24578, 3,
  36790. 0, 0, 4366336, 0, 0, 0, 180523, 188716, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36791. 0, 0, 0, 0, 2289, 0, 2290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2368, 2369, 0, 0, 2371, 0, 0, 0,
  36792. 0, 2376, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4276224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36793. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 307, 0, 0, 5767168, 0, 0, 0, 4857856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36794. 0, 0, 5259264, 0, 5414912, 5447680, 0, 0, 5562368, 5636096, 5685248, 0, 5750784, 5873664, 0, 0, 0, 0, 0,
  36795. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1877, 521, 521, 521, 521, 521, 521, 521, 521,
  36796. 521, 1889, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 59821, 57886, 59823, 57886,
  36797. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  36798. 50657, 58754, 977, 57909, 57909, 58853, 57909, 57909, 58857, 57909, 57909, 57909, 57909, 57909, 57909,
  36799. 57909, 57909, 58871, 0, 0, 5636096, 5873664, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5873664, 0, 0, 0,
  36800. 0, 0, 0, 0, 5480448, 4358144, 4358144, 4358144, 4358144, 4857856, 4874240, 4358144, 4358144, 4358144,
  36801. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5259264,
  36802. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5414912, 4358144, 5447680,
  36803. 4358144, 5464064, 4358144, 5480448, 5562368, 4358144, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36804. 0, 977, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36805. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1262, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5873664, 0, 0, 0, 0, 0, 0,
  36806. 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144,
  36807. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36808. 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1140, 0, 0, 1145, 0,
  36809. 4857856, 4874240, 0, 0, 4923392, 5562368, 4358144, 4358144, 4358144, 5636096, 4358144, 5685248, 4358144,
  36810. 4358144, 5750784, 4358144, 4358144, 4358144, 4358144, 4358144, 5873664, 4358144, 4358144, 4358144,
  36811. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6275072, 4358144, 4358144,
  36812. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4923392, 4358144,
  36813. 4358144, 4358144, 4358144, 4358144, 0, 4923392, 0, 0, 0, 0, 4366336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36814. 0, 0, 0, 2755, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2766, 0, 0, 0, 0, 0, 0, 4825088, 0, 0, 5177344, 0, 0,
  36815. 0, 0, 5701632, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5808128, 0, 0, 0, 0, 4792320, 4833280, 0, 0, 5701632, 0,
  36816. 5242880, 0, 0, 0, 0, 0, 0, 0, 5341184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5627904, 5652480, 0, 5701632,
  36817. 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4825088, 4358144, 4358144, 4358144, 4358144, 4358144,
  36818. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36819. 4358144, 4358144, 4358144, 4358144, 5177344, 4358144, 4358144, 4358144, 4358144, 4358144, 5242880,
  36820. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5341184, 4358144, 4358144, 4358144,
  36821. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5627904, 5652480,
  36822. 4358144, 5701632, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36823. 4358144, 4358144, 483328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 4923392,
  36824. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5341184, 4358144, 4358144, 4358144, 4358144,
  36825. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5627904, 5652480, 4358144,
  36826. 5701632, 4358144, 4358144, 5808128, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36827. 4358144, 4358144, 4358144, 4358144, 1051, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4857856, 4874240,
  36828. 0, 0, 4923392, 0, 0, 6422528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5619712, 0, 0, 0, 0, 0, 0, 0, 5726208,
  36829. 5758976, 0, 0, 5791744, 0, 0, 0, 0, 0, 0, 0, 1151, 1278, 0, 0, 0, 0, 0, 0, 1285, 0, 0, 0, 0, 0, 0, 0,
  36830. 1290, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 848, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  36831. 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 0, 6479872, 0, 0, 0, 0, 0, 0, 4358144, 4358144,
  36832. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4931584, 4939776, 4358144,
  36833. 4358144, 4358144, 4358144, 4358144, 4358144, 5054464, 4358144, 4358144, 4358144, 4358144, 4358144,
  36834. 4358144, 4358144, 4358144, 5210112, 4358144, 4358144, 4358144, 4358144, 5292032, 4358144, 4358144,
  36835. 4358144, 4358144, 5365760, 4358144, 4358144, 4358144, 5455872, 4358144, 4358144, 4358144, 4358144,
  36836. 4358144, 5554176, 5570560, 5578752, 5619712, 5668864, 4358144, 4358144, 4358144, 5791744, 5816320,
  36837. 4358144, 5857280, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36838. 4358144, 4358144, 4358144, 4358144, 6119424, 4358144, 6168576, 4358144, 4358144, 4358144, 4358144,
  36839. 6242304, 4358144, 6291456, 4358144, 6316032, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36840. 4358144, 4358144, 4358144, 6463488, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0,
  36841. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4931584, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144,
  36842. 4358144, 6463488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4931584, 4939776, 0, 0, 0, 0, 0, 0,
  36843. 5054464, 0, 0, 0, 0, 0, 0, 0, 0, 5210112, 0, 0, 0, 0, 5292032, 0, 0, 0, 0, 5365760, 0, 0, 0, 5455872, 0,
  36844. 0, 0, 0, 0, 5554176, 5570560, 5578752, 5619712, 5668864, 0, 5578752, 5619712, 5668864, 0, 0, 0, 5791744,
  36845. 5816320, 0, 5857280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6119424, 0, 6168576, 0, 0, 0, 0, 0, 6242304,
  36846. 0, 6291456, 0, 6316032, 0, 6291456, 0, 6316032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6463488, 4358144, 4358144,
  36847. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4931584, 4939776,
  36848. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 491520,
  36849. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 4923392, 5578752, 5619712, 5668864,
  36850. 4358144, 4358144, 4358144, 5791744, 5816320, 4358144, 5857280, 4358144, 4358144, 4358144, 4358144,
  36851. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6119424, 4358144,
  36852. 6168576, 4358144, 4358144, 4358144, 4358144, 4358144, 6242304, 4956160, 4964352, 0, 0, 0, 0, 0, 0, 0, 0,
  36853. 0, 0, 5218304, 0, 0, 0, 0, 5799936, 0, 5881856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6373376, 6389760, 0, 0, 0, 0,
  36854. 0, 1758, 0, 0, 1761, 0, 1763, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 977, 0, 0, 0,
  36855. 0, 0, 0, 0, 0, 0, 0, 0, 6488064, 6103040, 0, 0, 0, 0, 0, 6184960, 5316608, 0, 0, 5644288, 0, 0, 0, 0, 0,
  36856. 0, 0, 0, 0, 0, 6217728, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3384, 0, 0, 0, 3388, 0, 0, 0, 0, 0, 3394, 0, 0, 0, 0,
  36857. 0, 0, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36858. 5390336, 5308416, 5488640, 0, 0, 5070848, 5431296, 0, 6430720, 0, 0, 5160960, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36859. 0, 0, 4784128, 0, 0, 0, 0, 0, 0, 0, 0, 3623, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36860. 0, 0, 0, 0, 2359296, 417, 417, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6283264, 6332416, 0, 0, 0, 5881856, 0, 5382144,
  36861. 0, 0, 0, 0, 0, 0, 6266880, 4784128, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36862. 4358144, 4915200, 4358144, 4956160, 4972544, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36863. 5070848, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5218304, 4358144, 5267456,
  36864. 4358144, 4358144, 5308416, 5316608, 4358144, 4358144, 4358144, 5431296, 4358144, 5488640, 4358144,
  36865. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5799936, 4358144, 4358144, 5881856,
  36866. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6103040, 4358144,
  36867. 4358144, 4358144, 6184960, 4358144, 4358144, 6283264, 4358144, 4358144, 6332416, 4358144, 4358144,
  36868. 4358144, 6389760, 4358144, 4358144, 6430720, 6438912, 4358144, 4358144, 4358144, 6266880, 6488064, 0, 0,
  36869. 0, 6266880, 6488064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3149, 0, 0, 0, 0, 3154, 0, 0, 0, 0, 0,
  36870. 0, 0, 0, 0, 0, 0, 4358144, 6430720, 6438912, 0, 0, 0, 0, 0, 0, 4784128, 0, 0, 0, 4849664, 0, 0, 0, 0, 0,
  36871. 4915200, 0, 4956160, 4972544, 0, 0, 0, 0, 0, 0, 5070848, 0, 0, 0, 0, 0, 0, 0, 5218304, 0, 0, 6103040, 0,
  36872. 0, 0, 6184960, 0, 0, 0, 6283264, 0, 0, 6332416, 0, 0, 0, 6389760, 0, 0, 6430720, 6438912, 4784128,
  36873. 4358144, 4358144, 4358144, 4849664, 4358144, 4358144, 4358144, 4358144, 4358144, 4915200, 0, 5660672,
  36874. 5718016, 0, 5865472, 0, 0, 6037504, 0, 0, 6078464, 0, 0, 6340608, 0, 6455296, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36875. 0, 0, 0, 0, 0, 0, 0, 325, 326, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5472256, 0, 0, 0,
  36876. 6209536, 0, 0, 0, 0, 6176768, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4898816, 0, 5709824, 0, 0, 0, 0,
  36877. 0, 1790, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1806, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2348,
  36878. 0, 0, 0, 0, 0, 0, 0, 0, 5283840, 0, 0, 0, 0, 5251072, 0, 6414336, 5832704, 0, 5955584, 0, 0, 4358144,
  36879. 4358144, 4841472, 4358144, 4358144, 4358144, 4898816, 4358144, 4358144, 4358144, 4358144, 4358144,
  36880. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 368640, 0, 0, 0, 0, 0, 0,
  36881. 4857856, 4874240, 0, 0, 4923392, 4358144, 5111808, 4358144, 4358144, 4358144, 4358144, 4358144, 5283840,
  36882. 4358144, 4358144, 4358144, 4358144, 5472256, 5521408, 4358144, 4358144, 4358144, 5595136, 5709824,
  36883. 5718016, 4358144, 5824512, 5865472, 4358144, 4358144, 5922816, 4358144, 4358144, 6021120, 4358144,
  36884. 6037504, 4358144, 4358144, 6078464, 6111232, 4358144, 6176768, 6209536, 4358144, 6234112, 4358144,
  36885. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0,
  36886. 0, 3408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1172, 0, 0, 0, 0, 0, 0, 0, 0,
  36887. 0, 4358144, 6078464, 6111232, 4358144, 6176768, 6209536, 6234112, 4358144, 4358144, 4358144, 4358144,
  36888. 4358144, 4358144, 4358144, 0, 0, 0, 0, 4841472, 0, 0, 0, 4898816, 0, 0, 0, 0, 0, 0, 0, 0, 0, 340, 0, 0, 0,
  36889. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388, 0, 139264, 147456, 0, 0, 0, 0, 0, 6037504, 0, 0, 6078464, 6111232, 0,
  36890. 6176768, 6209536, 0, 6234112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4841472, 0, 0, 0, 4898816, 0, 0, 0, 0, 0,
  36891. 0, 0, 0, 3773, 0, 3627, 3775, 0, 0, 3778, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521,
  36892. 521, 521, 521, 4024, 521, 4026, 521, 521, 4028, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0,
  36893. 6021120, 0, 6037504, 0, 0, 6078464, 6111232, 0, 6176768, 6209536, 0, 6234112, 0, 0, 0, 0, 0, 0, 0,
  36894. 4358144, 4358144, 4841472, 4358144, 4358144, 4358144, 4898816, 4358144, 4358144, 4358144, 4358144,
  36895. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 499712, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36896. 0, 0, 0, 4857856, 4874240, 0, 0, 4923392, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 5111808,
  36897. 4358144, 4358144, 4358144, 4358144, 4358144, 5283840, 4358144, 4358144, 4358144, 4358144, 5472256,
  36898. 5521408, 4358144, 4358144, 4358144, 4358144, 5595136, 5709824, 5718016, 4358144, 5824512, 5865472,
  36899. 4358144, 4358144, 5922816, 0, 5029888, 5038080, 0, 0, 5103616, 5201920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36900. 0, 0, 6406144, 5357568, 0, 5505024, 0, 0, 0, 0, 0, 5890048, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521,
  36901. 521, 521, 521, 1873, 521, 521, 521, 521, 521, 521, 521, 521, 1884, 521, 521, 521, 521, 521, 521, 521, 521,
  36902. 521, 3216, 521, 521, 521, 521, 0, 0, 57886, 57886, 57886, 57886, 57886, 60569, 57886, 60570, 57886, 57886,
  36903. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58842, 57886, 57886, 57886, 57886, 50657, 58754, 977,
  36904. 57909, 57909, 58854, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  36905. 57909, 59962, 59963, 57909, 57909, 57909, 57909, 57909, 57909, 59970, 57909, 57909, 57909, 57909, 57909,
  36906. 57909, 57909, 57909, 57909, 57909, 0, 6160384, 0, 5095424, 5349376, 0, 5275648, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36907. 0, 0, 5947392, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36908. 0, 0, 0, 787, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6471680, 0, 0, 0, 4358144, 4358144, 4358144, 4358144,
  36909. 4358144, 4358144, 4358144, 4358144, 4997120, 4358144, 4358144, 5038080, 4358144, 4358144, 4358144,
  36910. 5095424, 5103616, 4358144, 4358144, 5201920, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36911. 4358144, 4358144, 4358144, 4358144, 4358144, 5890048, 4358144, 4358144, 4358144, 6029312, 4358144,
  36912. 4358144, 4358144, 4358144, 6160384, 4358144, 4358144, 4358144, 4358144, 5890048, 4358144, 4358144,
  36913. 4358144, 6029312, 4358144, 4358144, 4358144, 4358144, 6160384, 4358144, 4358144, 4358144, 4358144,
  36914. 4358144, 4358144, 6406144, 0, 0, 0, 0, 0, 0, 0, 0, 4997120, 0, 0, 5038080, 0, 0, 0, 0, 6406144, 0, 0, 0,
  36915. 0, 0, 0, 0, 0, 4997120, 0, 0, 5038080, 0, 0, 0, 5095424, 5103616, 0, 0, 5201920, 0, 0, 0, 0, 0, 0, 0, 0,
  36916. 0, 0, 0, 5890048, 0, 0, 0, 6029312, 0, 0, 0, 0, 6160384, 0, 0, 0, 0, 0, 0, 0, 6406144, 4358144, 4358144,
  36917. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4997120, 4358144, 4358144, 4358144, 4358144,
  36918. 4358144, 4358144, 4358144, 6406144, 4358144, 4358144, 4358144, 0, 0, 0, 4890624, 0, 0, 0, 0, 0, 0, 0, 0,
  36919. 0, 5898240, 5963776, 0, 0, 6193152, 0, 0, 5406720, 6397952, 5300224, 5234688, 5423104, 0, 0, 0, 0,
  36920. 5988352, 0, 0, 6135808, 6307840, 0, 5996544, 4800512, 0, 6356992, 0, 0, 0, 5496832, 0, 0, 0, 0, 0,
  36921. 5611520, 0, 0, 0, 0, 0, 0, 0, 1187, 0, 0, 1190, 1191, 0, 0, 0, 0, 1195, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0,
  36922. 0, 0, 0, 0, 0, 782, 0, 0, 0, 0, 0, 0, 0, 786, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 801, 4947968, 5021696,
  36923. 5529600, 0, 0, 5169152, 0, 0, 0, 4800512, 4808704, 4358144, 4358144, 4890624, 4358144, 4947968, 4358144,
  36924. 4358144, 4358144, 5046272, 4358144, 4358144, 4358144, 4358144, 5185536, 4358144, 5234688, 5300224,
  36925. 4358144, 4358144, 5406720, 5529600, 4358144, 4358144, 4358144, 5898240, 4358144, 4358144, 4358144,
  36926. 4358144, 4358144, 4358144, 4358144, 6307840, 4358144, 4358144, 6356992, 6381568, 6397952, 4800512,
  36927. 4808704, 0, 0, 4890624, 0, 4947968, 0, 0, 0, 5046272, 0, 0, 0, 0, 5185536, 0, 5234688, 5300224, 0, 0,
  36928. 5406720, 5529600, 0, 0, 0, 0, 5898240, 0, 0, 0, 0, 0, 0, 0, 0, 6307840, 0, 0, 6356992, 6381568, 6397952,
  36929. 4800512, 4808704, 0, 0, 4890624, 0, 0, 6356992, 6381568, 6397952, 4800512, 4808704, 4358144, 4358144,
  36930. 4890624, 4358144, 4947968, 4358144, 4358144, 4358144, 5046272, 4358144, 4358144, 4358144, 4358144,
  36931. 5185536, 4358144, 5234688, 5300224, 4358144, 4358144, 5406720, 5529600, 4358144, 4358144, 4358144,
  36932. 4358144, 4358144, 4358144, 4358144, 4907008, 0, 5079040, 6094848, 0, 0, 0, 4358144, 4907008, 4358144,
  36933. 5079040, 4358144, 5226496, 4358144, 5742592, 4358144, 4358144, 4358144, 6094848, 0, 4907008, 0, 5079040,
  36934. 0, 5226496, 5898240, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6307840,
  36935. 4358144, 4358144, 6356992, 6381568, 6397952, 5021696, 4358144, 4358144, 5021696, 0, 0, 0, 4980736, 0, 0,
  36936. 0, 0, 0, 5373952, 5734400, 6045696, 0, 0, 0, 0, 0, 2306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36937. 0, 0, 0, 0, 2290, 0, 0, 0, 0, 0, 0, 0, 6152192, 0, 0, 0, 6316032, 0, 0, 0, 0, 5816320, 6291456, 0, 0, 0,
  36938. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2778, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2803, 0, 0, 0,
  36939. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6258688, 6447104, 0, 0, 6127616, 0, 6348800, 5906432, 0, 5537792,
  36940. 3627, 0, 0, 0, 0, 5939200, 0, 0, 5677056, 6365184, 4866048, 0, 6070272, 5545984, 5152768, 0, 0, 6144000,
  36941. 4358144, 4866048, 4882432, 4358144, 0, 0, 0, 0, 0, 4825088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36942. 0, 0, 0, 0, 0, 5177344, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5324800, 5373952, 5537792, 5545984, 5586944, 5734400,
  36943. 5971968, 0, 6045696, 0, 6070272, 0, 0, 0, 0, 6348800, 0, 4866048, 4882432, 0, 4980736, 0, 0, 0, 0, 0, 0,
  36944. 0, 0, 521, 831, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 877, 521, 521, 521, 521, 895, 521,
  36945. 521, 57886, 57886, 58249, 0, 5324800, 5373952, 5537792, 5545984, 5586944, 5734400, 5971968, 0, 6045696, 0,
  36946. 6070272, 0, 0, 0, 0, 6348800, 4358144, 4866048, 4882432, 4358144, 4980736, 4358144, 4358144, 4358144,
  36947. 4358144, 4358144, 4358144, 4358144, 4358144, 5324800, 5373952, 5537792, 5545984, 5734400, 5971968,
  36948. 4358144, 6045696, 4358144, 6070272, 4358144, 4358144, 4358144, 6348800, 0, 4866048, 4882432, 0, 4980736,
  36949. 0, 0, 0, 0, 5537792, 5545984, 5586944, 5734400, 5971968, 4358144, 6045696, 4358144, 6070272, 4358144,
  36950. 4358144, 4358144, 4358144, 6348800, 4358144, 6144000, 0, 6144000, 0, 4988928, 5005312, 0, 0, 0, 0,
  36951. 5775360, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 3441, 521, 521, 521, 521, 521,
  36952. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3454, 521, 521, 521, 0, 0, 0, 0, 0, 0, 57886,
  36953. 57886, 60242, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60250, 57886,
  36954. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60293, 57886, 57886, 57886, 60296, 60297, 57886,
  36955. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909,
  36956. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59917, 57909, 57909, 57909, 57909, 57909,
  36957. 57909, 57909, 5693440, 0, 6496256, 5144576, 5136384, 0, 5914624, 4358144, 4358144, 5005312, 4358144,
  36958. 4358144, 4358144, 5120000, 5136384, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36959. 4358144, 4358144, 6324224, 0, 0, 5005312, 0, 0, 0, 5120000, 5136384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36960. 6324224, 0, 0, 5005312, 0, 0, 0, 5120000, 5136384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6324224, 4358144, 0, 0,
  36961. 900, 900, 900, 4825988, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
  36962. 900, 900, 900, 900, 5178244, 900, 900, 900, 900, 900, 5219204, 900, 5268356, 900, 900, 5309316, 5317508,
  36963. 900, 900, 900, 5432196, 900, 5489540, 900, 900, 900, 900, 900, 900, 900, 900, 900, 5800836, 900, 900,
  36964. 5882756, 900, 4358144, 5005312, 4358144, 4358144, 4358144, 5120000, 5136384, 4358144, 4358144, 4358144,
  36965. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6324224, 5914624, 5914624, 0, 0, 0, 0, 0,
  36966. 5513216, 5783552, 0, 3627, 0, 0, 0, 0, 0, 0, 1759, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1772, 0, 1774, 0,
  36967. 0, 0, 1778, 0, 0, 0, 1782, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36968. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36969. 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 4923392, 0, 5013504, 0, 0, 6053888, 0, 0, 0, 0, 6012928, 4358144,
  36970. 4358144, 5013504, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36971. 6053888, 4358144, 4358144, 0, 0, 5013504, 0, 0, 0, 0, 0, 0, 685, 0, 0, 0, 0, 0, 0, 692, 367, 367, 367, 0,
  36972. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 705, 0, 0, 0, 0, 0, 0, 0, 0, 6053888, 0, 0, 0, 0, 0, 5013504, 0, 0, 0, 0, 0,
  36973. 0, 0, 0, 0, 6053888, 0, 0, 0, 4358144, 4358144, 5013504, 4358144, 4358144, 4358144, 4358144, 4358144,
  36974. 4358144, 4358144, 5799936, 4358144, 4358144, 5881856, 4358144, 4358144, 4358144, 4358144, 4358144,
  36975. 4358144, 4358144, 4358144, 4358144, 6103040, 4358144, 4358144, 4358144, 6184960, 4358144, 4358144,
  36976. 4358144, 6283264, 4358144, 4358144, 6332416, 4358144, 4358144, 4358144, 4358144, 4358144, 6053888,
  36977. 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 5193728,
  36978. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 4857856, 4874240, 0,
  36979. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5259264, 0, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144,
  36980. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  36981. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 901, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 0, 0,
  36982. 0, 0, 0, 0, 0, 0, 0, 0, 0, 5259264, 0, 0, 0, 0, 0, 0, 0, 0, 5414912, 0, 5447680, 0, 5464064, 0, 5480448,
  36983. 5562368, 0, 0, 0, 5636096, 0, 5685248, 0, 0, 5750784, 0, 0, 0, 0, 0, 5873664, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36984. 5193728, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5193728, 0, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144,
  36985. 4358144, 4358144, 4358144, 5193728, 4358144, 0, 1959, 0, 0, 0, 4825088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36986. 0, 0, 0, 0, 0, 0, 0, 0, 0, 5177344, 0, 0, 0, 0, 0, 0, 715, 0, 717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36987. 732, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1189, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36988. 0, 1250, 1252, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 0, 0, 367,
  36989. 0, 295, 0, 0, 5742592, 0, 0, 0, 6094848, 0, 0, 4907008, 0, 5079040, 0, 5226496, 0, 5742592, 0, 0, 0,
  36990. 6094848, 0, 4358144, 4907008, 4358144, 5079040, 4358144, 5226496, 4358144, 5742592, 4358144, 4358144,
  36991. 4358144, 6094848, 4358144, 5062656, 0, 0, 0, 4358144, 5062656, 4358144, 4358144, 4358144, 4358144,
  36992. 4358144, 0, 5062656, 0, 0, 0, 0, 0, 6225920, 0, 5062656, 0, 0, 0, 0, 0, 6225920, 4358144, 5062656,
  36993. 4358144, 4358144, 4358144, 0, 900, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  36994. 5259264, 0, 0, 0, 0, 0, 0, 0, 746, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 762, 0, 0, 0, 0, 0, 0, 0,
  36995. 0, 521, 521, 521, 521, 521, 521, 521, 521, 2396, 521, 521, 521, 521, 2400, 521, 521, 521, 521, 521, 521,
  36996. 521, 521, 521, 521, 521, 3199, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  36997. 521, 521, 521, 521, 521, 1390, 521, 521, 1394, 521, 521, 521, 521, 521, 1401, 521, 521, 4358144, 4358144,
  36998. 4358144, 6225920, 0, 0, 0, 4816896, 4358144, 4358144, 4358144, 4358144, 6086656, 4816896, 0, 0, 0, 0,
  36999. 6086656, 4816896, 0, 0, 0, 0, 6086656, 4816896, 4358144, 4358144, 4358144, 4358144, 6086656, 5087232, 0,
  37000. 5931008, 4358144, 5332992, 5980160, 4358144, 0, 5332992, 5980160, 0, 0, 5332992, 5980160, 0, 4358144,
  37001. 5332992, 5980160, 4358144, 5439488, 5128192, 4358144, 5128192, 0, 5128192, 0, 5128192, 4358144, 4358144,
  37002. 0, 0, 4358144, 4358144, 0, 0, 4358144, 6004736, 6004736, 6004736, 6004736, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37003. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1289, 0, 0, 0, 0, 0, 0, 0, 0, 1294, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0,
  37004. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2816, 0, 0, 0, 0, 0, 131072, 0, 0, 0,
  37005. 0, 0, 0, 0, 0, 0, 0, 0, 221645, 221645, 221645, 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, 461,
  37006. 461, 461, 221645, 461, 221645, 221645, 221645, 461, 221645, 221645, 221645, 221645, 221645, 221645, 0, 0,
  37007. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327, 328, 329, 330, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221645,
  37008. 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37009. 0, 0, 0, 0, 0, 3390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1769, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37010. 1780, 0, 0, 0, 0, 0, 0, 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 755, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37011. 0, 0, 0, 0, 0, 0, 3414, 0, 0, 0, 0, 3418, 0, 0, 0, 0, 3423, 0, 0, 0, 0, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0,
  37012. 0, 0, 0, 0, 0, 0, 237568, 301, 0, 305, 237568, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 302, 0, 0, 0, 0, 0,
  37013. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
  37014. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, 0, 0, 305, 237982, 147456, 0, 0, 0, 305, 0, 0, 0, 0, 0,
  37015. 2334, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2349, 0, 0, 0, 0, 0, 0, 0, 3406, 0, 0,
  37016. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3420, 3421, 0, 0, 0, 0, 3426, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0,
  37017. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 516096, 0, 0, 0, 0, 305,
  37018. 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305, 305,
  37019. 305, 305, 305, 0, 305, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 1870, 521, 521, 521, 521, 521, 521,
  37020. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2453, 521, 521, 521, 2456, 521, 521,
  37021. 521, 521, 521, 2461, 521, 305, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 65536, 302, 0, 4268032, 98304,
  37022. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3626, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37023. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37024. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4210978, 24578, 3, 0, 0, 296, 0, 0, 0, 0, 296, 0, 0,
  37025. 0, 0, 0, 0, 0, 0, 0, 245760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 399, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 399,
  37026. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 245760, 0, 0, 0, 0, 245760, 0, 245760, 0, 245760,
  37027. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 326, 400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 326, 0, 0, 0, 0, 0, 0, 0, 0,
  37028. 4210978, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
  37029. 0, 0, 0, 0, 0, 0, 0, 212992, 0, 212992, 212992, 212992, 212992, 212992, 212992, 212992, 212992, 212992,
  37030. 212992, 212992, 212992, 212992, 212992, 212992, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1768,
  37031. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1270, 0, 0,
  37032. 2059, 0, 0, 0, 4825088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5177344, 0, 0, 0, 0,
  37033. 0, 0, 0, 1730, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 311, 310, 0, 0, 0,
  37034. 310, 310, 311, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262144, 0, 0, 0, 0, 0,
  37035. 0, 0, 0, 0, 0, 350, 0, 0, 0, 0, 0, 0, 0, 0, 351, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 657, 0, 0, 0, 0, 0,
  37036. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 673, 674, 0, 0, 0, 0, 0, 0, 262144, 262144, 262144, 0, 0, 0, 0, 0, 0, 0, 0,
  37037. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 301, 0, 0, 0, 262144, 0, 262731, 262731,
  37038. 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731,
  37039. 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 262731, 0, 262731, 0, 0, 0, 0, 0,
  37040. 521, 521, 521, 521, 521, 3439, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37041. 521, 521, 521, 521, 521, 521, 3670, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37042. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60591, 57886, 57886, 57886, 57886, 57886, 57886,
  37043. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59853, 57886, 57886, 57886, 57886,
  37044. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60298, 57886, 57886,
  37045. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 262731, 1, 24578, 3, 0,
  37046. 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37047. 245760, 245760, 245760, 245760, 245760, 245760, 245760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278528, 278528, 0,
  37048. 0, 131072, 278528, 0, 0, 0, 278528, 0, 0, 0, 0, 278528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37049. 0, 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 333, 384, 0, 278528, 278528, 278528, 278528, 278528, 278528,
  37050. 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528,
  37051. 278528, 278528, 278528, 278528, 278528, 278528, 278528, 278528, 0, 278528, 0, 0, 0, 0, 0, 521, 521, 521,
  37052. 521, 3438, 521, 521, 521, 521, 3442, 521, 521, 521, 521, 521, 521, 521, 3448, 521, 521, 521, 521, 521,
  37053. 521, 521, 521, 521, 1901, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37054. 521, 521, 521, 1921, 521, 521, 278528, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032,
  37055. 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262144, 0, 0, 0, 0, 0, 0, 262144, 262144, 0, 0, 0,
  37056. 0, 0, 0, 0, 0, 0, 0, 0, 262144, 262144, 0, 262144, 0, 0, 0, 139264, 147456, 262144, 0, 0, 0, 0, 0, 0, 0,
  37057. 0, 415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 302, 0,
  37058. 0, 0, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 631, 0, 4268032, 305, 634, 0, 0, 0, 0, 0, 0, 0, 0,
  37059. 0, 0, 0, 0, 0, 0, 0, 532480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 754, 0, 0, 0, 0, 0, 0, 0, 0,
  37060. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1506, 0, 0,
  37061. 0, 0, 0, 4857856, 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3624, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37062. 0, 0, 0, 0, 0, 0, 0, 0, 2810, 2811, 0, 0, 0, 0, 0, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37063. 286720, 302, 0, 306, 286720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 722, 0, 0, 0, 0, 0, 0, 0, 0, 0, 733,
  37064. 0, 0, 0, 0, 733, 0, 739, 0, 0, 0, 0, 0, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 306, 0, 0, 0, 0, 0, 0,
  37065. 306, 139264, 287138, 0, 0, 0, 306, 0, 0, 0, 0, 0, 2386, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37066. 521, 521, 521, 521, 521, 521, 2402, 521, 2404, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886,
  37067. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59830, 57886, 57886, 57886,
  37068. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60836, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37069. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60274,
  37070. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 306, 306, 306, 306, 306,
  37071. 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 306, 0,
  37072. 306, 0, 0, 0, 0, 0, 521, 521, 521, 3437, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37073. 521, 3449, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3464, 521, 3466, 521, 521, 521, 521, 521, 521,
  37074. 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909,
  37075. 61250, 57909, 57909, 61252, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37076. 57909, 57909, 57909, 57936, 57936, 57936, 57936, 59994, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37077. 57936, 57936, 57936, 57936, 57936, 57936, 306, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 66168, 0,
  37078. 4268032, 305, 98939, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540672, 0, 0, 0, 0, 0, 0, 0, 540672, 0,
  37079. 0, 0, 0, 0, 0, 0, 0, 0, 122880, 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37080. 0, 0, 0, 0, 0, 0, 0, 0, 2352, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 303, 303, 303, 0, 0,
  37081. 303, 303, 295215, 303, 303, 303, 303, 303, 303, 303, 303, 303, 295215, 373, 303, 303, 303, 303, 303, 303,
  37082. 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303,
  37083. 303, 303, 303, 303, 303, 368, 303, 0, 295215, 303, 303, 303, 303, 295285, 295215, 295215, 295215, 295215,
  37084. 295215, 295215, 303, 303, 303, 303, 303, 303, 295285, 295215, 295215, 295215, 303, 303, 303, 295285,
  37085. 139264, 147456, 295215, 295215, 303, 303, 295215, 303, 303, 131072, 303, 303, 303, 303, 295215, 303, 303,
  37086. 303, 303, 295215, 303, 295215, 295215, 295215, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303, 303,
  37087. 303, 303, 303, 295215, 295215, 295215, 295215, 295215, 295215, 303, 303, 303, 295215, 303, 303, 303, 303,
  37088. 303, 303, 303, 303, 303, 303, 303, 303, 303, 295215, 303, 295215, 295215, 295215, 295215, 295215, 295215,
  37089. 295215, 303, 0, 303, 0, 303, 303, 303, 295215, 303, 303, 303, 295215, 295215, 303, 295215, 303, 295215,
  37090. 295215, 295215, 295215, 295215, 295215, 295215, 295215, 295285, 295285, 295285, 295285, 295285, 295285,
  37091. 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285, 295285,
  37092. 295215, 295215, 295215, 295215, 295215, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032,
  37093. 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4358144, 4359045, 4358144, 4358144, 4358144,
  37094. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37095. 4358144, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 319488, 0, 0, 0, 0, 0,
  37096. 0, 0, 0, 0, 352256, 0, 352256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2373, 0, 0,
  37097. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 319488, 0, 0, 0, 0, 0, 0, 319488, 319488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37098. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1743, 0, 0, 0, 0, 0, 0, 0, 1751, 1752, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0,
  37099. 0, 0, 0, 0, 0, 319488, 0, 0, 0, 319488, 319488, 319488, 319488, 319488, 319488, 319488, 319488, 319488,
  37100. 319488, 319488, 319488, 319488, 319488, 319488, 0, 0, 0, 0, 319488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 319488,
  37101. 0, 0, 0, 0, 0, 0, 0, 0, 0, 319488, 0, 0, 0, 0, 319488, 0, 319488, 319488, 319488, 0, 24578, 3, 0, 0,
  37102. 4366336, 253952, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37103. 5627904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4284416, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37104. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327680, 0, 0, 0, 0, 0, 0, 0, 0, 521, 2389, 521, 521, 521, 521, 521, 521,
  37105. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3219, 521, 0, 0, 57886,
  37106. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60571, 57886, 57886, 57886, 57886, 57886, 57886, 60579,
  37107. 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327680, 327680, 327680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37108. 327680, 327680, 327680, 327680, 335872, 327680, 327680, 327680, 335872, 327680, 327680, 327680, 327680,
  37109. 327680, 327680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49716, 0, 0, 0, 0, 0, 327680, 49716, 327680, 1, 24578, 3, 0, 0,
  37110. 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37111. 5627904, 0, 0, 0, 0, 0, 0, 196608, 0, 0, 0, 106496, 0, 0, 4284416, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0,
  37112. 0, 0, 0, 0, 0, 0, 49152, 977, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6463488, 0, 0,
  37113. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4931584, 4939776, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0,
  37114. 0, 0, 0, 0, 0, 0, 344064, 344064, 344064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 344064, 344064, 344064, 344064,
  37115. 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064, 344064,
  37116. 344064, 344064, 344064, 344064, 344064, 344064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 727,
  37117. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 344064, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0,
  37118. 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37119. 0, 0, 0, 0, 0, 356, 357, 358, 359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 295, 0, 0, 0, 0, 0, 4276224, 1245,
  37120. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521,
  37121. 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352256, 0, 0, 0, 0, 0, 0,
  37122. 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 352256, 0, 0, 0, 0, 0, 0, 131072, 0, 352256, 352256, 0, 0, 352256,
  37123. 0, 0, 352256, 0, 352256, 0, 352256, 352256, 352256, 352256, 352256, 352256, 352256, 352256, 352256,
  37124. 352256, 352256, 352256, 352256, 352256, 352256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37125. 1197, 0, 367, 367, 0, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 352256, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0,
  37126. 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 0, 0,
  37127. 0, 0, 0, 0, 0, 0, 706, 0, 0, 1, 291, 3, 0, 0, 0, 297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37128. 0, 0, 0, 0, 0, 0, 0, 0, 0, 3398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37129. 360448, 360448, 360448, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360448, 360448, 360448, 360448, 360448, 360448,
  37130. 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448, 360448,
  37131. 360448, 360448, 360448, 360448, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1226, 0, 0, 0, 0, 0,
  37132. 0, 0, 0, 0, 0, 0, 0, 0, 360448, 1, 0, 3, 155941, 155941, 295, 0, 629, 0, 0, 0, 301, 302, 0, 4268032, 305,
  37133. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 698, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37134. 0, 0, 0, 0, 0, 1212, 0, 0, 0, 0, 1217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37135. 0, 1806, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4276224, 1245, 0, 0, 0, 0, 0,
  37136. 0, 0, 0, 0, 0, 0, 0, 1259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37137. 0, 0, 0, 0, 0, 1188, 0, 58796, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37138. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37139. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59402, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886,
  37140. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37141. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58826, 57886, 57886, 50657, 0, 57909,
  37142. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37143. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59502,
  37144. 57886, 0, 2281, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37145. 739, 0, 0, 0, 2357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37146. 0, 3428, 0, 57909, 59926, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37147. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37148. 57909, 57909, 57909, 57909, 58906, 57909, 57909, 59952, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37149. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37150. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886, 57936, 60009, 57936, 57936,
  37151. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37152. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521,
  37153. 60035, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37154. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37155. 57936, 57936, 57936, 60937, 521, 3212, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0,
  37156. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37157. 57886, 59387, 59388, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37158. 57886, 57886, 57886, 57886, 57886, 60604, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37159. 57886, 57886, 57886, 57886, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37160. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60320, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37161. 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60702, 57936, 57936,
  37162. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886,
  37163. 57886, 0, 0, 0, 0, 0, 0, 0, 3612, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3381, 0, 0, 0, 0, 0, 0, 0,
  37164. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 369, 0, 0, 0, 57886, 57886, 60830, 57886,
  37165. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37166. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60853, 57886,
  37167. 57886, 57936, 57936, 57936, 57936, 60914, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37168. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37169. 57936, 57936, 57936, 60057, 57936, 57936, 57936, 57936, 61027, 57886, 57886, 57886, 57886, 57886, 57886,
  37170. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37171. 57886, 57886, 57886, 57886, 57886, 57909, 61045, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37172. 57909, 60634, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37173. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59493, 57909, 57909, 57909, 57909, 57909,
  37174. 57909, 57909, 57909, 57886, 61048, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61056,
  37175. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37176. 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60378, 57936,
  37177. 57936, 57936, 57886, 57886, 57886, 57886, 61156, 57886, 57886, 57886, 57886, 61157, 61158, 57886, 57886,
  37178. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37179. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37180. 59997, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57909, 61175, 57909, 57909,
  37181. 57909, 57909, 61176, 61177, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936,
  37182. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61194, 57936, 0, 0, 0, 0,
  37183. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909,
  37184. 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61078, 61079,
  37185. 57936, 57936, 57936, 57936, 61083, 61084, 57936, 57936, 57936, 57936, 57936, 61088, 57936, 57936, 57936,
  37186. 57936, 57936, 57936, 57936, 57936, 57936, 61195, 61196, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37187. 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37188. 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 3177, 521, 521, 521, 521, 521, 521, 3184, 521, 3186, 521, 521,
  37189. 521, 57936, 57936, 57936, 57936, 57936, 61270, 57936, 57936, 57936, 57936, 57936, 57936, 61276, 57936,
  37190. 57936, 57936, 61280, 57936, 521, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 1791, 0, 0, 0, 0,
  37191. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 672, 0, 0, 0, 0, 0, 0, 0, 3947, 521, 521,
  37192. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 61306, 57886, 57886, 57886, 57886, 57886,
  37193. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58312, 57886, 57886, 57886, 0,
  37194. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61322, 57909, 57909,
  37195. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61338, 57936,
  37196. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  37197. 3759, 521, 57886, 61105, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57886, 61439, 57886, 57886, 57886, 57886,
  37198. 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 61452, 57909, 57909, 57909, 57909, 57909,
  37199. 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 61465, 57936, 57936, 57936, 57936, 57936, 57936,
  37200. 57936, 57936, 57936, 60413, 57936, 57936, 57936, 57936, 57936, 57936, 60421, 57936, 57936, 57936, 57936,
  37201. 57936, 60426, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 4077, 0, 521,
  37202. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 0, 0, 521, 521, 521, 521,
  37203. 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 0, 521, 521, 57886,
  37204. 57886, 57909, 57909, 57936, 57936, 521, 57886, 57909, 57936, 521, 57886, 57909, 57936, 521, 57886, 57909,
  37205. 57936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1829, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37206. 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376832, 376832, 376832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37207. 0, 0, 0, 1254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1268, 1269, 0, 0, 0, 0, 0, 419, 419, 419, 419,
  37208. 590, 590, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419, 419,
  37209. 0, 419, 0, 0, 0, 0, 0, 521, 1866, 521, 521, 521, 521, 521, 521, 1872, 521, 521, 521, 521, 521, 521, 521,
  37210. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 57886, 57886, 57886, 57886, 60568, 57886,
  37211. 57886, 57886, 57886, 57886, 57886, 60575, 57886, 60577, 57886, 57886, 419, 1, 24578, 3, 0, 0, 4366336, 0,
  37212. 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0,
  37213. 696, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2817, 0,
  37214. 0, 0, 4268773, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37215. 2380, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 307, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37216. 0, 0, 0, 721, 0, 0, 0, 0, 0, 0, 0, 0, 731, 0, 637, 731, 0, 735, 736, 637, 0, 0, 0, 0, 0, 0, 0, 131072, 0,
  37217. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 393678, 393678, 393678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1309, 0, 0,
  37218. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 4025, 521, 521, 521, 521,
  37219. 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 393678, 0, 393678, 393678, 393678, 0,
  37220. 393678, 393678, 393678, 393678, 393678, 393678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37221. 1771, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0,
  37222. 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 425984, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37223. 0, 0, 0, 0, 0, 0, 521, 521, 521, 3176, 521, 521, 521, 521, 521, 3181, 521, 521, 521, 521, 521, 521, 521,
  37224. 0, 0, 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 475136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37225. 374, 0, 0, 375, 0, 0, 0, 0, 0, 327, 375, 330, 374, 0, 0, 0, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37226. 0, 0, 0, 0, 304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 57887, 521, 57887, 521, 521, 57887,
  37227. 521, 521, 57910, 57887, 521, 521, 57887, 57887, 57887, 57910, 0, 0, 0, 420, 420, 420, 420, 420, 420, 420,
  37228. 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 420, 0, 420, 0, 0, 0,
  37229. 0, 0, 521, 3435, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37230. 521, 521, 521, 521, 521, 521, 521, 1916, 521, 521, 521, 521, 521, 521, 420, 1, 24578, 3, 155941, 155941,
  37231. 295, 0, 0, 0, 0, 0, 301, 302, 0, 304, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 723, 0, 0, 0, 0,
  37232. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1287, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741, 420, 0,
  37233. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2791, 0, 0, 1239, 0,
  37234. 0, 0, 741, 1246, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521,
  37235. 521, 521, 1322, 521, 521, 521, 521, 521, 521, 521, 2468, 0, 0, 0, 57886, 57886, 57886, 57886, 57886,
  37236. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37237. 57886, 57886, 57886, 60276, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 521, 521, 521, 2468,
  37238. 2895, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37239. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60305, 57886,
  37240. 57886, 0, 0, 0, 2963, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37241. 417792, 308, 309, 0, 0, 0, 0, 0, 0, 1815, 0, 0, 0, 0, 0, 0, 0, 0, 1821, 0, 1823, 0, 0, 0, 0, 0, 0, 0, 0,
  37242. 0, 0, 0, 0, 0, 0, 540672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3127, 0, 0, 0,
  37243. 0, 3132, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 309, 0, 417792, 417792, 0, 0, 417792,
  37244. 417792, 417792, 417792, 417792, 417792, 417792, 417792, 417792, 417792, 417792, 417792, 417792, 418101,
  37245. 417792, 417792, 418100, 418101, 417792, 417792, 418100, 417792, 418100, 417792, 0, 0, 0, 0, 0, 0, 0, 0,
  37246. 417792, 0, 0, 0, 417792, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 309, 309, 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37247. 0, 0, 0, 0, 0, 0, 0, 1802, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 417792, 1, 24578, 3, 0, 0, 4366964, 0,
  37248. 0, 0, 0, 0, 301, 302, 311296, 4268032, 305, 306, 0, 434176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1846, 0,
  37249. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1859, 0, 0, 1860, 0, 0, 900, 900, 5415812, 900, 5448580, 900, 5464964,
  37250. 900, 5481348, 5563268, 900, 900, 900, 5636996, 900, 5686148, 900, 900, 5751684, 900, 900, 900, 900, 900,
  37251. 5874564, 900, 900, 900, 900, 900, 900, 900, 900, 900, 6464388, 0, 0, 0, 0, 976, 976, 976, 976, 976, 976,
  37252. 976, 976, 976, 976, 976, 4932560, 4940752, 976, 976, 976, 976, 976, 4359044, 4858756, 4875140, 4359044,
  37253. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37254. 4359044, 5260164, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 5415812,
  37255. 4359044, 5448580, 4359044, 5464964, 4359044, 5481348, 5563268, 4359044, 4359044, 4359044, 5636996,
  37256. 4359044, 5686148, 4359044, 4359044, 5751684, 4359044, 4359044, 4359044, 4359044, 4359044, 5874564,
  37257. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37258. 6275972, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 5342084, 4359044, 4359044, 4359044,
  37259. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 5628804, 5653380,
  37260. 4359044, 5702532, 4359044, 4359044, 5809028, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37261. 4359044, 4907008, 0, 5079040, 6094848, 0, 0, 0, 4358144, 4907008, 4358144, 5079040, 4358144, 5226496,
  37262. 4358144, 5742592, 4358144, 4358144, 4358144, 6094848, 900, 4907908, 900, 5079940, 900, 5227396, 900,
  37263. 5243780, 900, 900, 900, 900, 900, 900, 900, 5342084, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
  37264. 900, 900, 5628804, 5653380, 900, 5702532, 900, 900, 900, 900, 900, 900, 5211012, 900, 900, 900, 900,
  37265. 5292932, 900, 900, 900, 900, 5366660, 900, 900, 900, 5456772, 900, 900, 900, 900, 900, 5555076, 5571460,
  37266. 5579652, 5620612, 5669764, 900, 0, 0, 976, 976, 976, 4826064, 976, 976, 976, 976, 976, 976, 976, 976, 976,
  37267. 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 5178320, 976, 976, 976, 976, 976, 5112784, 976,
  37268. 976, 976, 976, 976, 5284816, 976, 976, 976, 976, 5473232, 5522384, 976, 976, 976, 976, 5596112, 5710800,
  37269. 5718992, 976, 5825488, 5866448, 976, 976, 5923792, 976, 5243856, 976, 976, 976, 976, 976, 976, 976,
  37270. 5342160, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 5628880, 5653456, 976, 5702608, 976,
  37271. 976, 976, 976, 976, 976, 976, 5260240, 976, 976, 976, 976, 976, 976, 976, 976, 5415888, 976, 5448656, 976,
  37272. 5465040, 976, 5481424, 5563344, 976, 976, 976, 5637072, 976, 5686224, 976, 976, 5751760, 976, 4358144,
  37273. 4358144, 4358144, 4358144, 4358144, 6463488, 0, 0, 0, 0, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
  37274. 900, 4932484, 4940676, 900, 900, 900, 900, 900, 900, 5055364, 900, 900, 5112708, 900, 900, 900, 900, 900,
  37275. 5284740, 900, 900, 900, 900, 5473156, 5522308, 900, 900, 900, 900, 5596036, 5710724, 5718916, 900,
  37276. 5825412, 5866372, 900, 900, 5923716, 900, 900, 6022020, 900, 900, 900, 5792644, 5817220, 900, 5858180,
  37277. 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 6120324, 900, 6169476, 900, 900, 900,
  37278. 900, 900, 6243204, 900, 6292356, 900, 6316932, 976, 5055440, 976, 976, 976, 976, 976, 976, 976, 976,
  37279. 5211088, 976, 976, 976, 976, 5293008, 976, 976, 976, 976, 5366736, 976, 976, 976, 5456848, 976, 976, 976,
  37280. 976, 976, 5555152, 5571536, 5579728, 5620688, 5669840, 976, 976, 976, 5792720, 5817296, 976, 5858256, 976,
  37281. 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 6120400, 976, 6169552, 976, 976, 976, 976,
  37282. 976, 6243280, 976, 6292432, 976, 6317008, 976, 976, 976, 976, 976, 976, 976, 976, 976, 6464464, 4359044,
  37283. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4932484,
  37284. 4940676, 4359044, 4359044, 4359044, 4359044, 4359044, 4358144, 4358144, 4358144, 4358144, 4358144,
  37285. 4358144, 0, 900, 900, 900, 900, 900, 900, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4857856, 4874240, 0, 0, 4923392,
  37286. 4359044, 5055364, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 5211012,
  37287. 4359044, 4359044, 4359044, 4359044, 5292932, 4359044, 4359044, 4359044, 4359044, 5366660, 4359044,
  37288. 4359044, 4359044, 5456772, 4359044, 4359044, 4359044, 4359044, 4359044, 5555076, 5571460, 5579652,
  37289. 5620612, 5669764, 4359044, 4359044, 4359044, 5792644, 5817220, 4359044, 5858180, 4359044, 4359044,
  37290. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37291. 6120324, 4359044, 6169476, 4359044, 4359044, 4359044, 4359044, 4359044, 6243204, 4359044, 6292356,
  37292. 4359044, 6316932, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37293. 6464388, 4358144, 4358144, 4358144, 4358144, 4358144, 900, 900, 900, 900, 900, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37294. 0, 0, 0, 0, 0, 0, 0, 4931584, 0, 0, 0, 0, 0, 0, 0, 4358144, 6430720, 6438912, 0, 0, 0, 0, 0, 0, 4785028,
  37295. 900, 900, 900, 4850564, 900, 900, 900, 900, 900, 4916100, 900, 4957060, 4973444, 900, 900, 900, 900, 900,
  37296. 900, 5071748, 900, 900, 5194628, 900, 900, 900, 900, 900, 900, 900, 900, 976, 976, 976, 976, 976, 5194704,
  37297. 976, 976, 976, 976, 976, 976, 976, 976, 4359044, 4359044, 4359044, 4359044, 4359044, 5194628, 4359044, 0,
  37298. 0, 4785104, 976, 976, 976, 4850640, 976, 976, 976, 976, 976, 4916176, 976, 4957136, 4973520, 976, 976,
  37299. 976, 976, 976, 976, 5071824, 976, 976, 976, 976, 976, 976, 976, 5219280, 976, 976, 6357968, 6382544,
  37300. 6398928, 4801412, 4809604, 4359044, 4359044, 4891524, 4359044, 4948868, 4359044, 4359044, 4359044,
  37301. 5047172, 4359044, 4359044, 4359044, 4359044, 5186436, 4359044, 5235588, 5301124, 4359044, 4359044,
  37302. 5407620, 5530500, 4359044, 4359044, 4359044, 4359044, 4359044, 4923392, 4358144, 4358144, 4358144,
  37303. 4358144, 4358144, 900, 4924292, 900, 900, 900, 900, 4366336, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37304. 1255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1264, 0, 0, 0, 0, 0, 0, 0, 5268432, 976, 976, 5309392, 5317584, 976, 976,
  37305. 976, 5432272, 976, 5489616, 976, 976, 976, 976, 976, 976, 976, 976, 976, 5800912, 976, 976, 5882832, 976,
  37306. 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 4359044, 4359044, 4359044,
  37307. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37308. 4359044, 4359044, 976, 6104016, 976, 976, 976, 6185936, 976, 976, 976, 6284240, 976, 976, 6333392, 976,
  37309. 976, 976, 6390736, 976, 976, 6431696, 6439888, 4785028, 4359044, 4359044, 4359044, 4850564, 4359044,
  37310. 4359044, 4359044, 4359044, 4359044, 4916100, 4359044, 4957060, 4973444, 4359044, 4359044, 4359044,
  37311. 4359044, 4359044, 4359044, 5071748, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37312. 5219204, 4359044, 5268356, 4359044, 4359044, 5309316, 5317508, 4359044, 4359044, 4359044, 5432196,
  37313. 4359044, 5489540, 4359044, 4359044, 4359044, 4359044, 4359044, 6054788, 4359044, 4359044, 4359044, 0, 0,
  37314. 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 5193728, 4358144, 4358144, 4358144, 4358144,
  37315. 4358144, 4358144, 4358144, 900, 900, 900, 5096324, 5104516, 900, 900, 5202820, 900, 900, 900, 900, 900,
  37316. 900, 900, 900, 900, 900, 900, 5890948, 900, 900, 900, 6030212, 900, 900, 900, 900, 6161284, 900, 900, 900,
  37317. 900, 6407044, 976, 976, 976, 976, 976, 976, 976, 976, 4998096, 976, 976, 5039056, 976, 976, 976, 5096400,
  37318. 5104592, 976, 976, 5202896, 976, 976, 976, 976, 976, 976, 976, 5891024, 976, 976, 976, 6030288, 976, 976,
  37319. 976, 976, 6161360, 976, 976, 976, 976, 976, 976, 976, 6407120, 4359044, 4359044, 4359044, 4359044,
  37320. 4359044, 4359044, 4359044, 4359044, 4998020, 4359044, 4358144, 6078464, 6111232, 4358144, 6176768,
  37321. 6209536, 6234112, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 900, 900, 4842372,
  37322. 900, 900, 900, 4899716, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900,
  37323. 900, 900, 900, 975, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976,
  37324. 976, 976, 6300624, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 5809028, 6038404, 900, 900,
  37325. 6079364, 6112132, 900, 6177668, 6210436, 900, 6235012, 900, 900, 900, 900, 900, 900, 900, 0, 0, 976, 976,
  37326. 4842448, 976, 976, 976, 4899792, 976, 976, 976, 976, 976, 976, 5874640, 976, 976, 976, 976, 976, 976, 976,
  37327. 976, 976, 976, 976, 6276048, 976, 976, 976, 976, 976, 976, 976, 976, 976, 0, 900, 4359044, 4359044,
  37328. 4359044, 4359044, 4359044, 4359044, 5112708, 4359044, 4359044, 4359044, 4359044, 4359044, 5284740,
  37329. 4359044, 4359044, 4359044, 4359044, 5473156, 5522308, 4359044, 4359044, 4359044, 4359044, 5596036,
  37330. 5710724, 5718916, 4359044, 5825412, 5866372, 4359044, 4359044, 5923716, 976, 6022096, 976, 6038480, 976,
  37331. 976, 6079440, 6112208, 976, 6177744, 6210512, 976, 6235088, 976, 976, 976, 976, 976, 976, 976, 4359044,
  37332. 4359044, 4842372, 4359044, 4359044, 4359044, 4899716, 4359044, 4359044, 4359044, 4359044, 4359044,
  37333. 4359044, 4359044, 5800836, 4359044, 4359044, 5882756, 4359044, 4359044, 4359044, 4359044, 4359044,
  37334. 4359044, 4359044, 4359044, 4359044, 6103940, 4359044, 4359044, 4359044, 6185860, 4359044, 4359044,
  37335. 4359044, 6284164, 4359044, 4359044, 6333316, 4359044, 4359044, 6022020, 4359044, 6038404, 4359044,
  37336. 4359044, 6079364, 6112132, 4359044, 6177668, 6210436, 4359044, 6235012, 4359044, 4359044, 4359044,
  37337. 4359044, 4359044, 4359044, 4359044, 4358144, 4358144, 4358144, 900, 900, 900, 0, 0, 0, 0, 0, 0, 0, 1760,
  37338. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 0, 419,
  37339. 0, 4358144, 4358144, 4358144, 5890048, 4358144, 4358144, 4358144, 6029312, 4358144, 4358144, 4358144,
  37340. 4358144, 6160384, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6406144, 900, 900, 900, 900, 900,
  37341. 900, 900, 900, 4998020, 900, 900, 5038980, 4359044, 5038980, 4359044, 4359044, 4359044, 5096324, 5104516,
  37342. 4359044, 4359044, 5202820, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37343. 4359044, 4359044, 4359044, 5890948, 4359044, 4359044, 4359044, 6030212, 4359044, 4359044, 4359044,
  37344. 4359044, 6161284, 4359044, 4359044, 4359044, 6226820, 0, 0, 0, 4816896, 4358144, 4358144, 4358144,
  37345. 4358144, 6086656, 4817796, 900, 900, 900, 900, 6087556, 4817872, 976, 976, 976, 976, 6087632, 4817796,
  37346. 4359044, 4359044, 4359044, 4359044, 6087556, 5087232, 4358144, 4358144, 4358144, 5898240, 4358144,
  37347. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6307840, 4358144, 4358144, 6356992, 6381568,
  37348. 6397952, 4801412, 4809604, 900, 900, 4891524, 900, 4948868, 900, 900, 900, 5047172, 900, 900, 900, 900,
  37349. 900, 6054788, 900, 900, 900, 976, 976, 5014480, 976, 976, 976, 976, 976, 976, 976, 976, 976, 6054864, 976,
  37350. 976, 976, 4359044, 4359044, 5014404, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 6407044,
  37351. 4358144, 4358144, 4358144, 900, 900, 900, 4890624, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5898240, 5963776, 0, 0,
  37352. 6193152, 0, 0, 5406720, 6397952, 5186436, 900, 5235588, 5301124, 900, 900, 5407620, 5530500, 900, 900,
  37353. 900, 900, 5899140, 900, 900, 900, 900, 900, 900, 900, 900, 6308740, 900, 900, 6357892, 6382468, 6398852,
  37354. 4801488, 4809680, 976, 976, 4891600, 976, 4948944, 976, 976, 976, 5047248, 976, 976, 976, 976, 5186512,
  37355. 976, 5235664, 5301200, 976, 976, 5407696, 5530576, 976, 976, 976, 976, 5899216, 976, 976, 976, 976, 976,
  37356. 976, 976, 976, 6308816, 5899140, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37357. 6308740, 4359044, 4359044, 6357892, 6382468, 6398852, 5021696, 4358144, 4358144, 5022596, 900, 900, 0,
  37358. 4980736, 0, 0, 0, 0, 0, 5373952, 5734400, 6045696, 0, 0, 0, 0, 0, 2771, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37359. 0, 0, 0, 0, 0, 2785, 0, 2786, 0, 0, 0, 0, 0, 0, 0, 0, 1843, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37360. 0, 0, 0, 0, 0, 0, 0, 0, 1263, 0, 0, 0, 0, 0, 0, 0, 0, 4980736, 4358144, 4358144, 4358144, 4358144,
  37361. 4358144, 4358144, 4358144, 4358144, 5324800, 5373952, 5537792, 5545984, 5734400, 5971968, 4358144,
  37362. 6045696, 4358144, 6070272, 4358144, 4358144, 4358144, 6348800, 900, 4866948, 4883332, 900, 4981636, 900,
  37363. 900, 900, 900, 5325700, 5374852, 5538692, 5546884, 5587844, 5735300, 5972868, 900, 6046596, 900, 6071172,
  37364. 900, 900, 900, 900, 6349700, 976, 4867024, 4883408, 976, 4981712, 976, 976, 976, 976, 976, 976, 976, 976,
  37365. 5325776, 5374928, 5538768, 5546960, 5587920, 5735376, 5972944, 976, 6046672, 976, 6071248, 976, 976, 976,
  37366. 976, 6349776, 4359044, 4866948, 4883332, 4359044, 4981636, 4359044, 4359044, 4359044, 4359044, 4359044,
  37367. 4359044, 4359044, 4359044, 5325700, 5374852, 5538692, 5546884, 5587844, 5735300, 5972868, 4359044,
  37368. 6046596, 4359044, 6071172, 4359044, 4359044, 4359044, 4359044, 6349700, 4358144, 6144000, 900, 6144900, 0,
  37369. 4988928, 5005312, 0, 0, 0, 0, 5775360, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 655, 0, 0, 521, 521, 521, 521, 521,
  37370. 845, 521, 521, 861, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  37371. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37372. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59499,
  37373. 57909, 57909, 57909, 57886, 5693440, 0, 6496256, 5144576, 5136384, 0, 5914624, 4358144, 4358144, 5005312,
  37374. 4358144, 4358144, 4358144, 5120000, 5136384, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37375. 4358144, 4358144, 4358144, 6324224, 900, 900, 5006212, 900, 900, 900, 5120900, 5137284, 900, 900, 900,
  37376. 900, 900, 900, 900, 900, 900, 900, 6325124, 976, 976, 5006288, 976, 976, 976, 5120976, 5137360, 976, 976,
  37377. 976, 976, 976, 976, 976, 976, 976, 976, 6325200, 4359044, 4359044, 4359044, 6390660, 4359044, 4359044,
  37378. 6431620, 6439812, 4358144, 4358144, 4358144, 6266880, 6488064, 900, 900, 900, 6267780, 6488964, 0, 0, 0,
  37379. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1767, 0, 0, 0, 0, 0, 1773, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4359044,
  37380. 5006212, 4359044, 4359044, 4359044, 5120900, 5137284, 4359044, 4359044, 4359044, 4359044, 4359044,
  37381. 4359044, 4359044, 4359044, 4359044, 4359044, 6325124, 5914624, 5915524, 0, 0, 0, 0, 0, 5513216, 5783552,
  37382. 0, 3627, 0, 0, 0, 0, 0, 0, 2285, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37383. 0, 1265, 0, 0, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37384. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 900, 900, 900, 900, 900, 900, 900, 900,
  37385. 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 6300548, 900, 900, 900, 900, 900, 900, 900,
  37386. 900, 900, 900, 900, 0, 5013504, 0, 0, 6053888, 0, 0, 0, 0, 6012928, 4358144, 4358144, 5013504, 4358144,
  37387. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6053888, 4358144, 4358144, 900,
  37388. 900, 5014404, 900, 900, 900, 900, 6275972, 900, 900, 900, 900, 900, 900, 900, 900, 900, 0, 0, 977, 976,
  37389. 976, 976, 976, 976, 4858832, 4875216, 976, 976, 976, 976, 976, 976, 976, 976, 976, 976, 0, 0, 0, 0, 900,
  37390. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37391. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 6300548, 4359044, 4359044, 4359044,
  37392. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4358144, 4358144, 900, 5743492,
  37393. 900, 900, 900, 6095748, 900, 976, 4907984, 976, 5080016, 976, 5227472, 976, 5743568, 976, 976, 976,
  37394. 6095824, 976, 4359044, 4907908, 4359044, 5079940, 4359044, 5227396, 4359044, 5743492, 4359044, 4359044,
  37395. 4359044, 6095748, 4359044, 5062656, 0, 0, 0, 4358144, 5062656, 4358144, 4358144, 4358144, 4358144,
  37396. 4358144, 900, 5063556, 900, 900, 900, 900, 900, 6226820, 976, 5063632, 976, 976, 976, 976, 976, 6226896,
  37397. 4359044, 5063556, 4359044, 4359044, 4359044, 4825988, 4359044, 4359044, 4359044, 4359044, 4359044,
  37398. 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044, 4359044,
  37399. 4359044, 4359044, 4359044, 4359044, 5178244, 4359044, 4359044, 4359044, 4359044, 4359044, 5243780,
  37400. 4359044, 0, 5931008, 4358144, 5332992, 5980160, 4358144, 900, 5333892, 5981060, 900, 976, 5333968,
  37401. 5981136, 976, 4359044, 5333892, 5981060, 4359044, 5439488, 5128192, 4358144, 5129092, 900, 5129168, 976,
  37402. 5129092, 4359044, 4358144, 900, 976, 4359044, 4358144, 900, 976, 4359044, 6004736, 6005636, 6005712,
  37403. 6005636, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2345, 0, 0, 0, 0, 0, 2351, 0,
  37404. 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450560,
  37405. 0, 0, 0, 0, 0, 0, 450560, 0, 0, 450560, 0, 450560, 450560, 450560, 450560, 450560, 450560, 0, 0, 0, 0,
  37406. 131072, 0, 0, 0, 0, 0, 0, 450560, 0, 0, 0, 450560, 0, 450560, 450560, 450560, 450560, 450560, 450560,
  37407. 450560, 450560, 450560, 450560, 450560, 450560, 450560, 450560, 450560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37408. 0, 0, 0, 0, 0, 0, 0, 1824, 0, 0, 0, 0, 0, 0, 1729, 0, 0, 0, 0, 0, 0, 450560, 1, 24578, 3, 0, 0, 4366336,
  37409. 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1848, 0, 0, 0, 0,
  37410. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2359296, 0, 2359296, 0, 0, 0, 2359296, 0, 2359296, 2359296,
  37411. 2359296, 2359296, 2359296, 2359296, 4358144, 6291456, 4358144, 6316032, 4358144, 4358144, 4358144,
  37412. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6463488, 4358144, 4358144, 4358144, 4358144,
  37413. 4358144, 0, 0, 0, 0, 0, 0, 302, 0, 0, 306, 0, 0, 0, 0, 0, 0, 2335, 0, 0, 0, 0, 0, 2339, 0, 0, 0, 0, 0, 0,
  37414. 0, 2343, 2344, 0, 0, 0, 0, 0, 2350, 0, 0, 0, 0, 0, 0, 1302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37415. 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 2836, 521, 521, 521, 521, 2840, 521, 521, 4358144, 6430720,
  37416. 6438912, 901, 0, 0, 0, 901, 0, 4784128, 0, 0, 0, 4849664, 0, 0, 0, 0, 0, 4915200, 0, 4956160, 4972544, 0,
  37417. 0, 0, 0, 0, 0, 5070848, 0, 0, 0, 0, 0, 744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37418. 0, 0, 0, 0, 0, 327, 0, 0, 374, 374, 404, 977, 0, 4784128, 0, 0, 0, 4849664, 0, 0, 0, 0, 0, 4915200, 0,
  37419. 4956160, 4972544, 0, 0, 0, 0, 0, 0, 5070848, 0, 0, 0, 0, 0, 0, 0, 5218304, 0, 5267456, 0, 0, 5308416,
  37420. 5316608, 0, 0, 0, 5431296, 0, 5488640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5799936, 0, 0, 5881856, 0, 0, 0, 0, 0,
  37421. 0, 0, 0, 4358144, 6078464, 6111232, 4358144, 6176768, 6209536, 6234112, 4358144, 4358144, 4358144,
  37422. 4358144, 4358144, 4358144, 4358144, 901, 0, 0, 0, 4841472, 0, 0, 0, 4898816, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37423. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3653, 521, 521, 521, 521, 521, 521, 521, 521,
  37424. 521, 521, 521, 3218, 521, 521, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37425. 60573, 57886, 60576, 57886, 57886, 57886, 6037504, 0, 0, 6078464, 6111232, 0, 6176768, 6209536, 0,
  37426. 6234112, 0, 0, 0, 0, 0, 0, 0, 977, 0, 0, 0, 4841472, 0, 0, 0, 4898816, 0, 0, 0, 0, 0, 0, 0, 0, 6103040, 0,
  37427. 0, 0, 6184960, 0, 0, 0, 6283264, 0, 0, 6332416, 0, 0, 0, 6389760, 0, 0, 6430720, 6438912, 0, 0, 0, 0, 0,
  37428. 0, 0, 0, 459186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 459215, 459215, 459215, 459215, 459215, 459215, 459215,
  37429. 459215, 459215, 459215, 459215, 459215, 459215, 459215, 459215, 459215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37430. 0, 0, 0, 0, 0, 0, 0, 2291, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 459340, 459340, 459340, 459340,
  37431. 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340,
  37432. 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459340, 459215, 459372, 459215, 459215, 459372, 1,
  37433. 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37434. 0, 0, 0, 2777, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5480448, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37435. 0, 5840896, 5849088, 0, 1, 24578, 3, 0, 0, 0, 0, 507904, 0, 0, 0, 507904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37436. 0, 0, 0, 0, 0, 0, 0, 507904, 0, 0, 0, 0, 0, 2796, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2804, 0, 0, 0, 0, 0, 0,
  37437. 0, 0, 0, 0, 0, 0, 0, 0, 3385, 3386, 0, 0, 0, 0, 3391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662, 0,
  37438. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2779, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2789, 0, 0, 0, 2793, 0,
  37439. 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 507904, 507904, 507904, 507904, 507904, 507904, 507904,
  37440. 507904, 507904, 507904, 507904, 507904, 507904, 507904, 507904, 507904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37441. 0, 0, 0, 0, 0, 0, 0, 2781, 0, 0, 2784, 0, 0, 0, 0, 2788, 0, 0, 0, 0, 0, 507904, 1, 24578, 3, 0, 0,
  37442. 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 442368, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37443. 658, 0, 0, 661, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1225, 0, 0, 0, 0, 0, 0, 0, 1233, 0, 0,
  37444. 0, 0, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 516096, 0, 0, 0, 516096, 0, 0, 0, 0, 0, 0, 516096, 0, 0, 0, 0, 0,
  37445. 0, 0, 0, 0, 0, 0, 0, 2287, 0, 2288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2297, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37446. 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 516560, 516560, 516560, 516560, 516560, 516560, 516560, 516560,
  37447. 516560, 516560, 516560, 516560, 516560, 516560, 516560, 516560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37448. 0, 0, 0, 0, 3152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 516560, 1, 24578, 0, 0, 0, 4366336, 0, 0, 548864,
  37449. 0, 0, 301, 302, 0, 4268032, 305, 306, 409600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1806, 0, 2340, 0, 0,
  37450. 0, 0, 0, 0, 0, 0, 2347, 0, 0, 0, 0, 0, 0, 2354, 4358144, 5005312, 4358144, 4358144, 4358144, 5120000,
  37451. 5136384, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37452. 6324224, 5914624, 5914624, 0, 0, 0, 0, 0, 5513216, 5783552, 0, 40960, 0, 0, 0, 0, 0, 0, 2747, 0, 2749, 0,
  37453. 0, 2752, 0, 0, 0, 0, 0, 0, 2757, 0, 0, 0, 2760, 2761, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521,
  37454. 521, 855, 521, 521, 521, 521, 521, 874, 521, 521, 521, 521, 892, 521, 521, 521, 57886, 57886, 57886, 1,
  37455. 24578, 4227364, 0, 0, 0, 0, 0, 0, 298, 0, 0, 0, 298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37456. 0, 1227, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540672, 0, 0, 540672, 0, 0, 0, 540672, 0, 0, 0, 0, 0, 0,
  37457. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1857, 0, 0, 0, 0, 0, 0, 0, 0, 1, 24578, 4227364, 0,
  37458. 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3148,
  37459. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37460. 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 499712, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3389,
  37461. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2370, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
  37462. 24578, 3, 155941, 295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37463. 636, 0, 0, 0, 521, 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37464. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37465. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 0, 0, 0, 0, 742, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37466. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 437, 0, 0, 0, 0,
  37467. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57887, 57887,
  37468. 57887, 57887, 57887, 57887, 57887, 57910, 57910, 57887, 57887, 57937, 57887, 57887, 57887, 57887, 57887,
  37469. 57887, 57887, 57937, 57937, 57887, 57887, 57887, 57887, 57937, 57937, 57887, 521, 57887, 57887, 57887, 1,
  37470. 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37471. 0, 0, 0, 4399797, 4399797, 4399797, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 410, 358, 0, 0, 399, 0,
  37472. 0, 0, 0, 0, 139264, 147456, 399, 410, 0, 423, 410, 1, 24578, 3, 155942, 295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37473. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1236, 0, 0, 0, 1, 24578, 3, 0, 0, 0, 0, 0, 0, 0, 0,
  37474. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 573440, 0, 573440, 573440, 573440, 0, 573440,
  37475. 573440, 573440, 573440, 573440, 573440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3628, 0, 0,
  37476. 0, 3631, 0, 0, 0, 0, 0, 0, 0, 0, 3639, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 573440,
  37477. 573440, 573440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1819, 1820, 0, 1822, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37478. 0, 0, 0, 1836, 0, 0, 0, 0, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440,
  37479. 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440, 573440,
  37480. 573440, 573440, 573440, 573440, 573440, 573440, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0,
  37481. 4268032, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4399798, 311296, 4399798, 0, 0, 0, 311296, 0,
  37482. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4276224, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1260, 0, 0, 0,
  37483. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1847, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1738, 0, 5300224,
  37484. 5234688, 5423104, 0, 0, 0, 0, 5988352, 0, 0, 6135808, 6307840, 0, 5996544, 4800512, 0, 6356992, 3627, 0,
  37485. 0, 5496832, 0, 0, 0, 0, 0, 5611520, 0, 0, 0, 0, 0, 0, 0, 1792, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1801, 0, 0, 0,
  37486. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1818, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 326,
  37487. 326, 376, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 630, 302, 0, 4268032,
  37488. 633, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37489. 0, 0, 0, 2806, 0, 0, 0, 0, 0, 0, 0, 0, 2814, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37490. 581632, 0, 0, 0, 581632, 581632, 581632, 581632, 581632, 581632, 581632, 581632, 581632, 581632, 581632,
  37491. 581632, 581632, 581632, 581632, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37492. 0, 0, 0, 0, 0, 0, 0, 340, 581632, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305,
  37493. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3172, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37494. 521, 3183, 521, 521, 3187, 521, 521, 6258688, 6447104, 0, 0, 6127616, 0, 6348800, 5906432, 0, 5537792,
  37495. 3774, 0, 0, 0, 0, 5939200, 0, 0, 5677056, 6365184, 4866048, 0, 6070272, 5545984, 5152768, 0, 0, 6144000,
  37496. 4358144, 4866048, 4882432, 4358144, 4358144, 4358144, 0, 901, 900, 900, 900, 900, 900, 4858756, 4875140,
  37497. 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 900, 5260164, 900, 900, 900, 900, 900, 900,
  37498. 900, 900, 6103940, 900, 900, 900, 6185860, 900, 900, 900, 6284164, 900, 900, 6333316, 900, 900, 900,
  37499. 6390660, 900, 900, 6431620, 6439812, 0, 0, 0, 0, 5537792, 5545984, 5586944, 5734400, 5971968, 4358144,
  37500. 6045696, 4358144, 6070272, 4358144, 4358144, 4358144, 4358144, 6348800, 4358144, 6144000, 0, 6144000, 0,
  37501. 4988928, 5005312, 0, 0, 0, 0, 5775360, 0, 0, 0, 3869, 0, 0, 0, 0, 0, 787, 0, 0, 521, 521, 521, 521, 521,
  37502. 847, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  37503. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60869, 57909, 57909,
  37504. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59939,
  37505. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59946, 57909, 59948, 57909, 59951, 57909, 57909,
  37506. 4358144, 5005312, 4358144, 4358144, 4358144, 5120000, 5136384, 4358144, 4358144, 4358144, 4358144,
  37507. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6324224, 5914624, 5914624, 0, 0, 0, 0, 0, 5513216,
  37508. 5783552, 0, 3869, 0, 0, 0, 0, 0, 0, 2822, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2830, 0, 0, 521, 521, 521, 521, 521,
  37509. 521, 521, 521, 521, 521, 521, 521, 521, 1938, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37510. 521, 521, 521, 521, 521, 521, 1387, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0,
  37511. 310, 311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3638,
  37512. 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 310, 0, 451, 465, 465, 465, 478, 478, 478, 478, 478, 478,
  37513. 478, 478, 478, 499, 478, 478, 478, 478, 517, 478, 478, 478, 517, 478, 478, 478, 478, 478, 478, 522, 57888,
  37514. 522, 57888, 522, 522, 57888, 522, 522, 57911, 57888, 522, 522, 57888, 57888, 57888, 57911, 57888, 57888,
  37515. 57888, 57888, 57888, 57888, 57888, 57911, 57911, 57888, 57888, 57938, 57888, 57888, 57888, 57888, 57888,
  37516. 57888, 57888, 57938, 57938, 57888, 57888, 57888, 57888, 57938, 57938, 57888, 522, 57888, 57888, 57888, 1,
  37517. 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 638, 0, 0, 641,
  37518. 642, 0, 0, 0, 0, 0, 0, 745, 0, 0, 0, 0, 0, 0, 751, 0, 0, 0, 0, 0, 0, 0, 0, 761, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37519. 1279, 0, 0, 0, 0, 1284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1292, 0, 0, 0, 0, 0, 0, 0, 0, 743, 0, 0, 0, 0,
  37520. 638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 758, 0, 0, 0, 0, 764, 0, 0, 768, 0, 0, 0, 0, 0, 0, 3115, 0, 0, 0, 0, 0,
  37521. 0, 0, 0, 0, 3121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1175, 0,
  37522. 1177, 1178, 0, 0, 0, 0, 0, 0, 0, 776, 0, 0, 0, 0, 780, 0, 0, 0, 0, 0, 0, 0, 784, 0, 0, 0, 0, 0, 0, 0, 0,
  37523. 0, 0, 0, 0, 641, 0, 0, 0, 0, 0, 3114, 0, 0, 0, 0, 0, 3118, 0, 0, 0, 0, 0, 0, 0, 3124, 3125, 3126, 0, 0, 0,
  37524. 0, 0, 0, 0, 0, 0, 0, 1306, 0, 0, 0, 1310, 0, 0, 0, 0, 1313, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521,
  37525. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  37526. 57886, 57886, 57886, 57886, 57886, 57886, 61024, 57886, 57886, 0, 824, 825, 0, 0, 0, 0, 780, 521, 521,
  37527. 834, 838, 521, 521, 850, 521, 521, 521, 866, 521, 871, 521, 879, 521, 882, 521, 521, 896, 521, 57886,
  37528. 57886, 57886, 57886, 57886, 57886, 59898, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909, 57909,
  37529. 57909, 57909, 59913, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37530. 59448, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59461, 57909, 57909,
  37531. 57909, 57909, 57909, 57909, 57909, 58253, 58257, 57886, 57886, 58269, 57886, 57886, 57886, 58285, 57886,
  37532. 58290, 57886, 58298, 57886, 58301, 57886, 57886, 58315, 57886, 0, 57909, 57909, 57909, 58329, 58333,
  37533. 57909, 57909, 58345, 57909, 57909, 57909, 58361, 57909, 58366, 57909, 58374, 57909, 58377, 57909, 57909,
  37534. 58391, 57909, 0, 0, 0, 0, 58290, 57936, 57936, 57936, 58404, 58408, 57936, 57936, 58420, 57936, 57936,
  37535. 57936, 58436, 57936, 58441, 57936, 58449, 57936, 0, 0, 0, 0, 521, 521, 521, 521, 521, 4172, 521, 57886,
  37536. 57886, 57886, 57886, 57886, 61522, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 61528, 57909, 57909,
  37537. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59544, 57936, 57936, 57936, 57936,
  37538. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59557, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37539. 57936, 57936, 57936, 57936, 59545, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37540. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59014, 57936, 57936, 57936, 57936,
  37541. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58452, 57936, 57936, 58466, 57936, 834,
  37542. 838, 1128, 882, 521, 521, 0, 58257, 58253, 58478, 58301, 57886, 57886, 155941, 1138, 0, 0, 1141, 0, 0,
  37543. 1146, 0, 0, 0, 0, 0, 0, 0, 0, 6103040, 0, 0, 0, 6184960, 0, 0, 0, 6283264, 0, 0, 6332416, 0, 0, 0,
  37544. 6389760, 0, 0, 6430720, 6438912, 977, 0, 0, 0, 0, 0, 1210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37545. 0, 0, 0, 0, 1231, 0, 0, 0, 0, 0, 0, 0, 0, 377, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 139264,
  37546. 147456, 0, 0, 0, 0, 0, 57886, 58831, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37547. 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37548. 57909, 57909, 57909, 57909, 57909, 59964, 57909, 57909, 57909, 57909, 59969, 57909, 57909, 57909, 57909,
  37549. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 1753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37550. 0, 0, 0, 0, 0, 0, 1777, 0, 0, 0, 0, 0, 0, 0, 0, 1188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 1199, 0,
  37551. 0, 0, 0, 0, 0, 0, 0, 0, 688, 0, 0, 0, 0, 367, 367, 367, 0, 0, 697, 0, 0, 0, 0, 0, 0, 0, 704, 0, 0, 0, 0,
  37552. 0, 0, 0, 1813, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37553. 2815, 0, 0, 1861, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1874, 521, 521, 521, 521,
  37554. 521, 521, 521, 521, 521, 1887, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886,
  37555. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37556. 57886, 57886, 57886, 57886, 61044, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 521, 521, 521,
  37557. 521, 521, 1929, 521, 521, 1932, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1945, 521, 521, 521,
  37558. 521, 521, 521, 1951, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886,
  37559. 57886, 57886, 57886, 57886, 59828, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37560. 57886, 59380, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37561. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 61166, 57909, 57909, 57909, 61169,
  37562. 57909, 57909, 57909, 57909, 521, 58754, 1960, 57886, 57886, 57886, 57886, 57886, 59311, 57886, 57886,
  37563. 57886, 57886, 57886, 59317, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59330, 57886,
  37564. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60835, 57886, 57886, 57886, 57886, 57886, 57886,
  37565. 57886, 57886, 57886, 57886, 60845, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60854,
  37566. 57886, 50657, 2060, 57909, 57909, 57909, 57909, 57909, 59411, 57909, 57909, 57909, 57909, 57909, 59417,
  37567. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59430, 57909, 57909, 57909, 57909, 57909,
  37568. 57909, 57909, 57909, 57909, 57909, 57909, 58890, 57909, 57909, 57909, 58893, 57909, 57909, 57909, 57909,
  37569. 57909, 57909, 57909, 58900, 57909, 57909, 58904, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37570. 59472, 57909, 57909, 59475, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59489,
  37571. 57909, 57909, 57909, 57909, 57909, 57909, 59495, 57909, 57909, 57909, 57909, 57909, 57909, 57886, 1,
  37572. 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37573. 0, 0, 0, 3413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3151, 0, 0, 0, 3155, 0, 3157, 0, 0, 0,
  37574. 0, 0, 0, 0, 0, 57936, 57936, 57936, 57936, 57936, 59507, 57936, 57936, 57936, 57936, 57936, 59513, 57936,
  37575. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59526, 57936, 57936, 57936, 57936, 57936, 57936,
  37576. 57936, 57936, 57936, 57936, 57936, 57936, 59579, 57936, 57936, 57936, 57936, 57936, 57936, 59587, 57936,
  37577. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886,
  37578. 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 3105, 0, 0, 0, 0, 0, 0, 57936, 57936, 59568, 57936, 57936,
  37579. 59571, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59585, 57936, 57936, 57936,
  37580. 57936, 57936, 57936, 59591, 57936, 57936, 57936, 57936, 57936, 57936, 521, 2256, 521, 521, 521, 57886,
  37581. 59605, 57886, 57886, 57886, 2265, 0, 2266, 0, 0, 0, 0, 2268, 0, 2269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2275, 0,
  37582. 0, 0, 0, 0, 0, 791, 0, 521, 521, 521, 521, 521, 521, 521, 521, 859, 521, 521, 521, 521, 521, 521, 521,
  37583. 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 2265, 0, 2266, 0, 0, 0, 0, 2268, 0, 2269, 0,
  37584. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 212992, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1737,
  37585. 1738, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37586. 417792, 0, 0, 0, 0, 417792, 0, 0, 0, 0, 0, 309, 0, 309, 0, 0, 0, 0, 2331, 0, 2333, 0, 0, 0, 0, 0, 0, 0, 0,
  37587. 1806, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1826, 0, 1828, 0, 0, 0, 0, 0, 0, 0, 1835,
  37588. 0, 0, 521, 2464, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37589. 57886, 57886, 57886, 57886, 59829, 57886, 57886, 59832, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37590. 57886, 60265, 57886, 57886, 57886, 57886, 60268, 57886, 57886, 60270, 57886, 60271, 57886, 57886, 57886,
  37591. 57886, 57886, 57886, 57886, 57886, 57886, 60280, 57886, 57886, 60284, 59840, 57886, 57886, 57886, 57886,
  37592. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37593. 57886, 57886, 57886, 57886, 59860, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61032,
  37594. 57886, 57886, 57886, 57886, 57886, 57886, 61038, 57886, 61040, 57886, 57886, 57886, 57886, 57886, 57886,
  37595. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37596. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37597. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61089, 57936, 57936, 57936, 57909, 57909, 57909,
  37598. 57909, 59929, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37599. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59949, 57909, 57909, 57909, 57909,
  37600. 57909, 57909, 57909, 57909, 58886, 57909, 58888, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37601. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936,
  37602. 57936, 60375, 57936, 60376, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60012, 57936,
  37603. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37604. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60032, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37605. 57936, 57936, 57936, 60070, 57936, 57936, 57936, 2405, 521, 521, 521, 521, 59836, 57886, 57886, 57886,
  37606. 57886, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2399, 521, 521,
  37607. 521, 521, 521, 521, 521, 521, 521, 521, 521, 2446, 521, 521, 521, 521, 521, 521, 521, 2452, 521, 521, 521,
  37608. 521, 521, 521, 2457, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2847, 521, 521, 521, 521,
  37609. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37610. 2889, 521, 521, 521, 521, 521, 521, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37611. 60315, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60323, 57909, 57909,
  37612. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58924, 57909, 57909, 58928, 57909, 57909,
  37613. 57909, 57909, 57909, 58935, 57909, 57909, 57909, 58942, 57909, 0, 57886, 57936, 57936, 57936, 57936,
  37614. 60359, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37615. 60370, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37616. 60380, 57936, 0, 0, 0, 0, 521, 521, 521, 4170, 4171, 521, 521, 57886, 57886, 57886, 61520, 61521, 57886,
  37617. 57886, 57886, 57909, 57909, 57909, 61526, 61527, 57909, 57909, 57909, 57936, 57936, 57936, 61532, 57936,
  37618. 57936, 60435, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  37619. 57886, 301, 305, 0, 0, 0, 0, 3104, 0, 0, 0, 3108, 0, 0, 0, 0, 0, 0, 3142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37620. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262731, 0, 0, 0, 0, 0, 0, 0, 0, 3113, 0, 0, 0, 0, 0, 0, 0, 0,
  37621. 0, 0, 0, 0, 0, 0, 3123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3136, 57909, 60627, 57909, 57909, 57909,
  37622. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60636, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37623. 57909, 57909, 57909, 57909, 57909, 60644, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37624. 57909, 57909, 61057, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37625. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61062, 57909, 57909, 57909, 57909, 57909, 57909,
  37626. 57909, 57909, 57909, 57909, 57909, 57936, 57936, 60676, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37627. 57936, 57936, 57936, 60685, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37628. 57936, 60693, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886, 57886,
  37629. 57886, 57886, 57886, 155941, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1192, 1193, 0, 0, 0, 0, 0, 367, 367,
  37630. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60915, 57936, 57936, 57936,
  37631. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37632. 57936, 60933, 57936, 60935, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60703, 57936,
  37633. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886,
  37634. 0, 0, 0, 0, 0, 0, 0, 2748, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37635. 352256, 0, 352256, 352256, 0, 0, 0, 0, 521, 3948, 521, 3950, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37636. 521, 521, 57886, 61307, 57886, 61309, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37637. 57886, 57886, 57886, 58807, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37638. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59347, 57886, 57886, 57886, 57886, 57886, 57886,
  37639. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61165,
  37640. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61170, 57909, 57909, 57909, 57909, 61323, 57909, 61325,
  37641. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 61339, 57936,
  37642. 61341, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37643. 3859, 521, 61204, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 4012, 0, 0, 0, 4015, 0, 0,
  37644. 521, 521, 521, 521, 4020, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  37645. 61377, 57886, 57886, 57886, 57886, 57886, 57909, 60861, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37646. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37647. 57909, 57909, 57909, 60352, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0, 312, 313, 314, 0, 0, 0, 0,
  37648. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2765, 0, 0, 0, 0, 0, 0, 426, 0,
  37649. 131072, 0, 0, 0, 426, 0, 0, 0, 0, 0, 426, 452, 0, 0, 0, 452, 452, 452, 452, 452, 452, 452, 452, 452, 452,
  37650. 452, 452, 452, 516, 452, 516, 516, 516, 452, 516, 516, 516, 516, 516, 516, 523, 57889, 523, 57889, 523,
  37651. 523, 57889, 523, 523, 57912, 57889, 523, 523, 57889, 57889, 57889, 57912, 57889, 57889, 57889, 57889,
  37652. 57889, 57889, 57889, 57912, 57912, 57889, 57889, 57939, 57889, 57889, 57889, 57889, 57889, 57889, 57889,
  37653. 57939, 57939, 57889, 57889, 57889, 57889, 57939, 57939, 57889, 614, 57889, 57966, 57966, 1, 24578, 3,
  37654. 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37655. 385024, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37656. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 57909, 57909, 58370, 57909, 57909, 57909,
  37657. 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37658. 57936, 57936, 57936, 57936, 57936, 57936, 58445, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37659. 57936, 61199, 57936, 57936, 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627,
  37660. 0, 0, 0, 0, 0, 805, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 641, 0, 0, 0, 0, 0, 820, 780, 0, 0, 0, 0, 0,
  37661. 0, 754, 0, 0, 754, 0, 0, 0, 0, 0, 754, 754, 0, 0, 815, 0, 0, 0, 0, 0, 0, 0, 0, 0, 754, 0, 0, 0, 0, 0, 0,
  37662. 2770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2379, 0, 0, 0,
  37663. 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 60312, 57909, 57909, 57909, 57909, 60316, 57909, 57909,
  37664. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37665. 57909, 60345, 57909, 57909, 57909, 57909, 60349, 57909, 57909, 57909, 60354, 57909, 57909, 57909, 57909,
  37666. 60381, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37667. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37668. 57936, 57936, 60432, 57936, 57936, 57936, 57936, 57936, 60436, 57936, 57936, 57936, 521, 521, 521, 521,
  37669. 521, 57886, 57886, 57886, 57886, 57886, 301, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3387, 0, 0, 0, 0, 0,
  37670. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2807, 0, 0, 0, 0, 0, 2812, 0, 0, 0, 0, 0, 57886, 61381,
  37671. 57886, 61383, 57886, 57886, 61385, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37672. 61395, 57909, 61397, 57909, 57909, 61399, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37673. 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  37674. 57886, 57886, 57886, 57936, 61409, 57936, 61411, 57936, 57936, 61413, 57936, 57936, 0, 0, 0, 0, 0, 0, 0,
  37675. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0,
  37676. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2271, 0, 0, 0, 0, 0, 0, 0, 0, 0, 350, 351, 352, 0, 0, 0, 0, 0, 0, 0,
  37677. 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 295, 0, 319, 319, 427, 428, 131072, 435, 428, 436, 427, 435, 436, 0,
  37678. 315, 436, 448, 453, 466, 466, 466, 479, 479, 479, 479, 479, 479, 479, 479, 479, 479, 501, 501, 501, 514,
  37679. 514, 515, 515, 501, 515, 515, 515, 501, 515, 515, 515, 515, 515, 515, 524, 57890, 524, 57890, 524, 524,
  37680. 57890, 524, 524, 57913, 57890, 524, 524, 57890, 57890, 57890, 57913, 57890, 57890, 57890, 57890, 57890,
  37681. 57890, 57890, 57913, 57913, 57890, 57890, 57940, 57890, 57890, 57890, 57890, 57890, 57890, 57890, 57940,
  37682. 57940, 57890, 57890, 57890, 57890, 57940, 57940, 57890, 615, 57965, 57965, 57965, 1, 24578, 3, 155941,
  37683. 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 401408, 0,
  37684. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1198, 367, 367, 0, 0, 1201, 0, 0, 0, 1204, 0, 1206,
  37685. 0, 679, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37686. 0, 5242880, 0, 0, 0, 0, 0, 5603328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57909, 57909, 57909, 57909, 57909,
  37687. 58378, 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37688. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59553, 57936, 57936, 57936, 57936,
  37689. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58453, 57936, 57936, 57936, 57936,
  37690. 521, 521, 521, 883, 521, 521, 0, 57886, 57886, 57886, 58302, 57886, 57886, 155941, 1138, 0, 0, 0, 0, 0, 0,
  37691. 0, 0, 0, 0, 0, 0, 3411, 0, 0, 0, 3415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 57886, 521,
  37692. 57886, 521, 521, 57886, 521, 521, 57909, 57886, 521, 521, 57886, 57886, 57886, 57909, 521, 521, 521,
  37693. 58754, 901, 57886, 57886, 58758, 57886, 57886, 58762, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37694. 57886, 58776, 57886, 58781, 57886, 57886, 58785, 57886, 57886, 58788, 57886, 57886, 57886, 57886, 57886,
  37695. 57886, 58279, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0,
  37696. 57909, 57909, 58322, 57909, 57909, 57909, 57909, 57909, 57909, 58355, 57909, 57909, 57909, 58876, 57909,
  37697. 57909, 58880, 57909, 57909, 58883, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37698. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58902,
  37699. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 58951, 57936, 57936, 57936, 57936, 57936, 57936,
  37700. 57936, 57936, 58965, 57936, 58970, 57936, 57936, 58974, 57936, 57936, 58977, 57936, 57936, 57936, 57936,
  37701. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 57886, 57886, 3861, 0, 0,
  37702. 0, 3863, 0, 0, 0, 0, 0, 0, 3627, 3870, 0, 1723, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37703. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 385, 521, 521, 521, 1927, 1928, 521, 521, 521, 521, 521, 521, 521,
  37704. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37705. 2433, 521, 521, 521, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37706. 57886, 57886, 57886, 59320, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59332, 57886,
  37707. 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 61494, 57909, 61495, 57909, 57909, 57909, 57909,
  37708. 57909, 57909, 57909, 57909, 57936, 57936, 61502, 57936, 61503, 57936, 57936, 57936, 57936, 57936, 57936,
  37709. 57936, 57936, 57936, 57936, 57936, 60018, 57936, 60020, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37710. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60396, 57936, 57936, 57936,
  37711. 57936, 57936, 57936, 57936, 60401, 57936, 57936, 57936, 57936, 57936, 57886, 57886, 59370, 59371, 57886,
  37712. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37713. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 50657, 0,
  37714. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59420, 57909,
  37715. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59432, 57909, 57909, 57909, 57909, 57909, 57909,
  37716. 57909, 57909, 57909, 57909, 59446, 57909, 57909, 57909, 59450, 57909, 57909, 59455, 57909, 57909, 57909,
  37717. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59990, 57936, 57936, 57936,
  37718. 57936, 57936, 57936, 57936, 59998, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57909,
  37719. 59470, 59471, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37720. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37721. 57886, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0,
  37722. 0, 0, 643, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37723. 521, 3447, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1341, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37724. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3200, 521, 521, 521, 521, 521, 521, 521,
  37725. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 61016, 57886, 57886, 57886, 61019, 57886, 57886,
  37726. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59566, 59567, 57936, 57936, 57936, 57936, 57936, 57936,
  37727. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37728. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0,
  37729. 0, 0, 0, 0, 0, 0, 0, 2304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37730. 0, 0, 0, 3162, 0, 0, 521, 2437, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2450,
  37731. 521, 521, 521, 521, 521, 2454, 2455, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1374, 521, 1376, 521,
  37732. 521, 521, 521, 521, 521, 521, 1389, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1404, 57886,
  37733. 57886, 57886, 57886, 59869, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37734. 57886, 57886, 59882, 57886, 57886, 57886, 57886, 57886, 59886, 59887, 59888, 57886, 57886, 57886, 57886,
  37735. 57886, 57886, 57886, 58800, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37736. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58822, 57886, 57886, 57886, 57886, 0, 0, 0, 2744,
  37737. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114688, 0, 0,
  37738. 57886, 57886, 57886, 60288, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37739. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 2962, 0, 0,
  37740. 0, 0, 0, 826, 0, 0, 521, 521, 521, 521, 521, 849, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37741. 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 60863, 57909, 57909, 57909,
  37742. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60875, 57909, 57909, 57909,
  37743. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59447, 57909, 57909, 57909, 57909, 57909, 57909,
  37744. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936,
  37745. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60672, 3137, 0, 0, 0, 0, 0, 0, 0, 0,
  37746. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1837, 0, 0, 0, 3166, 0, 0, 3169, 0,
  37747. 0, 0, 0, 0, 0, 0, 3173, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37748. 521, 2451, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3379, 0, 0, 0, 0, 0, 0,
  37749. 0, 3383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3422, 0, 0, 0, 0, 0, 0,
  37750. 3429, 521, 3458, 3459, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37751. 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60827, 57886, 1, 24578, 3,
  37752. 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 640, 0, 0, 0, 0, 0, 0,
  37753. 0, 695, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 883, 521, 521,
  37754. 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 2267, 0, 1142, 0, 0, 0, 0, 2270, 0, 1147, 0, 0,
  37755. 0, 0, 0, 0, 0, 0, 0, 0, 1795, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1809, 57909,
  37756. 60884, 57909, 60886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37757. 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37758. 57936, 60000, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60911, 57936, 57936, 57936, 57936, 57936,
  37759. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60926, 57936, 60928,
  37760. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60045, 60046,
  37761. 57936, 57936, 57936, 57936, 57936, 57936, 60053, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37762. 57936, 57936, 61072, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37763. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37764. 57936, 57936, 57936, 57936, 59595, 57936, 57936, 57936, 1881, 521, 4010, 0, 4011, 0, 0, 0, 0, 0, 0, 0,
  37765. 521, 4018, 521, 4019, 521, 521, 521, 4023, 521, 521, 521, 521, 521, 521, 521, 57886, 61375, 57886, 61376,
  37766. 57886, 57886, 57886, 57886, 57886, 57886, 60264, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60269,
  37767. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60275, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37768. 60283, 57886, 61380, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 61389, 57909, 61390,
  37769. 57909, 57909, 57909, 61394, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 61403, 57936,
  37770. 61404, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60388, 57936, 57936, 57936,
  37771. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37772. 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 3376, 0, 0, 61408, 57936, 57936, 57936,
  37773. 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37774. 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 1710, 0, 0, 0, 0, 0, 0, 1717, 0, 0, 0, 0, 0, 0,
  37775. 0, 0, 0, 0, 0, 0, 0, 2338, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2294, 0, 0, 0,
  37776. 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 4213, 57886, 57886, 57886, 61559, 57909, 57909, 57909, 61561,
  37777. 57936, 57936, 57936, 61563, 0, 521, 521, 57886, 57886, 57909, 57909, 57936, 57936, 521, 57886, 57909,
  37778. 57936, 521, 521, 521, 521, 521, 521, 0, 2471, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37779. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37780. 59858, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 376, 0, 131072, 0, 0, 0, 376,
  37781. 0, 0, 438, 444, 0, 376, 454, 467, 467, 467, 480, 480, 480, 480, 480, 480, 480, 480, 480, 480, 502, 502,
  37782. 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, 502, 525, 57891, 525, 57891, 525, 525, 57891,
  37783. 525, 525, 57914, 57891, 525, 525, 57891, 57891, 57891, 57914, 57891, 57891, 57891, 57891, 57891, 57891,
  37784. 57891, 57914, 57914, 57891, 57891, 57941, 57891, 57891, 57891, 57891, 57891, 57891, 57891, 57941, 57941,
  37785. 57891, 57891, 57891, 57891, 57941, 57941, 57891, 525, 57891, 57891, 57891, 1, 24578, 3, 155941, 155941,
  37786. 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 229376, 0, 491520,
  37787. 524288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37788. 1180, 1181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37789. 719, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729, 0, 0, 0, 0, 0, 0, 0, 0, 0, 738, 0, 0, 1166, 0, 1298, 0, 0, 0, 0, 0,
  37790. 0, 0, 0, 0, 1284, 0, 0, 0, 1312, 1180, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 1321, 521, 521, 521, 0, 0, 0, 0,
  37791. 0, 0, 57886, 60241, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37792. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58814, 57886, 57886, 57886, 57886, 57886,
  37793. 57886, 57886, 57886, 57886, 57886, 521, 521, 521, 521, 521, 1371, 521, 521, 1373, 521, 521, 521, 521,
  37794. 1378, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1403, 521, 521, 521,
  37795. 521, 521, 521, 521, 521, 3196, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3203, 521, 521, 521,
  37796. 521, 521, 521, 521, 521, 521, 521, 521, 1902, 521, 521, 521, 521, 521, 521, 521, 521, 1913, 521, 521, 521,
  37797. 521, 521, 521, 521, 521, 521, 521, 521, 1935, 521, 521, 521, 1941, 521, 521, 521, 521, 521, 521, 521, 521,
  37798. 521, 1950, 521, 521, 521, 521, 1956, 521, 521, 521, 521, 58754, 901, 57886, 57886, 58759, 57886, 57886,
  37799. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58786,
  37800. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61247, 57886, 57886, 57909, 57909, 57909,
  37801. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61263, 57909,
  37802. 57909, 57936, 57909, 57909, 57909, 57909, 58881, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37803. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58896, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37804. 58905, 57909, 57909, 58907, 57909, 57909, 57909, 57909, 58912, 57909, 57909, 57909, 57909, 57909, 57909,
  37805. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58937, 57909, 57909, 57909, 57909,
  37806. 0, 58812, 57936, 57936, 58948, 57936, 0, 0, 0, 0, 521, 521, 4169, 521, 521, 521, 4173, 57886, 57886,
  37807. 61519, 57886, 57886, 57886, 61523, 57886, 57909, 57909, 61525, 57909, 57909, 57909, 61529, 57909, 57936,
  37808. 57936, 61531, 57936, 0, 0, 0, 0, 4168, 521, 521, 521, 521, 521, 521, 61518, 57886, 57886, 57886, 57886,
  37809. 57886, 57886, 57886, 61524, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61530, 57936, 57936, 57936,
  37810. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61274, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37811. 521, 57886, 0, 3938, 0, 0, 3941, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521,
  37812. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1883, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2876, 521,
  37813. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37814. 57886, 60819, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57936, 57936, 57936,
  37815. 57936, 57936, 57936, 57936, 58999, 57936, 57936, 59001, 57936, 57936, 57936, 57936, 59007, 57936, 57936,
  37816. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59519,
  37817. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59530, 57936, 57936, 57936, 57936, 57936,
  37818. 59032, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  37819. 1138, 1705, 0, 0, 0, 0, 1712, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37820. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2410, 521, 521, 521, 2259, 57886, 57886,
  37821. 57886, 57886, 59608, 2265, 0, 2266, 0, 0, 0, 0, 2268, 0, 2269, 0, 0, 0, 0, 0, 2272, 0, 0, 0, 0, 0, 0, 0,
  37822. 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37823. 2408, 521, 521, 521, 521, 521, 521, 521, 521, 2416, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37824. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1397, 521, 521, 521, 521, 521,
  37825. 57886, 59893, 57886, 59895, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909,
  37826. 57909, 57909, 57909, 57909, 57909, 57909, 59916, 57909, 57909, 57909, 57909, 59920, 57909, 57909, 57909,
  37827. 57909, 57909, 57909, 57909, 57909, 59958, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37828. 57909, 57909, 57909, 57909, 59971, 57909, 57909, 57909, 57909, 57909, 59975, 59976, 59977, 57909, 57909,
  37829. 57909, 57909, 57909, 57909, 59982, 57909, 59984, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936,
  37830. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59999, 57936, 57936, 57936, 57936, 60003, 57936, 57936,
  37831. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60683, 57936, 57936, 57936, 57936, 57936, 57936,
  37832. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37833. 521, 3369, 521, 57886, 60716, 57886, 0, 0, 0, 0, 0, 57936, 57936, 57936, 57936, 57936, 60065, 57936,
  37834. 60067, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  37835. 57886, 2739, 2266, 0, 2740, 2269, 0, 0, 0, 0, 0, 0, 3622, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37836. 0, 0, 0, 0, 0, 0, 0, 0, 0, 415, 415, 0, 0, 0, 0, 0, 60285, 57886, 57886, 57886, 57886, 57886, 57886,
  37837. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37838. 57886, 57886, 57886, 57886, 57886, 57886, 0, 2962, 0, 0, 0, 0, 0, 1156, 1157, 1158, 1159, 0, 0, 0, 0, 0,
  37839. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 791, 0, 0, 0, 0, 0, 0, 0, 791, 0, 0, 57909, 57909,
  37840. 57909, 60310, 57909, 60311, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37841. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59460, 57909,
  37842. 57909, 57909, 57909, 57909, 59467, 57909, 521, 521, 3191, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37843. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3204, 521, 521, 521, 521, 521, 521, 521, 3210,
  37844. 57886, 57886, 57886, 60582, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37845. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60596, 57886, 57886, 57886, 57886,
  37846. 57886, 57886, 57886, 57886, 60606, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 57909,
  37847. 57909, 57909, 57909, 60617, 57909, 57909, 57909, 57909, 57909, 57909, 60624, 57909, 57886, 60602, 57886,
  37848. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 2962, 0,
  37849. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61182,
  37850. 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37851. 57936, 57936, 58975, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37852. 57936, 57936, 57936, 58990, 57909, 57909, 57909, 57909, 60651, 57909, 57909, 57909, 57909, 57909, 57909,
  37853. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  37854. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37855. 57936, 57936, 57936, 57936, 60680, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37856. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60694, 57936, 57936, 57936,
  37857. 57936, 57936, 57936, 57936, 57936, 57936, 61273, 57936, 61275, 57936, 57936, 57936, 57936, 57936, 57936,
  37858. 521, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37859. 521, 521, 521, 1878, 1879, 521, 521, 521, 521, 1886, 521, 521, 521, 521, 521, 521, 521, 521, 1337, 521,
  37860. 1342, 521, 521, 1346, 521, 521, 1349, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37861. 521, 521, 1380, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1396, 521, 521, 521, 521, 521, 57936,
  37862. 57936, 57936, 57936, 57936, 60700, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37863. 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 3768, 0, 0, 0, 0,
  37864. 57909, 61073, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37865. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37866. 57936, 57936, 60030, 57936, 57936, 57936, 57936, 57936, 0, 521, 521, 521, 521, 521, 521, 3953, 521, 521,
  37867. 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 61312, 57886, 57886, 57886, 57886,
  37868. 57886, 57886, 57886, 57886, 57886, 57886, 2557, 0, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37869. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37870. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59466, 57909, 57909, 57909, 57909, 57909, 57909,
  37871. 57909, 57909, 61328, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936,
  37872. 57936, 57936, 57936, 61344, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0,
  37873. 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886,
  37874. 61382, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37875. 57909, 61396, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37876. 57936, 57936, 61080, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37877. 57936, 57936, 61090, 57936, 57936, 57936, 57936, 61410, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0,
  37878. 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  37879. 57886, 2265, 1706, 2266, 0, 0, 0, 0, 2268, 1713, 2269, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1243, 0,
  37880. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2353, 0, 0, 330, 0, 0, 0, 0, 0, 0, 375, 0, 0, 0, 0, 0, 0, 0, 0,
  37881. 0, 0, 0, 0, 0, 0, 330, 0, 139264, 147456, 0, 0, 0, 0, 0, 0, 0, 1842, 0, 0, 1845, 0, 0, 0, 0, 0, 0, 1851,
  37882. 1852, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1845, 0, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 329, 0, 0, 0, 0, 455,
  37883. 468, 468, 468, 481, 481, 481, 481, 492, 494, 481, 481, 492, 481, 503, 503, 503, 503, 518, 503, 503, 503,
  37884. 518, 503, 503, 503, 503, 503, 503, 526, 57892, 526, 57892, 526, 526, 57892, 526, 526, 57915, 57892, 526,
  37885. 526, 57892, 57892, 57892, 57915, 57892, 57892, 57892, 57892, 57892, 57892, 57892, 57915, 57915, 57892,
  37886. 57892, 57942, 57892, 57892, 57892, 57892, 57892, 57892, 57892, 57942, 57942, 57892, 57892, 57892, 57892,
  37887. 57942, 57942, 57892, 526, 57892, 57892, 57892, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302,
  37888. 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2310144, 0, 0, 0, 0, 0, 0, 0, 2310144, 2310144,
  37889. 0, 0, 0, 0, 0, 0, 0, 0, 2310144, 0, 0, 0, 0, 0, 651, 652, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 663, 664, 0, 0, 0,
  37890. 0, 0, 0, 0, 0, 0, 0, 0, 676, 677, 678, 0, 0, 0, 682, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0,
  37891. 0, 0, 0, 700, 701, 0, 0, 0, 0, 0, 707, 0, 0, 0, 0, 0, 3141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37892. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450560, 450560, 0, 0, 0, 0, 0, 711, 0, 713, 0, 0, 0, 0, 0, 0, 720, 0,
  37893. 0, 0, 724, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2756, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37894. 0, 0, 0, 0, 742, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 752, 0, 0, 0, 0, 0, 0, 759, 0, 0, 0, 765, 766, 0, 0, 0, 0,
  37895. 0, 0, 0, 2308, 0, 0, 0, 0, 2313, 2314, 0, 0, 2316, 2317, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 270336,
  37896. 0, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37897. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 0,
  37898. 305, 0, 0, 4857856, 4874240, 0, 0, 4923392, 0, 0, 0, 775, 0, 777, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37899. 0, 789, 0, 794, 0, 797, 0, 0, 0, 0, 0, 0, 777, 0, 789, 0, 803, 0, 0, 0, 0, 797, 809, 0, 0, 0, 0, 0, 809,
  37900. 809, 812, 0, 0, 0, 777, 0, 0, 0, 0, 0, 821, 0, 0, 0, 0, 0, 0, 806, 0, 0, 806, 0, 0, 0, 0, 0, 806, 806, 0,
  37901. 0, 0, 0, 786, 0, 0, 0, 0, 0, 0, 822, 782, 0, 0, 0, 0, 0, 775, 0, 0, 0, 821, 521, 521, 835, 521, 841, 521,
  37902. 521, 856, 521, 521, 867, 521, 872, 521, 521, 881, 884, 889, 521, 897, 521, 57886, 57886, 57886, 57886,
  37903. 57886, 57886, 60291, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37904. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 2962, 0, 0, 58254, 57886, 58260, 57886,
  37905. 57886, 58275, 57886, 57886, 58286, 57886, 58291, 57886, 57886, 58300, 58303, 58308, 57886, 58316, 57886,
  37906. 0, 57909, 57909, 57909, 58330, 57909, 58336, 57909, 57909, 58351, 57909, 57909, 58362, 57909, 58367,
  37907. 57909, 57909, 58376, 58379, 58384, 57909, 58392, 57909, 0, 0, 0, 0, 58291, 57936, 57936, 57936, 58405,
  37908. 57936, 58411, 57936, 57936, 58426, 57936, 57936, 58437, 57936, 58442, 57936, 57936, 58451, 58454, 58459,
  37909. 57936, 58467, 57936, 835, 521, 521, 1129, 889, 521, 0, 57886, 58254, 57886, 58479, 58308, 57886, 155941,
  37910. 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2326528, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144,
  37911. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37912. 4358144, 0, 0, 1153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1163, 0, 0, 0, 0, 0, 0, 0, 1170, 0, 0, 0, 0, 0, 0, 0, 0,
  37913. 0, 0, 0, 1051, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37914. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37915. 4358144, 6299648, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  37916. 4358144, 4358144, 4358144, 4358144, 0, 1209, 0, 0, 0, 0, 0, 0, 0, 0, 1218, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37917. 0, 0, 0, 0, 0, 0, 1235, 0, 0, 1187, 0, 0, 0, 0, 0, 3434, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37918. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3451, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886,
  37919. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59827, 57886, 57886, 57886, 57886, 59831, 57886,
  37920. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58801, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37921. 58810, 57886, 57886, 58812, 57886, 57886, 57886, 57886, 58817, 57886, 57886, 57886, 57886, 57886, 57886,
  37922. 57886, 57886, 57886, 61388, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37923. 57909, 57909, 57909, 57909, 61402, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 742, 0, 0, 0, 0,
  37924. 0, 0, 0, 0, 0, 0, 0, 0, 1258, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5857280, 0, 6463488, 4939776, 0,
  37925. 0, 5455872, 0, 0, 0, 0, 0, 0, 0, 0, 6062080, 6463488, 0, 5398528, 0, 521, 521, 521, 521, 1328, 521, 521,
  37926. 521, 521, 521, 521, 1343, 521, 521, 521, 1348, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37927. 521, 521, 521, 1365, 521, 1407, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37928. 57886, 57886, 58767, 57886, 57886, 57886, 57886, 57886, 57886, 58782, 57886, 57886, 57886, 58787, 57886,
  37929. 57886, 57886, 57886, 57886, 57886, 57886, 58839, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754,
  37930. 977, 57909, 57909, 57909, 58855, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58869,
  37931. 57909, 57909, 57909, 58877, 57909, 57909, 57909, 58882, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37932. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58899, 57909, 57909, 57909, 57909, 57909, 57909,
  37933. 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 58419, 57936,
  37934. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59003, 57936, 59005, 57936, 57936,
  37935. 57936, 57936, 57936, 57936, 57936, 59018, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37936. 57936, 57936, 57936, 60704, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886,
  37937. 57886, 57886, 0, 0, 0, 0, 0, 57936, 57936, 57936, 57936, 57936, 57936, 58956, 57936, 57936, 57936, 57936,
  37938. 57936, 57936, 58971, 57936, 57936, 57936, 58976, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37939. 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0,
  37940. 0, 0, 0, 0, 0, 2741, 0, 57936, 58993, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37941. 57936, 57936, 57936, 57936, 57936, 57936, 59009, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  37942. 57936, 57936, 59025, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61101, 57936,
  37943. 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 690, 691, 0,
  37944. 367, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 703, 0, 0, 0, 0, 0, 57936, 57936, 57936, 59036, 57936, 521, 521,
  37945. 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 1138, 1705, 0, 0, 0, 0, 1712, 0, 0, 0, 0,
  37946. 1719, 0, 1721, 0, 0, 0, 0, 0, 3621, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3632, 0, 0, 0,
  37947. 3635, 3636, 0, 0, 0, 0, 0, 0, 393678, 0, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678,
  37948. 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 393678, 0,
  37949. 393678, 393678, 0, 1754, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1770, 0, 0, 0, 0, 0, 1776, 0, 0,
  37950. 1779, 0, 1781, 0, 0, 0, 0, 0, 0, 3642, 0, 3644, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37951. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2854, 521, 521, 521, 521, 521, 521, 521, 521,
  37952. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1943, 1944, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37953. 521, 521, 521, 0, 0, 1787, 1788, 0, 0, 0, 0, 0, 0, 0, 0, 1797, 1798, 0, 0, 0, 0, 0, 0, 1804, 0, 0, 1806,
  37954. 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  37955. 888, 521, 521, 521, 521, 57886, 57886, 57886, 1810, 1811, 1812, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37956. 0, 0, 0, 0, 0, 0, 1830, 1831, 0, 1832, 1833, 0, 0, 0, 0, 0, 0, 1186, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37957. 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 810, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37958. 0, 0, 0, 3395, 0, 0, 3397, 0, 0, 0, 0, 0, 0, 0, 0, 1863, 1721, 1721, 1865, 521, 1867, 521, 1868, 1869,
  37959. 521, 1871, 521, 521, 521, 1875, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1888, 521, 521, 521, 521,
  37960. 1892, 521, 521, 521, 521, 1896, 521, 1898, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1908, 1909,
  37961. 1911, 521, 521, 521, 521, 521, 521, 521, 1919, 1920, 521, 1922, 521, 521, 521, 521, 521, 521, 521, 521,
  37962. 3667, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37963. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60611, 57886, 57886, 0, 0, 57909, 57909, 57909, 57909,
  37964. 57909, 57909, 57909, 57909, 57909, 57909, 60622, 57909, 60625, 521, 1925, 1926, 521, 521, 521, 521, 521,
  37965. 521, 521, 1934, 521, 1936, 521, 1939, 521, 521, 521, 521, 521, 1946, 521, 521, 1948, 521, 521, 521, 521,
  37966. 521, 521, 521, 521, 521, 3197, 3198, 521, 521, 521, 521, 3201, 521, 521, 521, 521, 521, 521, 521, 521,
  37967. 521, 521, 3206, 521, 521, 521, 3209, 521, 521, 58754, 0, 59307, 57886, 59309, 57886, 59310, 57886, 59312,
  37968. 57886, 59314, 57886, 57886, 57886, 59318, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37969. 59331, 57886, 57886, 57886, 57886, 59335, 57886, 1, 24578, 3, 155941, 156275, 295, 0, 0, 0, 0, 0, 301,
  37970. 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 483328, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  37971. 0, 0, 0, 0, 0, 0, 2341, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57886, 57886, 57886, 59339, 57886, 59341,
  37972. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59351, 59352, 59354, 57886, 57886,
  37973. 57886, 57886, 57886, 57886, 57886, 59362, 59363, 57886, 59365, 57886, 57886, 57886, 57886, 57886, 58799,
  37974. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37975. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58829, 59368, 59369, 57886, 57886,
  37976. 57886, 57886, 57886, 57886, 57886, 59377, 57886, 59379, 57886, 59382, 57886, 57886, 57886, 57886, 57886,
  37977. 59390, 57886, 57886, 59392, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 2558, 0,
  37978. 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37979. 57909, 57909, 57909, 57909, 60371, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 60377,
  37980. 57936, 57936, 57936, 57936, 50657, 0, 59407, 57909, 59409, 57909, 59410, 57909, 59412, 57909, 59414,
  37981. 57909, 57909, 57909, 59418, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59431, 57909,
  37982. 57909, 57909, 57909, 59435, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58916, 57909, 57909, 57909,
  37983. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  37984. 0, 57886, 57936, 57936, 57936, 57936, 57936, 521, 1335, 521, 521, 521, 521, 58774, 57886, 57886, 57886,
  37985. 57886, 57886, 1138, 0, 0, 1709, 0, 0, 0, 0, 1716, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521,
  37986. 521, 521, 521, 3882, 521, 3884, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37987. 57886, 59847, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  37988. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60277, 57886, 57886, 57886,
  37989. 57886, 57886, 57886, 57886, 57909, 57909, 59439, 57909, 59441, 57909, 57909, 57909, 57909, 57909, 57909,
  37990. 57909, 57909, 57909, 57909, 59451, 59452, 59454, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59462,
  37991. 59463, 57909, 59465, 57909, 57909, 59468, 59469, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59477,
  37992. 57909, 59479, 57909, 59482, 57909, 57909, 57909, 57909, 57909, 59490, 57909, 57909, 59492, 57909, 57909,
  37993. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886, 57886, 57886, 57886, 57886, 60290, 57886, 57886,
  37994. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60299, 57886, 57886, 57886, 60302, 57886,
  37995. 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 1214, 0, 0, 0, 0, 0, 0, 0, 0, 1223, 0, 0, 0, 0, 0, 0,
  37996. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1238, 59503, 57936, 59505, 57936, 59506, 57936, 59508, 57936, 59510, 57936,
  37997. 57936, 57936, 59514, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59527, 57936, 57936,
  37998. 57936, 57936, 59531, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  37999. 57886, 57886, 57886, 1138, 0, 1707, 0, 0, 0, 0, 1714, 0, 0, 0, 0, 0, 0, 0, 0, 3170, 0, 0, 0, 0, 0, 0, 521,
  38000. 521, 521, 521, 521, 521, 521, 521, 521, 521, 3182, 521, 3185, 521, 521, 521, 521, 59535, 57936, 59537,
  38001. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59547, 59548, 59550, 57936, 57936,
  38002. 57936, 57936, 57936, 57936, 57936, 59558, 59559, 57936, 57936, 59561, 57936, 57936, 59564, 59565, 57936,
  38003. 57936, 57936, 57936, 57936, 57936, 57936, 59573, 57936, 59575, 57936, 59578, 57936, 57936, 57936, 57936,
  38004. 57936, 59586, 57936, 57936, 59588, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  38005. 1926, 521, 2258, 521, 57886, 59369, 57886, 59607, 57886, 2265, 0, 2266, 0, 0, 0, 0, 2268, 0, 2269, 0, 0,
  38006. 0, 0, 0, 0, 0, 0, 0, 0, 2276, 0, 0, 2279, 2280, 0, 0, 0, 2284, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38007. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2790, 0, 0, 0, 0, 2303, 0, 0, 0, 0, 2307, 0, 0, 0, 0, 0, 0, 0,
  38008. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2323, 0, 0, 0, 0, 2327, 0, 0, 0, 0, 0, 3873, 0, 521, 521, 521, 521, 521,
  38009. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  38010. 57886, 57886, 58803, 57886, 57886, 57886, 57886, 58808, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38011. 57886, 57886, 58816, 57886, 57886, 57886, 58823, 58825, 57886, 57886, 57886, 0, 2356, 0, 0, 0, 0, 0, 0, 0,
  38012. 0, 2365, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2375, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521,
  38013. 521, 521, 521, 521, 521, 521, 521, 875, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 2412, 521,
  38014. 2414, 521, 521, 521, 521, 521, 521, 521, 2420, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38015. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1357, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38016. 521, 521, 521, 521, 521, 2441, 2442, 521, 521, 521, 521, 521, 521, 2449, 521, 521, 521, 521, 521, 521,
  38017. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1383, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38018. 521, 521, 1400, 521, 521, 521, 2463, 521, 521, 2466, 2467, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886,
  38019. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59833, 57886, 59835,
  38020. 57886, 57886, 57886, 57886, 57886, 57886, 60585, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38021. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60599,
  38022. 57886, 57886, 57886, 57886, 57886, 59843, 57886, 59845, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38023. 59851, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38024. 57886, 57886, 57886, 57886, 60300, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0,
  38025. 0, 57886, 57886, 57886, 57886, 59896, 57886, 57886, 59899, 59900, 57886, 0, 0, 0, 0, 57909, 57909, 57909,
  38026. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59922, 57909,
  38027. 57909, 57909, 57909, 57909, 57909, 58388, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936,
  38028. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  38029. 521, 57886, 57886, 0, 0, 0, 3862, 0, 0, 3865, 0, 0, 0, 0, 3627, 0, 0, 59924, 57909, 57909, 57909, 57909,
  38030. 57909, 57909, 59932, 57909, 59934, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59940, 57909, 57909,
  38031. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 59991, 57936,
  38032. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38033. 60707, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 60007, 57936, 57936,
  38034. 57936, 57936, 57936, 57936, 60015, 57936, 60017, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60023,
  38035. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  38036. 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 2739, 2266, 0, 2740, 2269, 0, 0, 0, 521, 2868, 521,
  38037. 521, 521, 521, 2872, 521, 521, 521, 2877, 521, 521, 521, 521, 521, 521, 521, 521, 2885, 521, 521, 521,
  38038. 521, 521, 521, 521, 2890, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 59820, 57886, 57886,
  38039. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38040. 57886, 57886, 58811, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38041. 57886, 57886, 57886, 60259, 57886, 60261, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38042. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60278, 57886, 57886,
  38043. 57886, 57886, 60282, 57886, 57886, 57886, 57886, 57886, 60605, 57886, 57886, 57886, 57886, 57886, 57886,
  38044. 57886, 57886, 57886, 57886, 57886, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38045. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60319, 57909, 57909, 57909, 57909, 57909, 60324, 57909,
  38046. 57909, 57909, 57909, 57909, 57909, 57909, 57886, 57886, 60287, 57886, 57886, 57886, 57886, 57886, 57886,
  38047. 57886, 57886, 60295, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60301, 57886, 57886, 57886,
  38048. 57886, 57886, 57886, 57886, 0, 2962, 0, 0, 0, 0, 0, 1185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367,
  38049. 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1732, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38050. 0, 1856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60314,
  38051. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38052. 60326, 57909, 60328, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60365, 57909, 57909, 57909,
  38053. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  38054. 57936, 57936, 57936, 57936, 57936, 57936, 61082, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38055. 57936, 57936, 57936, 57936, 57936, 57936, 57909, 57909, 57909, 57909, 60362, 57909, 57909, 57909, 57909,
  38056. 57909, 57909, 57909, 57909, 60368, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936,
  38057. 57936, 57936, 57936, 57936, 57936, 60379, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58959,
  38058. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58978, 57936, 57936, 57936, 57936, 57936,
  38059. 57936, 57936, 57936, 57936, 58988, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58960,
  38060. 58967, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58980, 57936, 58982, 57936, 57936, 57936,
  38061. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60417, 57936, 57936, 57936, 57936, 57936,
  38062. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60424,
  38063. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38064. 57936, 57936, 60410, 57936, 57936, 57936, 57936, 60414, 57936, 57936, 57936, 60419, 57936, 57936, 57936,
  38065. 57936, 57936, 57936, 57936, 57936, 60427, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  38066. 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 3103, 0, 0, 3106, 3107, 0, 0, 3110,
  38067. 3111, 60433, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886,
  38068. 57886, 57886, 57886, 301, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38069. 0, 0, 0, 0, 0, 0, 0, 0, 0, 728, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3140, 0, 0, 0, 0, 0, 0, 0, 0,
  38070. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 278528, 0, 0, 0, 0, 0, 0, 3167, 3168, 0, 0,
  38071. 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3189,
  38072. 60580, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38073. 57886, 57886, 60593, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38074. 57886, 60600, 57909, 57909, 57909, 60629, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38075. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60642, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38076. 57909, 57909, 57909, 57909, 57909, 58925, 57909, 57909, 57909, 57909, 57909, 58933, 57909, 57909, 57909,
  38077. 57909, 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57909, 57909, 60649, 57909, 57909,
  38078. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38079. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38080. 57936, 57936, 57936, 57936, 57936, 60678, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38081. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60691, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38082. 57936, 57936, 57936, 57936, 57936, 60044, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38083. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 57886, 3937, 0, 3939, 0, 0, 0,
  38084. 0, 0, 3627, 3943, 0, 3945, 57936, 57936, 57936, 60698, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38085. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886,
  38086. 0, 0, 0, 0, 0, 0, 0, 2368, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2398, 521, 521, 2401,
  38087. 521, 521, 521, 521, 521, 521, 2409, 521, 521, 3403, 0, 0, 0, 0, 3405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38088. 0, 0, 0, 3419, 0, 0, 0, 0, 3424, 3425, 0, 3427, 0, 0, 0, 0, 0, 1197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1286, 0,
  38089. 0, 0, 0, 1314, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38090. 521, 521, 521, 521, 521, 521, 521, 521, 3452, 521, 521, 521, 521, 3430, 0, 0, 0, 3433, 521, 521, 521, 521,
  38091. 521, 521, 3440, 521, 521, 521, 521, 521, 3444, 521, 521, 521, 521, 521, 521, 521, 3450, 521, 521, 521,
  38092. 521, 521, 3456, 60828, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60834, 57886, 57886, 57886, 57886,
  38093. 57886, 60840, 57886, 57886, 60843, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60850, 60852,
  38094. 57886, 57886, 57886, 57886, 57886, 57886, 58282, 58284, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38095. 57886, 57886, 57886, 57886, 0, 57909, 57909, 58327, 57909, 57909, 57909, 57909, 57909, 57909, 58358,
  38096. 58360, 57909, 60856, 57886, 60858, 60859, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 60866, 57909,
  38097. 57909, 57909, 57909, 57909, 60870, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60876, 57909, 57909,
  38098. 57909, 57909, 57909, 60882, 57909, 57909, 60885, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38099. 60892, 60894, 57909, 57909, 57909, 57909, 60898, 57909, 60900, 60901, 57909, 57936, 57936, 57936, 57936,
  38100. 57936, 57936, 60908, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61200, 57936,
  38101. 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 3866, 3867, 0, 3627, 0, 3871, 57936, 57936,
  38102. 60912, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60918, 57936, 57936, 57936, 57936, 57936, 60924,
  38103. 57936, 57936, 60927, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60934, 60936, 57936, 57936,
  38104. 57936, 57936, 57936, 57936, 57936, 57936, 59000, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38105. 57936, 57936, 57936, 57936, 57936, 57936, 59020, 57936, 57936, 57936, 57936, 57936, 59028, 57936, 57936,
  38106. 57936, 57936, 57936, 57936, 57936, 57936, 59542, 57936, 57936, 57936, 59546, 57936, 57936, 59551, 57936,
  38107. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38108. 60048, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38109. 57936, 57936, 57936, 60940, 57936, 60942, 60943, 57936, 521, 521, 3602, 57886, 57886, 60949, 0, 0, 0, 0,
  38110. 0, 0, 3611, 0, 0, 3614, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 3649, 3650, 521,
  38111. 521, 521, 521, 3654, 3655, 521, 521, 521, 521, 521, 3659, 521, 521, 521, 521, 3662, 521, 521, 521, 521,
  38112. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 61018, 57886, 57886, 57886, 57886,
  38113. 57886, 57886, 57886, 61023, 57886, 57886, 57886, 57886, 57886, 57886, 60833, 57886, 57886, 57886, 57886,
  38114. 57886, 57886, 57886, 57886, 60841, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38115. 57886, 57886, 57886, 57886, 57886, 60855, 57909, 57909, 57909, 57909, 57909, 57909, 61052, 57909, 57909,
  38116. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61063, 57909, 57909,
  38117. 57909, 57909, 57909, 57909, 57909, 57909, 61071, 57909, 57909, 57909, 57909, 57909, 57909, 58914, 57909,
  38118. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58930, 57909, 57909, 57909, 57909, 57909,
  38119. 57909, 58941, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 57886,
  38120. 57886, 57886, 57886, 57886, 57886, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0,
  38121. 303104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57886, 57886, 61240, 57886, 57886, 57886, 57886, 57886, 57886,
  38122. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61256, 57909, 57909,
  38123. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 61076, 57936, 57936, 57936, 57936,
  38124. 57936, 57936, 57936, 61081, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38125. 57936, 57936, 57936, 61092, 57886, 57886, 57886, 61440, 57886, 61442, 57886, 57886, 57886, 57886, 61447,
  38126. 61448, 61449, 61450, 57909, 57909, 57909, 61453, 57909, 61455, 57909, 57909, 57909, 57909, 61460, 61461,
  38127. 61462, 61463, 57936, 57936, 57936, 61466, 57936, 61468, 57936, 57936, 57936, 57936, 61473, 0, 0, 0, 0, 0,
  38128. 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886,
  38129. 57886, 57886, 57886, 61031, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38130. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 61392, 57909, 57909,
  38131. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 61406, 57936,
  38132. 57936, 57936, 61535, 57936, 0, 0, 0, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886,
  38133. 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 521,
  38134. 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909,
  38135. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 521, 521, 521, 521, 4198, 521, 57886, 57886,
  38136. 57886, 57886, 61546, 57886, 57909, 57909, 57909, 57909, 61550, 57909, 57936, 57936, 57936, 57936, 61554,
  38137. 57936, 0, 371, 371, 0, 429, 131072, 371, 429, 429, 332, 371, 429, 0, 0, 429, 449, 429, 0, 0, 0, 429, 488,
  38138. 488, 488, 493, 488, 488, 488, 493, 488, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429, 429,
  38139. 429, 429, 527, 57893, 527, 57893, 527, 527, 57893, 527, 527, 57916, 57893, 527, 527, 57893, 57893, 57893,
  38140. 57916, 57893, 57893, 57893, 57893, 57893, 57893, 57893, 57916, 57916, 57893, 57893, 57943, 57893, 57893,
  38141. 57893, 57893, 57893, 57893, 57893, 57943, 57943, 57893, 57893, 57893, 57893, 57943, 57943, 57893, 527,
  38142. 57893, 57893, 57893, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0,
  38143. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 4399798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38144. 0, 0, 773, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 773, 0, 0, 0, 0,
  38145. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 773, 0, 0, 0, 521, 828, 521, 521, 521, 521, 521, 521, 860, 521,
  38146. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 58246, 1295, 0, 0, 0, 0, 0, 0, 0, 0,
  38147. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 2839, 521,
  38148. 521, 521, 521, 521, 521, 1326, 521, 521, 521, 521, 521, 1338, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38149. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2430, 521, 521, 521, 521, 521, 521,
  38150. 521, 521, 521, 521, 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58765,
  38151. 57886, 57886, 57886, 57886, 57886, 58777, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38152. 57886, 57886, 57886, 59381, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38153. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61041, 57886, 57886, 57886, 57886, 57886, 57886,
  38154. 57886, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 58954, 57936, 57936, 57936, 57936,
  38155. 57936, 58966, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38156. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 3375, 0, 0,
  38157. 0, 57909, 57909, 57909, 59954, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38158. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38159. 57909, 57909, 57909, 60355, 57909, 57909, 57909, 57936, 57936, 57936, 60037, 57936, 57936, 57936, 57936,
  38160. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38161. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59026, 57936, 57936, 57936, 0, 0, 4212,
  38162. 521, 521, 521, 61558, 57886, 57886, 57886, 61560, 57909, 57909, 57909, 61562, 57936, 57936, 57936, 0, 521,
  38163. 521, 57886, 57886, 57909, 57909, 57936, 57936, 521, 57886, 57909, 57936, 521, 521, 521, 521, 521, 521,
  38164. 521, 521, 3793, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  38165. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60607, 57886, 57886, 60610, 57886, 57886, 60613, 0, 0,
  38166. 60614, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60637,
  38167. 60638, 57909, 57909, 57909, 57909, 60641, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38168. 57909, 57909, 60647, 0, 0, 0, 430, 131072, 0, 430, 430, 0, 0, 430, 439, 0, 430, 0, 430, 469, 469, 469,
  38169. 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 528, 57894, 528, 57894, 528,
  38170. 528, 57894, 528, 528, 57917, 57894, 528, 528, 57894, 57894, 57894, 57917, 57894, 57894, 57894, 57894,
  38171. 57894, 57894, 57894, 57917, 57917, 57894, 57894, 57944, 57894, 57894, 57894, 57894, 57894, 57894, 57894,
  38172. 57944, 57944, 57894, 57894, 57894, 57894, 57944, 57944, 57894, 528, 57894, 57894, 57894, 1, 24578, 3,
  38173. 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38174. 6275072, 0, 0, 0, 0, 0, 0, 0, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 58754, 1961, 57886, 57886, 57886,
  38175. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38176. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 2561, 0, 50657, 2061,
  38177. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38178. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38179. 59950, 57909, 57909, 2302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38180. 0, 0, 2326, 0, 0, 0, 0, 0, 1213, 0, 1215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38181. 0, 0, 0, 0, 139264, 147456, 0, 0, 0, 420, 0, 0, 0, 0, 0, 2385, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521,
  38182. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1949, 521, 521, 521,
  38183. 521, 521, 521, 521, 0, 3138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3158, 0, 0,
  38184. 0, 0, 0, 0, 0, 0, 1731, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1747, 0, 0, 1750, 0, 0, 521,
  38185. 521, 521, 3213, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 57886, 57886, 57886, 57886, 57886,
  38186. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909,
  38187. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58868, 57909, 0, 0,
  38188. 3404, 0, 0, 0, 0, 0, 3407, 0, 3409, 0, 0, 3412, 0, 0, 0, 0, 0, 3417, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38189. 6275072, 0, 0, 0, 0, 0, 0, 0, 4399797, 4399797, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 3460,
  38190. 521, 521, 521, 521, 521, 521, 521, 521, 3468, 521, 521, 3471, 521, 521, 521, 60818, 57886, 57886, 57886,
  38191. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58296, 57886, 57886, 57886, 57886, 58314, 57886,
  38192. 57886, 0, 57909, 57909, 58325, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886,
  38193. 60857, 57886, 57886, 57886, 60860, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38194. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60877, 57909, 57909, 57909, 57909,
  38195. 57909, 57909, 57909, 57909, 57909, 57909, 59959, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38196. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 60664,
  38197. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57909, 57909, 57909, 57909, 57909,
  38198. 60887, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60896, 57909, 57909, 60899, 57909,
  38199. 57909, 57909, 60902, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0,
  38200. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 4089, 521, 57886, 57886, 57886, 60938, 57936,
  38201. 57936, 60941, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38202. 3615, 0, 0, 0, 0, 0, 0, 0, 393, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38203. 3159, 3160, 0, 0, 0, 0, 0, 521, 521, 521, 521, 3663, 521, 3665, 521, 521, 521, 521, 521, 521, 521, 521,
  38204. 521, 521, 57886, 57886, 61017, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38205. 57886, 57886, 59850, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59857, 57886, 59859, 57886,
  38206. 59862, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61029, 57886, 57886, 57886,
  38207. 57886, 57886, 57886, 57886, 57886, 61035, 57886, 61037, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38208. 57886, 57886, 57886, 57886, 57909, 57909, 61046, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58917,
  38209. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58934, 57909, 57909, 57909,
  38210. 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 58949, 57936, 61093, 57936, 61095, 57936, 57936,
  38211. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0,
  38212. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 3791, 521, 521, 521, 521,
  38213. 521, 521, 521, 521, 3797, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  38214. 57886, 57886, 57886, 57886, 58804, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38215. 57886, 57886, 57886, 57886, 57886, 58819, 57886, 57886, 57886, 57886, 57886, 57886, 61153, 57886, 57886,
  38216. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61159, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38217. 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61172, 57909, 57909, 57909,
  38218. 57909, 57909, 57909, 58915, 57909, 57909, 58922, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38219. 57909, 57909, 58936, 57909, 57909, 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57936, 521,
  38220. 1336, 521, 521, 521, 521, 58775, 57886, 57886, 57886, 57886, 57886, 1138, 0, 0, 0, 0, 1711, 0, 0, 0, 0,
  38221. 1718, 0, 0, 0, 0, 0, 0, 1247, 1248, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1155, 1154, 0, 0, 0, 0, 0, 0, 0, 0,
  38222. 0, 0, 0, 2799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3630, 0, 0, 0, 0, 0, 0, 0,
  38223. 3637, 0, 0, 57936, 57936, 57936, 57936, 57936, 61197, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38224. 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38225. 0, 0, 3782, 0, 0, 521, 521, 521, 521, 0, 0, 0, 0, 683, 684, 0, 0, 0, 0, 689, 0, 0, 0, 367, 367, 367, 0, 0,
  38226. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 530, 57896, 530, 57896, 530, 530, 57896, 530, 530, 57919, 57896,
  38227. 530, 530, 57896, 57896, 57896, 57919, 57886, 58258, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38228. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58317, 0, 57909, 57909, 57909, 57909,
  38229. 58334, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59481, 57909, 57909,
  38230. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38231. 57909, 57909, 57886, 57936, 57936, 57936, 57936, 58468, 521, 839, 521, 521, 521, 898, 0, 58258, 57886,
  38232. 57886, 57886, 57886, 58317, 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1219, 1220, 0, 0, 0, 0, 0,
  38233. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6299648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5808128, 0, 0, 0,
  38234. 1211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521,
  38235. 521, 3647, 521, 521, 521, 521, 521, 521, 521, 3652, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38236. 2421, 521, 521, 521, 2424, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38237. 2895, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38238. 57886, 57886, 60842, 57886, 60844, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38239. 57886, 57886, 57886, 0, 0, 1839, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1853, 0, 0, 0, 0, 0, 0,
  38240. 0, 0, 0, 0, 0, 0, 1307, 1308, 0, 0, 1154, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 1319, 521, 521, 521, 1958,
  38241. 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38242. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38243. 57886, 0, 2962, 0, 0, 386, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38244. 0, 0, 0, 0, 0, 412, 0, 0, 0, 0, 0, 0, 412, 139264, 147456, 0, 0, 0, 421, 0, 333, 0, 0, 0, 0, 0, 0, 0, 0,
  38245. 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 0, 0, 0, 333, 0, 0, 139264, 147456, 0, 0, 0, 0, 0, 0, 0, 2773, 0, 0, 0, 0,
  38246. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3634, 0, 0, 0, 0, 0, 0, 424, 424, 0, 0,
  38247. 131072, 424, 0, 0, 0, 424, 0, 440, 0, 0, 424, 334, 470, 470, 470, 483, 483, 483, 483, 483, 483, 483, 483,
  38248. 483, 483, 504, 512, 512, 512, 512, 519, 512, 512, 512, 519, 512, 512, 512, 512, 512, 512, 529, 57895, 529,
  38249. 57895, 529, 529, 57895, 529, 529, 57918, 57895, 529, 529, 57895, 57895, 57895, 57918, 57895, 57895, 57895,
  38250. 57895, 57895, 57895, 57895, 57918, 57918, 57895, 57895, 57945, 57895, 57895, 57895, 57895, 57895, 57895,
  38251. 57895, 57945, 57945, 57895, 57895, 57895, 57895, 57945, 57945, 57895, 529, 57895, 57895, 57895, 1, 24578,
  38252. 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38253. 1734, 0, 0, 0, 0, 0, 0, 0, 0, 1741, 0, 0, 1744, 1745, 1746, 0, 1748, 1749, 0, 0, 0, 822, 0, 0, 0, 0, 0, 0,
  38254. 0, 521, 521, 521, 521, 842, 521, 851, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38255. 899, 57886, 57886, 57886, 57886, 57886, 57886, 61244, 57886, 57886, 57886, 61248, 57886, 57909, 57909,
  38256. 57909, 57909, 57909, 57909, 61254, 57909, 57909, 57909, 57909, 57909, 57909, 61260, 57909, 57909, 57909,
  38257. 61264, 57909, 57936, 57886, 57886, 58261, 57886, 58270, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38258. 57886, 57886, 57886, 57886, 57886, 57886, 58318, 0, 57909, 57909, 57909, 57909, 57909, 58337, 57909,
  38259. 58346, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58887, 58889, 57909, 57909, 57909,
  38260. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38261. 57909, 57909, 57909, 60661, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60669, 57936,
  38262. 57936, 57936, 57936, 57936, 57936, 57936, 58469, 521, 521, 521, 521, 1130, 899, 0, 57886, 57886, 57886,
  38263. 57886, 58480, 58318, 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1764, 1765, 1766, 0, 0, 0, 0, 0, 0,
  38264. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2319, 2320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521,
  38265. 521, 521, 1331, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1350, 521, 521, 521, 521, 521, 521, 521, 521,
  38266. 521, 1360, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38267. 59825, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59837, 57886, 57886,
  38268. 521, 1408, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38269. 57886, 58770, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58789, 57886, 57886, 57886,
  38270. 57886, 57886, 57886, 59342, 59343, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38271. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38272. 59360, 57886, 57886, 57886, 57886, 57886, 59367, 57886, 57886, 58833, 57886, 57886, 57886, 57886, 57886,
  38273. 58840, 57886, 57886, 57886, 58847, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909, 57909,
  38274. 57909, 57909, 57909, 57909, 57909, 57909, 58865, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58919,
  38275. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38276. 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38277. 60042, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38278. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 3370, 57886, 57886, 60717, 0, 0, 0, 0, 0,
  38279. 57936, 57936, 57936, 59037, 57936, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  38280. 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1796, 0, 0, 0, 0, 0, 0, 0, 1803, 0, 1805, 0, 0, 0, 1807,
  38281. 0, 739, 0, 0, 0, 0, 1838, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1850, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38282. 0, 0, 0, 0, 1836, 1924, 521, 521, 521, 521, 521, 521, 521, 521, 1933, 521, 521, 521, 521, 521, 521, 1942,
  38283. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1952, 1954, 521, 521, 521, 0, 0, 0, 0, 0, 0, 57886,
  38284. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38285. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59861, 57886, 57886, 57886, 57886, 57886,
  38286. 57886, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38287. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59328, 57886, 57886, 57886, 57886, 57886, 57886,
  38288. 57886, 57886, 57886, 57886, 61033, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38289. 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38290. 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 50657, 0, 57909,
  38291. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38292. 57909, 57909, 57909, 57909, 59428, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38293. 0, 0, 0, 0, 57886, 57936, 57936, 58397, 57936, 57936, 57936, 57936, 57936, 57936, 58430, 57936, 57936,
  38294. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59572, 57936, 57936, 57936,
  38295. 57936, 57936, 57936, 59581, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59592,
  38296. 59594, 57936, 57936, 57936, 57936, 521, 521, 521, 0, 0, 2472, 0, 0, 0, 57886, 57886, 57886, 57886, 57886,
  38297. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38298. 57886, 57886, 57886, 59885, 57886, 57886, 57886, 57886, 59889, 57886, 57886, 57886, 2329, 0, 0, 0, 0, 0,
  38299. 0, 0, 0, 2337, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3128, 0, 0, 0, 0, 0,
  38300. 0, 0, 0, 521, 521, 2465, 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 59824,
  38301. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59836, 57886, 57886, 57886,
  38302. 57886, 57886, 57886, 61492, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38303. 57909, 61500, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38304. 57936, 59583, 59584, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38305. 57936, 57936, 2255, 521, 59925, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38306. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38307. 57909, 57909, 57909, 57909, 57909, 57909, 60358, 59953, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38308. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38309. 57909, 59972, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59935, 57909,
  38310. 59937, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38311. 57909, 57909, 57909, 57909, 60660, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38312. 57936, 57936, 60671, 57936, 60008, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38313. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38314. 57936, 57936, 57936, 57936, 57936, 57936, 59598, 521, 521, 60036, 57936, 57936, 57936, 57936, 57936,
  38315. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38316. 57936, 57936, 57936, 60055, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 4132, 0, 521,
  38317. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0,
  38318. 2769, 0, 0, 2772, 0, 0, 0, 0, 0, 0, 2776, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2787, 0, 0, 0, 0, 0, 0, 0, 394,
  38319. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 319488, 319488, 0, 0, 0, 0, 0,
  38320. 0, 2795, 0, 0, 0, 0, 2797, 0, 0, 0, 0, 0, 0, 0, 2801, 2802, 0, 0, 2805, 0, 0, 2808, 0, 0, 0, 0, 0, 0, 0,
  38321. 0, 0, 0, 1161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, 0, 0,
  38322. 0, 0, 2818, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2828, 0, 0, 0, 0, 521, 2832, 521, 521, 521, 521, 521,
  38323. 521, 521, 521, 521, 521, 521, 2878, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38324. 521, 521, 521, 521, 521, 521, 1356, 521, 521, 521, 1359, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38325. 521, 521, 521, 2873, 521, 521, 521, 521, 521, 521, 2880, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38326. 2888, 521, 521, 521, 2891, 521, 521, 521, 0, 0, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886,
  38327. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60253, 57886, 57886, 57886,
  38328. 57886, 57886, 57886, 57886, 61493, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38329. 57909, 57909, 61501, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38330. 57936, 60921, 57936, 60923, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60930, 57936, 57936, 60932,
  38331. 57936, 57936, 57936, 57936, 57936, 0, 0, 57909, 60308, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38332. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38333. 57909, 57909, 57909, 57909, 57909, 60331, 57936, 57936, 60407, 57936, 57936, 57936, 57936, 57936, 57936,
  38334. 57936, 60415, 57936, 57936, 57936, 57936, 57936, 57936, 60422, 57936, 57936, 57936, 57936, 57936, 57936,
  38335. 57936, 57936, 57936, 57936, 57936, 60431, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59574,
  38336. 57936, 57936, 57936, 59580, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59590, 57936,
  38337. 57936, 57936, 57936, 59596, 57936, 57936, 521, 521, 521, 0, 901, 57886, 57886, 57886, 57886, 57886, 57886,
  38338. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38339. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59864, 57886, 57886, 57886, 57936, 60434, 57936, 57936,
  38340. 57936, 57936, 57936, 57936, 3094, 521, 521, 521, 521, 60441, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 3102,
  38341. 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 3646, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38342. 521, 521, 521, 521, 3658, 521, 521, 521, 3112, 0, 0, 0, 0, 0, 0, 0, 3116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38343. 0, 0, 0, 0, 0, 3130, 3131, 0, 0, 0, 0, 0, 0, 0, 3143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38344. 0, 0, 0, 0, 0, 0, 0, 333, 334, 335, 0, 0, 0, 0, 0, 3211, 521, 521, 521, 521, 521, 521, 521, 3215, 521,
  38345. 521, 521, 521, 521, 0, 0, 57886, 57886, 57886, 60567, 57886, 57886, 57886, 57886, 57886, 60572, 57886,
  38346. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61246, 57886, 57886, 57886, 61249, 57909, 57909, 57909,
  38347. 57909, 61253, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61262, 57909, 57909, 57909,
  38348. 61265, 60601, 57886, 60603, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60608, 57886, 57886,
  38349. 57886, 57886, 57886, 0, 0, 57909, 57909, 57909, 60616, 57909, 57909, 57909, 57909, 57909, 60621, 57909,
  38350. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60654, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38351. 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38352. 57936, 57936, 57936, 57936, 57936, 61086, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38353. 57936, 57909, 57909, 57909, 60650, 57909, 60652, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38354. 60657, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 60665, 57936, 57936, 57936, 57936, 57936,
  38355. 60670, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60041, 57936, 57936, 57936, 57936, 57936,
  38356. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60054, 57936, 57936, 57936, 57936, 57936, 60058,
  38357. 60059, 60060, 57936, 60696, 57936, 57936, 57936, 60699, 57936, 60701, 57936, 57936, 57936, 57936, 57936,
  38358. 57936, 57936, 57936, 60706, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 3374,
  38359. 0, 0, 3377, 3378, 521, 521, 521, 521, 521, 521, 3462, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38360. 521, 521, 521, 57886, 57886, 57886, 57886, 60822, 57886, 57886, 57886, 57886, 60826, 57886, 57886, 57886,
  38361. 57886, 57886, 58835, 57886, 57886, 57886, 57886, 57886, 57886, 58846, 57886, 50657, 58754, 977, 57909,
  38362. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58862, 57909, 57909, 57909, 57909, 57909,
  38363. 57909, 57909, 57909, 57909, 58394, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 58412, 57936,
  38364. 58421, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521,
  38365. 521, 521, 521, 521, 4085, 521, 4087, 521, 521, 521, 57886, 57886, 57886, 57936, 57936, 57936, 57936,
  38366. 57936, 57936, 57936, 60916, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38367. 57936, 57936, 57936, 57936, 57936, 60931, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521,
  38368. 57886, 57886, 57886, 0, 0, 0, 3608, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1194, 0, 1196, 0, 0, 367,
  38369. 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3619, 3620, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38370. 0, 0, 3633, 0, 0, 0, 0, 0, 0, 0, 0, 1793, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1806, 0, 0, 0, 0, 0,
  38371. 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38372. 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60825, 57886, 57886, 57886, 57886, 521, 521,
  38373. 3787, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3798, 521, 521, 521, 521, 521,
  38374. 57886, 57886, 57886, 57886, 57886, 57886, 61149, 57886, 57886, 57886, 57886, 57886, 58836, 57886, 57886,
  38375. 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909, 57909,
  38376. 57909, 57909, 57909, 58861, 57909, 57909, 57909, 58870, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  38377. 57936, 61198, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38378. 0, 0, 3627, 0, 0, 3777, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 4022, 521,
  38379. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 61379, 0, 521, 521, 521, 521,
  38380. 521, 521, 521, 521, 3955, 521, 3957, 3958, 521, 3960, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  38381. 57886, 57886, 61314, 57886, 61316, 61317, 57886, 61319, 57886, 61321, 61488, 57886, 61489, 57886, 57886,
  38382. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 61496, 57909, 61497, 57909, 57909, 57909, 57909,
  38383. 57936, 57936, 57936, 57936, 57936, 57936, 61504, 57936, 61505, 57936, 57936, 57936, 57936, 57936, 57936,
  38384. 57936, 57936, 57936, 58961, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38385. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59019, 57936, 57936, 59023,
  38386. 57936, 57936, 57936, 57936, 57936, 59030, 0, 0, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57909,
  38387. 57909, 57909, 57909, 57936, 57936, 57936, 57936, 0, 521, 521, 57886, 57886, 57909, 57909, 57936, 57936,
  38388. 4224, 61569, 61570, 61571, 521, 521, 521, 521, 521, 521, 521, 1332, 1339, 521, 521, 521, 521, 521, 521,
  38389. 521, 521, 1352, 521, 1354, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2422, 521, 521,
  38390. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 57886, 60566,
  38391. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58307,
  38392. 57886, 57886, 57886, 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38393. 57909, 57909, 57896, 57896, 57896, 57896, 57896, 57896, 57896, 57919, 57919, 57896, 57896, 57946, 57896,
  38394. 57896, 57896, 57896, 57896, 57896, 57896, 57946, 57946, 57896, 57896, 57896, 57896, 57946, 57946, 57896,
  38395. 530, 57896, 57896, 57896, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0,
  38396. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2312, 0, 0, 0, 2315, 0, 0, 0, 0, 0, 2321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38397. 0, 57909, 58909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38398. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 57886, 57936,
  38399. 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 1138,
  38400. 1705, 1706, 0, 0, 0, 1712, 1713, 0, 0, 0, 0, 0, 0, 0, 0, 687, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 0,
  38401. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1253, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521,
  38402. 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38403. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 383, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339,
  38404. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38405. 0, 367, 367, 0, 0, 0, 0, 0, 1162, 0, 0, 0, 0, 0, 0, 405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 405, 0, 0, 0,
  38406. 0, 0, 0, 0, 383, 0, 139264, 147456, 0, 405, 0, 0, 405, 0, 0, 0, 431, 131072, 0, 431, 431, 0, 0, 431, 0,
  38407. 445, 431, 0, 431, 471, 471, 471, 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, 484, 484,
  38408. 484, 531, 57897, 531, 57897, 531, 531, 57897, 531, 531, 57920, 57897, 531, 531, 57897, 57897, 57897,
  38409. 57920, 57897, 57897, 57897, 57897, 57897, 57897, 57897, 57920, 57920, 57897, 57897, 57947, 57897, 57897,
  38410. 57897, 57897, 57897, 57897, 57897, 57947, 57947, 57897, 57897, 57897, 57897, 57947, 57947, 57897, 531,
  38411. 57897, 57897, 57897, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0,
  38412. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2775, 0, 0, 0, 0, 0, 2780, 0, 2782, 2783, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38413. 0, 1157, 0, 0, 0, 0, 0, 0, 0, 1159, 0, 0, 0, 0, 0, 0, 1266, 0, 0, 0, 0, 1271, 654, 0, 0, 0, 0, 0, 0, 0, 0,
  38414. 0, 0, 654, 0, 654, 0, 0, 0, 0, 813, 0, 0, 0, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 3645, 521, 521, 521,
  38415. 3648, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3656, 521, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0,
  38416. 733, 654, 0, 0, 521, 829, 521, 521, 521, 844, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 885, 521,
  38417. 521, 521, 521, 57886, 57886, 58247, 57886, 57886, 57886, 58263, 57886, 57886, 57886, 57886, 57886, 57886,
  38418. 57886, 57886, 57886, 57886, 58304, 57886, 57886, 57886, 57886, 0, 57909, 57909, 58323, 57909, 57909,
  38419. 57909, 58339, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59987, 57909, 57909,
  38420. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 59996, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38421. 57936, 57936, 57936, 57936, 57936, 57936, 60391, 57936, 60393, 57936, 57936, 57936, 57936, 57936, 57936,
  38422. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60022, 57936, 57936, 57936, 57936,
  38423. 57936, 57936, 57936, 57936, 60029, 57936, 60031, 57936, 60034, 57936, 57936, 57909, 57909, 57909, 57909,
  38424. 57909, 58380, 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 58398, 57936, 57936, 57936,
  38425. 58414, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60390, 57936,
  38426. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38427. 57936, 57936, 57936, 60710, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 58455, 57936, 57936,
  38428. 57936, 57936, 521, 521, 521, 885, 521, 521, 0, 57886, 57886, 57886, 58304, 57886, 57886, 293, 1138, 0, 0,
  38429. 1142, 0, 0, 1147, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38430. 521, 521, 521, 3888, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58841, 57886, 57886,
  38431. 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38432. 57909, 57909, 57909, 57909, 57909, 57909, 60639, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38433. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59965, 57909, 57909, 57909, 57909, 57909, 57909,
  38434. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0, 1154, 1155, 0, 0, 0, 0, 0, 0, 0,
  38435. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3133, 0, 0, 0, 0, 0, 0, 1155, 0, 0, 0, 0,
  38436. 0, 0, 1280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 760, 0, 0, 763, 0, 0, 767, 0,
  38437. 0, 0, 0, 521, 521, 521, 58754, 901, 57886, 58757, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38438. 57886, 57886, 57886, 58771, 58778, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58791, 57886,
  38439. 58793, 57886, 57886, 57886, 57886, 57886, 60831, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38440. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60849, 57886, 60851, 57886,
  38441. 57886, 57886, 57886, 57886, 57886, 58278, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38442. 57886, 57886, 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58354, 57909,
  38443. 57909, 58908, 57909, 58910, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58923, 57909, 57909, 57909,
  38444. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58938, 57909, 57909, 57909, 0, 57886, 57936,
  38445. 58946, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60068, 57936, 57936, 60071, 60072, 57936,
  38446. 2404, 521, 2731, 521, 521, 59835, 57886, 60080, 57886, 57886, 2739, 2266, 0, 2740, 2269, 0, 0, 0, 0, 0, 0,
  38447. 4014, 0, 4016, 0, 521, 521, 521, 521, 521, 4021, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886,
  38448. 57886, 57886, 57886, 57886, 61378, 57886, 57936, 59033, 57936, 57936, 57936, 521, 1332, 521, 1389, 521,
  38449. 521, 58771, 57886, 57886, 58828, 57886, 57886, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3146, 0, 0,
  38450. 0, 0, 0, 0, 0, 0, 0, 0, 3156, 0, 0, 0, 0, 3161, 0, 0, 0, 3163, 0, 1724, 1725, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38451. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2342912, 0, 0, 0, 521, 521, 521, 521, 521,
  38452. 521, 1930, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38453. 521, 521, 521, 521, 521, 1957, 521, 58754, 1961, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38454. 57886, 57886, 57886, 57886, 57886, 57886, 59321, 59322, 57886, 57886, 57886, 57886, 59329, 57886, 57886,
  38455. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 61391, 57909, 57909, 57909,
  38456. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 61405, 57936, 57936,
  38457. 50657, 2061, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38458. 57909, 59421, 59422, 57909, 57909, 57909, 57909, 59429, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38459. 57909, 57909, 57909, 0, 0, 0, 741, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38460. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59520, 57936, 57936, 57936, 57936, 57936, 57936,
  38461. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57909, 57909, 57909, 57909, 59473, 57909, 57909,
  38462. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38463. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59501, 57909, 57886, 57886, 57886, 57886, 57886, 60832,
  38464. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38465. 57886, 60847, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58843, 57886, 57886,
  38466. 57886, 50657, 58754, 977, 57909, 58852, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38467. 57909, 57909, 58866, 58873, 57936, 57936, 57936, 57936, 57936, 59540, 57936, 57936, 57936, 57936, 57936,
  38468. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38469. 59560, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886, 57886, 57886,
  38470. 57886, 57886, 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2809, 0,
  38471. 0, 0, 0, 0, 0, 0, 0, 0, 57936, 57936, 57936, 59569, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38472. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38473. 57936, 57936, 59597, 57936, 521, 521, 521, 0, 2895, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886,
  38474. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38475. 57886, 57886, 57886, 59359, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 2330, 0, 0, 0, 0, 0, 0, 0,
  38476. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2346, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521,
  38477. 521, 521, 2397, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 57886, 57886,
  38478. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61162,
  38479. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38480. 59866, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59878,
  38481. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59884, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38482. 59890, 57886, 57886, 57886, 57886, 57886, 61030, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38483. 61036, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909,
  38484. 57909, 57909, 57909, 57909, 61393, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936,
  38485. 57936, 57936, 57936, 57936, 57936, 61407, 57909, 57909, 57909, 57909, 59955, 57909, 57909, 57909, 57909,
  38486. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59967, 57909, 57909, 57909, 57909, 57909,
  38487. 57909, 57909, 59973, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60366, 57909,
  38488. 57909, 57909, 60369, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 60373, 57936, 57936, 57936, 57936,
  38489. 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 4083, 521, 521, 521, 521, 521,
  38490. 521, 521, 521, 57886, 57886, 57886, 57909, 57909, 59979, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38491. 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38492. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38493. 57936, 60430, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60038, 57936, 57936, 57936, 57936,
  38494. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60050, 57936, 57936, 57936, 57936, 57936,
  38495. 57936, 57936, 60056, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886,
  38496. 57886, 57886, 57886, 57886, 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1149, 0, 0, 57936, 57936, 60062,
  38497. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521,
  38498. 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3109, 0, 0, 60258, 57886, 57886,
  38499. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38500. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59865,
  38501. 3164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 3180, 521, 521,
  38502. 521, 521, 521, 521, 3188, 521, 521, 521, 521, 521, 521, 521, 1333, 521, 521, 521, 521, 521, 521, 521, 521,
  38503. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2858, 521, 521, 521, 521,
  38504. 521, 521, 521, 521, 521, 521, 57909, 57909, 60628, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38505. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38506. 57909, 57909, 57909, 57909, 57909, 57909, 61070, 57909, 57909, 57936, 57936, 57936, 60677, 57936, 57936,
  38507. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38508. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59027, 57936, 57936, 57936,
  38509. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61099, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38510. 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3171, 0, 0, 0, 521, 3175, 521, 521,
  38511. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 2472, 57886, 57886, 57886, 57886,
  38512. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59349, 57886, 57886,
  38513. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38514. 61039, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909,
  38515. 57886, 57886, 57886, 57886, 61441, 57886, 61443, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909,
  38516. 57909, 57909, 57909, 61454, 57909, 61456, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936,
  38517. 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 3607, 0, 3609, 0, 0, 0, 3613, 0, 0, 0, 0, 0, 0, 0,
  38518. 0, 0, 0, 1733, 0, 0, 0, 1736, 0, 0, 1739, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 335872, 0, 0, 0, 0, 0,
  38519. 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 335872, 0, 0, 61467, 57936, 61469, 57936, 57936, 57936,
  38520. 57936, 0, 0, 0, 0, 0, 0, 0, 4134, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 61485, 57886,
  38521. 57886, 57886, 57886, 57886, 57886, 57886, 59846, 57886, 59848, 57886, 57886, 57886, 57886, 57886, 57886,
  38522. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38523. 57886, 60273, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 388, 340, 0,
  38524. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2351104, 0, 0, 0,
  38525. 0, 0, 131072, 0, 0, 0, 0, 0, 0, 441, 0, 0, 0, 456, 472, 472, 472, 456, 456, 456, 456, 456, 456, 456, 456,
  38526. 456, 456, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 505, 532, 57898, 532,
  38527. 57898, 532, 532, 57898, 532, 532, 57921, 57898, 532, 532, 57898, 57898, 57898, 57921, 57898, 57898, 57898,
  38528. 57898, 57898, 57898, 57898, 57921, 57921, 57898, 57898, 57948, 57898, 57898, 57898, 57898, 57898, 57898,
  38529. 57898, 57948, 57948, 57898, 57898, 57898, 57898, 57948, 57948, 57898, 532, 57898, 57898, 57898, 1, 24578,
  38530. 3, 155941, 156275, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38531. 3410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 212992, 0, 0, 0, 0, 0, 212992,
  38532. 212992, 212992, 212992, 212992, 655, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 655, 0, 655, 0, 0, 0, 0, 0, 0, 0, 0,
  38533. 655, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57886, 57886, 57886,
  38534. 58264, 57886, 57886, 58280, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38535. 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 58340, 57909, 57909, 58356, 57909, 57909, 57909,
  38536. 57909, 57909, 57909, 57909, 59444, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38537. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59464, 57909, 57909, 57909, 57909, 57909,
  38538. 57909, 57909, 57909, 57909, 58921, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38539. 57909, 57909, 57909, 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521,
  38540. 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 1138, 1705, 0, 0, 0, 0, 1712, 0, 0, 0, 0, 0, 0, 0,
  38541. 1722, 0, 1241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38542. 1293, 0, 0, 0, 0, 0, 1299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1315, 0, 0, 0, 0, 0, 521, 521,
  38543. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38544. 521, 1890, 521, 521, 521, 521, 521, 521, 521, 521, 1372, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38545. 521, 521, 521, 521, 1391, 521, 521, 521, 521, 521, 1399, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 57886,
  38546. 59819, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38547. 57886, 57886, 57886, 57886, 57886, 57886, 59357, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38548. 57886, 57886, 57886, 521, 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38549. 57886, 57886, 57886, 57886, 57886, 58772, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38550. 57886, 57886, 57886, 57886, 58848, 50657, 58754, 977, 58851, 57909, 57909, 57909, 57909, 57909, 58858,
  38551. 57909, 57909, 57909, 57909, 58864, 57909, 57909, 57909, 58830, 57886, 57886, 57886, 57886, 57886, 58838,
  38552. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909,
  38553. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58867, 57909, 57909, 57909, 57909, 57909, 57909,
  38554. 60631, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38555. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60645, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38556. 57909, 59985, 57909, 57909, 59988, 59989, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38557. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60005, 57936, 0, 0, 1755, 0, 0, 0, 0, 0, 0, 0, 0,
  38558. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 338, 339, 0, 521, 58754, 0, 57886, 57886,
  38559. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59323,
  38560. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59334, 57886, 57886, 57886, 57886, 57886,
  38561. 58837, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909,
  38562. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61058, 57909, 57909,
  38563. 57909, 57909, 57909, 57909, 57909, 57909, 61064, 57909, 61066, 57909, 57909, 57909, 57909, 57909, 57909,
  38564. 50657, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38565. 57909, 57909, 57909, 59423, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59434, 57909,
  38566. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61178, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38567. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61191, 57936, 57936, 57936,
  38568. 57936, 57936, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 1138, 1705, 0, 0, 0,
  38569. 0, 1712, 0, 0, 0, 0, 0, 0, 0, 0, 349, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0,
  38570. 295, 0, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59541, 57936, 57936, 57936, 57936, 57936, 57936,
  38571. 57936, 57936, 59552, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38572. 57936, 57936, 57936, 61279, 57936, 57936, 521, 57886, 0, 0, 0, 3940, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0,
  38573. 2282, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2298, 2299, 0, 0, 0, 0, 0, 0, 0,
  38574. 3382, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 0,
  38575. 0, 0, 2355, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38576. 2328, 521, 2413, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38577. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2866, 57886, 57886, 57886, 57886, 59844,
  38578. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38579. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58824, 57886, 57886,
  38580. 57886, 57886, 57909, 57909, 57909, 59928, 57909, 57909, 57909, 57909, 59933, 57909, 57909, 57909, 57909,
  38581. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38582. 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38583. 57936, 57936, 57936, 57936, 60011, 57936, 57936, 57936, 57936, 60016, 57936, 57936, 57936, 57936, 57936,
  38584. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38585. 57936, 57936, 57936, 58985, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 3380, 0, 0,
  38586. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4284416, 0, 0, 57886,
  38587. 60829, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38588. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38589. 57886, 59366, 57886, 57936, 57936, 57936, 60913, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38590. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38591. 57936, 57936, 57936, 57936, 57936, 59562, 57936, 57936, 57936, 0, 521, 521, 521, 521, 3951, 521, 521, 521,
  38592. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 61310, 57886, 57886, 57886, 57886, 57886,
  38593. 57886, 57886, 57886, 57886, 57886, 57886, 59875, 57886, 57886, 57886, 57886, 59880, 57886, 57886, 57886,
  38594. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977,
  38595. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58859, 57909, 57909, 57909, 58863, 57909, 57909, 58874,
  38596. 57909, 57909, 57909, 57909, 61326, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38597. 57909, 57936, 57936, 57936, 57936, 61342, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38598. 57936, 57936, 57936, 59004, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38599. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60689, 57936, 57936, 57936, 57936, 57936, 57936,
  38600. 57936, 57936, 57936, 57936, 57936, 57936, 61508, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 57886,
  38601. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38602. 57936, 57936, 57936, 57936, 57936, 521, 1333, 521, 521, 1698, 521, 58772, 57886, 57886, 57886, 59047,
  38603. 57886, 1138, 0, 0, 1708, 0, 0, 0, 0, 1715, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521,
  38604. 521, 521, 521, 3883, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38605. 59344, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38606. 57886, 57886, 57886, 57886, 57886, 59364, 57886, 57886, 57886, 341, 342, 343, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38607. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 341, 295, 0, 0, 0, 0, 0, 4013, 0, 0, 0, 0, 521, 521,
  38608. 521, 521, 521, 521, 521, 521, 521, 521, 521, 4027, 521, 521, 4029, 57886, 57886, 57886, 57886, 57886,
  38609. 57886, 57886, 57886, 59376, 57886, 57886, 57886, 57886, 57886, 57886, 59385, 57886, 57886, 57886, 57886,
  38610. 57886, 57886, 57886, 57886, 57886, 57886, 59396, 59398, 57886, 57886, 57886, 57886, 0, 0, 0, 389, 390,
  38611. 392, 342, 0, 0, 0, 0, 0, 0, 341, 0, 0, 0, 0, 341, 0, 0, 0, 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 639, 748, 749,
  38612. 750, 0, 0, 0, 0, 0, 756, 757, 0, 0, 0, 0, 0, 0, 0, 0, 769, 770, 0, 772, 0, 0, 0, 389, 0, 0, 0, 0, 0, 0,
  38613. 342, 0, 0, 0, 389, 0, 0, 0, 0, 0, 342, 389, 0, 0, 0, 139264, 147456, 0, 0, 0, 422, 0, 0, 0, 0, 0, 245760,
  38614. 0, 0, 0, 245760, 0, 0, 245760, 245760, 245760, 0, 0, 0, 0, 0, 245760, 0, 245760, 245760, 0, 0, 0, 245760,
  38615. 245760, 0, 0, 245760, 0, 0, 0, 0, 131072, 0, 0, 0, 341, 0, 0, 0, 446, 0, 341, 0, 473, 473, 473, 473, 489,
  38616. 489, 489, 489, 489, 489, 489, 489, 489, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473,
  38617. 473, 473, 533, 57899, 533, 57899, 533, 533, 57899, 533, 533, 57922, 57899, 533, 533, 57899, 57899, 57899,
  38618. 57922, 57899, 57899, 57899, 57899, 57899, 57899, 57899, 57922, 57922, 57899, 57935, 57949, 57935, 57935,
  38619. 57935, 57935, 57935, 57935, 57935, 57949, 57949, 57935, 57935, 57935, 57935, 57949, 57949, 57935, 533,
  38620. 57899, 57899, 57899, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0,
  38621. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 344064, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0,
  38622. 344064, 0, 0, 0, 710, 0, 0, 0, 0, 0, 0, 0, 718, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38623. 0, 0, 0, 331, 332, 0, 0, 0, 0, 0, 0, 0, 0, 802, 0, 660, 0, 779, 0, 0, 0, 0, 0, 779, 802, 0, 802, 800, 0,
  38624. 0, 0, 814, 0, 0, 0, 656, 817, 0, 779, 0, 0, 0, 0, 0, 823, 0, 0, 0, 0, 783, 656, 827, 0, 521, 830, 521,
  38625. 521, 521, 846, 521, 521, 862, 521, 521, 521, 521, 876, 521, 521, 521, 521, 894, 521, 521, 57886, 57886,
  38626. 58248, 57886, 57886, 57886, 58265, 57886, 57886, 58281, 57886, 57886, 57886, 57886, 58295, 57886, 57886,
  38627. 57886, 57886, 58313, 57886, 57886, 0, 57909, 57909, 58324, 57909, 57909, 57909, 58341, 57909, 57909,
  38628. 58357, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59476, 57909, 57909, 57909, 57909, 57909, 57909,
  38629. 59485, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59496, 59498, 57909, 57909,
  38630. 57909, 57909, 57886, 57909, 57909, 58371, 57909, 57909, 57909, 57909, 58389, 57909, 57909, 0, 0, 0, 0,
  38631. 57886, 57936, 57936, 58399, 57936, 57936, 57936, 58416, 57936, 57936, 58432, 57936, 57936, 57936, 57936,
  38632. 58446, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60412, 57936, 57936, 60416, 57936, 57936,
  38633. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60425, 57936, 57936, 57936, 60428, 60429, 57936, 57936,
  38634. 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886, 57886, 57886, 57886, 57886, 155941,
  38635. 1138, 0, 0, 1143, 0, 0, 1148, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3881, 521,
  38636. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58802, 57886,
  38637. 57886, 57886, 58806, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38638. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 2962, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38639. 57909, 57909, 57909, 57909, 60623, 57909, 57936, 57936, 58464, 57936, 57936, 521, 521, 521, 521, 521, 521,
  38640. 0, 57886, 57886, 57886, 57886, 57886, 57886, 155941, 1138, 0, 301, 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
  38641. 1816, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 740, 0, 0,
  38642. 0, 0, 1274, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540,
  38643. 57906, 540, 57906, 540, 540, 57906, 540, 540, 57929, 57906, 540, 540, 57906, 57906, 57906, 57929, 521,
  38644. 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38645. 57886, 58773, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38646. 59348, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59361, 57886, 57886,
  38647. 57886, 57886, 57886, 57886, 57886, 58797, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38648. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38649. 57886, 58821, 57886, 57886, 57886, 57886, 57886, 57886, 59374, 57886, 57886, 57886, 57886, 57886, 57886,
  38650. 57886, 57886, 59386, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59397, 57886,
  38651. 57886, 57886, 57886, 57886, 57886, 57886, 61444, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909,
  38652. 57909, 57909, 57909, 57909, 57909, 61457, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  38653. 57936, 57936, 521, 3095, 521, 521, 521, 57886, 60442, 57886, 57886, 57886, 0, 0, 3100, 3101, 0, 0, 0, 0,
  38654. 0, 0, 0, 0, 0, 0, 3627, 0, 3776, 0, 0, 0, 0, 3780, 0, 0, 0, 0, 0, 0, 0, 0, 3783, 0, 521, 521, 521, 3785,
  38655. 0, 0, 0, 0, 1814, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38656. 221645, 221645, 221645, 221645, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38657. 57886, 57886, 59316, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59327, 57886, 57886, 57886,
  38658. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59345, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38659. 57886, 59356, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59876,
  38660. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38661. 57886, 57886, 57886, 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38662. 57909, 57909, 50657, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59416,
  38663. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59427, 57909, 57909, 57909, 57909, 57909, 57909,
  38664. 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38665. 57936, 58429, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 2440, 521, 521,
  38666. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2459,
  38667. 521, 521, 521, 0, 0, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38668. 57886, 57886, 57886, 57886, 57886, 57886, 60252, 57886, 57886, 57886, 57886, 57886, 60257, 59892, 57886,
  38669. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909, 59910, 57909,
  38670. 59912, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60340,
  38671. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38672. 57909, 57909, 57909, 61060, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38673. 57909, 57909, 57909, 57909, 57909, 57909, 59981, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38674. 57909, 57936, 57936, 57936, 59993, 57936, 59995, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38675. 57936, 57936, 57936, 57936, 57936, 57936, 60686, 60687, 57936, 57936, 57936, 57936, 60690, 57936, 57936,
  38676. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60064, 57936,
  38677. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  38678. 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2274, 0, 0, 0, 0, 0, 0, 0, 2820, 0, 0,
  38679. 0, 0, 2823, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2831, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38680. 521, 521, 521, 3961, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38681. 57886, 57886, 61320, 57886, 521, 2842, 521, 521, 2845, 2846, 521, 521, 521, 521, 521, 2851, 521, 2853,
  38682. 521, 521, 521, 521, 2857, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2863, 521, 521, 521, 0, 0, 0, 0, 0,
  38683. 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38684. 57886, 60251, 57886, 57886, 60254, 60255, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909,
  38685. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38686. 57909, 57909, 57909, 60878, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59445, 57909,
  38687. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59456, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38688. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61336, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  38689. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61352, 57936, 521, 521, 521, 521, 521, 2871, 521,
  38690. 521, 521, 521, 521, 521, 2879, 521, 521, 521, 521, 521, 2884, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38691. 521, 521, 521, 521, 1904, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38692. 521, 521, 1353, 1355, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 60260,
  38693. 57886, 60262, 57886, 57886, 57886, 57886, 60266, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38694. 57886, 60272, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60281, 57886, 57886, 57886,
  38695. 57886, 57886, 59373, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38696. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59401, 57886, 57886,
  38697. 57886, 57886, 57886, 60289, 57886, 57886, 57886, 57886, 57886, 60294, 57886, 57886, 57886, 57886, 57886,
  38698. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909,
  38699. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38700. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60330, 57909, 0, 0,
  38701. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38702. 60318, 57909, 57909, 60321, 60322, 57909, 57909, 57909, 57909, 57909, 60327, 57909, 60329, 57909, 57909,
  38703. 57909, 57909, 57909, 57909, 57909, 60336, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60342, 57909,
  38704. 57909, 57909, 57909, 57909, 57909, 57909, 60350, 57909, 57909, 57909, 57909, 57909, 57909, 60357, 57909,
  38705. 57909, 57909, 60333, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60339, 57909, 57909,
  38706. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60348, 57909, 57909, 57909, 57909, 57909, 57909, 60356,
  38707. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60632, 57909, 57909, 60635, 57909, 57909, 57909, 57909,
  38708. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60646,
  38709. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60889, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38710. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 60906, 57936, 57936, 57936,
  38711. 57936, 60910, 57909, 57909, 57909, 60361, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38712. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38713. 57936, 57936, 57936, 57936, 61192, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60383, 57936, 57936,
  38714. 60386, 60387, 57936, 57936, 57936, 57936, 57936, 60392, 57936, 60394, 57936, 57936, 57936, 57936, 60398,
  38715. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60404, 0, 0, 3139, 0, 0, 0, 0, 0, 0, 0,
  38716. 3145, 0, 3147, 0, 0, 0, 3150, 0, 0, 3153, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450560, 450560, 0, 0,
  38717. 450560, 450560, 450560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1799, 0, 0, 0, 0, 0, 0, 0, 0, 1806, 0,
  38718. 0, 0, 0, 0, 0, 0, 0, 0, 3165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3174, 521, 521, 521, 521, 521, 521,
  38719. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2882, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38720. 521, 521, 521, 2892, 521, 521, 521, 521, 521, 3192, 521, 521, 3195, 521, 521, 521, 521, 521, 521, 521,
  38721. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3205, 521, 521, 521, 521, 521, 521, 521, 521, 2443, 521,
  38722. 521, 521, 521, 2448, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38723. 521, 1906, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1940, 521, 521,
  38724. 521, 521, 521, 521, 1947, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38725. 3214, 521, 521, 3217, 521, 521, 3220, 0, 0, 60565, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38726. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58302, 57886, 57886, 57886, 57886, 0, 57909, 57909,
  38727. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886, 57886, 57886, 57886, 60583,
  38728. 57886, 57886, 60586, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38729. 57886, 57886, 57886, 57886, 57886, 57886, 60597, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59871,
  38730. 57886, 57886, 57886, 57886, 57886, 59877, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38731. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 2962, 0, 57909, 57909, 57909, 57909, 57909,
  38732. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 3431, 0, 0, 521, 521, 3436, 521, 521, 521,
  38733. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3453, 521, 3455, 521,
  38734. 521, 521, 521, 521, 521, 521, 1334, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38735. 1358, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2419, 521, 521, 521, 521, 521, 521, 521, 521, 2426,
  38736. 521, 2428, 521, 2431, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2444, 521, 521, 521, 521, 521, 521,
  38737. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1392, 521, 521, 521, 521,
  38738. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3461, 521, 521, 3463, 521, 521, 521, 521, 521, 521, 521,
  38739. 521, 521, 521, 521, 57886, 57886, 60820, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38740. 57886, 59378, 57886, 57886, 57886, 59384, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38741. 59394, 57886, 57886, 57886, 57886, 59400, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 60888,
  38742. 57909, 57909, 60890, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38743. 57936, 57936, 60904, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 3601, 521, 57886, 60948, 57886,
  38744. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 306, 0, 0, 0, 0, 0, 0, 306, 0, 0, 0, 0, 0, 521,
  38745. 521, 521, 521, 521, 3664, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  38746. 57886, 57886, 57886, 57886, 61020, 61021, 57886, 57886, 57886, 57886, 61025, 61026, 57909, 57909, 61049,
  38747. 61050, 57909, 57909, 57909, 57909, 61054, 61055, 57909, 57909, 57909, 57909, 57909, 61059, 57909, 57909,
  38748. 57909, 57909, 57909, 57909, 57909, 57909, 61065, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38749. 57909, 57909, 57909, 59960, 57909, 57909, 57909, 57909, 57909, 59966, 57909, 57909, 57909, 57909, 57909,
  38750. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60341, 57909, 57909, 57909, 57909, 57909,
  38751. 57909, 57909, 57909, 57909, 57909, 57909, 60353, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 61094,
  38752. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886,
  38753. 57886, 57886, 0, 0, 3764, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 2394, 521, 521, 521, 521,
  38754. 521, 521, 521, 521, 521, 521, 521, 2406, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3792,
  38755. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  38756. 57886, 57886, 57886, 57886, 57886, 57886, 59849, 57886, 57886, 57886, 57886, 57886, 57886, 59854, 57886,
  38757. 59856, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60267, 57886,
  38758. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38759. 57886, 57886, 57886, 61163, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38760. 57909, 57909, 57909, 57886, 57886, 61154, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38761. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38762. 57909, 57909, 57909, 57909, 61173, 57886, 57886, 57886, 57886, 61242, 57886, 57886, 57886, 57886, 57886,
  38763. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61258, 57909,
  38764. 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 61075, 57936, 57936, 57936, 57936, 57936, 57936,
  38765. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61087, 57936, 57936, 57936, 57936,
  38766. 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 4137, 521, 4138, 521, 521, 521,
  38767. 57886, 57886, 57886, 57886, 57886, 57886, 0, 521, 521, 3949, 521, 521, 521, 521, 3954, 521, 521, 521, 521,
  38768. 3959, 521, 521, 57886, 57886, 61308, 57886, 57886, 57886, 57886, 61313, 57886, 57886, 57886, 57886, 61318,
  38769. 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38770. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60873, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38771. 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 58418, 57936, 57936,
  38772. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58969, 57936, 57936, 57936, 57936, 57936,
  38773. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38774. 59012, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59029, 57936, 57909,
  38775. 57909, 61324, 57909, 57909, 57909, 57909, 61329, 57909, 57909, 57909, 57909, 61334, 57909, 57909, 57909,
  38776. 57936, 57936, 61340, 57936, 57936, 57936, 57936, 61345, 57936, 57936, 57936, 57936, 61350, 57936, 57936,
  38777. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58962, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38778. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58986, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38779. 521, 521, 521, 57886, 57886, 57886, 0, 3606, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1740,
  38780. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 61384, 57886, 57886, 61386, 57886,
  38781. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61398, 57909, 57909, 61400,
  38782. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 3600, 521, 521, 60947, 57886, 57886, 0, 0, 0, 0,
  38783. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3617, 3618, 0, 0, 57936, 57936, 57936, 57936, 61412, 57936, 57936, 61414,
  38784. 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886,
  38785. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38786. 57909, 57909, 60872, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38787. 57909, 59449, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38788. 57909, 57909, 57909, 57909, 57909, 58932, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0,
  38789. 57886, 57936, 57936, 57936, 57936, 61533, 57936, 57936, 57936, 0, 0, 0, 521, 521, 521, 521, 521, 521,
  38790. 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936,
  38791. 57936, 57936, 57936, 0, 0, 0, 521, 4195, 521, 521, 521, 521, 57886, 61543, 57886, 57886, 57886, 57886,
  38792. 57909, 61547, 57909, 57909, 57909, 57909, 57936, 61551, 57936, 57936, 57936, 57936, 0, 0, 0, 521, 521,
  38793. 4196, 4197, 521, 521, 57886, 57886, 61544, 61545, 57886, 57886, 57909, 57909, 61548, 61549, 57909, 57909,
  38794. 57936, 57936, 61552, 61553, 57936, 57936, 0, 57886, 57909, 57936, 4232, 61577, 61578, 61579, 521, 57886,
  38795. 57909, 57936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1261, 0, 0, 0, 0, 0, 0, 0, 0,
  38796. 0, 0, 0, 0, 0, 344, 345, 346, 347, 348, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367,
  38797. 0, 295, 0, 0, 0, 0, 0, 245760, 245760, 245760, 245760, 245760, 245760, 0, 0, 0, 0, 0, 0, 0, 245760,
  38798. 245760, 245760, 0, 0, 0, 0, 139264, 147456, 245760, 245760, 0, 0, 245760, 0, 0, 0, 245760, 245760, 0, 0,
  38799. 0, 0, 0, 0, 245760, 0, 0, 0, 0, 0, 0, 245760, 0, 0, 245760, 0, 0, 245760, 0, 0, 245760, 0, 245760, 245760,
  38800. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 737, 0, 0, 0,
  38801. 348, 347, 131072, 346, 347, 347, 348, 346, 347, 0, 346, 347, 450, 457, 474, 474, 474, 485, 485, 485, 491,
  38802. 485, 485, 491, 491, 485, 491, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, 506,
  38803. 534, 57900, 534, 57900, 534, 534, 57900, 534, 534, 57923, 57900, 534, 534, 57900, 57900, 57900, 57923,
  38804. 57900, 57900, 57900, 57900, 57900, 57900, 57900, 57923, 57923, 57900, 57900, 57950, 57900, 57900, 57900,
  38805. 57900, 57900, 57900, 57900, 57950, 57950, 57900, 57900, 57900, 57900, 57950, 57950, 57900, 534, 57900,
  38806. 57900, 57900, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0,
  38807. 639, 0, 0, 0, 0, 644, 645, 646, 647, 648, 649, 650, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 665, 666, 0,
  38808. 668, 669, 0, 0, 0, 0, 0, 675, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38809. 521, 521, 521, 521, 1881, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1375, 521, 521, 521, 521, 521,
  38810. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1914, 521, 521, 521, 521,
  38811. 521, 521, 521, 521, 521, 521, 709, 0, 0, 712, 0, 714, 0, 716, 0, 0, 0, 0, 0, 0, 0, 0, 0, 726, 0, 0, 0, 0,
  38812. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 499712, 0, 0, 0, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  38813. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 0, 0,
  38814. 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 302, 305, 0, 306, 4857856, 4874240, 0, 0, 4923392, 0, 0, 0, 0, 757, 0, 0,
  38815. 778, 0, 0, 0, 0, 0, 0, 0, 0, 0, 785, 0, 0, 0, 0, 0, 796, 0, 0, 685, 0, 0, 0, 757, 0, 0, 0, 0, 0, 278528,
  38816. 278528, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1176, 0, 0, 0, 0, 0,
  38817. 685, 816, 816, 0, 0, 0, 0, 0, 521, 521, 836, 840, 843, 521, 852, 521, 521, 521, 868, 870, 873, 521, 521,
  38818. 521, 886, 890, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909,
  38819. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60871, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38820. 57909, 57909, 57909, 57909, 57909, 57909, 58892, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38821. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60372, 57909, 57909, 57936, 57936,
  38822. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58255, 58259, 58262, 57886, 58271, 57886,
  38823. 57886, 57886, 58287, 58289, 58292, 57886, 57886, 57886, 58305, 58309, 57886, 57886, 57886, 0, 57909,
  38824. 57909, 57909, 58331, 58335, 58338, 57909, 58347, 57909, 57909, 57909, 58363, 58365, 58368, 57909, 57909,
  38825. 57909, 58381, 58385, 57909, 57909, 57909, 0, 0, 0, 0, 58396, 57936, 57936, 57936, 58406, 58410, 58413,
  38826. 57936, 58422, 57936, 57936, 57936, 58438, 58440, 58443, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38827. 57936, 57936, 58963, 57936, 57936, 57936, 57936, 58973, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38828. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58989, 57936, 58456, 58460, 57936, 57936, 57936,
  38829. 836, 1127, 521, 886, 890, 1131, 0, 58476, 58255, 57886, 58305, 58309, 58481, 155941, 1138, 0, 0, 0, 0, 0,
  38830. 0, 0, 0, 0, 0, 0, 0, 540672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 540672, 0, 0,
  38831. 1366, 521, 521, 1370, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1381, 521, 521, 1388, 521,
  38832. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1402, 521, 521, 521, 0, 2895, 0, 0, 0, 0, 57886, 57886,
  38833. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60248, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38834. 57886, 57886, 57886, 57886, 60256, 57886, 521, 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886,
  38835. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38836. 57886, 57886, 57886, 57886, 57886, 57886, 58795, 57886, 57886, 57886, 58798, 57886, 57886, 57886, 57886,
  38837. 57886, 57886, 57886, 58805, 57886, 57886, 58809, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38838. 57886, 57886, 57886, 58820, 57886, 57886, 58827, 57886, 57886, 57886, 57886, 57886, 59897, 57886, 57886,
  38839. 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38840. 57909, 59918, 57909, 57909, 59921, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58885, 57909, 57909,
  38841. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58898, 57909, 57909, 57909, 57909,
  38842. 58903, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59480, 57909, 57909, 57909,
  38843. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38844. 57909, 57909, 57886, 57936, 57936, 58994, 57936, 57936, 58998, 57936, 57936, 57936, 57936, 57936, 57936,
  38845. 57936, 57936, 57936, 57936, 57936, 59010, 57936, 57936, 59017, 57936, 57936, 57936, 57936, 57936, 57936,
  38846. 57936, 57936, 57936, 57936, 59031, 521, 1894, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1903, 521,
  38847. 521, 521, 1907, 521, 521, 1912, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2447, 521,
  38848. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2458, 521, 521, 521, 521, 521, 58754, 0,
  38849. 57886, 59308, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59315, 57886, 57886, 57886, 57886, 57886,
  38850. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61164,
  38851. 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59337, 57886,
  38852. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59346, 57886, 57886, 57886, 59350, 57886,
  38853. 57886, 59355, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38854. 61160, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 61168, 57909,
  38855. 57909, 57909, 57909, 57909, 50657, 0, 57909, 59408, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38856. 59415, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38857. 57909, 57909, 57909, 57909, 57909, 59437, 57936, 59504, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38858. 59511, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38859. 57936, 57936, 57936, 57936, 57936, 59533, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60681,
  38860. 57936, 57936, 60684, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38861. 57936, 57936, 57936, 57936, 57936, 57936, 60695, 57936, 0, 0, 0, 0, 2305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38862. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 352256, 352256, 352256, 352256, 521, 521, 521, 2438,
  38863. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38864. 521, 521, 521, 521, 521, 521, 521, 521, 521, 2865, 521, 2794, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38865. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2381, 2894, 521, 521, 0, 0, 0, 2896, 0, 1961, 57886,
  38866. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38867. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59393, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38868. 57886, 0, 2061, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38869. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38870. 57909, 57909, 59974, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 60437, 57936, 57936,
  38871. 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38872. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1727, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 3789, 521, 521, 521, 521, 521,
  38873. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 61146, 57886, 57886, 57886, 57886, 57886,
  38874. 57886, 57886, 61151, 57886, 61239, 57886, 57886, 57886, 57886, 57886, 61245, 57886, 57886, 57886, 57886,
  38875. 57909, 57909, 57909, 61251, 57909, 57909, 57909, 57909, 61255, 57909, 57909, 57909, 57909, 57909, 61261,
  38876. 57909, 57909, 57909, 57909, 57936, 0, 0, 4166, 0, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  38877. 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936,
  38878. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59577, 57936, 57936, 57936, 57936, 57936, 57936,
  38879. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521,
  38880. 57886, 57886, 57886, 0, 0, 0, 0, 3766, 0, 0, 0, 0, 0, 3769, 57936, 57936, 61267, 57936, 57936, 57936,
  38881. 57936, 61271, 57936, 57936, 57936, 57936, 57936, 61277, 57936, 57936, 57936, 57936, 521, 57886, 0, 0, 0,
  38882. 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38883. 521, 1880, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1891, 521, 0, 521, 521, 521, 521, 521, 3952, 521,
  38884. 521, 521, 3956, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 61311, 57886, 57886, 57886,
  38885. 61315, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61387, 57909, 57909, 57909, 57909, 57909,
  38886. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61401, 57936, 57936, 57936, 57936,
  38887. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60043, 57936, 57936, 57936, 57936, 57936, 60049, 57936,
  38888. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521,
  38889. 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 57909, 57909, 57909, 57909, 57909, 61327,
  38890. 57909, 57909, 57909, 61331, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936,
  38891. 61343, 57936, 57936, 57936, 61347, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38892. 57936, 61102, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38893. 728, 0, 788, 0, 0, 0, 0, 0, 0, 0, 0, 788, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 57886,
  38894. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 0, 521, 521, 57886, 57886,
  38895. 57909, 57909, 57936, 57936, 521, 57886, 57909, 57936, 4228, 61573, 61574, 61575, 521, 57886, 57909, 57936,
  38896. 521, 57886, 57909, 57936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1742, 0, 0, 0, 0,
  38897. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 391, 0, 0, 0, 395, 391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38898. 0, 0, 0, 0, 0, 363, 364, 365, 366, 0, 0, 367, 0, 295, 0, 0, 349, 0, 407, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38899. 407, 0, 0, 0, 0, 0, 0, 407, 0, 349, 0, 139264, 147456, 0, 0, 0, 0, 0, 0, 0, 3643, 0, 521, 521, 521, 521,
  38900. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2887, 521,
  38901. 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 442, 0, 0, 0, 0, 0, 0, 0, 0,
  38902. 0, 0, 0, 0, 0, 0, 0, 0, 500, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507, 507,
  38903. 535, 57901, 535, 57901, 535, 535, 57901, 535, 535, 57924, 57901, 535, 535, 57901, 57901, 57901, 57924,
  38904. 57901, 57901, 57901, 57901, 57901, 57901, 57901, 57924, 57924, 57901, 57901, 57951, 57901, 57901, 57901,
  38905. 57901, 57901, 57901, 57901, 57951, 57951, 57901, 57901, 57901, 57901, 57951, 57951, 57901, 616, 57901,
  38906. 57967, 57967, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0,
  38907. 0, 0, 0, 0, 0, 0, 0, 0, 2351104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1228, 0, 0,
  38908. 0, 0, 0, 0, 0, 0, 1237, 0, 0, 0, 672, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38909. 0, 0, 0, 0, 0, 0, 0, 2300, 0, 57909, 57909, 58372, 57909, 57909, 57909, 57909, 58390, 57909, 57909, 0, 0,
  38910. 0, 0, 57886, 57936, 57936, 58400, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38911. 57936, 58447, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60917, 57936, 57936, 57936, 57936,
  38912. 57936, 57936, 57936, 57936, 60925, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38913. 57936, 57936, 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 3864, 0, 0, 0, 0, 0, 3627, 0, 0, 57936,
  38914. 57936, 58465, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886, 57886, 57886, 57886, 57886,
  38915. 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38916. 2325, 0, 0, 0, 0, 1242, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38917. 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 1203, 1161, 0, 0, 0, 0, 0, 0, 1273, 1160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38918. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 318, 0, 0, 0, 521, 521, 521, 58754, 901, 57886,
  38919. 57886, 57886, 58760, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58774, 57886, 57886,
  38920. 57886, 57886, 58784, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59873, 59874, 57886,
  38921. 57886, 57886, 57886, 57886, 57886, 59881, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38922. 57886, 57886, 57886, 57886, 57886, 0, 0, 977, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38923. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58929, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38924. 57909, 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 57909, 57909, 57909, 58879, 57909, 57909,
  38925. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58895, 57909,
  38926. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60656, 57909, 57909,
  38927. 60659, 57909, 57909, 60662, 60663, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38928. 57936, 0, 0, 0, 1756, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38929. 337, 0, 0, 0, 1785, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1800, 0, 0, 0, 0, 0, 0, 0, 1243, 0, 0, 0,
  38930. 0, 0, 0, 0, 0, 2286, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1173, 0, 0, 0,
  38931. 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 2418, 521, 521, 521, 521, 521, 521, 2423, 521, 2425,
  38932. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1379, 521, 521, 521, 521, 521,
  38933. 521, 521, 1393, 521, 521, 521, 521, 521, 521, 521, 521, 1405, 521, 521, 2869, 521, 521, 521, 521, 521,
  38934. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38935. 521, 521, 521, 521, 2435, 2436, 57936, 57936, 57936, 57936, 57936, 57936, 60411, 57936, 57936, 57936,
  38936. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38937. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59529, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0,
  38938. 3432, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  38939. 521, 521, 521, 521, 521, 521, 521, 521, 1398, 521, 521, 521, 521, 521, 0, 3872, 0, 0, 0, 0, 0, 521, 3875,
  38940. 521, 521, 3877, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 61234, 57886,
  38941. 57886, 61236, 57886, 57886, 57886, 57886, 57886, 60263, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38942. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38943. 57886, 57886, 57886, 57886, 60279, 57886, 57886, 57886, 57886, 57886, 61266, 57936, 57936, 61268, 57936,
  38944. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 57886, 0,
  38945. 0, 0, 0, 0, 0, 0, 0, 3627, 0, 3944, 0, 0, 0, 0, 0, 417792, 0, 417792, 0, 0, 0, 0, 309, 0, 0, 0, 0, 0,
  38946. 417792, 0, 417792, 0, 0, 0, 0, 139264, 147456, 417792, 0, 0, 0, 417792, 0, 0, 0, 0, 417792, 0, 0, 0, 0, 0,
  38947. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 417792, 0, 0, 417792, 0, 0, 417792, 0, 417792, 418100, 3946, 521, 521,
  38948. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  38949. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59383, 57886, 57886, 57886, 57886,
  38950. 57886, 57886, 59391, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 787, 0, 0, 0,
  38951. 0, 0, 0, 0, 0, 0, 0, 787, 0, 787, 0, 0, 0, 0, 0, 0, 0, 0, 787, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1160, 0, 0, 0,
  38952. 0, 1165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2335231,
  38953. 2335197, 2335231, 2335231, 57886, 57886, 57886, 58266, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38954. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909,
  38955. 58342, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60891, 57909, 60893, 57909,
  38956. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38957. 57936, 57936, 57936, 57936, 57936, 60019, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38958. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60025, 57936, 57936, 57936, 57936,
  38959. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 58754, 1962, 57886, 57886, 57886, 57886,
  38960. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38961. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 2557, 2962, 0, 0, 50657, 2062,
  38962. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38963. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38964. 61068, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 60408, 57936, 57936, 57936, 57936, 57936, 57936,
  38965. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38966. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59021, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  38967. 57886, 61028, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38968. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909,
  38969. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0, 350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  38970. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 345, 0, 0, 0, 0, 0, 352, 350, 131072, 0, 350, 350,
  38971. 352, 0, 350, 0, 0, 350, 352, 350, 0, 0, 0, 350, 350, 350, 350, 350, 350, 350, 350, 498, 350, 350, 350,
  38972. 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 350, 536, 57902, 536, 57902, 536, 536, 57902, 536,
  38973. 536, 57925, 57902, 536, 536, 57902, 57902, 57902, 57925, 57902, 57902, 57902, 57902, 57902, 57902, 57902,
  38974. 57925, 57925, 57902, 57902, 57952, 57902, 57902, 57902, 57902, 57902, 57902, 57902, 57952, 57952, 57902,
  38975. 57902, 57902, 57902, 57952, 57952, 57902, 536, 57902, 57902, 57902, 1, 24578, 3, 155941, 155941, 295, 0,
  38976. 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2751, 0, 0, 0, 0, 0, 0, 0,
  38977. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 791, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, 0, 0, 0, 0, 0, 0,
  38978. 673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 798, 799, 0, 0, 0, 0, 0, 0, 0, 521, 521, 837, 521,
  38979. 521, 521, 853, 857, 521, 521, 521, 521, 521, 878, 880, 521, 521, 891, 521, 521, 521, 57886, 57886, 58250,
  38980. 0, 751, 0, 0, 804, 0, 0, 0, 0, 0, 804, 0, 657, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 819, 0, 0, 0, 0, 0, 0,
  38981. 0, 521, 521, 521, 521, 521, 521, 3879, 521, 521, 521, 521, 521, 521, 3885, 521, 521, 521, 521, 57886,
  38982. 57886, 57886, 57886, 57886, 57886, 61238, 58256, 57886, 57886, 57886, 58272, 58276, 57886, 57886, 57886,
  38983. 57886, 57886, 58297, 58299, 57886, 57886, 58310, 57886, 57886, 57886, 0, 57909, 57909, 58326, 58332,
  38984. 57909, 57909, 57909, 58348, 58352, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61330, 57909,
  38985. 61332, 61333, 57909, 61335, 57909, 61337, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61346,
  38986. 57936, 61348, 61349, 57936, 61351, 57936, 61353, 57909, 57909, 58373, 58375, 57909, 57909, 58386, 57909,
  38987. 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 58401, 58407, 57936, 57936, 57936, 58423, 58427, 57936,
  38988. 57936, 57936, 57936, 57936, 58448, 58450, 57936, 0, 4165, 0, 4167, 521, 521, 521, 521, 521, 521, 521,
  38989. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  38990. 57909, 57936, 57936, 57936, 57936, 57936, 521, 1695, 521, 1697, 521, 521, 59044, 57886, 57886, 59046,
  38991. 57886, 57886, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1720, 0, 0, 57936, 58461, 57936, 57936, 57936, 837,
  38992. 521, 880, 521, 891, 521, 0, 57886, 58256, 58299, 57886, 58310, 57886, 155941, 1138, 0, 301, 0, 0, 305, 0,
  38993. 0, 0, 0, 0, 0, 0, 0, 2309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3396,
  38994. 0, 0, 0, 0, 0, 0, 0, 1208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1222, 0, 1224, 0, 0, 0, 0, 1229, 0, 0,
  38995. 0, 0, 1234, 0, 0, 0, 0, 0, 0, 0, 3874, 521, 521, 521, 521, 3878, 521, 521, 521, 521, 521, 521, 521, 521,
  38996. 521, 3887, 521, 521, 61233, 57886, 57886, 57886, 57886, 61237, 57886, 1406, 521, 521, 58754, 901, 57886,
  38997. 57886, 57886, 57886, 58761, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  38998. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58792, 58794, 57886, 57886, 57886, 57886, 58273,
  38999. 58277, 58283, 57886, 58288, 57886, 57886, 57886, 57886, 57886, 58306, 57886, 57886, 57886, 57886, 0,
  39000. 57909, 57909, 58328, 57909, 57909, 57909, 57909, 58349, 58353, 58359, 57909, 58364, 57886, 58832, 57886,
  39001. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58844, 58845, 57886, 57886, 50657, 58754, 977, 57909,
  39002. 57909, 57909, 57909, 58856, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0,
  39003. 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 58415, 57936, 57936, 58431, 57936, 57936, 57936,
  39004. 57936, 57936, 57936, 57936, 57909, 57909, 57909, 57909, 57909, 58913, 57909, 57909, 57909, 57909, 57909,
  39005. 57909, 57909, 58927, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58939, 58940, 57909, 57909,
  39006. 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59512, 57936, 57936,
  39007. 57936, 57936, 57936, 57936, 57936, 57936, 59523, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39008. 57936, 57936, 57936, 57936, 57936, 57936, 60021, 57936, 57936, 57936, 57936, 57936, 57936, 60026, 57936,
  39009. 60028, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58950, 57936, 57936, 57936, 57936, 57936,
  39010. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58981,
  39011. 58983, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61202, 57936,
  39012. 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3781, 0, 0,
  39013. 0, 0, 0, 0, 521, 521, 521, 521, 57936, 59034, 59035, 57936, 57936, 521, 521, 1696, 521, 521, 1699, 57886,
  39014. 57886, 59045, 57886, 57886, 59048, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2774, 0, 0, 0, 0, 0, 0,
  39015. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 730, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1789, 0, 0, 0,
  39016. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 507904, 507904, 507904, 507904,
  39017. 0, 1773, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1855, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39018. 2825, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 2837, 521, 521, 521, 521, 521, 521, 521, 521,
  39019. 521, 1895, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39020. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1955, 521, 521, 521, 58754, 0, 57886, 57886, 57886,
  39021. 57886, 57886, 57886, 57886, 59313, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39022. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58813, 57886, 58815, 57886,
  39023. 57886, 57886, 57886, 57886, 57886, 57886, 58828, 57886, 57886, 57886, 59338, 57886, 57886, 57886, 57886,
  39024. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39025. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59399, 57886, 57886, 57886, 50657,
  39026. 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59413, 57909, 57909, 57909, 57909, 57909, 57909,
  39027. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39028. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60909, 57936, 57936, 57909, 59438, 57909, 57909,
  39029. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39030. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 57886,
  39031. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59509, 57936, 57936, 57936,
  39032. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39033. 57936, 57936, 57936, 57936, 57936, 59534, 0, 0, 0, 2332, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39034. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 0, 0, 0, 0, 0, 2358, 0, 2360, 2361, 2362, 0, 2364, 0, 0, 0, 0,
  39035. 0, 0, 0, 0, 0, 0, 2372, 0, 0, 0, 0, 2377, 2378, 0, 0, 0, 0, 0, 0, 0, 49716, 49716, 0, 0, 0, 0, 0, 0, 0, 0,
  39036. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 327680, 327680, 327680, 327680, 2382, 0, 0, 0, 0, 0, 0, 0, 2388, 521,
  39037. 521, 521, 521, 521, 521, 2395, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39038. 521, 1905, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1918, 521, 521, 521, 521, 521, 521, 521,
  39039. 521, 521, 2439, 521, 521, 521, 521, 521, 2445, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39040. 521, 521, 521, 521, 521, 521, 521, 521, 521, 3801, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39041. 57886, 57886, 0, 0, 0, 0, 2745, 2746, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39042. 0, 0, 0, 0, 2359296, 367, 0, 0, 0, 521, 521, 2843, 521, 521, 521, 521, 521, 2848, 521, 521, 521, 521, 521,
  39043. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2864, 521, 521, 521, 0, 2895,
  39044. 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60247, 57886, 57886, 57886, 57886,
  39045. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909,
  39046. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59487, 59488,
  39047. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886,
  39048. 57936, 57936, 57936, 57936, 57936, 60384, 57936, 57936, 57936, 57936, 57936, 60389, 57936, 57936, 57936,
  39049. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39050. 57936, 57936, 59016, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60405,
  39051. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39052. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39053. 57936, 60033, 57936, 57936, 57936, 57936, 57936, 57936, 61269, 57936, 57936, 57936, 57936, 57936, 57936,
  39054. 57936, 57936, 57936, 61278, 57936, 57936, 57936, 521, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0,
  39055. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3446, 521, 521, 521, 521, 521, 521,
  39056. 521, 521, 521, 521, 521, 521, 1937, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39057. 521, 521, 521, 521, 521, 1385, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39058. 57936, 61534, 57936, 57936, 4192, 0, 4194, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886,
  39059. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 0, 4193,
  39060. 0, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909,
  39061. 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 0, 4211, 0, 521, 521, 521, 521, 57886, 57886,
  39062. 57886, 57886, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 0, 521, 521, 57886, 57886, 57909,
  39063. 57909, 57936, 57936, 521, 57886, 57909, 57936, 521, 521, 521, 521, 521, 521, 521, 1335, 521, 521, 521,
  39064. 521, 1345, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1361, 521, 521, 521,
  39065. 0, 0, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60246, 57886, 57886, 57886, 57886,
  39066. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909,
  39067. 57909, 57909, 59911, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39068. 57909, 58926, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0,
  39069. 57886, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 370, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39070. 0, 0, 378, 0, 0, 0, 0, 370, 0, 0, 0, 0, 0, 4358144, 4358144, 4358144, 4825088, 4358144, 4358144, 4358144,
  39071. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  39072. 4358144, 4358144, 4358144, 4358144, 4358144, 5177344, 4358144, 4358144, 4358144, 0, 0, 0, 0, 0, 0, 302, 0,
  39073. 0, 0, 302, 0, 0, 306, 0, 0, 0, 306, 0, 0, 0, 4931584, 0, 0, 0, 0, 0, 0, 0, 0, 747, 0, 0, 0, 0, 0, 0, 0, 0,
  39074. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 771, 0, 387, 0, 353, 0, 0, 0, 0, 0, 396, 397, 0, 398, 0, 0, 0, 0,
  39075. 0, 0, 0, 0, 0, 0, 0, 398, 0, 0, 403, 0, 0, 0, 0, 0, 0, 0, 557056, 557056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39076. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3129, 0, 0, 0, 0, 0, 0, 0, 370, 378, 406, 0, 0, 0, 370, 0, 0, 353,
  39077. 0, 0, 0, 370, 0, 409, 411, 0, 370, 398, 0, 0, 370, 378, 0, 139264, 147456, 398, 409, 0, 0, 409, 0, 0, 0,
  39078. 432, 131072, 0, 432, 432, 0, 0, 432, 0, 411, 432, 0, 458, 0, 0, 0, 486, 486, 486, 486, 486, 486, 486, 486,
  39079. 486, 486, 508, 508, 508, 508, 520, 508, 508, 508, 520, 508, 508, 508, 508, 508, 508, 537, 57903, 537,
  39080. 57903, 537, 537, 57903, 537, 537, 57926, 57903, 537, 537, 57903, 57903, 57903, 57926, 57903, 57903, 57903,
  39081. 57903, 57903, 57903, 57903, 57926, 57926, 57903, 57903, 57953, 57903, 57903, 57903, 57903, 57903, 57903,
  39082. 57903, 57953, 57953, 57903, 57903, 57903, 57903, 57953, 57953, 57903, 617, 57903, 57968, 57968, 1, 24578,
  39083. 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 636, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39084. 0, 4017, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 61374, 57886, 57886, 57886,
  39085. 57886, 57886, 57886, 0, 0, 774, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 793, 0, 0, 0, 0, 0,
  39086. 0, 0, 774, 0, 0, 0, 0, 0, 1276, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39087. 0, 0, 3625, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
  39088. 0, 0, 0, 0, 793, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 687, 0, 0, 0, 774, 0, 0, 0, 0, 793, 0, 0, 0, 0, 0, 0, 0,
  39089. 793, 0, 0, 0, 0, 774, 0, 793, 0, 521, 832, 521, 521, 521, 521, 521, 521, 863, 865, 521, 521, 521, 521,
  39090. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 58251, 1151, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1164, 0,
  39091. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39092. 1182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1207, 1296,
  39093. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1290, 1316, 1317, 0, 1290, 521, 521, 521,
  39094. 521, 521, 521, 0, 0, 0, 0, 57886, 57886, 57886, 57886, 59822, 57886, 57886, 57886, 57886, 57886, 57886,
  39095. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 59907, 57909,
  39096. 57909, 57909, 57909, 57909, 57909, 57909, 59915, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39097. 57909, 521, 1325, 521, 521, 521, 1329, 521, 521, 1340, 521, 521, 1344, 521, 521, 521, 521, 521, 521, 521,
  39098. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1363, 521, 521, 521, 0, 2895, 0, 0, 0, 0, 57886, 57886,
  39099. 57886, 57886, 57886, 57886, 60245, 57886, 57886, 57886, 57886, 60249, 57886, 57886, 57886, 57886, 57886,
  39100. 57886, 57886, 57886, 57886, 57886, 57886, 58294, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0,
  39101. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59483, 57909,
  39102. 57909, 57909, 57909, 57909, 57909, 59491, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39103. 57909, 57886, 521, 1367, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39104. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2893, 521, 521, 521, 58754,
  39105. 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58764, 57886, 57886, 57886, 58768, 57886, 57886,
  39106. 58779, 57886, 57886, 58783, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60588,
  39107. 60589, 57886, 57886, 57886, 57886, 60592, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39108. 57886, 57886, 60598, 57886, 57886, 57886, 57909, 57909, 58878, 57909, 57909, 57909, 57909, 57909, 57909,
  39109. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58897, 57909, 57909, 57909,
  39110. 58901, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60367, 57909, 57909,
  39111. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39112. 57936, 57936, 57936, 57936, 59515, 57936, 57936, 57936, 57936, 59521, 57936, 57936, 57936, 57936, 57936,
  39113. 57936, 57936, 57936, 57936, 57936, 59532, 57936, 57936, 57936, 57936, 57936, 57936, 58953, 57936, 57936,
  39114. 57936, 58957, 57936, 57936, 58968, 57936, 57936, 58972, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39115. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58991, 57936, 57936, 57936, 58995,
  39116. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39117. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60399, 57936,
  39118. 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 1726, 1727, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39119. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 516560, 516560, 516560, 516560, 0, 1786, 0, 0, 0, 0, 0, 0, 0, 0,
  39120. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1808, 0, 0, 0, 0, 0, 5111808, 0, 0, 0, 0, 0,
  39121. 5283840, 0, 0, 0, 0, 5472256, 5521408, 0, 0, 0, 0, 5595136, 5709824, 5718016, 0, 5824512, 5865472, 0, 0,
  39122. 5922816, 0, 0, 6021120, 0, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39123. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59324, 57886, 57886, 57886, 57886, 57886, 57886,
  39124. 57886, 57886, 57886, 57886, 57886, 60837, 57886, 60839, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39125. 60846, 57886, 57886, 60848, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 0, 57909, 57909,
  39126. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39127. 59424, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61181,
  39128. 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39129. 57936, 57936, 57936, 60047, 57936, 57936, 57936, 57936, 60052, 57936, 57936, 57936, 57936, 57936, 57936,
  39130. 57936, 57936, 57936, 57936, 57936, 57909, 57909, 57909, 57909, 57909, 59442, 59443, 57909, 57909, 57909,
  39131. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39132. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 60907, 57936, 57936,
  39133. 57936, 57936, 57936, 57936, 57936, 59538, 59539, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39134. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39135. 57936, 57936, 57936, 57936, 59556, 57936, 57936, 57936, 57936, 57936, 57936, 59563, 57936, 57936, 521,
  39136. 521, 521, 59324, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39137. 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 318, 0, 0, 0, 0, 0, 2384, 0, 0, 2387, 0, 521, 521, 2390, 521, 521,
  39138. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886,
  39139. 57886, 57886, 57886, 57886, 60823, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59867, 59868, 57886,
  39140. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59879, 57886, 57886, 57886,
  39141. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59891, 57909, 57909,
  39142. 57909, 57909, 57909, 59956, 59957, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39143. 57909, 57909, 59968, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39144. 58891, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39145. 57909, 57909, 57909, 57909, 57909, 59457, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39146. 57909, 57909, 57909, 57909, 57909, 57909, 59980, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39147. 57909, 57909, 57936, 57936, 59992, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39148. 57936, 57936, 57936, 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3868, 3627, 0, 0,
  39149. 57936, 57936, 57936, 57936, 57936, 60039, 60040, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39150. 57936, 57936, 57936, 57936, 60051, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39151. 57936, 57936, 57936, 57936, 60705, 57936, 57936, 60708, 57936, 57936, 60711, 3368, 521, 521, 60715, 57886,
  39152. 57886, 0, 0, 0, 0, 0, 57936, 57936, 57936, 60063, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39153. 57936, 57936, 521, 521, 521, 2732, 2733, 57886, 57886, 57886, 60081, 60082, 0, 0, 1710, 0, 0, 1717, 0, 0,
  39154. 0, 0, 0, 1728, 1729, 0, 0, 0, 0, 0, 1735, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360,
  39155. 361, 0, 0, 0, 0, 0, 0, 0, 367, 0, 295, 0, 0, 0, 0, 2821, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2827, 0, 0, 0, 0, 0,
  39156. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39157. 521, 521, 521, 521, 521, 521, 521, 521, 2460, 521, 2462, 57886, 60286, 57886, 57886, 57886, 57886, 57886,
  39158. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39159. 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39160. 57909, 57909, 57909, 57909, 57909, 57909, 59919, 57909, 57909, 57909, 57909, 57936, 60406, 57936, 57936,
  39161. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60418, 57936, 57936, 57936, 57936, 57936,
  39162. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59011, 57936,
  39163. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521,
  39164. 521, 3194, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39165. 521, 521, 3207, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 59818, 57886, 57886, 57886, 57886, 57886, 57886,
  39166. 57886, 59826, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39167. 60590, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39168. 57886, 57886, 57886, 57886, 57886, 0, 0, 57909, 60615, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39169. 57909, 57909, 57909, 57909, 60648, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39170. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  39171. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60002, 57936, 57936, 57936, 57936, 57936, 60697, 57936,
  39172. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39173. 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 6152192, 0, 0, 0, 6316032,
  39174. 0, 196608, 0, 0, 5816320, 6291456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2754, 0, 0, 0, 0, 0, 0, 0, 0,
  39175. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57936, 57936, 57936, 57936,
  39176. 57936, 61097, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 3760, 57886, 57886,
  39177. 61106, 3763, 0, 0, 0, 0, 3767, 0, 0, 0, 0, 0, 0, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 0, 0,
  39178. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1167, 0, 0, 0, 0, 1171, 0, 0, 1174, 0, 0, 0, 0, 0, 0, 0, 521,
  39179. 521, 521, 3788, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39180. 521, 57886, 57886, 57886, 61147, 57886, 57886, 57886, 61150, 57886, 57886, 57886, 57886, 58274, 57886,
  39181. 57886, 57886, 57886, 57886, 58293, 57886, 57886, 57886, 57886, 58311, 57886, 57886, 57886, 0, 57909,
  39182. 57909, 57909, 57909, 57909, 57909, 57909, 58350, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39183. 57909, 59478, 57909, 57909, 57909, 59484, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39184. 59494, 57909, 57909, 57909, 57909, 59500, 57909, 57909, 57886, 57886, 57886, 57886, 61241, 57886, 61243,
  39185. 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39186. 57909, 61257, 57909, 61259, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 61074, 57936, 57936, 57936,
  39187. 61077, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61085, 57936, 57936, 57936, 57936,
  39188. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59516, 57936, 57936, 57936, 57936, 57936,
  39189. 57936, 57936, 57936, 57936, 59528, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39190. 57936, 61470, 57936, 57936, 57936, 0, 4130, 0, 0, 0, 0, 0, 521, 521, 4135, 521, 4136, 521, 521, 521, 521,
  39191. 521, 521, 521, 57886, 57886, 61486, 57886, 61487, 57886, 57886, 57886, 57886, 59340, 57886, 57886, 57886,
  39192. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59353, 57886, 57886, 57886, 59358, 57886,
  39193. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 57909, 57909, 57909, 57909,
  39194. 57909, 57909, 57909, 59914, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0,
  39195. 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39196. 57936, 57936, 57936, 57936, 57936, 60709, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0,
  39197. 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 475, 475, 475, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 509,
  39198. 509, 513, 513, 513, 513, 509, 513, 513, 513, 509, 513, 513, 513, 513, 513, 513, 538, 57904, 538, 57904,
  39199. 538, 538, 57904, 538, 538, 57927, 57904, 538, 538, 57904, 57904, 57904, 57927, 57904, 57904, 57904, 57904,
  39200. 57904, 57904, 57904, 57927, 57927, 57904, 57904, 57954, 57904, 57904, 57904, 57904, 57904, 57904, 57904,
  39201. 57954, 57954, 57904, 57904, 57904, 57904, 57954, 57954, 57904, 618, 57904, 57969, 57969, 1, 24578, 3,
  39202. 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0, 0, 637, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39203. 1305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1288, 0, 521, 521, 1320, 521, 1323, 0, 680, 681, 0, 0,
  39204. 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 0, 0, 0, 0, 702, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521,
  39205. 3876, 521, 521, 521, 521, 3880, 521, 521, 521, 521, 521, 3886, 521, 521, 521, 57886, 57886, 57886, 61235,
  39206. 57886, 57886, 57886, 658, 0, 637, 0, 0, 0, 0, 0, 0, 781, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 790, 0, 795, 0, 0,
  39207. 0, 0, 0, 0, 637, 0, 0, 781, 521, 833, 521, 521, 521, 521, 854, 858, 864, 521, 869, 521, 521, 521, 521,
  39208. 521, 887, 521, 521, 521, 521, 57886, 57886, 58252, 0, 790, 0, 795, 0, 781, 0, 807, 0, 0, 0, 0, 807, 0, 0,
  39209. 0, 0, 0, 637, 0, 0, 0, 0, 0, 0, 0, 0, 781, 0, 0, 0, 0, 0, 0, 1277, 0, 1162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39210. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 670, 0, 0, 0, 0, 0, 0, 0, 0, 57909, 57909, 57909, 57909, 57909,
  39211. 58382, 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 58403, 57936, 57936, 57936, 57936,
  39212. 58424, 58428, 58434, 57936, 58439, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0,
  39213. 57886, 57886, 57886, 57886, 57886, 57886, 155941, 1138, 0, 0, 1142, 0, 0, 1147, 0, 0, 0, 0, 0, 0, 0, 311,
  39214. 0, 0, 0, 0, 0, 310, 0, 310, 311, 0, 310, 310, 311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 310, 408, 311, 0, 0,
  39215. 0, 0, 0, 0, 311, 413, 0, 0, 139264, 147456, 0, 0, 0, 0, 0, 58457, 57936, 57936, 57936, 57936, 521, 521,
  39216. 521, 887, 521, 521, 0, 57886, 57886, 57886, 58306, 57886, 57886, 155941, 1138, 0, 301, 0, 0, 305, 0, 0, 0,
  39217. 0, 0, 0, 0, 0, 2336, 0, 0, 0, 0, 1806, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2292,
  39218. 2293, 0, 2295, 2296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1152, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39219. 1169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1179, 0, 0, 0, 1183, 1184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39220. 0, 0, 367, 367, 0, 0, 0, 1202, 0, 0, 0, 0, 0, 0, 0, 686, 0, 0, 0, 0, 0, 0, 367, 367, 367, 0, 0, 0, 0, 0,
  39221. 699, 0, 0, 0, 0, 0, 0, 0, 0, 708, 0, 0, 1243, 0, 0, 0, 0, 0, 0, 1251, 0, 0, 0, 0, 0, 1256, 0, 0, 0, 0, 0,
  39222. 0, 0, 0, 0, 0, 0, 1267, 0, 0, 0, 0, 0, 0, 1301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39223. 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 0, 0, 0, 0, 1275,
  39224. 0, 0, 1152, 0, 0, 0, 1281, 0, 1283, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1291, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521,
  39225. 521, 521, 521, 2393, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2405, 521, 521, 521, 521, 521,
  39226. 521, 0, 1297, 1256, 0, 1281, 1300, 0, 1303, 0, 0, 0, 1183, 0, 0, 0, 0, 1311, 0, 0, 0, 0, 0, 1311, 0, 0,
  39227. 1202, 1311, 1318, 521, 521, 521, 521, 521, 521, 0, 0, 0, 2473, 57886, 57886, 57886, 57886, 57886, 57886,
  39228. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39229. 57886, 61043, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 1324, 521, 521, 521, 521,
  39230. 1330, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1351, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39231. 521, 521, 521, 1364, 521, 521, 521, 0, 2895, 0, 0, 0, 0, 57886, 57886, 57886, 60243, 57886, 60244, 57886,
  39232. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39233. 57886, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39234. 521, 521, 1369, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1377, 521, 521, 521, 1384, 1386, 521, 521,
  39235. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2881, 521, 521, 521, 521, 521, 521, 521, 521,
  39236. 521, 521, 521, 521, 521, 521, 521, 521, 521, 3202, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39237. 521, 3208, 521, 521, 521, 521, 1409, 58754, 901, 58756, 57886, 57886, 57886, 57886, 57886, 58763, 57886,
  39238. 57886, 57886, 57886, 58769, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 58790,
  39239. 57886, 57886, 57886, 57886, 57886, 57886, 59870, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39240. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39241. 57886, 57886, 58818, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 58911, 57909, 57909,
  39242. 57909, 58918, 58920, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39243. 57909, 57909, 57909, 57909, 58943, 0, 58944, 58945, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39244. 57936, 57936, 59543, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39245. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58984, 57936, 57936, 57936, 58987,
  39246. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58952, 57936, 57936, 57936, 57936, 58958, 57936, 57936,
  39247. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58979, 57936, 57936, 57936, 57936, 57936, 57936,
  39248. 57936, 57936, 57936, 57936, 57936, 57936, 58992, 57936, 57936, 57936, 57936, 58997, 57936, 57936, 57936,
  39249. 57936, 57936, 59002, 57936, 57936, 57936, 59006, 57936, 57936, 57936, 59013, 59015, 57936, 57936, 57936,
  39250. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60922, 57936, 57936, 57936,
  39251. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60395,
  39252. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39253. 57936, 57936, 57936, 59038, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 1138,
  39254. 0, 0, 0, 1710, 0, 0, 0, 0, 1717, 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39255. 0, 0, 0, 0, 0, 0, 0, 0, 734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39256. 0, 0, 0, 1775, 0, 0, 0, 0, 0, 0, 0, 1783, 1784, 0, 0, 0, 0, 1840, 1841, 0, 0, 0, 1844, 0, 0, 0, 0, 0,
  39257. 1849, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 581632, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 581632, 0,
  39258. 581632, 581632, 0, 1862, 0, 1864, 1840, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1876, 521,
  39259. 521, 521, 521, 1882, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2850, 521, 2852, 521, 521, 521,
  39260. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2427, 521, 521, 521, 521,
  39261. 521, 521, 521, 521, 521, 521, 521, 521, 1893, 521, 521, 521, 521, 1897, 521, 521, 521, 521, 521, 521, 521,
  39262. 521, 521, 521, 521, 521, 1910, 521, 521, 521, 1915, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2849,
  39263. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39264. 521, 2429, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 58754, 0, 57886, 57886, 57886, 57886,
  39265. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59319, 57886, 57886, 57886, 57886, 59325, 57886,
  39266. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59336, 50657, 0, 57909, 57909, 57909,
  39267. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59419, 57909, 57909, 57909, 57909, 59425,
  39268. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59436, 57909, 57909, 57909, 57909,
  39269. 57909, 57909, 60653, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39270. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39271. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61091, 57936, 57909, 57909,
  39272. 57909, 59440, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59453,
  39273. 57909, 57909, 57909, 59458, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39274. 57909, 59936, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39275. 57909, 57909, 57909, 57909, 57909, 57909, 59942, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39276. 57909, 57909, 57909, 57909, 57936, 59536, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39277. 57936, 57936, 57936, 59549, 57936, 57936, 57936, 59554, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39278. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 2730, 521, 521, 521, 57886, 60079, 57886, 57886,
  39279. 57886, 0, 0, 0, 0, 0, 0, 0, 0, 2257, 521, 521, 59604, 57886, 59606, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0,
  39280. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2277, 2278, 0, 0, 0, 0, 0, 5210112, 0, 5365760, 0, 5554176,
  39281. 5570560, 5578752, 0, 5668864, 0, 0, 5791744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6201344, 6242304, 6250496, 0,
  39282. 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3443, 521, 521, 521, 521, 521, 521, 521,
  39283. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1382, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39284. 521, 521, 521, 521, 0, 0, 2383, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39285. 521, 521, 521, 521, 2403, 521, 521, 2407, 521, 521, 521, 2411, 57886, 57886, 59842, 57886, 57886, 57886,
  39286. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59852, 57886, 57886, 57886, 59855, 57886, 57886,
  39287. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60609, 57886, 57886, 57886,
  39288. 57886, 0, 0, 57909, 57909, 57909, 57909, 57909, 60618, 57909, 60619, 57909, 57909, 57909, 57909, 57909,
  39289. 57886, 57886, 59894, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 2561, 0, 57909, 57909, 57909,
  39290. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59923,
  39291. 57909, 57909, 59927, 57909, 57909, 57909, 59931, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39292. 57909, 57909, 57909, 59941, 57909, 57909, 57909, 59944, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39293. 57909, 57909, 57909, 57909, 57909, 61180, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936,
  39294. 61186, 57936, 57936, 57936, 61190, 57936, 57936, 57936, 57936, 57936, 59978, 57909, 57909, 57909, 57909,
  39295. 57909, 59983, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  39296. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60006, 57936, 57936, 60010,
  39297. 57936, 57936, 57936, 60014, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39298. 60024, 57936, 57936, 57936, 60027, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0,
  39299. 0, 4076, 0, 4078, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  39300. 60061, 57936, 57936, 57936, 57936, 57936, 60066, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  39301. 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39302. 2273, 0, 0, 0, 0, 0, 0, 0, 0, 2743, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39303. 0, 0, 0, 0, 0, 0, 0, 0, 3629, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2819, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39304. 2826, 0, 0, 0, 0, 0, 0, 521, 521, 2833, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3465, 3467, 521,
  39305. 521, 521, 3470, 521, 3472, 3473, 521, 57886, 57886, 57886, 57886, 57886, 57886, 60824, 57886, 57886,
  39306. 57886, 57886, 57886, 2841, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39307. 2856, 521, 521, 521, 521, 2859, 521, 521, 2861, 521, 2862, 521, 521, 521, 521, 521, 521, 0, 0, 2472, 0,
  39308. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39309. 57886, 57886, 59834, 57886, 57886, 59838, 57886, 521, 521, 521, 521, 2870, 521, 521, 2874, 521, 521, 521,
  39310. 521, 521, 521, 521, 521, 521, 2883, 521, 521, 521, 2886, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39311. 3669, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39312. 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39313. 57909, 58860, 57909, 57909, 57909, 57909, 57909, 58872, 0, 0, 57909, 57909, 60309, 57909, 57909, 57909,
  39314. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60317, 57909, 57909, 57909, 57909, 57909, 57909,
  39315. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61183, 57909, 57936, 57936, 57936, 57936,
  39316. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60420, 57936, 57936, 57936,
  39317. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59008, 57936,
  39318. 57936, 57936, 57936, 57936, 57936, 57936, 59022, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57909,
  39319. 60332, 57909, 57909, 57909, 57909, 60335, 57909, 57909, 60337, 57909, 60338, 57909, 57909, 57909, 57909,
  39320. 57909, 57909, 57909, 57909, 57909, 60347, 57909, 57909, 60351, 57909, 57909, 57909, 57909, 57909, 57909,
  39321. 57909, 57909, 57909, 57909, 57909, 60655, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936,
  39322. 57936, 57936, 57936, 60666, 57936, 57936, 57936, 57936, 57936, 57936, 60673, 57909, 57909, 60360, 57909,
  39323. 57909, 57909, 60363, 60364, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39324. 57909, 57909, 57936, 57936, 60374, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 3096,
  39325. 521, 521, 57886, 57886, 60443, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 450560, 450560, 0,
  39326. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 147456, 0, 0, 450560, 0, 0, 57936, 57936, 57936, 60382, 57936,
  39327. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39328. 60397, 57936, 57936, 57936, 57936, 60400, 57936, 57936, 60402, 57936, 60403, 57936, 57936, 57936, 57936,
  39329. 57936, 57936, 57936, 57936, 61272, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521,
  39330. 57886, 0, 0, 0, 0, 0, 0, 0, 3942, 3627, 0, 0, 0, 0, 0, 371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39331. 0, 0, 371, 0, 0, 0, 379, 381, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39332. 521, 521, 521, 521, 521, 521, 521, 1885, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3794, 521, 521, 521,
  39333. 3795, 3796, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39334. 57886, 57886, 57886, 0, 2559, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39335. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60325, 57909,
  39336. 57909, 57909, 57909, 57909, 57909, 3190, 521, 521, 521, 3193, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39337. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1917, 521, 521,
  39338. 521, 521, 521, 57886, 60581, 57886, 57886, 57886, 60584, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39339. 57886, 57886, 57886, 57886, 57886, 60594, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39340. 57886, 57886, 57886, 57886, 60838, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39341. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 2561, 57909, 57909, 57909, 57909, 57909,
  39342. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60630, 57909, 57909,
  39343. 57909, 60633, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60643,
  39344. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936,
  39345. 57936, 57936, 57936, 57936, 58417, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39346. 57936, 57936, 60920, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39347. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 3627, 0, 0, 0, 60674,
  39348. 57936, 57936, 57936, 57936, 60679, 57936, 57936, 57936, 60682, 57936, 57936, 57936, 57936, 57936, 57936,
  39349. 57936, 57936, 57936, 57936, 57936, 57936, 60692, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39350. 57936, 4072, 4073, 0, 0, 0, 0, 0, 4079, 4080, 4081, 521, 521, 521, 4084, 521, 4086, 521, 521, 521, 521,
  39351. 61435, 61436, 61437, 3457, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3469, 521,
  39352. 521, 521, 521, 521, 57886, 57886, 57886, 60821, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39353. 57886, 60587, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60595,
  39354. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 2560, 0, 0, 57909, 57909, 57909,
  39355. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39356. 60640, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60883,
  39357. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39358. 60897, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 60905, 57936, 57936, 57936, 57936, 57936,
  39359. 57936, 57936, 57936, 57936, 57936, 57936, 61201, 57936, 57936, 521, 521, 57886, 57886, 0, 0, 0, 0, 0, 0,
  39360. 0, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3784, 521, 521, 521, 57936, 60939,
  39361. 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0, 0, 0, 0, 3610, 0, 0, 0, 0, 0,
  39362. 0, 0, 3616, 0, 0, 0, 0, 0, 0, 372, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 377, 0, 0, 0, 0, 0,
  39363. 0, 0, 0, 2824, 2782, 0, 0, 0, 0, 0, 2829, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 2838, 521, 521, 521,
  39364. 521, 521, 0, 0, 0, 3640, 3641, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3651, 521, 521,
  39365. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3671, 521, 521, 521, 57886, 57886, 57886, 57886,
  39366. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60612, 57886, 0, 0, 57909,
  39367. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60620, 57909, 57909, 57909, 57909, 521, 3661, 521, 521,
  39368. 521, 521, 521, 3666, 521, 3668, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886,
  39369. 57886, 57886, 57886, 57886, 61022, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60292, 57886, 57886,
  39370. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 60303, 57886, 57886,
  39371. 57886, 57886, 57886, 0, 2962, 0, 0, 57909, 57909, 57909, 57909, 61051, 57909, 57909, 57909, 57909, 57909,
  39372. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61061, 57909, 57909, 57909, 57909, 57909,
  39373. 57909, 61067, 57909, 61069, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58884, 57909, 57909, 57909,
  39374. 57909, 57909, 57909, 57909, 57909, 57909, 58894, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39375. 57909, 57909, 57909, 57909, 57909, 57909, 59938, 57909, 57909, 57909, 57909, 57909, 57909, 59943, 57909,
  39376. 59945, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 61096, 57936,
  39377. 61098, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886, 0, 0,
  39378. 0, 3765, 0, 0, 0, 0, 0, 0, 0, 0, 2363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2374, 0, 0, 0, 0, 0, 0, 0,
  39379. 0, 0, 656, 0, 0, 659, 660, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 671, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3770, 0, 0, 0, 0,
  39380. 0, 0, 0, 3627, 0, 0, 0, 0, 0, 3779, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521,
  39381. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3786, 521, 521,
  39382. 521, 3790, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3799, 521, 521, 521, 57886,
  39383. 57886, 57886, 57886, 57886, 61148, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909,
  39384. 57909, 57909, 60867, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39385. 57909, 57909, 57909, 57909, 60880, 57909, 57909, 61152, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39386. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61161, 57886, 57886, 57886, 57886, 57909, 57909, 57909,
  39387. 57909, 57909, 61167, 57909, 57909, 57909, 61171, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61053,
  39388. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39389. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59459, 57909, 57909, 57909, 57909, 57909,
  39390. 57909, 57909, 57909, 61438, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61446, 57886, 57909,
  39391. 57909, 57909, 61451, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61459, 57909, 57936, 57936,
  39392. 57936, 61464, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59576, 57936, 57936, 57936,
  39393. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39394. 57936, 57936, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39395. 0, 0, 0, 57936, 57936, 57936, 57936, 57936, 61472, 57936, 0, 0, 0, 0, 4131, 0, 4133, 521, 521, 521, 521,
  39396. 521, 521, 521, 521, 521, 4139, 4140, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 61445,
  39397. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 61458, 57909,
  39398. 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60919, 57936, 57936,
  39399. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60929, 57936, 57936, 57936, 57936, 57936, 57936,
  39400. 57936, 57936, 57936, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 4088, 521,
  39401. 521, 57886, 57886, 57886, 57886, 57886, 57886, 61490, 61491, 57886, 57886, 57909, 57909, 57909, 57909,
  39402. 57909, 57909, 57909, 57909, 57909, 61498, 61499, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936,
  39403. 57936, 57936, 57936, 61506, 61507, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61415, 0, 0,
  39404. 4074, 4075, 0, 0, 0, 521, 521, 521, 4082, 521, 521, 521, 521, 521, 521, 521, 521, 4090, 57886, 57886,
  39405. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 60865, 57909, 57909, 57909, 57909, 57909, 57909,
  39406. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39407. 61184, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61189, 57936, 57936, 57936, 57936, 57936, 57936,
  39408. 0, 0, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57936, 57936, 57936,
  39409. 57936, 0, 521, 4220, 57886, 61565, 57909, 61566, 57936, 61567, 521, 57886, 57909, 57936, 521, 521, 521,
  39410. 521, 521, 521, 521, 1899, 1900, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39411. 521, 521, 521, 521, 521, 521, 521, 521, 3800, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39412. 57886, 57886, 425, 425, 0, 0, 131072, 425, 0, 0, 0, 425, 0, 0, 447, 0, 425, 0, 476, 476, 476, 0, 0, 361,
  39413. 361, 361, 495, 361, 361, 361, 361, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476, 476,
  39414. 476, 539, 57905, 539, 57905, 539, 539, 57905, 539, 539, 57928, 57905, 539, 539, 57905, 57905, 57905,
  39415. 57928, 57905, 57905, 57905, 57905, 57905, 57905, 57905, 57928, 57928, 57905, 57905, 57955, 57905, 57905,
  39416. 57905, 57905, 57905, 57905, 57905, 57955, 57955, 57905, 57905, 57905, 57905, 57955, 57955, 57905, 539,
  39417. 57905, 57905, 57905, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0, 0,
  39418. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376832, 0, 376832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39419. 0, 0, 1854, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57909, 58369, 57909, 57909, 57909, 57909, 58387, 57909,
  39420. 57909, 57909, 0, 0, 0, 0, 58293, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58425, 57936, 57936,
  39421. 57936, 57936, 57936, 58444, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60069, 57936,
  39422. 57936, 57936, 57936, 2729, 521, 521, 521, 521, 60078, 57886, 57886, 57886, 57886, 2739, 2266, 0, 2740,
  39423. 2269, 0, 0, 2742, 57936, 58462, 57936, 57936, 57936, 521, 521, 521, 521, 892, 521, 0, 57886, 57886, 57886,
  39424. 57886, 58311, 57886, 155941, 1138, 0, 1139, 0, 0, 1144, 0, 0, 0, 0, 0, 1150, 0, 0, 0, 0, 0, 5341184, 0,
  39425. 5652480, 0, 0, 0, 0, 4759552, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1827, 0, 0, 0,
  39426. 0, 0, 0, 0, 1834, 0, 0, 0, 0, 0, 0, 1244, 0, 0, 0, 0, 1249, 0, 0, 0, 1253, 0, 0, 0, 0, 0, 0, 0, 1253, 0,
  39427. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 466944, 0, 0, 0, 0, 0, 0, 0, 0, 1825, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39428. 353, 354, 355, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 295, 0, 521, 521, 521, 1327, 521, 521, 521,
  39429. 1336, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39430. 521, 521, 521, 521, 2895, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39431. 60574, 57886, 57886, 60578, 57886, 521, 521, 521, 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886,
  39432. 57886, 57886, 57886, 58766, 57886, 57886, 57886, 58775, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39433. 57886, 57886, 57886, 57886, 57886, 57886, 61034, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39434. 61042, 57886, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 61047, 57909, 57936, 57936, 57936,
  39435. 57936, 57936, 58955, 57936, 57936, 57936, 58964, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39436. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59555,
  39437. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 521,
  39438. 1931, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1953,
  39439. 521, 521, 521, 521, 521, 521, 0, 2470, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39440. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59839, 521,
  39441. 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39442. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59333, 57886, 57886,
  39443. 57886, 57886, 57886, 57909, 57909, 57909, 57909, 60864, 57909, 57909, 57909, 57909, 60868, 57909, 57909,
  39444. 57909, 57909, 57909, 57909, 57909, 60874, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39445. 57909, 0, 0, 0, 0, 57886, 57936, 57936, 58402, 57936, 57936, 57936, 57936, 57936, 57936, 58433, 58435,
  39446. 57936, 57936, 57936, 57936, 57936, 57936, 50657, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39447. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39448. 57909, 57909, 57909, 59433, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59986, 57909,
  39449. 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39450. 60001, 57936, 57936, 60004, 57936, 57936, 57909, 57909, 57909, 57909, 57909, 59474, 57909, 57909, 57909,
  39451. 57909, 57909, 57909, 57909, 57909, 59486, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39452. 57909, 59497, 57909, 57909, 57909, 57909, 57909, 57886, 57886, 57886, 57886, 59372, 57886, 57886, 59375,
  39453. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59389, 57886, 57886, 57886, 57886,
  39454. 57886, 57886, 59395, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59872, 57886, 57886, 57886,
  39455. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39456. 57886, 57886, 57886, 57886, 57886, 57886, 60304, 57886, 57886, 57886, 0, 2962, 0, 0, 57936, 57936, 57936,
  39457. 57936, 59570, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59582, 57936, 57936, 57936, 57936,
  39458. 57936, 57936, 57936, 57936, 57936, 57936, 59593, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521,
  39459. 521, 521, 0, 57886, 57886, 57886, 57886, 57886, 57886, 293, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39460. 3119, 0, 3120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3135, 0, 0, 0, 0, 2283, 0, 0, 0, 0, 0, 0, 0,
  39461. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2301, 0, 0, 0, 0, 2359, 0, 0, 0, 0, 0, 0, 0,
  39462. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 336, 0, 0, 0, 0, 57886, 59841, 57886, 57886,
  39463. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39464. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59863, 57886,
  39465. 57886, 57886, 57909, 57909, 57909, 57909, 57909, 59930, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39466. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39467. 57909, 57909, 57909, 57909, 0, 57886, 57936, 57936, 58947, 57936, 57936, 57936, 57936, 57936, 57936,
  39468. 60013, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39469. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59589, 57936, 57936,
  39470. 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 0, 0, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39471. 60313, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39472. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 58931, 57909, 57909, 57909, 57909, 57909, 57909,
  39473. 57909, 57909, 0, 57886, 57936, 57936, 57936, 57936, 60626, 57909, 57909, 57909, 57909, 57909, 57909,
  39474. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39475. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 1259, 57886, 57936, 57936, 57936,
  39476. 57936, 57936, 60675, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39477. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39478. 57936, 57936, 57936, 59524, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39479. 57886, 57886, 57886, 61155, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39480. 57886, 57886, 57886, 57886, 57886, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39481. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 61174, 57909, 57909, 57909, 57909,
  39482. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936,
  39483. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 61193, 57936, 57936, 57936, 57936, 57936,
  39484. 57936, 57936, 57936, 61100, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 57886, 57886, 57886,
  39485. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367,
  39486. 367, 0, 0, 0, 0, 0, 0, 0, 1205, 0, 0, 57936, 57936, 57936, 57936, 61471, 57936, 57936, 0, 0, 0, 0, 0, 0,
  39487. 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886,
  39488. 57886, 57909, 57909, 57886, 57886, 57936, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57936, 57936,
  39489. 57886, 57886, 57886, 57886, 57936, 57936, 57886, 521, 57886, 57886, 57886, 372, 372, 0, 0, 131072, 372, 0,
  39490. 0, 0, 372, 0, 0, 0, 0, 372, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3122, 0, 0, 0, 0, 0, 0, 0,
  39491. 0, 0, 0, 0, 0, 0, 0, 57906, 57906, 57906, 57906, 57906, 57906, 57906, 57929, 57929, 57906, 57906, 57956,
  39492. 57906, 57906, 57906, 57906, 57906, 57906, 57906, 57956, 57956, 57906, 57906, 57906, 57906, 57956, 57956,
  39493. 57906, 540, 57906, 57906, 57906, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305,
  39494. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2334720, 0, 2334720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39495. 0, 0, 0, 0, 0, 0, 521, 521, 521, 2834, 2835, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  39496. 58267, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39497. 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 58343, 57909, 57909, 57909, 57909, 57909, 57909,
  39498. 57909, 57909, 57909, 57909, 61179, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936,
  39499. 57936, 57936, 61187, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521,
  39500. 57886, 57886, 57886, 57886, 57886, 301, 305, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1282, 0, 0, 0, 0, 0, 0,
  39501. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2758, 2759, 0, 0, 2762, 0, 2764, 0, 0, 0, 0, 0, 521, 521, 521,
  39502. 58754, 901, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39503. 57886, 57886, 58780, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 0, 0, 0,
  39504. 0, 57909, 57909, 59909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39505. 57909, 57909, 57909, 57909, 60658, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 57936, 57936, 60667,
  39506. 57936, 60668, 57936, 57936, 57936, 57936, 58875, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39507. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39508. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59947, 57909, 57909, 57909, 57909, 57909, 0, 0, 0,
  39509. 3771, 0, 3772, 0, 0, 0, 0, 3627, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 521,
  39510. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3657, 521, 521, 521, 521, 521, 521, 0, 0, 0,
  39511. 363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 367, 0, 0,
  39512. 245760, 0, 0, 0, 363, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 0, 364, 0, 0, 0, 0, 363, 0, 0, 0, 139264, 147456,
  39513. 0, 0, 0, 0, 0, 0, 653, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39514. 1858, 0, 0, 0, 0, 0, 0, 0, 0, 0, 433, 131072, 0, 433, 433, 0, 0, 433, 0, 364, 433, 0, 459, 0, 0, 0, 487,
  39515. 487, 490, 490, 490, 490, 496, 497, 490, 490, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510,
  39516. 510, 510, 510, 541, 57907, 541, 57907, 541, 541, 57907, 541, 541, 57930, 57907, 541, 541, 57907, 57907,
  39517. 57907, 57930, 57907, 57907, 57907, 57907, 57907, 57907, 57907, 57930, 57930, 57907, 57907, 57957, 57907,
  39518. 57907, 57907, 57907, 57907, 57907, 57907, 57957, 57957, 57907, 57907, 57907, 57907, 57957, 57957, 57907,
  39519. 619, 57907, 57970, 57970, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305, 306, 0, 0,
  39520. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1762, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39521. 0, 1239, 1806, 0, 0, 0, 0, 1246, 1246, 0, 0, 57909, 57909, 57909, 57909, 57909, 58383, 57909, 57909,
  39522. 57909, 57909, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39523. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60688, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39524. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 58458, 57936, 57936, 57936, 57936, 521, 521, 521,
  39525. 888, 521, 521, 0, 57886, 57886, 57886, 58307, 57886, 57886, 155941, 1138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39526. 0, 1794, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1806, 0, 0, 0, 0, 0, 0, 0, 0, 1272, 0, 0, 0, 0, 0, 0, 0,
  39527. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3402, 2768, 0, 0, 0, 0, 0, 0, 0,
  39528. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2318336, 57909, 57909, 57909,
  39529. 57909, 57909, 60334, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39530. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60344,
  39531. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57886,
  39532. 57886, 57886, 58268, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39533. 57886, 57886, 57886, 0, 57909, 57909, 57909, 57909, 57909, 57909, 58344, 57909, 57909, 57909, 57909,
  39534. 57909, 57909, 57909, 57909, 57909, 58393, 0, 0, 0, 0, 57886, 57936, 57936, 57936, 57936, 58409, 57936,
  39535. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59517, 59518,
  39536. 57936, 57936, 57936, 57936, 59525, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39537. 57936, 1240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39538. 2792, 0, 521, 1368, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39539. 521, 521, 521, 521, 521, 1395, 521, 521, 521, 521, 521, 521, 521, 521, 2875, 521, 521, 521, 521, 521, 521,
  39540. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886,
  39541. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39542. 58834, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 50657, 58754, 977, 57909,
  39543. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60895,
  39544. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 60903, 57936, 57936, 57936, 57936, 57936, 57936,
  39545. 57936, 57936, 57936, 57936, 57936, 58996, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39546. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 59024, 57936,
  39547. 57936, 57936, 57936, 57936, 521, 521, 521, 521, 521, 521, 0, 57886, 57886, 57886, 57886, 57886, 57886,
  39548. 155941, 1138, 0, 301, 0, 0, 305, 0, 0, 0, 0, 0, 0, 0, 0, 1216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39549. 0, 1232, 0, 0, 0, 0, 0, 0, 0, 0, 1304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521,
  39550. 521, 521, 521, 3178, 521, 3179, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39551. 2469, 0, 0, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39552. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59883, 57886, 57886, 57886, 57886, 57886,
  39553. 57886, 57886, 57886, 57886, 57886, 57886, 521, 521, 521, 2844, 521, 521, 521, 521, 521, 521, 521, 521,
  39554. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39555. 2434, 521, 521, 57936, 57936, 57936, 57936, 57936, 57936, 60385, 57936, 57936, 57936, 57936, 57936, 57936,
  39556. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39557. 57936, 57936, 57936, 57936, 59522, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39558. 57936, 57936, 57936, 0, 0, 0, 640, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39559. 521, 521, 521, 521, 521, 893, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57909, 57909, 60862,
  39560. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39561. 57909, 57909, 57909, 57909, 57909, 60879, 57909, 60881, 57909, 57936, 58463, 57936, 57936, 57936, 1126,
  39562. 521, 521, 521, 893, 521, 0, 57886, 58477, 57886, 57886, 58312, 57886, 155941, 1138, 0, 0, 0, 0, 0, 0, 0,
  39563. 0, 0, 0, 0, 0, 1817, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 402, 0, 0, 0, 0, 0,
  39564. 0, 0, 0, 331, 521, 58754, 0, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39565. 57886, 57886, 57886, 57886, 57886, 57886, 57886, 59326, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39566. 57886, 57886, 57886, 0, 0, 0, 0, 57909, 59908, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39567. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 60343, 57909, 57909, 57909, 57909, 57909, 57909,
  39568. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 50657, 0, 57909, 57909, 57909, 57909,
  39569. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59426,
  39570. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 59961, 57909, 57909,
  39571. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39572. 57909, 57909, 60346, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39573. 521, 521, 521, 521, 2415, 521, 2417, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39574. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2432, 521, 521, 521, 521, 521, 521, 2867, 521, 521,
  39575. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39576. 521, 521, 521, 521, 521, 521, 521, 521, 521, 1923, 57936, 57936, 57936, 57936, 60409, 57936, 57936, 57936,
  39577. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936,
  39578. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 60423, 57936, 57936, 57936, 57936, 57936,
  39579. 57936, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 3660, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39580. 521, 521, 521, 521, 521, 521, 521, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886, 57886,
  39581. 57886, 57886, 57886, 57886, 57886, 0, 0, 0, 2562, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909,
  39582. 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57909, 57936, 57936, 57936, 61185, 57936,
  39583. 57936, 57936, 61188, 57936, 57936, 57936, 57936, 57936, 57936, 57936, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0,
  39584. 0, 443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39585. 0, 0, 0, 0, 2310144, 0, 0, 2310144, 0, 0, 0, 0, 0, 0, 0, 2310144, 0, 2310144, 0, 0, 0, 0, 0, 0, 2310144,
  39586. 2310560, 2310560, 0, 2310144, 0, 0, 2310144, 0, 0, 0, 0, 0, 0, 2310144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39587. 2310144, 0, 0, 0, 0, 0, 0, 2310144, 0, 0, 0, 0, 0, 0, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39588. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2310144, 0, 367, 0, 0, 0, 0, 0, 0, 0, 2310560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39589. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 380, 0, 383, 0, 0, 0, 0, 0, 0, 2310144, 0, 0, 0,
  39590. 2310144, 0, 0, 0, 0, 0, 2310144, 0, 0, 2310144, 0, 0, 2310144, 0, 2310144, 2310144, 0, 2310144, 0,
  39591. 2310144, 2310144, 0, 0, 0, 0, 0, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 3445,
  39592. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 1347, 521, 521, 521, 521, 521, 521, 521,
  39593. 521, 521, 521, 521, 521, 521, 521, 521, 1362, 521, 521, 2310144, 0, 0, 2310733, 2310733, 2310733, 2310733,
  39594. 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733,
  39595. 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310733, 2310144,
  39596. 2310733, 2310144, 2310144, 2310733, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305,
  39597. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2310, 0, 0, 0, 0, 0, 0, 0, 0, 2318, 0, 0, 0, 0, 0, 2322, 0,
  39598. 0, 2324, 0, 0, 0, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4857856,
  39599. 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 839, 521, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39600. 521, 521, 521, 521, 521, 521, 898, 57886, 57886, 57886, 0, 0, 0, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39601. 460, 2335197, 2335197, 2335197, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 2335231, 2335231,
  39602. 2335231, 2335231, 2335231, 2335231, 2335231, 2335231, 2335231, 2335231, 2335231, 2335231, 2335231,
  39603. 2335231, 2335231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3392, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39604. 3399, 3400, 0, 3401, 0, 2335231, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305,
  39605. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2763, 0,
  39606. 0, 0, 0, 0, 2767, 0, 0, 0, 0, 417, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2359296, 0, 2359296, 2359296, 2359296,
  39607. 2359296, 2359296, 2359296, 2359296, 2359296, 2359296, 2359296, 2359296, 2359296, 2359296, 2359296,
  39608. 2359296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3416, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39609. 0, 2359296, 1, 24578, 3, 0, 0, 4366336, 0, 0, 0, 0, 0, 301, 302, 0, 4268032, 305, 306, 0, 0, 0, 0, 0, 0,
  39610. 0, 0, 0, 0, 0, 0, 0, 0, 2798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2813, 0, 0, 0, 0,
  39611. 2367488, 0, 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39612. 0, 367, 0, 295, 0, 0, 0, 0, 0, 6275072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 976, 0, 0, 0, 0, 0, 4857856,
  39613. 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 521, 521, 521, 2391, 2392, 521, 521, 521, 521, 521, 521, 521, 521, 521,
  39614. 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, 2855, 521, 521, 521, 521, 521, 521, 521, 2860, 521, 521,
  39615. 521, 521, 521, 521, 521, 521, 0, 1, 24578, 3, 155941, 155941, 295, 0, 0, 0, 0, 0, 301, 302, 0, 0, 305,
  39616. 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39617. 0, 3134, 0, 0, 212992, 0, 0, 0, 0, 0, 4366336, 0, 0, 0, 0, 0, 0, 0, 0, 4268032, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  39618. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 382, 0, 0, 6258688, 6447104, 0, 0, 6127616, 0,
  39619. 6348800, 5906432, 0, 5537792, 0, 0, 0, 0, 0, 5939200, 0, 0, 5677056, 6365184, 4866048, 0, 6070272,
  39620. 5545984, 5152768, 0, 0, 6144000, 4358144, 4866048, 4882432, 4358144, 4358144, 4358144, 0, 1411, 0, 0, 0,
  39621. 0, 0, 4857856, 4874240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5259264, 0, 0, 0, 0, 0, 0, 0, 0, 4358144,
  39622. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144,
  39623. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 900, 900, 900, 5537792,
  39624. 5545984, 5586944, 5734400, 5971968, 4358144, 6045696, 4358144, 6070272, 4358144, 4358144, 4358144,
  39625. 4358144, 6348800, 4358144, 6144000, 0, 6144000, 0, 4988928, 5005312, 0, 0, 0, 0, 5775360, 0, 0, 0, 0, 0,
  39626. 0, 0, 750, 808, 0, 0, 0, 750, 0, 0, 811, 692, 0, 0, 0, 816, 0, 0, 0, 818, 0, 0, 0, 685, 692, 0, 0,
  39627. 4358144, 5005312, 4358144, 4358144, 4358144, 5120000, 5136384, 4358144, 4358144, 4358144, 4358144,
  39628. 4358144, 4358144, 4358144, 4358144, 4358144, 4358144, 6324224, 5914624, 5914624, 0, 0, 0, 0, 0, 5513216,
  39629. 5783552, 0, 0, 0, 0, 0, 0, 656, 0, 779, 0, 0, 0, 0, 0, 0, 0, 783, 0, 0, 0, 0, 792, 0, 0, 0, 0, 0, 800, 0,
  39630. 783, 0, 0
  39631. ];
  39632. JSONiqParser.EXPECTED =
  39633. [
  39634. 166, 182, 211, 1104, 242, 1452, 1467, 273, 289, 712, 1117, 319, 349, 333, 365, 381, 397, 413, 195, 1866,
  39635. 2240, 2243, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 429, 445, 461, 477, 2088,
  39636. 226, 493, 2075, 939, 621, 523, 543, 1716, 559, 575, 591, 607, 1422, 650, 666, 1822, 697, 1565, 634, 728,
  39637. 738, 754, 796, 812, 828, 844, 860, 876, 892, 908, 924, 955, 2180, 985, 681, 2211, 1015, 1044, 1028, 1060,
  39638. 1090, 1133, 1320, 1149, 1165, 1551, 1181, 1197, 1213, 1229, 1259, 1904, 1365, 1375, 999, 969, 1762, 1289,
  39639. 1305, 1336, 1351, 1488, 1391, 1407, 1504, 1623, 1520, 1536, 1581, 1273, 1610, 1639, 1655, 1671, 2118, 2149,
  39640. 1687, 1703, 1437, 507, 1732, 1748, 1778, 1074, 780, 1809, 1838, 1854, 1890, 1920, 1936, 1952, 1968, 1984,
  39641. 2000, 2016, 2032, 2061, 257, 2104, 303, 2045, 767, 1793, 1594, 2134, 1243, 2165, 2196, 2227, 2234, 1874,
  39642. 1479, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 2234, 536, 2259, 2263,
  39643. 2271, 2271, 2271, 2265, 2269, 2271, 2272, 2276, 2279, 2286, 2282, 2290, 2294, 2298, 2302, 2306, 2310, 2381,
  39644. 2790, 2790, 4003, 4941, 2790, 2791, 2314, 3074, 2982, 2790, 2790, 2790, 2687, 2790, 5013, 2790, 2790, 2790,
  39645. 2790, 2790, 2790, 2790, 2827, 2790, 2571, 3537, 4080, 2436, 2320, 2443, 2466, 2326, 2336, 2790, 2790, 2790,
  39646. 2343, 2790, 2790, 2349, 3841, 2707, 2790, 2734, 2759, 2790, 2790, 2790, 2790, 4756, 2738, 2790, 2790, 2790,
  39647. 2790, 4767, 2321, 2390, 2466, 2466, 2466, 2466, 2355, 2361, 2790, 2790, 2790, 2790, 2790, 2371, 4535, 2790,
  39648. 2696, 4816, 2790, 2790, 2790, 2697, 4817, 2790, 2790, 2790, 4822, 4790, 2790, 2790, 3017, 3842, 2448, 2790,
  39649. 2790, 3537, 4079, 4079, 4079, 4079, 4079, 4099, 2436, 2436, 2436, 2436, 2436, 2387, 2321, 2321, 2321, 2321,
  39650. 2321, 2459, 2466, 2466, 2466, 2466, 2466, 2332, 2401, 2790, 2790, 2762, 4873, 2790, 2790, 2790, 2790, 2820,
  39651. 4885, 2790, 2790, 2790, 2790, 3243, 4891, 3542, 4079, 4079, 4079, 4097, 2436, 2436, 2436, 2436, 2458, 2321,
  39652. 2321, 2321, 2331, 2466, 2466, 2426, 2790, 2790, 3074, 4076, 4079, 4079, 2396, 2436, 2482, 2321, 2321, 2464,
  39653. 2466, 2466, 2411, 2790, 2790, 4535, 2790, 4077, 4079, 4079, 2480, 2436, 2436, 2457, 2321, 2321, 2420, 2467,
  39654. 2428, 2834, 3536, 4079, 2434, 2436, 2441, 2321, 2465, 2332, 2447, 4095, 4081, 2437, 2376, 2466, 2452, 4078,
  39655. 2436, 2321, 2466, 4335, 4081, 2456, 2463, 2422, 4080, 2482, 2463, 2471, 4098, 2483, 2331, 2478, 2329, 2487,
  39656. 2491, 2474, 2495, 2498, 2508, 2512, 2519, 2519, 2519, 2515, 2525, 2519, 2521, 2529, 2536, 2532, 2540, 2544,
  39657. 2548, 2552, 2556, 2560, 4697, 2790, 2790, 2790, 4729, 2790, 4591, 2584, 2858, 2790, 2790, 2790, 3364, 2591,
  39658. 2790, 3610, 2603, 2609, 2613, 2617, 2621, 2625, 2628, 2632, 2636, 4053, 2702, 2790, 2790, 2790, 2790, 3877,
  39659. 2642, 2648, 2892, 4432, 2646, 2915, 2367, 2654, 3828, 2813, 2790, 2652, 3406, 2659, 2664, 2790, 2790, 2790,
  39660. 2790, 2790, 2671, 4434, 2580, 4063, 2790, 2676, 2680, 2790, 2790, 2790, 3867, 2684, 2790, 2790, 2790, 3868,
  39661. 2685, 2750, 2790, 2790, 2790, 2790, 2756, 2760, 2790, 2790, 2790, 2790, 2790, 2880, 2666, 2790, 2790, 2777,
  39662. 4228, 3359, 2851, 4232, 4238, 2790, 4246, 4420, 4253, 3266, 4258, 4264, 3443, 2790, 4721, 2782, 2790, 2790,
  39663. 2790, 3228, 3232, 2790, 2790, 2790, 2790, 4105, 2790, 2790, 2790, 2790, 2790, 2790, 3903, 3876, 2788, 4641,
  39664. 2790, 2790, 2790, 3307, 2790, 2790, 2790, 4640, 2818, 2790, 2790, 3306, 2795, 2935, 2812, 2790, 2790, 2744,
  39665. 2790, 3875, 3239, 2817, 2790, 4088, 2790, 2790, 2824, 2790, 3502, 2818, 2790, 3007, 2790, 3959, 3750, 2960,
  39666. 2745, 3748, 2790, 4626, 2790, 4622, 2667, 2940, 2842, 3754, 2902, 4615, 2840, 3753, 3753, 3753, 4616, 2838,
  39667. 4624, 4624, 3006, 3753, 2841, 2903, 2719, 3291, 3292, 3752, 2941, 2998, 3000, 2847, 2790, 2790, 2790, 2790,
  39668. 2790, 3322, 3326, 2790, 2790, 2790, 3241, 4802, 2775, 4735, 2782, 2790, 2790, 2790, 4802, 3231, 2790, 2790,
  39669. 2790, 2771, 4780, 3110, 4601, 2790, 3607, 2790, 3763, 3555, 2886, 2973, 2790, 3980, 2790, 3666, 2790, 4542,
  39670. 2416, 2884, 2890, 2896, 2907, 4569, 2911, 2790, 2919, 5035, 2790, 2913, 2925, 2790, 4599, 2686, 2790, 3665,
  39671. 2790, 4541, 3125, 4330, 4429, 2929, 2934, 2939, 3953, 2790, 2790, 4197, 3440, 2790, 2790, 2790, 2790, 4592,
  39672. 3426, 2790, 2790, 2790, 2790, 2790, 4860, 2951, 2790, 3324, 2790, 2790, 3609, 3761, 2790, 4016, 2955, 2741,
  39673. 2842, 2790, 4742, 2959, 2790, 2790, 4535, 2790, 2790, 4096, 4079, 4079, 4079, 4079, 2435, 2436, 2436, 2436,
  39674. 2436, 2437, 2980, 2790, 2790, 2790, 2790, 2802, 2989, 2790, 2790, 2790, 2790, 2801, 2988, 2790, 2790, 2790,
  39675. 4818, 4810, 3928, 2790, 3608, 3761, 2316, 2993, 3004, 2790, 3011, 3032, 2790, 2790, 2790, 4503, 3015, 2790,
  39676. 2790, 2790, 2790, 3011, 3032, 2790, 2790, 2790, 2790, 2790, 3026, 4920, 2790, 2790, 2790, 2790, 3025, 4919,
  39677. 2790, 2790, 2790, 2790, 2790, 4355, 3755, 4359, 2790, 2790, 3354, 3059, 4366, 4372, 4240, 2834, 4504, 3016,
  39678. 2790, 2790, 3635, 3927, 3023, 3031, 4541, 3436, 3037, 3854, 3044, 2790, 2790, 3451, 3049, 2790, 2790, 3024,
  39679. 3043, 2790, 2790, 2801, 3048, 2790, 2790, 3053, 3064, 3031, 4492, 3071, 2975, 3079, 2790, 3470, 3088, 2790,
  39680. 3421, 3079, 2790, 2801, 3098, 2790, 4152, 3102, 3109, 2574, 3114, 3122, 2790, 4585, 3124, 2790, 3129, 2790,
  39681. 4584, 3123, 2790, 4154, 3033, 3133, 4950, 3518, 3142, 4948, 4952, 3148, 2790, 4155, 3156, 3188, 3160, 3150,
  39682. 4950, 3167, 3186, 3174, 3174, 3174, 3180, 3184, 3192, 3192, 3196, 3200, 3175, 3209, 3433, 3213, 3176, 3861,
  39683. 3217, 3221, 4494, 3225, 3236, 3247, 2790, 2790, 2790, 2790, 3914, 2790, 2790, 3253, 3263, 3403, 3170, 3479,
  39684. 3270, 3274, 3278, 3282, 3285, 3285, 3286, 2790, 2790, 3913, 2790, 3549, 3337, 3848, 3342, 3290, 3496, 2655,
  39685. 3296, 3300, 3311, 3318, 4953, 3330, 4637, 2790, 3320, 2790, 2790, 3659, 2790, 2790, 3336, 2790, 2790, 4722,
  39686. 2770, 2790, 2790, 2790, 2790, 4722, 2770, 2790, 2790, 2790, 2790, 2790, 4190, 3341, 3484, 3460, 3144, 3346,
  39687. 3363, 3369, 2976, 3375, 2790, 2790, 2790, 3383, 3388, 2790, 2790, 2790, 3472, 2790, 2790, 2790, 4413, 2790,
  39688. 4305, 3786, 4825, 2790, 2790, 2364, 2790, 3482, 3486, 2790, 3416, 3420, 2790, 4591, 3425, 2790, 2790, 2790,
  39689. 2790, 2672, 3430, 2790, 2790, 2790, 3769, 2790, 2790, 2790, 2790, 3471, 3736, 2790, 2790, 2790, 2790, 3776,
  39690. 2790, 3469, 2790, 2790, 2790, 2790, 4198, 3468, 2790, 2790, 2790, 2790, 4198, 3468, 2790, 2790, 2790, 2790,
  39691. 2921, 3506, 2790, 2790, 2790, 4591, 3513, 2790, 2790, 2790, 3724, 2660, 2790, 4124, 3542, 3476, 3490, 3494,
  39692. 3634, 3500, 2790, 2921, 3506, 2790, 2790, 2790, 2790, 3512, 3517, 3522, 2833, 3204, 2790, 3527, 2790, 2790,
  39693. 2790, 4249, 2790, 2790, 2790, 3526, 2790, 2790, 2790, 3821, 2761, 2790, 2790, 2790, 2790, 4347, 2686, 2790,
  39694. 2790, 2790, 2790, 4351, 2790, 4248, 2790, 2790, 2790, 3531, 3517, 3412, 2790, 2790, 4987, 2790, 2790, 2563,
  39695. 2790, 2790, 2790, 4094, 4079, 4079, 4079, 4079, 2435, 2436, 2436, 2436, 2397, 2321, 2321, 2321, 2321, 2321,
  39696. 2464, 2466, 2466, 2466, 2466, 2393, 2405, 2790, 2790, 2833, 2790, 4987, 2790, 2790, 4422, 2790, 2790, 4126,
  39697. 4322, 3032, 2790, 4987, 2790, 3390, 4989, 2790, 2605, 2730, 2790, 3541, 3547, 4788, 3547, 2566, 2566, 2566,
  39698. 4894, 4014, 4014, 4014, 4788, 2832, 3553, 2315, 4875, 2567, 4015, 4896, 2830, 2899, 3559, 3560, 3564, 2790,
  39699. 2790, 2790, 2790, 2790, 3615, 3614, 2790, 2790, 4465, 3917, 2585, 3619, 3625, 3737, 4266, 4915, 3629, 3649,
  39700. 4306, 3633, 3639, 3647, 3653, 2790, 2790, 4691, 3658, 2790, 4464, 3916, 2790, 3663, 2722, 3670, 3674, 4193,
  39701. 4196, 2790, 3690, 2790, 2790, 2790, 2382, 3694, 2790, 2790, 2790, 2383, 3695, 2790, 2790, 2790, 2339, 3143,
  39702. 2790, 2790, 2790, 4517, 2790, 2965, 4474, 4719, 4065, 4703, 2578, 3699, 3704, 2790, 2790, 3118, 2790, 2790,
  39703. 2790, 4999, 2790, 4869, 4984, 5004, 2752, 2790, 2790, 3118, 2790, 4317, 3723, 2790, 2790, 2790, 2790, 4391,
  39704. 3711, 2790, 2790, 2790, 2790, 3716, 3847, 2790, 2790, 3259, 2790, 2790, 2790, 2790, 2790, 3258, 2783, 2790,
  39705. 2790, 2790, 2790, 3258, 2783, 3791, 2725, 2790, 3795, 2790, 2790, 3803, 2790, 2790, 3810, 2790, 2790, 2638,
  39706. 2790, 4782, 3202, 2716, 3818, 2790, 3795, 2790, 4584, 3812, 2790, 2351, 2790, 2790, 3811, 2790, 3825, 3838,
  39707. 2790, 2790, 4988, 2790, 3725, 4875, 2790, 2414, 2790, 3535, 4942, 2790, 2430, 2790, 4323, 4014, 3846, 3205,
  39708. 3847, 4039, 2790, 2713, 2790, 3852, 3683, 3067, 3104, 2790, 3685, 4305, 3685, 3915, 3915, 3105, 3683, 3683,
  39709. 3683, 3066, 3331, 3105, 3332, 3331, 3332, 3684, 3256, 2790, 2790, 3371, 3735, 2790, 2790, 2790, 2790, 3421,
  39710. 3742, 2790, 2790, 2790, 2790, 2790, 3741, 2790, 2790, 2790, 2790, 3746, 2790, 3759, 2703, 3621, 4113, 3881,
  39711. 3885, 3889, 3893, 3894, 3898, 3902, 2790, 2790, 3162, 2790, 2790, 3643, 2983, 4501, 4562, 3907, 3765, 4282,
  39712. 3921, 2790, 4554, 4022, 2790, 3925, 3932, 4556, 3936, 2790, 4242, 3941, 2790, 2855, 2784, 3943, 4375, 4402,
  39713. 2862, 2866, 2870, 2874, 2874, 2875, 2879, 2819, 3325, 2790, 2778, 2790, 4182, 4960, 4187, 2504, 5007, 4203,
  39714. 4207, 4211, 4215, 4219, 4222, 4224, 2790, 2790, 4077, 4079, 4079, 4079, 4079, 4079, 2396, 2436, 2436, 2436,
  39715. 2436, 2436, 2375, 2321, 2321, 2321, 2322, 2466, 2466, 2466, 2466, 2466, 2332, 2357, 2380, 2790, 2790, 2790,
  39716. 2790, 2790, 2790, 2790, 2790, 3204, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 3163, 2790, 2790, 2746,
  39717. 3858, 4848, 4930, 3872, 3642, 4579, 2727, 4118, 2315, 3764, 3947, 3951, 2790, 2790, 3814, 3957, 2790, 2790,
  39718. 2790, 3967, 3350, 2984, 2729, 3978, 3548, 3984, 3961, 2790, 2790, 3813, 3988, 2790, 2790, 2790, 2790, 3686,
  39719. 4027, 2790, 2790, 2790, 2790, 3257, 4051, 2790, 3074, 2790, 2790, 4299, 3993, 2790, 4007, 2790, 2984, 2790,
  39720. 3568, 3575, 4260, 3583, 3587, 3591, 3594, 3597, 3600, 3601, 3605, 2790, 2790, 2790, 4750, 2964, 2790, 2790,
  39721. 2790, 2790, 2969, 2761, 2790, 2790, 2790, 2790, 4743, 2790, 4834, 2790, 3348, 4604, 4013, 4070, 4311, 4020,
  39722. 2790, 2790, 2790, 4026, 2790, 2790, 2790, 2790, 3578, 4964, 2790, 2790, 2790, 2790, 4969, 2790, 2790, 2790,
  39723. 2790, 3579, 2790, 4031, 2790, 4037, 2790, 4043, 2789, 4333, 4571, 4021, 2790, 2790, 4362, 2790, 2790, 2790,
  39724. 2790, 3968, 4183, 2790, 2790, 4271, 3972, 4033, 2790, 2790, 4832, 2790, 2796, 2790, 4360, 3993, 2790, 2790,
  39725. 2790, 2790, 4049, 2790, 2790, 2790, 2790, 4361, 2761, 4510, 4241, 4057, 4254, 4773, 4069, 4439, 2790, 2790,
  39726. 4976, 2790, 2790, 2790, 4457, 2761, 2790, 2790, 4485, 3989, 2790, 2790, 4456, 4074, 3731, 4836, 4254, 4085,
  39727. 4092, 3707, 2790, 4060, 2790, 2790, 4060, 4147, 4132, 4140, 4134, 4843, 2501, 4130, 4921, 4921, 4921, 4291,
  39728. 4135, 4132, 4132, 4132, 4139, 4922, 4135, 4144, 4922, 4923, 4133, 4159, 4169, 4171, 4166, 4163, 4175, 4178,
  39729. 2790, 2790, 2790, 2800, 2790, 2746, 3958, 4087, 2818, 2790, 3314, 2806, 2790, 3502, 2818, 2790, 2790, 4270,
  39730. 3039, 4275, 2790, 2790, 2790, 4279, 3358, 2850, 4286, 4295, 2790, 3397, 3607, 4303, 4310, 2790, 2790, 4965,
  39731. 4315, 2790, 2790, 2790, 3378, 4321, 2790, 2790, 2790, 3379, 2790, 2790, 3472, 2790, 2790, 2790, 2345, 3847,
  39732. 2790, 2790, 3471, 3736, 2790, 4603, 2790, 4305, 2790, 4812, 4327, 4339, 2790, 2790, 3352, 3356, 2996, 4343,
  39733. 3937, 4297, 4995, 4476, 2843, 2790, 3025, 4927, 2790, 2790, 4934, 2406, 2599, 4938, 5023, 4946, 2790, 2790,
  39734. 2790, 2790, 4957, 4381, 4359, 2790, 2790, 2790, 3806, 4389, 2790, 2790, 2790, 2790, 3963, 4396, 2790, 2790,
  39735. 2790, 2946, 2790, 2790, 2790, 3712, 2947, 2790, 2790, 2790, 4234, 3973, 2790, 2790, 2790, 3962, 4395, 2790,
  39736. 2790, 2790, 2790, 3962, 4395, 3755, 4359, 2790, 3056, 3060, 4368, 3960, 4535, 4377, 2790, 2790, 2790, 2808,
  39737. 4400, 2790, 2790, 2790, 2790, 4406, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 4708, 2790, 2790, 2790, 2790,
  39738. 2790, 2790, 2790, 2790, 2790, 3152, 3203, 2790, 2790, 2790, 2790, 2790, 3963, 4411, 2790, 2790, 2790, 2807,
  39739. 4407, 4446, 2790, 4417, 2942, 4426, 3654, 3761, 2790, 2790, 3720, 2790, 2790, 2790, 2790, 2790, 3729, 2790,
  39740. 4472, 2790, 2586, 3787, 3138, 2790, 4862, 4438, 2790, 2790, 2807, 4451, 2790, 2790, 2790, 4443, 2790, 2790,
  39741. 2790, 4450, 4689, 3400, 2942, 4455, 4536, 4484, 2790, 4461, 2790, 2790, 4469, 2790, 2790, 4480, 2790, 2790,
  39742. 3779, 4523, 4489, 4498, 3654, 4483, 2790, 4508, 2790, 5040, 4002, 2790, 4514, 2790, 2790, 4521, 4525, 4529,
  39743. 4540, 4384, 4590, 4385, 2790, 4514, 2790, 4547, 4551, 2790, 3997, 4560, 4566, 3999, 4575, 3995, 4009, 4009,
  39744. 4009, 4583, 4589, 4001, 4001, 4596, 3680, 4608, 4879, 4613, 4620, 4609, 4877, 2407, 3782, 4792, 4793, 2790,
  39745. 2790, 2790, 2790, 2790, 2790, 2790, 3018, 4630, 4634, 4645, 4649, 4653, 4657, 4661, 4665, 4669, 4672, 4676,
  39746. 4679, 4683, 2790, 2790, 2790, 3017, 4695, 4542, 4761, 4701, 4577, 4906, 4707, 4712, 4716, 4727, 2790, 3832,
  39747. 2594, 3075, 4733, 3830, 4739, 2790, 2790, 2790, 3019, 4842, 2597, 4900, 4904, 4853, 4912, 2790, 2790, 2790,
  39748. 2790, 2790, 3027, 4747, 4754, 4760, 4765, 4771, 4777, 4786, 4797, 4801, 2790, 2790, 2790, 2790, 4807, 2790,
  39749. 2790, 3876, 4543, 4150, 2930, 2766, 2790, 2790, 2790, 2790, 2790, 4723, 2790, 2790, 2790, 2691, 2790, 2790,
  39750. 2790, 3094, 2695, 2701, 2790, 2790, 2790, 2790, 3508, 2790, 4840, 2406, 4847, 4803, 4111, 4852, 4857, 4914,
  39751. 2790, 2790, 2790, 2790, 2696, 4866, 2790, 2790, 3910, 2790, 2790, 4686, 4531, 4887, 3772, 3082, 3706, 2790,
  39752. 4289, 2790, 3974, 3915, 4973, 2790, 4980, 4984, 5018, 4907, 4994, 2790, 2790, 2801, 4830, 2790, 2790, 2790,
  39753. 5000, 2790, 3091, 2790, 2790, 4103, 4533, 4109, 3084, 2790, 4117, 4908, 2790, 3303, 2790, 4122, 3249, 2790,
  39754. 4999, 2790, 2790, 4828, 2790, 2790, 3571, 2790, 5011, 5017, 5022, 2790, 2790, 3799, 2790, 3384, 3389, 2790,
  39755. 2790, 5029, 3394, 2790, 2790, 2790, 2790, 4881, 2790, 3543, 3449, 3410, 3116, 5028, 2790, 3798, 2790, 2790,
  39756. 5027, 3365, 3864, 2790, 4990, 2790, 4045, 2790, 2710, 2790, 3447, 4603, 3455, 3459, 3700, 3677, 2790, 2790,
  39757. 3464, 2790, 2790, 2790, 2790, 2790, 4199, 5033, 3136, 2790, 4383, 5039, 2587, 3834, 2790, 2790, 2790, 2790,
  39758. 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2790, 2578, 2790, 2790, 2790, 2790, 2790,
  39759. 2790, 2790, 2790, 6090, 6563, 5044, 5057, 5054, 6594, 6596, 6596, 6596, 6591, 5074, 6595, 6596, 6596, 6596,
  39760. 6596, 5087, 5061, 5074, 6596, 6596, 5067, 5062, 6596, 5078, 5084, 5080, 5066, 6594, 6163, 5071, 5091, 5094,
  39761. 5094, 5094, 5095, 5099, 5099, 5103, 5107, 5114, 5111, 5118, 5122, 5134, 5137, 5129, 5130, 5127, 5125, 5141,
  39762. 5145, 6561, 6446, 5234, 5173, 5635, 5635, 5635, 5219, 5598, 5503, 5251, 5251, 5251, 5251, 5252, 5196, 5267,
  39763. 6248, 5502, 5251, 5251, 5196, 5196, 5196, 5266, 5202, 5212, 5632, 5635, 5050, 6519, 6509, 5635, 6818, 5635,
  39764. 5635, 5146, 5150, 6535, 5218, 5635, 5635, 5147, 5154, 5196, 5267, 5268, 5502, 5213, 5214, 5232, 5214, 5631,
  39765. 5635, 5146, 5151, 5635, 5155, 5619, 6297, 5635, 6532, 6536, 5244, 5250, 5251, 5251, 5251, 5295, 5631, 5633,
  39766. 5635, 5635, 5635, 5049, 6518, 5502, 5502, 5293, 5251, 5251, 5226, 5196, 5196, 6247, 5270, 5502, 5502, 5502,
  39767. 5504, 5268, 5502, 5214, 5633, 5282, 5635, 5635, 5635, 5273, 6084, 5196, 5267, 5271, 5635, 5166, 5635, 5635,
  39768. 5749, 5219, 5251, 5296, 5196, 5196, 5306, 5635, 5196, 5265, 5269, 5273, 5635, 5635, 5165, 5635, 6247, 5268,
  39769. 5502, 5502, 5502, 5502, 5251, 5502, 5251, 5251, 5251, 5186, 5193, 5272, 5635, 5635, 6261, 5635, 5298, 5635,
  39770. 5635, 6262, 5502, 5502, 5294, 5251, 5251, 5251, 5296, 5251, 5251, 5264, 5196, 5196, 5196, 5196, 5265, 5196,
  39771. 5197, 5635, 6245, 5269, 5293, 5296, 5306, 6246, 6247, 5502, 5502, 5502, 5292, 5251, 5251, 5196, 6255, 6247,
  39772. 5270, 5292, 5251, 5264, 5197, 5198, 5302, 5297, 5312, 5312, 5304, 5635, 5179, 5635, 5643, 5168, 5635, 6860,
  39773. 5329, 5590, 5333, 5336, 5339, 5343, 5362, 5419, 5347, 5351, 5404, 5419, 5419, 5419, 5419, 5368, 5384, 5393,
  39774. 5355, 5359, 5418, 5367, 5372, 5346, 5420, 5381, 5390, 5397, 5377, 5386, 5419, 5376, 5401, 5416, 5424, 5428,
  39775. 5430, 5430, 5434, 5436, 5440, 5473, 5444, 5446, 5365, 5407, 5450, 5454, 5458, 5466, 5464, 5466, 5462, 5470,
  39776. 5477, 5635, 5181, 6353, 5635, 5219, 5635, 5635, 5219, 5635, 7266, 5635, 5904, 5635, 6256, 6080, 5635, 6853,
  39777. 5635, 5635, 5169, 5672, 6820, 5635, 5635, 5635, 5275, 5635, 5635, 7112, 6346, 7172, 5635, 5220, 7282, 5635,
  39778. 5273, 5642, 5635, 5635, 6879, 5246, 5891, 5635, 5635, 5182, 6258, 5523, 6083, 6080, 5977, 6569, 5635, 6877,
  39779. 6875, 6150, 5527, 5530, 5531, 5535, 5538, 5542, 5547, 5545, 5551, 5553, 5554, 5558, 5561, 5569, 5562, 5566,
  39780. 5562, 5572, 5574, 5578, 5635, 6820, 6222, 5635, 5975, 5635, 5635, 6702, 6210, 5614, 5635, 5635, 5189, 5635,
  39781. 5635, 6773, 5656, 5635, 5635, 5635, 5307, 5668, 5635, 5635, 5635, 5315, 6779, 5662, 5666, 5635, 5635, 5635,
  39782. 5582, 5675, 5635, 5635, 5635, 5320, 5679, 6567, 5635, 5683, 5691, 5698, 5706, 5734, 5699, 5707, 6568, 5635,
  39783. 5635, 5635, 5491, 6736, 5694, 5700, 5708, 5162, 5635, 5635, 5635, 5513, 7310, 6318, 5664, 5635, 5635, 5635,
  39784. 5277, 5746, 5635, 5712, 5635, 5274, 5273, 5635, 5274, 6223, 5635, 5275, 5635, 6695, 5635, 5635, 6694, 5823,
  39785. 6568, 5635, 5322, 5635, 5635, 5910, 5635, 5635, 5635, 6618, 5236, 5635, 5717, 6739, 6745, 5731, 6568, 5635,
  39786. 5324, 5635, 6335, 5811, 5635, 5635, 5635, 5675, 5701, 5732, 5635, 5635, 5318, 5635, 5635, 6736, 6740, 6744,
  39787. 5730, 5734, 5635, 5635, 5635, 5514, 5768, 5701, 5775, 6568, 5776, 5635, 5635, 5635, 5615, 5747, 7254, 5635,
  39788. 5635, 5512, 6989, 5208, 6448, 5733, 5635, 5635, 5635, 5625, 5788, 7253, 5635, 5635, 5635, 5635, 5159, 5797,
  39789. 5635, 5635, 5635, 5638, 6319, 5635, 5635, 5635, 5640, 6027, 5799, 5635, 5635, 5635, 5646, 5650, 6805, 5635,
  39790. 5635, 5635, 5655, 5805, 5798, 5635, 5635, 5635, 5636, 5515, 5803, 6804, 6568, 5635, 5496, 5048, 5635, 5219,
  39791. 6618, 5635, 5635, 5635, 6260, 5635, 5583, 5635, 5635, 5819, 6695, 5635, 5635, 5635, 5724, 5819, 5635, 5821,
  39792. 5819, 5635, 5635, 6934, 6878, 5756, 5815, 5829, 5635, 5508, 5204, 5664, 5842, 5846, 5854, 5858, 5862, 5866,
  39793. 5866, 5868, 5870, 5870, 5870, 5870, 5874, 5874, 5874, 5874, 5877, 5879, 5635, 5635, 5635, 5738, 7116, 5885,
  39794. 5635, 6258, 6080, 5635, 5899, 5917, 5635, 5635, 5594, 5635, 5324, 5635, 5635, 6618, 5635, 6618, 5635, 5582,
  39795. 5635, 5635, 5819, 5921, 5635, 5635, 5487, 7303, 5485, 5635, 6834, 5635, 5635, 5612, 5635, 6832, 5932, 5635,
  39796. 5635, 5635, 7178, 5635, 6696, 5635, 5937, 5325, 5635, 5635, 5635, 5761, 5969, 5635, 5635, 5635, 5804, 5984,
  39797. 5635, 5635, 5635, 5819, 5635, 5850, 6339, 5992, 5606, 5635, 5635, 5635, 6696, 5635, 5938, 5635, 6256, 6930,
  39798. 6081, 6015, 5635, 5635, 5635, 5895, 6016, 5635, 5635, 5635, 5902, 5640, 5999, 6005, 6011, 6261, 5635, 6095,
  39799. 5635, 5635, 6088, 6289, 6037, 6042, 5635, 5635, 5635, 7255, 5635, 5635, 6027, 6032, 6038, 6043, 5635, 5635,
  39800. 6256, 5635, 6082, 5635, 5820, 5635, 5820, 5635, 5635, 5821, 6261, 6335, 6695, 5635, 5635, 6692, 6568, 5923,
  39801. 7028, 6032, 6058, 6033, 6059, 5635, 5635, 5635, 5908, 7128, 7132, 6613, 5635, 5635, 5635, 5923, 5517, 6786,
  39802. 6790, 5635, 6564, 5635, 5635, 5635, 5907, 6260, 6318, 5635, 5635, 5635, 7259, 6072, 6033, 6064, 5635, 5635,
  39803. 7027, 6032, 6063, 6564, 5635, 5635, 6260, 6261, 5636, 6988, 7255, 5678, 5635, 6082, 5635, 5821, 5945, 5412,
  39804. 5635, 5635, 5635, 7285, 5635, 5635, 6257, 6081, 6261, 5635, 5635, 5635, 5221, 6071, 6711, 6064, 5635, 5635,
  39805. 6838, 5635, 5589, 6617, 6072, 6712, 6065, 5635, 5635, 6844, 5635, 5635, 6851, 6568, 6070, 6710, 6063, 6564,
  39806. 5943, 6983, 5635, 5635, 5635, 7286, 5635, 5756, 5635, 5635, 5635, 5943, 6260, 6094, 5635, 5635, 5635, 7332,
  39807. 5720, 5635, 6821, 6073, 6109, 5635, 5635, 5635, 5956, 5635, 6099, 6107, 6066, 6256, 6081, 6337, 5635, 5635,
  39808. 6852, 5635, 5320, 5635, 6075, 6079, 5635, 5635, 5635, 5958, 5635, 6820, 7158, 6077, 5635, 5635, 5635, 7346,
  39809. 5635, 6131, 6821, 6074, 6076, 5635, 5635, 6820, 6708, 6127, 5635, 5635, 7156, 5634, 5905, 5635, 5228, 6053,
  39810. 5274, 6116, 6079, 5635, 6981, 6142, 7156, 5822, 5635, 7157, 6118, 5635, 5635, 6115, 6078, 5635, 5635, 6114,
  39811. 6078, 5635, 5635, 6115, 6078, 5635, 5674, 5285, 5674, 6117, 5635, 5635, 5636, 5635, 5635, 5635, 6221, 6118,
  39812. 5635, 5635, 6116, 6139, 6079, 5635, 6139, 7083, 5674, 6617, 7134, 5635, 7134, 5635, 7134, 5635, 6616, 6614,
  39813. 5635, 5635, 6878, 5764, 6744, 6449, 5734, 5635, 5287, 6614, 6614, 6614, 7253, 5635, 5674, 5635, 5635, 5512,
  39814. 5516, 5635, 6392, 6392, 5635, 5636, 5642, 6257, 5635, 6085, 7286, 5635, 5635, 5635, 6481, 6485, 5733, 6255,
  39815. 6840, 6147, 5635, 5635, 6940, 6946, 7286, 6617, 6879, 6154, 6160, 6167, 6156, 6171, 6175, 6179, 6183, 6184,
  39816. 6189, 6189, 6185, 6193, 6193, 6193, 6193, 6196, 7276, 5635, 5583, 5635, 5635, 5582, 6208, 5635, 5635, 6214,
  39817. 6197, 5278, 6228, 5635, 5635, 6975, 5635, 5635, 7001, 5769, 5797, 5308, 5635, 6961, 5635, 5635, 7001, 5770,
  39818. 6236, 5635, 5980, 6254, 5635, 5635, 5636, 5945, 5412, 5951, 5635, 5635, 6252, 5635, 5635, 5635, 6053, 5635,
  39819. 6255, 6086, 6855, 6868, 5635, 6399, 5635, 6614, 5635, 5635, 6273, 5635, 5635, 5638, 5964, 6676, 5635, 5635,
  39820. 5636, 6988, 6994, 5635, 5678, 5635, 6081, 5635, 5819, 5972, 5635, 5635, 5635, 6082, 6085, 5635, 6281, 5635,
  39821. 5635, 5640, 6573, 6802, 5206, 6295, 5635, 5635, 7007, 7016, 7041, 5635, 7144, 6290, 6803, 5207, 5207, 6296,
  39822. 5635, 5635, 5635, 6084, 6291, 5771, 6995, 5635, 5635, 7034, 5635, 5635, 7152, 5635, 5635, 7253, 5635, 5635,
  39823. 6954, 5657, 5635, 7252, 6400, 5635, 6670, 5635, 6259, 6209, 5635, 5639, 6347, 5635, 5635, 5635, 6088, 6309,
  39824. 6301, 6325, 6329, 5635, 6310, 6302, 6326, 6079, 5635, 6982, 5907, 5635, 6258, 6081, 6311, 6801, 6327, 5635,
  39825. 5635, 7257, 6960, 6255, 6086, 6856, 6869, 5635, 5635, 5640, 7027, 6400, 5635, 6735, 7277, 6693, 5635, 6671,
  39826. 5635, 5635, 5320, 6310, 6323, 6327, 6324, 6328, 5635, 5635, 5635, 6089, 5149, 5153, 6086, 6866, 6567, 5635,
  39827. 5635, 7287, 6616, 5635, 6879, 7278, 5582, 5635, 6769, 6564, 5635, 7252, 6400, 5288, 6079, 6695, 6669, 5635,
  39828. 5635, 6201, 5635, 6344, 5635, 5635, 5674, 5805, 6351, 6357, 5635, 5635, 5676, 5635, 6820, 7179, 6366, 6329,
  39829. 5635, 5260, 5635, 5635, 5635, 6122, 6399, 5635, 5635, 6671, 5635, 6259, 6365, 7255, 5635, 6021, 5635, 5635,
  39830. 5315, 5167, 5635, 5635, 5635, 6247, 6247, 6619, 5635, 5635, 5635, 6255, 6086, 5635, 6620, 5635, 5635, 5635,
  39831. 6256, 5219, 5635, 5635, 6619, 5904, 5748, 6771, 6620, 6618, 5635, 7096, 6618, 6618, 6618, 6770, 5901, 5511,
  39832. 6370, 5635, 5635, 7333, 5721, 5635, 7255, 7154, 5635, 5635, 7349, 5518, 7319, 6209, 6384, 5635, 6372, 5985,
  39833. 6719, 6390, 6396, 6404, 6408, 6411, 6413, 6417, 6418, 6418, 6422, 6424, 6425, 6429, 6429, 6429, 6429, 6430,
  39834. 6429, 5635, 5635, 5755, 5635, 5635, 5635, 5888, 5635, 6604, 7326, 5635, 5635, 5635, 6616, 5635, 6692, 5635,
  39835. 5824, 6457, 6568, 5635, 6852, 5635, 6948, 5635, 6949, 6455, 5635, 5635, 5635, 6261, 6260, 5635, 6462, 6456,
  39836. 5635, 5637, 5640, 6675, 7115, 5635, 6467, 5635, 5658, 6453, 5635, 6463, 5635, 5635, 5635, 6262, 7328, 5635,
  39837. 5635, 5635, 6267, 5277, 6615, 5635, 5635, 5755, 5818, 5635, 6819, 5635, 5635, 6494, 6473, 5635, 6477, 5635,
  39838. 5638, 6346, 5635, 5635, 7275, 5635, 5635, 7287, 5635, 5635, 5635, 6480, 5635, 6498, 6507, 6513, 6518, 6508,
  39839. 6514, 5635, 5635, 6523, 5635, 5635, 5635, 6315, 5635, 6540, 5635, 5635, 5783, 5635, 5635, 6554, 5635, 5635,
  39840. 5635, 6339, 5635, 6263, 6549, 6503, 5635, 6547, 5176, 6553, 5635, 5635, 5635, 6334, 5635, 6558, 7327, 5635,
  39841. 5635, 5784, 5635, 6578, 5153, 5635, 5635, 5635, 6439, 6088, 6574, 6579, 5154, 5635, 5635, 6583, 5635, 5635,
  39842. 5894, 5810, 5635, 5635, 5581, 5635, 5635, 5635, 5725, 6054, 5637, 5635, 5635, 5900, 5635, 5635, 5635, 5904,
  39843. 5635, 6088, 6588, 5153, 5635, 5638, 6826, 7252, 6088, 5148, 5152, 5635, 5640, 7087, 6772, 6084, 6772, 6084,
  39844. 5275, 5635, 6694, 5904, 6338, 5277, 6693, 5635, 5825, 5635, 6821, 6600, 5635, 5640, 7334, 5907, 5635, 5635,
  39845. 6822, 6224, 5635, 5644, 5648, 6102, 5635, 6821, 6223, 5635, 5635, 5635, 6479, 6762, 5824, 5635, 5321, 5635,
  39846. 5647, 7054, 7038, 5635, 7255, 5637, 5635, 5654, 5635, 5635, 5222, 7284, 5635, 5635, 5276, 5635, 5277, 6695,
  39847. 6337, 6260, 5635, 5635, 5635, 5256, 6220, 5154, 5635, 5635, 5635, 6399, 5638, 6692, 5635, 5635, 5923, 6072,
  39848. 5638, 7024, 6610, 5635, 5674, 6141, 5635, 5635, 6854, 5635, 5635, 6878, 5693, 5699, 7255, 6216, 6771, 5635,
  39849. 5677, 5635, 5635, 5635, 5587, 5911, 6624, 5628, 6630, 6638, 6641, 6645, 6648, 6656, 6656, 6656, 6656, 6651,
  39850. 6652, 6652, 6652, 6660, 6660, 6660, 6660, 6662, 6666, 5635, 5635, 5635, 6566, 6048, 5635, 5622, 5635, 5686,
  39851. 5838, 5635, 5686, 6053, 5635, 5635, 5635, 5985, 5635, 5589, 6694, 5939, 6617, 5912, 6686, 5635, 5635, 5944,
  39852. 5411, 6052, 6691, 5635, 5635, 6756, 6701, 5635, 5635, 5635, 6567, 6125, 6772, 5635, 5635, 5987, 5635, 5635,
  39853. 6723, 6729, 7278, 6695, 6734, 5635, 5635, 5991, 5605, 6749, 5635, 5635, 5635, 6615, 5635, 5635, 5635, 5645,
  39854. 5649, 5635, 6480, 6763, 6750, 5635, 6764, 5607, 5635, 5635, 5635, 5835, 5635, 6717, 5635, 5635, 6026, 6031,
  39855. 5608, 5635, 6730, 6143, 6483, 6487, 6568, 5635, 5635, 6486, 5734, 5635, 5635, 6133, 6881, 5635, 5635, 6133,
  39856. 7095, 5635, 5635, 5635, 6816, 6204, 6203, 5635, 5635, 6134, 6772, 5909, 5635, 5635, 5635, 6620, 5635, 5597,
  39857. 6879, 6795, 5635, 5635, 5635, 6685, 6480, 6484, 6488, 5635, 5635, 6616, 6615, 5635, 5635, 6204, 6202, 5274,
  39858. 6126, 5635, 5635, 6220, 6224, 7347, 6777, 5635, 5635, 6230, 5635, 5635, 6230, 6485, 5733, 5635, 5635, 6054,
  39859. 5204, 5635, 7269, 6772, 5635, 5687, 5952, 5635, 5713, 5635, 5635, 5276, 6615, 5635, 6277, 5635, 5635, 6619,
  39860. 6809, 5734, 5635, 5635, 6246, 6247, 6247, 6247, 6247, 5270, 5502, 7114, 5635, 7254, 5635, 5674, 5805, 5798,
  39861. 6276, 5748, 5635, 5635, 6255, 6247, 6247, 6247, 5269, 5502, 5502, 5835, 6053, 5635, 5635, 6318, 6568, 5635,
  39862. 7347, 7114, 5635, 5635, 6819, 5321, 5635, 6845, 5635, 5635, 5635, 6716, 5635, 6974, 5635, 5635, 6333, 5635,
  39863. 6256, 5317, 6285, 5635, 5635, 6966, 5635, 5635, 6965, 5635, 5635, 6257, 5635, 6961, 6053, 5635, 5635, 6967,
  39864. 5635, 6255, 5589, 6617, 5635, 5753, 5635, 5635, 5323, 5635, 6113, 5634, 5904, 5635, 6256, 6961, 6053, 6255,
  39865. 6965, 6965, 6965, 5635, 6967, 6965, 5635, 6965, 5635, 6258, 6967, 6965, 7286, 6269, 5741, 5741, 5741, 6053,
  39866. 6849, 5635, 5635, 5635, 6754, 5635, 7342, 6334, 5635, 5780, 6568, 5635, 5492, 6542, 6492, 5635, 5635, 5635,
  39867. 6307, 6311, 6324, 6936, 6083, 6873, 5319, 6886, 6892, 6890, 6896, 6900, 6900, 6902, 6908, 6906, 6906, 6908,
  39868. 6916, 6915, 6912, 6920, 6921, 6921, 6921, 6921, 6925, 6928, 5208, 5635, 5635, 6855, 6526, 6380, 5635, 5635,
  39869. 6340, 5993, 6565, 5635, 5635, 6617, 5635, 5635, 5635, 6706, 5635, 6239, 5635, 5635, 6364, 7154, 5635, 6242,
  39870. 5635, 5635, 5637, 5965, 5635, 6953, 5635, 5635, 6376, 5635, 5635, 6958, 5635, 5635, 6443, 5589, 7258, 5635,
  39871. 5635, 5635, 6760, 5635, 6971, 5635, 6979, 6987, 6993, 6329, 5635, 5832, 6260, 6680, 6878, 5791, 6543, 5635,
  39872. 5836, 5635, 5635, 6284, 5635, 5635, 6567, 5635, 6616, 5635, 5635, 6469, 6482, 6999, 5635, 5639, 5635, 5635,
  39873. 5635, 6461, 5725, 5635, 5635, 5635, 6768, 7012, 7040, 5635, 5635, 6547, 6501, 7041, 5635, 5635, 5635, 6769,
  39874. 5635, 7008, 7017, 7042, 5635, 5848, 5748, 6255, 5483, 5635, 5635, 6245, 6247, 5635, 7021, 5933, 6053, 5904,
  39875. 6935, 6879, 5792, 5644, 5648, 7055, 7046, 5645, 7052, 7056, 7047, 5646, 7053, 7057, 7048, 5724, 5635, 5635,
  39876. 5635, 6783, 6486, 5734, 5820, 5635, 5904, 6935, 6879, 5748, 6879, 5793, 5635, 6566, 5635, 5757, 5635, 5635,
  39877. 5724, 5756, 5635, 5277, 5635, 5635, 5635, 7176, 7094, 7061, 7048, 5635, 5635, 6548, 6502, 5649, 6103, 7067,
  39878. 7048, 5635, 7061, 6564, 5635, 5635, 6568, 5635, 5646, 5650, 7066, 7124, 5635, 7065, 7123, 5635, 5635, 6584,
  39879. 5635, 5635, 6987, 7154, 5635, 5881, 5635, 5635, 6365, 5635, 6878, 5318, 6615, 5635, 5899, 5962, 5635, 5602,
  39880. 5635, 5635, 5188, 5635, 7077, 5635, 5635, 5635, 6794, 5647, 7076, 7069, 5635, 5900, 6053, 5726, 5646, 7075,
  39881. 7068, 5635, 5635, 6879, 5635, 5635, 5635, 6799, 6809, 5635, 7176, 7081, 5635, 5901, 7114, 6434, 5635, 5635,
  39882. 7176, 7089, 5635, 5902, 5511, 6435, 5635, 5635, 5757, 5274, 5635, 6088, 7088, 5635, 5902, 5635, 5635, 5635,
  39883. 6800, 5635, 6088, 7154, 5635, 5903, 5635, 5906, 6616, 6614, 5820, 5904, 6880, 5635, 5908, 5635, 5635, 5924,
  39884. 7029, 6033, 5640, 7178, 5635, 5635, 6614, 5635, 5635, 6088, 7093, 5635, 5908, 6605, 7327, 7177, 7095, 5635,
  39885. 5901, 5902, 5635, 5640, 6218, 5821, 6880, 5635, 5635, 6615, 6616, 5635, 5635, 6259, 5635, 5635, 6259, 5635,
  39886. 5903, 5635, 5635, 5635, 5745, 5640, 7178, 6772, 5238, 5635, 7100, 6880, 5635, 5913, 6687, 5635, 6700, 5635,
  39887. 5635, 6135, 5635, 5635, 6681, 5635, 5635, 6820, 7094, 5635, 5928, 5635, 5635, 5608, 6878, 5635, 7100, 6881,
  39888. 5635, 7115, 5635, 5635, 7254, 7106, 5635, 5635, 5635, 6821, 6073, 6820, 7275, 5635, 5635, 5635, 6820, 6309,
  39889. 6133, 7095, 6880, 5635, 5943, 5410, 5949, 5635, 5635, 5635, 7252, 5635, 5635, 7120, 5635, 5635, 7273, 7120,
  39890. 6878, 5635, 5635, 6693, 5635, 5635, 5635, 7274, 5635, 5635, 6695, 5635, 5635, 5819, 5809, 5635, 7138, 5635,
  39891. 6963, 5905, 6209, 5635, 6961, 5635, 5979, 6253, 5635, 5635, 7002, 6744, 5798, 5240, 5635, 6021, 5499, 7109,
  39892. 5673, 5635, 7142, 5635, 6962, 6021, 6964, 6625, 6022, 7174, 7271, 7149, 7162, 7166, 7170, 7183, 7187, 7191,
  39893. 7194, 7202, 7197, 7198, 7206, 7208, 7212, 7218, 7217, 7213, 7222, 7232, 7232, 7225, 7231, 7227, 7236, 7240,
  39894. 5635, 5985, 5837, 5635, 5723, 5635, 5635, 6602, 6606, 7128, 7132, 5904, 5635, 5910, 5481, 7100, 7241, 5635,
  39895. 5635, 6695, 5824, 6360, 5635, 5635, 5635, 6853, 6259, 6079, 5635, 6529, 7245, 7247, 7251, 5635, 5986, 5635,
  39896. 5635, 5763, 6743, 5702, 5776, 5635, 7263, 5635, 5635, 6725, 5492, 7283, 7255, 5635, 5635, 6737, 5769, 7291,
  39897. 5635, 7292, 5635, 5997, 6003, 6009, 6015, 5635, 7296, 7130, 5635, 5998, 6004, 6010, 5907, 5903, 5635, 5635,
  39898. 6737, 6741, 5635, 6086, 5641, 5635, 5635, 5635, 7100, 5635, 5635, 6738, 6742, 6879, 5635, 7114, 5635, 7252,
  39899. 5635, 5635, 6853, 6855, 5635, 6020, 5635, 5635, 5635, 7254, 5635, 6337, 5635, 5635, 6770, 5635, 6772, 5635,
  39900. 6086, 6084, 5635, 5635, 6259, 5635, 7301, 6386, 5635, 5635, 5635, 6878, 5635, 5512, 7309, 6633, 5635, 6047,
  39901. 5635, 5635, 5635, 7256, 7310, 6634, 5635, 5635, 5635, 6882, 5635, 7307, 7311, 6338, 6853, 5320, 5635, 5640,
  39902. 7334, 5722, 5635, 5635, 6821, 6126, 5635, 5635, 6021, 6772, 7128, 7132, 5258, 5635, 5635, 5635, 6966, 5642,
  39903. 5635, 5635, 7101, 5635, 6850, 5635, 6336, 5635, 6260, 5635, 6261, 7102, 5985, 6334, 5635, 5635, 5644, 7073,
  39904. 7315, 7319, 6338, 5635, 6080, 5906, 5903, 7316, 6788, 5635, 5635, 6772, 5635, 6084, 7095, 5635, 5635, 5686,
  39905. 5635, 7317, 6789, 5635, 5635, 6813, 5635, 7318, 6790, 6770, 6769, 5635, 5635, 6619, 5635, 6769, 6820, 5635,
  39906. 5635, 6881, 7115, 5635, 6852, 6855, 5635, 5635, 5635, 6845, 5635, 6718, 6694, 5635, 5635, 5635, 6942, 6786,
  39907. 6790, 5635, 5635, 5635, 6967, 5635, 5635, 6786, 6790, 6770, 6769, 7254, 5635, 7101, 5635, 7297, 7132, 5258,
  39908. 7113, 5635, 5635, 6819, 5635, 5635, 5635, 5166, 6379, 5048, 5635, 5635, 6821, 6074, 6078, 5635, 5635, 5635,
  39909. 5978, 7350, 5519, 7320, 5635, 6081, 5678, 6626, 7319, 5635, 5635, 5635, 7006, 7348, 5517, 6786, 6617, 5635,
  39910. 6772, 6771, 5635, 6084, 6303, 6488, 5635, 7324, 5906, 5903, 5635, 6085, 5641, 5635, 6084, 6352, 5635, 5635,
  39911. 5635, 6231, 5047, 5635, 5635, 5635, 7033, 5635, 7348, 7335, 5903, 5635, 6879, 5635, 6851, 5678, 5909, 6855,
  39912. 6864, 5635, 7340, 5635, 5635, 6829, 5635, 6087, 5635, 6881, 5635, 6852, 6819, 6850, 5635, 5635, 6261, 7332,
  39913. 7336, 5635, 5635, 5635, 7145, 5635, 6232, 5635, 5635, 6833, 5635, 5274, 5635, 5635, 5635, 7177, 0, 0,
  39914. 1075838976, 2097152, 16384, 0, 0, 0, 62, 64, 4194560, 4196352, 270532608, 2097152, 2097152, 268435456,
  39915. 4194432, 541065216, 541065216, 541065216, 541065216, 4194304, 4194304, 4196352, -1606418432, -1606418432,
  39916. 541065216, 541065216, 4194304, 4198144, 541065216, 541065216, -2143289344, -2143289344, 8425488, 4194304,
  39917. 4194304, 4194304, 541065216, 37748736, 4194304, 541065216, 4194304, 4194304, 4194432, 37748736,
  39918. -1606418432, 742391808, 239075328, 775946240, 171966464, 171966464, 171966464, 171966464, 239075328,
  39919. 171966464, 775946240, 239075328, 239075328, 775946240, 775946240, 775946240, 4718592, 64, 4718592, 2097216,
  39920. 4720640, 4194400, 4194368, -2142763008, 541589504, 4194368, 541589504, 541589504, 541065280, 4194368,
  39921. 4194368, 541065312, 541065280, -2143289280, 4194368, -2143285440, -1605890240, -2142761152, -2109731008,
  39922. -1606414528, -2143285440, -2143285440, -2143285440, -1605890240, -1606414528, -1606414528, -2143285440,
  39923. -2143285408, -2143285440, -2143285440, -2142761152, 776470528, -1908404416, 775946304, 775946304,
  39924. -1908404416, 2, 4, 8, 16, 512, 1024, 16777216, 33554432, 402653184, 0, 0, 0, -1979711488, 0, 8192, 8392704,
  39925. 0, 0x80000000, 16777216, 0, 0, 1536, 32768, 0, 0, 128, 196608, 0, 16384, 1536, 1792, 8192, 16384, 131072,
  39926. 131072, 0, 0, 64, 1536, 32768, 96, 96, 0, 0, 0x80000000, 16, 0, 0, 1536, 64, 524352, 524352, 524352,
  39927. 524352, 0, 524288, 64, 64, 262144, 1048576, 4194304, 16777216, 33554432, 67108864, 134217728, 536870912, 0,
  39928. 128, 128, 128, 128, 2048, 1536, 1024, 0, 0, 0, 15, 208, 15360, 96, 96, 0, 64, 64, 16392, 64, 1048576, 128,
  39929. 128, 0, 256, 8192, 0, 8192, 0, 33554432, 0, 1024, 1024, 0, 0, 0x80000000, 65536, 32, 96, 96, 96, 96, 64, 0,
  39930. 8388608, 4096, 0, 0, 8192, 2097152, 0x80000000, 96, 524352, 524352, 524352, 524288, 524288, 524288, 64, 64,
  39931. 64, 0, 0, 0, 8, 0, 0, 0, 11, 64, 64, 128, 2048, 0, 4096, 0, 0, 131072, 128, 64, 64, 64, 96, 96, 96, 524352,
  39932. 524352, 524288, 64, 524288, 64, 64, 96, 524352, 0, 0, 0, 18, 33554432, 64, 96, 524352, 524288, 0, 64, 0,
  39933. 2097152, 0, 0, 4, 16, 0, 0, 16, 8388608, 0, 0, 4096, 536870912, 1073741824, 0, 4, 32, 32, 4, 1073872896,
  39934. 32, 40, 96, 160, 1056, 262176, 1048608, 2097184, 32, 32, 32, 524320, 32, 1073872896, 40, 262176, 1120, 96,
  39935. 4195360, 6291488, 2097184, 2097184, 4194336, 4194336, 536870944, 32, 32, 40, 262176, 32, 32, 40, 262184,
  39936. 1120, 96, 6292512, 4195360, 56, 262184, 40, 262184, 40, 0, 4, 262184, 40, 40, 40, 40, 4195104, 6292512,
  39937. 4196128, 32, 262184, 34, 34, 40, 48, 42, 32, 32, 327155712, 34, 1056, 1056, 32, 96, 32, 32, 41, 262184, 32,
  39938. 64, 512, 2048, 16384, 67108864, 42, 1056, 4194336, 32, 32, 32, 32, 56, 2098208, 42, 4457568, -326784344,
  39939. -322851160, -322851160, -322698144, -322698144, -322698144, -322698144, -322695456, -322695456, -322695456,
  39940. -322695456, -322597152, -320598176, -322597152, -322597144, -321548576, -320598168, -321548568, -322597144,
  39941. 32, 0, 96, 32, 42, 224, 40, 262176, 42, 106, 293601323, 293601323, 293863467, 293699627, 293617707,
  39942. 293716011, 297896507, 293964347, 293702267, 297896507, 293702203, 293702203, 293702203, 293702203,
  39943. 293964347, 297896507, 297896507, -322597144, -322588952, -321548568, -322588952, -37744981, -322597144,
  39944. -321548568, -37482773, 0, 131072, 1048576, 2097152, 0, 0, -1744830464, 0, -1744830464, 0, 318767104, 0, 0,
  39945. 0, 48, 0, 1, 285212672, 0, 0, 2048, 64, 64, 64, 64, 32, 96, 0, 32, 64, 65536, 0, 0, 1, 2, 12, 16, 64, 128,
  39946. 1024, 2048, 4096, 0, 2, 65536, 262656, 5242880, -1842937664, 201330721, 201330721, -2111369023,
  39947. -2111369023, -2111369023, -2111369023, -2111369023, -2111369023, -2111360575, -2111369023, -2111369023,
  39948. -1977151295, -1977151293, -1910042431, -1893265183, -2111368509, -1893265183, -1893265183, -1893265183,
  39949. -1893265183, -2111368509, -1893265183, -1893265183, -553689472, -553656704, -553689472, -553689472,
  39950. -553656704, -553656704, -553656704, -553656704, -553656704, -553656704, -553656672, -553656672, -553656672,
  39951. -553656672, -553656672, -553656670, -553656608, -553656672, -553656664, -553656664, -553656672, -553656670,
  39952. -553656672, -553656672, -536912159, -553656671, -536879391, -536879391, -536879391, 0, 0, 2048, 4194304, 0,
  39953. 0, 0, 262656, 0, 0, 0, 536870912, 1073741824, 458880, 2097152, -1845493760, 0, 0, 4096, 2097152, 0, 0, 1,
  39954. 4096, 201326592, 805306368, -1073741824, 0, 0, 0, 24576, 471424, 0, -2113929216, 0, 0, 0, 220, -1912602624,
  39955. 18874368, 463488, 0, 0, 9216, 0, 0, 16384, 8192, 8192, 32768, 2048, 2048, 2048, 2048, 0, 0, 0, 0, 1, 0, 0,
  39956. 0, 2, 0, 0, 0, 3, 4, 16, 224, 256, 512, 32768, 0, 1040000, 15728640, -570425344, 0, 0, 0, 254, 4194304,
  39957. 16777216, 33554432, 268435456, 536870912, 0x80000000, 0, 0, -570425344, 32505856, 2097152, 301989888, 0, 0,
  39958. 0, 512, 0, 0, 0, 256, 12288, 0, 167772160, 234881024, 0, 0, 16384, 32768, 50331648, 0, 128, 512, 7168,
  39959. 16384, 32768, 196608, 16384, 196608, 786432, 1048576, 2097152, 4194304, 8388608, 33554432, 2097152,
  39960. 4194304, 8388608, 503316480, 1073741824, 0x80000000, 0, 4096, 201326592, 0, 0, 0, 167772160, 234881024,
  39961. 128, 1024, 4096, 8192, 0, 0, 8192, 268435456, 0, 0, 4194304, 8388608, 234881024, 268435456, 1073741824,
  39962. 0x80000000, 0, 0, 1048576, 4194304, 33554432, 268435456, 268435456, 268435456, 268435456, 0, 128, 131072,
  39963. 2097152, 0, 0, 0, 520, 0, 201326592, 0, 0, 0, 1073741824, 0, 0, 0, 134217728, 128, 512, 3072, 16384, 32768,
  39964. 3072, 16384, 131072, 524288, 1048576, 4194304, 16777216, 33554432, 201326592, 268435456, 1073741824,
  39965. 0x80000000, 1048576, 4194304, 268435456, 536870912, 131072, 0, 0, 131072, 0, 131072, 2097152, 0, 0, 16384,
  39966. 2097152, 0, 0, 2097152, 4194304, 134217728, 0x80000000, 0, 0, 0, 512, 3072, 131072, 524288, 1048576,
  39967. 131072, 524288, 4194304, 0x80000000, 0, 0, 0, 16384, 16384, 18432, 0, 0, 0, 2048, 0, 0, 4096, 1048576, 0,
  39968. 0, 67108864, 1073741824, 0x80000000, 0, 0, 29696, 0, 0, 32768, 50331648, 268435456, 0x80000000, 0, 0, 1, 1,
  39969. 18952, 1024, 0, 65, 1024, 0, 4096, 32768, 0, 1024, 18952, 65, 268436480, 2101248, 524288, 1024, 19017,
  39970. -1744550912, 8388624, 8388624, 8388624, -1739308032, -1739308032, -1739308032, -1739308032, -1736162288,
  39971. -1736162288, -1736162288, -1736162288, -7868466, -7868466, -7868466, -7868466, -7868450, -7868450,
  39972. -7868450, 0, 0, 0, 1610612736, 1024, 0, 2101248, 0, 0, 262144, 65536, 262144, 262144, 0, 0, 2048, 131072,
  39973. 524288, 585, 0, 0, 0, 8192, 0, 0, 0, 4096, 0, 0, 0, 32, 0, 0, 0, 44, 64576, 0, 1024, 278528, -1744830464,
  39974. 5521408, -1744830464, 0, 0, 2, 12, 64, 0, 1040, 8667136, -1744830464, -67108864, 0, 0, 0, 9728, 0, 2014, 0,
  39975. 0, 0, 13312, 0, 1, 4, 8, 32, 64, 16384, 67108864, 134217728, 268435456, 0x80000000, 0, 0, 520, 1024, 0, 0,
  39976. 2, 16, 0, 278528, 0, 0, 2, 67108864, 16384, 0, 5242880, 0x80000000, 0, 0, 327680, 0, 0, 328192, 0, 0, 0,
  39977. 118, 577408, 22020096, 1040, 0, 0, 0, 16384, 0, 67108864, 1998, 518144, 8388608, 50331648, 201326592,
  39978. 805306368, 0, 2, 204, 768, 1024, 10240, 1024, 10240, 16384, 32768, 458752, 8388608, 458752, 8388608,
  39979. 50331648, 67108864, 134217728, 805306368, 134217728, 805306368, 1073741824, 0x80000000, 0, 220, 0, 0, 0,
  39980. 32768, 33554436, 2, 12, 192, 768, 1024, 1024, 2048, 8192, 16384, 32768, 458752, 32768, 458752, 50331648,
  39981. 67108864, 134217728, 134217728, 805306368, 1073741824, 0, 0, 208, 0, 0, 0, 34816, 67108864, 268435456, 0,
  39982. 0, 0, 65536, 458752, 50331648, 67108864, 805306368, 1073741824, 458752, 50331648, 67108864, 536870912,
  39983. 1073741824, 0, 0, 4, 8, 64, 128, 512, 2048, 196608, 262144, 33554432, 536870912, 0, 0, 0, 262144, 0, 0, 0,
  39984. 64, 0, 0, 2, 4, 8, 262144, 0, 1048576, 4194304, 0, 0, 4, 8, 128, 512, 1024, 32768, 65536, 131072, 2048,
  39985. 196608, 262144, 50331648, 536870912, 1073741824, 1, 4, 8, 512, 2048, 131072, 33554432, 536870912, 0, 0, 4,
  39986. 8, 512, 2048, 8192, 32768, 8388608, 0, 524288, 262144, 0, 0, 4, 64, 128, 8388608, 0, 512, 2048, 131072,
  39987. 536870912, 0, 0, 4194304, 8192, 2097152, 268435456, 0x80000000, 16, 33554432, -2147418112, 537395200,
  39988. 537395200, 0, 4196352, 537427968, 4196352, 0, 537395200, 4196352, 4196352, 276901888, 8540160, -1606418432,
  39989. 32768, 537395200, 4196352, 1082130432, 51380242, 51380242, 51380242, 22022147, 22349827, 22349827,
  39990. 22349827, 22366219, 22349843, 22349827, 22349827, 22366219, 22349827, 55576594, 55576594, 55576594,
  39991. 55576594, 1062785014, 324012114, 55576594, 55576594, 55576594, 1062785014, 1062785014, 1062785014,
  39992. 1062785014, 0, 0, 0, 329728, 557056, 0, 0, 0, 393216, 0, 0, 17825792, 33554432, 0, 0, 0, 462976, 3,
  39993. 22020096, 0, 0, 4, 134217728, 0, 0, 8, 16, 512, 402653184, 0, 0, 346112, 19, 0, 0, 8, 64, 0, 0, 0, 82,
  39994. 301989888, 0, 0, 393232, 0, 0, 393240, 0, 0, 524288, 524288, 524288, 524288, 0, 577408, 22020096,
  39995. 1040187392, 0, 0, 0, 524288, 0, 0, 0, 16, 0, 0, 0, 6, 16384, 32768, 268435456, 0, 268435456, 0, 1048576,
  39996. 16777216, 33554432, 0, 0, 524288, 1048576, 2097152, 0, 80, 268435456, 0, 0, 524288, 536870912, 0, 112, 128,
  39997. 256, 3584, 16384, 32768, 134217728, 805306368, 0, 0, 0, 1007232, 256, 1536, 2048, 16384, 32768, 262144, 0,
  39998. 4, 16, 32, 64, 128, 256, 1536, 0, 16, 33554432, 0, 0, 1048576, 4194304, 0x80000000, 1536, 16384, 32768,
  39999. 524288, 4194304, 33554432, 134217728, 536870912, 0, 0, 0, 32768, 0, 0, 0, 1048576, 0, 0, 0, 1998, 518144,
  40000. 1, 0, 0, 65536, 262144, 0, 0, 256, 1536, 32768, 524288, 0, 0, 4194304, 134217728, 536870912, 0, 0, 1114112,
  40001. 1073741824, 16, 64, 1536, 32768, 524288, 4194304, 67174400, 33554432, 1073741824, 0, 67174400, 0, 0, 16384,
  40002. 1073741824, 0, 0, 2097152, 0, 1572864, 0, 1073741824, 16384, 0, 4194304, 0, 8, 0, 131072, 0, 131072, 0, 8,
  40003. 131072, 131072, 134217728, 4096, 0, 8, 0, 8, 131072, 4194304, -2146430976, 131072, 134217736, 16908320,
  40004. 547389524, 547389524, 555909216, 555909216, 555909216, 555909216, 564297840, 564297844, 564297844,
  40005. 564297844, 564297844, 564297844, 564297844, 1001055742, 1001056254, 1001055742, 1001055742, 1001056254,
  40006. 1001056254, 1001056254, 1001056254, 1001056254, 1001055742, 1, 0, 67108864, 1073741824, 0, 84, 2129920,
  40007. 8388608, 536870912, 0, 96, 2260992, 0, 0, 2097152, 4194304, 8388608, 134217728, 268435456, 1280, 2809856,
  40008. 58720256, 939524096, 0, 0, 0, 1052672, 0, 254, 1792, 2809856, 58720256, 939524096, 0, 939524096, 0, 0, 12,
  40009. 16, 32768, 2097152, 8388608, 536870912, 0, 163840, 0, 0, 12, 32, 64, 1024, 2048, 57344, 262144, 50331648,
  40010. 268435456, 1073741824, 0x80000000, 0, 52, 0, 0, 20, 64, 62, 64, 128, 1280, 8192, 16384, 131072, 524288,
  40011. 58720256, 24576, 163840, 524288, 2097152, 58720256, 402653184, 58720256, 402653184, 536870912, 0, 0, 64,
  40012. 128, 1792, 24576, 163840, 4, 16, 8388608, 0, 0, 2113536, 0, 0, 3735552, 0, 0, 8388608, 8388608, 4096, 4096,
  40013. 4096, 4096, 0, 48, 25165824, 0, 0, 0, 1572864, 0, 6, 56, 128, 1792, 8192, 524288, 58720256, 402653184, 0,
  40014. 0, 32, 128, 256, 262144, 262144, 1048576, 1073741824, 0, 0, 0, 0x80000000, 0, 0, 0, -2147483646, 4, 24, 32,
  40015. 128, 1792, 1280, 8192, 524288, 16777216, 33554432, 0, 262144, 33554432, 134217728, 0, 8, 16, 1024,
  40016. 16777216, 4194432, 3145728, 541065216, -2143289344, 4194304, 4194304, 4194304, 4194304, 16, 402653184, 0,
  40017. 0, 32, 128, 256, 2048, 262144, 524288, 4, 16384, 65536, 67108864, 0, 0, 0, 131072, 0, 0, 0, 1024, 0, 0,
  40018. 32768, 8192, 0, 2048, 0, 32, 8192, 3670016, 2048, 8192, 196608, 1048576, 0, 0, 34816, 9216, 4096, 4096,
  40019. 29696, 29712, 29712, 29840, 29712, 29712, 29840, 536900624, 4224144, 144384, -754647956, -754647956,
  40020. -754647956, -754647956, 144384, 144384, 144384, 144384, -754647940, -754647940, -754647940, -754647940,
  40021. -754516884, -754647956, -754516884, -754516884, -754516884, 0, 0, 8388608, 1073741824, 0, 0, 67108864, 12,
  40022. 16384, 0, 65536, 29824, 0, 0, 0, 3670016, 44, 64576, 319029248, -1073741824, 0, 0, 60, 0, 0, 0, 4194304, 0,
  40023. 0, 0, 2014, 0, 319160320, 0, 0, 0, 5242880, 0, 4, 8, 256, 512, 2048, 8192, 16384, 458752, 50331648, 0,
  40024. 524288, 3145728, 0, 0, 16384, 8, 0, 28672, 0, 0, 32, 524288, 0, 16, 0, 128, 0, 12288, 131072, 0, 0, 128,
  40025. 512, 3072, 4096, 16384, 32768, 131072, 524288, 1048576, 2097152, 4194304, 262144, 318767104, -1073741824,
  40026. 0, 0, 0, 28, 0, 0, 60, 64576, 28, 32, 64, 1024, 2048, 61440, 262144, 318767104, 24576, 0, 0, 0, 8388608, 0,
  40027. 0, 0, 1040000, 67108864, 16384, 0, 65536, 262144, 1048576, 0, 8, 64, 2048, 4096, 8192, 65536, 131072,
  40028. 1048576, 0, 0, 128, 536870912, 4194304, 131072, 0, 0, 64, 2048, 16384, 32768, 524288, 1048576, 4194304,
  40029. 134217728, 0x80000000, 32768, 262144, 50331648, 268435456, 0, 32768, 8388608, 0, 0, 16777216, 16777216, 0,
  40030. 0, 0, 4, 8, 16, 2, 67108864, 0, 65536, 201326592, 0x80000000, 0, 0, 1998, 59238400, -67108864, 0, 524288,
  40031. 1048576, 0, 0, 64, 256, 32768, 50331648, 268435456, 0, 0, 1, 256, 0, 0, 0, 16777216, 0, 0, 256, 0, 8192, 0,
  40032. 256, 262144, 2113536, 2097152, 135790592, 0, 256, 8192, 2097152, 0, 0x80000000, 0, 32768, 2097152, 0,
  40033. 0x80000000, 5242880, 0, 0, 0, 128, 0, 0, 0, 208, 131073, 0, 0, 131073, 0, 135790592, 131073, 4, 0, 131073,
  40034. 393233, 1610612736, 1610612736, 1610612736, 393241, 393241, 393241, 393241, 805707793, 805707793,
  40035. 1879449617, 805708049, 1879449617, 1879449617, 1879449617, 1879449617, -483948553, -475559945, -475559945,
  40036. -483948553, -483948553, -475559945, -483948553, -475559945, -483948553, -475559945, -475559945, -475559945,
  40037. -475559945, -475559945, -215504905, -475559945, -207116297, -207116297, 0, 0, 72, 0, 4096, 4194304, 32768,
  40038. 0, 0, 256, 401424, 805306368, 0, 0, 112, 25165824, 0, 1879048192, 0, 0, 116, 0, 0, 401680, 0, 0, 0,
  40039. 32505856, 7, 19367920, -503316480, 0, 0, 0, 33554432, 0, 0, 33554432, 268435456, 0, 0, 0, 19376112,
  40040. -234881024, 0, 0, 50331648, 268435456, 0, 27764720, -234881024, 0, 0, 512, 2048, 0, 0, 1, 2, 4, 32, 524288,
  40041. 1048576, 524288, 1048576, 33554432, 67108864, 134217728, 805306368, 0, 24, 0, 0, 512, 3072, 16384, 0, 7,
  40042. 16, 480, 1536, 32768, 1536, 32768, 65536, 2490368, 32768, 65536, 10878976, 16777216, 33554432, 0, 9728,
  40043. 268435456, 0, 0, 67108866, 12, 64, 128, 512, 1024, 2048, 0, 16, 393216, 0, 0, 393216, 2097152, 16777216,
  40044. 33554432, 536870912, -1073741824, 0, 0, 10485760, 16777216, 33554432, 1073741824, 0x80000000, 0, 16, 224,
  40045. 256, 1536, 32768, 65536, 393216, 10485760, 16777216, 131072, 262144, 2097152, 16777216, 32768, 131072,
  40046. 262144, 2097152, 8388608, 16777216, 0, 0, 4, 16, 224, 512, 32768, 131072, 2097152, 16777216, 192, 32768, 0,
  40047. 0, 512, 4096, 4, 16, 192, 32768, 8388608, 0, 16, 64, 128, 8388608, 0, 0, 1024, 0, 4, 0, 0, 0, 3145728, 0,
  40048. 4, 128, 0, 0, 268435456, 2, 0, 0, 65536, 0, 0, 0, 65, 0, 64, 128, 8388608, 16777216, 1073741824, 0, 0, 512,
  40049. 2048, 32768, 262144, 524288, 8388608, 0, 0, 512, 131072, 524288, 8388608, 33554432, 0x80000000, 33554432,
  40050. 33554432, 0, 2, 4, 112, 128, -2113929216, 100663296, 100663296, 2, 4, 524288, 134217728, 0, 0, 8, 512,
  40051. 2048, 196608, 33554436, 0, 0, 33554436, 4224, 4224, 0, 65536, 100663296, 4224, 65536, 65536, 262144,
  40052. 33554432, 0, 2, 4, 16, 64, 128, 256, 0, 4224, 65536, 16777216, 262400, 65536, 4224, -1072627712, 805306384,
  40053. -1342177264, -1342177264, -1070006272, -1069989376, -1069989376, -1069989376, -258932720, -258932720,
  40054. -258932720, -258932720, -1069989360, -1065795072, -1061600768, -1069989376, -225378288, -258932720,
  40055. -258932720, -258932720, -225378288, 1260767, 1260767, 34815199, 1260767, 1260767, 1260767, 1260767,
  40056. 34815199, 1260767, 34815199, 34815199, 34815199, 1260767, 1260767, 169032927, 1242774751, -1978450721,
  40057. 169032927, -1978450721, -1978450721, -1978450721, 169032927, 169032927, 169032927, 169032927, -225231649,
  40058. -1173144353, -225231649, -225231649, -91013921, 0, 0, 0, 67108864, 0, 3751936, 0, 0, 528, 7946240,
  40059. 12140544, 0, 0, 0, 134217728, 0, 0, 0, 7, 27756528, -503316480, 0, 0, 9502720, 1610612736, 0, 0, 486539264,
  40060. 0, 0, 2048, 32768, 0, 0, 64, 128, 0, 0, 536870912, 0, 0, 208, 15360, 1245184, 0, 0, 0, 268435456, 0, 0, 0,
  40061. 15, 9633792, 0, 0, 0, 32, 512, 2048, 262144, 0, 3670016, 0, 0, 1040, 1040, 1, 2, 12, 80, 128, 7168, 8192,
  40062. 196608, 16, 64, 128, 3072, 4096, 8192, 65536, 131072, 0, 0, 32, 262144, 524288, 33554432, 134217728, 0, 0,
  40063. 0, 2, 8, 64, 128, 1024, 4096, 0, 0, 262144, 0, 4096, 4194304, 1, 1, 1, 0, 0, 2, 8, 16, 64
  40064. ];
  40065. JSONiqParser.TOKEN =
  40066. [
  40067. "(0)",
  40068. "PragmaContents",
  40069. "DirCommentContents",
  40070. "DirPIContents",
  40071. "CDataSection",
  40072. "Wildcard",
  40073. "EQName",
  40074. "URILiteral",
  40075. "IntegerLiteral",
  40076. "DecimalLiteral",
  40077. "DoubleLiteral",
  40078. "StringLiteral",
  40079. "PredefinedEntityRef",
  40080. "'\"\"'",
  40081. "EscapeApos",
  40082. "ElementContentChar",
  40083. "QuotAttrContentChar",
  40084. "AposAttrContentChar",
  40085. "PITarget",
  40086. "NCName",
  40087. "QName",
  40088. "S",
  40089. "S",
  40090. "CharRef",
  40091. "CommentContents",
  40092. "EOF",
  40093. "'!'",
  40094. "'!='",
  40095. "'\"'",
  40096. "'#'",
  40097. "'#)'",
  40098. "'$'",
  40099. "'$$'",
  40100. "'%'",
  40101. "''''",
  40102. "'('",
  40103. "'(#'",
  40104. "'(:'",
  40105. "')'",
  40106. "'*'",
  40107. "'*'",
  40108. "'+'",
  40109. "','",
  40110. "'-'",
  40111. "'-->'",
  40112. "'.'",
  40113. "'..'",
  40114. "'/'",
  40115. "'//'",
  40116. "'/>'",
  40117. "':'",
  40118. "':)'",
  40119. "'::'",
  40120. "':='",
  40121. "';'",
  40122. "'<'",
  40123. "'<!--'",
  40124. "'</'",
  40125. "'<<'",
  40126. "'<='",
  40127. "'<?'",
  40128. "'='",
  40129. "'>'",
  40130. "'>='",
  40131. "'>>'",
  40132. "'?'",
  40133. "'?>'",
  40134. "'@'",
  40135. "'NaN'",
  40136. "'['",
  40137. "']'",
  40138. "'after'",
  40139. "'all'",
  40140. "'allowing'",
  40141. "'ancestor'",
  40142. "'ancestor-or-self'",
  40143. "'and'",
  40144. "'any'",
  40145. "'append'",
  40146. "'array'",
  40147. "'as'",
  40148. "'ascending'",
  40149. "'at'",
  40150. "'attribute'",
  40151. "'base-uri'",
  40152. "'before'",
  40153. "'boundary-space'",
  40154. "'break'",
  40155. "'by'",
  40156. "'case'",
  40157. "'cast'",
  40158. "'castable'",
  40159. "'catch'",
  40160. "'check'",
  40161. "'child'",
  40162. "'collation'",
  40163. "'collection'",
  40164. "'comment'",
  40165. "'constraint'",
  40166. "'construction'",
  40167. "'contains'",
  40168. "'content'",
  40169. "'context'",
  40170. "'continue'",
  40171. "'copy'",
  40172. "'copy-namespaces'",
  40173. "'count'",
  40174. "'decimal-format'",
  40175. "'decimal-separator'",
  40176. "'declare'",
  40177. "'default'",
  40178. "'delete'",
  40179. "'descendant'",
  40180. "'descendant-or-self'",
  40181. "'descending'",
  40182. "'diacritics'",
  40183. "'different'",
  40184. "'digit'",
  40185. "'distance'",
  40186. "'div'",
  40187. "'document'",
  40188. "'document-node'",
  40189. "'element'",
  40190. "'else'",
  40191. "'empty'",
  40192. "'empty-sequence'",
  40193. "'encoding'",
  40194. "'end'",
  40195. "'entire'",
  40196. "'eq'",
  40197. "'every'",
  40198. "'exactly'",
  40199. "'except'",
  40200. "'exit'",
  40201. "'external'",
  40202. "'false'",
  40203. "'first'",
  40204. "'following'",
  40205. "'following-sibling'",
  40206. "'for'",
  40207. "'foreach'",
  40208. "'foreign'",
  40209. "'from'",
  40210. "'ft-option'",
  40211. "'ftand'",
  40212. "'ftnot'",
  40213. "'ftor'",
  40214. "'function'",
  40215. "'ge'",
  40216. "'greatest'",
  40217. "'group'",
  40218. "'grouping-separator'",
  40219. "'gt'",
  40220. "'idiv'",
  40221. "'if'",
  40222. "'import'",
  40223. "'in'",
  40224. "'index'",
  40225. "'infinity'",
  40226. "'inherit'",
  40227. "'insensitive'",
  40228. "'insert'",
  40229. "'instance'",
  40230. "'integrity'",
  40231. "'intersect'",
  40232. "'into'",
  40233. "'is'",
  40234. "'item'",
  40235. "'json'",
  40236. "'json-item'",
  40237. "'jsoniq'",
  40238. "'key'",
  40239. "'language'",
  40240. "'last'",
  40241. "'lax'",
  40242. "'le'",
  40243. "'least'",
  40244. "'let'",
  40245. "'levels'",
  40246. "'loop'",
  40247. "'lowercase'",
  40248. "'lt'",
  40249. "'minus-sign'",
  40250. "'mod'",
  40251. "'modify'",
  40252. "'module'",
  40253. "'most'",
  40254. "'namespace'",
  40255. "'namespace-node'",
  40256. "'ne'",
  40257. "'next'",
  40258. "'no'",
  40259. "'no-inherit'",
  40260. "'no-preserve'",
  40261. "'node'",
  40262. "'nodes'",
  40263. "'not'",
  40264. "'null'",
  40265. "'object'",
  40266. "'occurs'",
  40267. "'of'",
  40268. "'on'",
  40269. "'only'",
  40270. "'option'",
  40271. "'or'",
  40272. "'order'",
  40273. "'ordered'",
  40274. "'ordering'",
  40275. "'paragraph'",
  40276. "'paragraphs'",
  40277. "'parent'",
  40278. "'pattern-separator'",
  40279. "'per-mille'",
  40280. "'percent'",
  40281. "'phrase'",
  40282. "'position'",
  40283. "'preceding'",
  40284. "'preceding-sibling'",
  40285. "'preserve'",
  40286. "'previous'",
  40287. "'processing-instruction'",
  40288. "'relationship'",
  40289. "'rename'",
  40290. "'replace'",
  40291. "'return'",
  40292. "'returning'",
  40293. "'revalidation'",
  40294. "'same'",
  40295. "'satisfies'",
  40296. "'schema'",
  40297. "'schema-attribute'",
  40298. "'schema-element'",
  40299. "'score'",
  40300. "'select'",
  40301. "'self'",
  40302. "'sensitive'",
  40303. "'sentence'",
  40304. "'sentences'",
  40305. "'skip'",
  40306. "'sliding'",
  40307. "'some'",
  40308. "'stable'",
  40309. "'start'",
  40310. "'stemming'",
  40311. "'stop'",
  40312. "'strict'",
  40313. "'strip'",
  40314. "'structured-item'",
  40315. "'switch'",
  40316. "'text'",
  40317. "'then'",
  40318. "'thesaurus'",
  40319. "'times'",
  40320. "'to'",
  40321. "'treat'",
  40322. "'true'",
  40323. "'try'",
  40324. "'tumbling'",
  40325. "'type'",
  40326. "'typeswitch'",
  40327. "'union'",
  40328. "'unique'",
  40329. "'unordered'",
  40330. "'updating'",
  40331. "'uppercase'",
  40332. "'using'",
  40333. "'validate'",
  40334. "'value'",
  40335. "'variable'",
  40336. "'version'",
  40337. "'weight'",
  40338. "'when'",
  40339. "'where'",
  40340. "'while'",
  40341. "'wildcards'",
  40342. "'window'",
  40343. "'with'",
  40344. "'without'",
  40345. "'word'",
  40346. "'words'",
  40347. "'zero-digit'",
  40348. "'{'",
  40349. "'{{'",
  40350. "'{|'",
  40351. "'|'",
  40352. "'||'",
  40353. "'|}'",
  40354. "'}'",
  40355. "'}}'"
  40356. ];
  40357. },{}],"/node_modules/xqlint/lib/parsers/XQueryParser.js":[function(_dereq_,module,exports){
  40358. var XQueryParser = exports.XQueryParser = function XQueryParser(string, parsingEventHandler)
  40359. {
  40360. init(string, parsingEventHandler);
  40361. var self = this;
  40362. this.ParseException = function(b, e, s, o, x)
  40363. {
  40364. var
  40365. begin = b,
  40366. end = e,
  40367. state = s,
  40368. offending = o,
  40369. expected = x;
  40370. this.getBegin = function() {return begin;};
  40371. this.getEnd = function() {return end;};
  40372. this.getState = function() {return state;};
  40373. this.getExpected = function() {return expected;};
  40374. this.getOffending = function() {return offending;};
  40375. this.getMessage = function()
  40376. {
  40377. return offending < 0 ? "lexical analysis failed" : "syntax error";
  40378. };
  40379. };
  40380. function init(string, parsingEventHandler)
  40381. {
  40382. eventHandler = parsingEventHandler;
  40383. input = string;
  40384. size = string.length;
  40385. reset(0, 0, 0);
  40386. }
  40387. this.getInput = function()
  40388. {
  40389. return input;
  40390. };
  40391. function reset(l, b, e)
  40392. {
  40393. b0 = b; e0 = b;
  40394. l1 = l; b1 = b; e1 = e;
  40395. l2 = 0;
  40396. end = e;
  40397. ex = -1;
  40398. memo = {};
  40399. eventHandler.reset(input);
  40400. }
  40401. this.getOffendingToken = function(e)
  40402. {
  40403. var o = e.getOffending();
  40404. return o >= 0 ? XQueryParser.TOKEN[o] : null;
  40405. };
  40406. this.getExpectedTokenSet = function(e)
  40407. {
  40408. var expected;
  40409. if (e.getExpected() < 0)
  40410. {
  40411. expected = XQueryParser.getTokenSet(- e.getState());
  40412. }
  40413. else
  40414. {
  40415. expected = [XQueryParser.TOKEN[e.getExpected()]];
  40416. }
  40417. return expected;
  40418. };
  40419. this.getErrorMessage = function(e)
  40420. {
  40421. var tokenSet = this.getExpectedTokenSet(e);
  40422. var found = this.getOffendingToken(e);
  40423. var prefix = input.substring(0, e.getBegin());
  40424. var lines = prefix.split("\n");
  40425. var line = lines.length;
  40426. var column = lines[line - 1].length + 1;
  40427. var size = e.getEnd() - e.getBegin();
  40428. return e.getMessage()
  40429. + (found == null ? "" : ", found " + found)
  40430. + "\nwhile expecting "
  40431. + (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
  40432. + "\n"
  40433. + (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
  40434. + "at line " + line + ", column " + column + ":\n..."
  40435. + input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
  40436. + "...";
  40437. };
  40438. this.parse_XQuery = function()
  40439. {
  40440. eventHandler.startNonterminal("XQuery", e0);
  40441. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  40442. whitespace();
  40443. parse_Module();
  40444. shift(25); // EOF
  40445. eventHandler.endNonterminal("XQuery", e0);
  40446. };
  40447. function parse_Module()
  40448. {
  40449. eventHandler.startNonterminal("Module", e0);
  40450. switch (l1)
  40451. {
  40452. case 274: // 'xquery'
  40453. lookahead2W(198); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  40454. break;
  40455. default:
  40456. lk = l1;
  40457. }
  40458. if (lk == 64274 // 'xquery' 'encoding'
  40459. || lk == 134930) // 'xquery' 'version'
  40460. {
  40461. parse_VersionDecl();
  40462. }
  40463. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  40464. switch (l1)
  40465. {
  40466. case 182: // 'module'
  40467. lookahead2W(193); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  40468. break;
  40469. default:
  40470. lk = l1;
  40471. }
  40472. switch (lk)
  40473. {
  40474. case 94390: // 'module' 'namespace'
  40475. whitespace();
  40476. parse_LibraryModule();
  40477. break;
  40478. default:
  40479. whitespace();
  40480. parse_MainModule();
  40481. }
  40482. eventHandler.endNonterminal("Module", e0);
  40483. }
  40484. function parse_VersionDecl()
  40485. {
  40486. eventHandler.startNonterminal("VersionDecl", e0);
  40487. shift(274); // 'xquery'
  40488. lookahead1W(116); // S^WS | '(:' | 'encoding' | 'version'
  40489. switch (l1)
  40490. {
  40491. case 125: // 'encoding'
  40492. shift(125); // 'encoding'
  40493. lookahead1W(17); // StringLiteral | S^WS | '(:'
  40494. shift(11); // StringLiteral
  40495. break;
  40496. default:
  40497. shift(263); // 'version'
  40498. lookahead1W(17); // StringLiteral | S^WS | '(:'
  40499. shift(11); // StringLiteral
  40500. lookahead1W(109); // S^WS | '(:' | ';' | 'encoding'
  40501. if (l1 == 125) // 'encoding'
  40502. {
  40503. shift(125); // 'encoding'
  40504. lookahead1W(17); // StringLiteral | S^WS | '(:'
  40505. shift(11); // StringLiteral
  40506. }
  40507. }
  40508. lookahead1W(28); // S^WS | '(:' | ';'
  40509. whitespace();
  40510. parse_Separator();
  40511. eventHandler.endNonterminal("VersionDecl", e0);
  40512. }
  40513. function parse_LibraryModule()
  40514. {
  40515. eventHandler.startNonterminal("LibraryModule", e0);
  40516. parse_ModuleDecl();
  40517. lookahead1W(138); // S^WS | EOF | '(:' | 'declare' | 'import'
  40518. whitespace();
  40519. parse_Prolog();
  40520. eventHandler.endNonterminal("LibraryModule", e0);
  40521. }
  40522. function parse_ModuleDecl()
  40523. {
  40524. eventHandler.startNonterminal("ModuleDecl", e0);
  40525. shift(182); // 'module'
  40526. lookahead1W(61); // S^WS | '(:' | 'namespace'
  40527. shift(184); // 'namespace'
  40528. lookahead1W(248); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  40529. whitespace();
  40530. parse_NCName();
  40531. lookahead1W(29); // S^WS | '(:' | '='
  40532. shift(60); // '='
  40533. lookahead1W(15); // URILiteral | S^WS | '(:'
  40534. shift(7); // URILiteral
  40535. lookahead1W(28); // S^WS | '(:' | ';'
  40536. whitespace();
  40537. parse_Separator();
  40538. eventHandler.endNonterminal("ModuleDecl", e0);
  40539. }
  40540. function parse_Prolog()
  40541. {
  40542. eventHandler.startNonterminal("Prolog", e0);
  40543. for (;;)
  40544. {
  40545. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  40546. switch (l1)
  40547. {
  40548. case 108: // 'declare'
  40549. lookahead2W(213); // S^WS | EOF | '!' | '!=' | '#' | '%' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  40550. break;
  40551. case 153: // 'import'
  40552. lookahead2W(201); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  40553. break;
  40554. default:
  40555. lk = l1;
  40556. }
  40557. if (lk != 42604 // 'declare' 'base-uri'
  40558. && lk != 43628 // 'declare' 'boundary-space'
  40559. && lk != 50284 // 'declare' 'construction'
  40560. && lk != 53356 // 'declare' 'copy-namespaces'
  40561. && lk != 54380 // 'declare' 'decimal-format'
  40562. && lk != 55916 // 'declare' 'default'
  40563. && lk != 72300 // 'declare' 'ft-option'
  40564. && lk != 93337 // 'import' 'module'
  40565. && lk != 94316 // 'declare' 'namespace'
  40566. && lk != 104044 // 'declare' 'ordering'
  40567. && lk != 113772 // 'declare' 'revalidation'
  40568. && lk != 115353) // 'import' 'schema'
  40569. {
  40570. break;
  40571. }
  40572. switch (l1)
  40573. {
  40574. case 108: // 'declare'
  40575. lookahead2W(178); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  40576. break;
  40577. default:
  40578. lk = l1;
  40579. }
  40580. if (lk == 55916) // 'declare' 'default'
  40581. {
  40582. lk = memoized(0, e0);
  40583. if (lk == 0)
  40584. {
  40585. var b0A = b0; var e0A = e0; var l1A = l1;
  40586. var b1A = b1; var e1A = e1; var l2A = l2;
  40587. var b2A = b2; var e2A = e2;
  40588. try
  40589. {
  40590. try_DefaultNamespaceDecl();
  40591. lk = -1;
  40592. }
  40593. catch (p1A)
  40594. {
  40595. lk = -2;
  40596. }
  40597. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  40598. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  40599. b2 = b2A; e2 = e2A; end = e2A; }}
  40600. memoize(0, e0, lk);
  40601. }
  40602. }
  40603. switch (lk)
  40604. {
  40605. case -1:
  40606. whitespace();
  40607. parse_DefaultNamespaceDecl();
  40608. break;
  40609. case 94316: // 'declare' 'namespace'
  40610. whitespace();
  40611. parse_NamespaceDecl();
  40612. break;
  40613. case 153: // 'import'
  40614. whitespace();
  40615. parse_Import();
  40616. break;
  40617. case 72300: // 'declare' 'ft-option'
  40618. whitespace();
  40619. parse_FTOptionDecl();
  40620. break;
  40621. default:
  40622. whitespace();
  40623. parse_Setter();
  40624. }
  40625. lookahead1W(28); // S^WS | '(:' | ';'
  40626. whitespace();
  40627. parse_Separator();
  40628. }
  40629. for (;;)
  40630. {
  40631. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  40632. switch (l1)
  40633. {
  40634. case 108: // 'declare'
  40635. lookahead2W(210); // S^WS | EOF | '!' | '!=' | '#' | '%' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  40636. break;
  40637. default:
  40638. lk = l1;
  40639. }
  40640. if (lk != 16492 // 'declare' '%'
  40641. && lk != 48748 // 'declare' 'collection'
  40642. && lk != 51820 // 'declare' 'context'
  40643. && lk != 74348 // 'declare' 'function'
  40644. && lk != 79468 // 'declare' 'index'
  40645. && lk != 82540 // 'declare' 'integrity'
  40646. && lk != 101996 // 'declare' 'option'
  40647. && lk != 131692 // 'declare' 'updating'
  40648. && lk != 134252) // 'declare' 'variable'
  40649. {
  40650. break;
  40651. }
  40652. switch (l1)
  40653. {
  40654. case 108: // 'declare'
  40655. lookahead2W(175); // S^WS | '%' | '(:' | 'collection' | 'context' | 'function' | 'index' |
  40656. break;
  40657. default:
  40658. lk = l1;
  40659. }
  40660. switch (lk)
  40661. {
  40662. case 51820: // 'declare' 'context'
  40663. whitespace();
  40664. parse_ContextItemDecl();
  40665. break;
  40666. case 101996: // 'declare' 'option'
  40667. whitespace();
  40668. parse_OptionDecl();
  40669. break;
  40670. default:
  40671. whitespace();
  40672. parse_AnnotatedDecl();
  40673. }
  40674. lookahead1W(28); // S^WS | '(:' | ';'
  40675. whitespace();
  40676. parse_Separator();
  40677. }
  40678. eventHandler.endNonterminal("Prolog", e0);
  40679. }
  40680. function parse_Separator()
  40681. {
  40682. eventHandler.startNonterminal("Separator", e0);
  40683. shift(53); // ';'
  40684. eventHandler.endNonterminal("Separator", e0);
  40685. }
  40686. function parse_Setter()
  40687. {
  40688. eventHandler.startNonterminal("Setter", e0);
  40689. switch (l1)
  40690. {
  40691. case 108: // 'declare'
  40692. lookahead2W(172); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  40693. break;
  40694. default:
  40695. lk = l1;
  40696. }
  40697. if (lk == 55916) // 'declare' 'default'
  40698. {
  40699. lk = memoized(1, e0);
  40700. if (lk == 0)
  40701. {
  40702. var b0A = b0; var e0A = e0; var l1A = l1;
  40703. var b1A = b1; var e1A = e1; var l2A = l2;
  40704. var b2A = b2; var e2A = e2;
  40705. try
  40706. {
  40707. try_DefaultCollationDecl();
  40708. lk = -2;
  40709. }
  40710. catch (p2A)
  40711. {
  40712. try
  40713. {
  40714. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  40715. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  40716. b2 = b2A; e2 = e2A; end = e2A; }}
  40717. try_EmptyOrderDecl();
  40718. lk = -6;
  40719. }
  40720. catch (p6A)
  40721. {
  40722. lk = -9;
  40723. }
  40724. }
  40725. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  40726. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  40727. b2 = b2A; e2 = e2A; end = e2A; }}
  40728. memoize(1, e0, lk);
  40729. }
  40730. }
  40731. switch (lk)
  40732. {
  40733. case 43628: // 'declare' 'boundary-space'
  40734. parse_BoundarySpaceDecl();
  40735. break;
  40736. case -2:
  40737. parse_DefaultCollationDecl();
  40738. break;
  40739. case 42604: // 'declare' 'base-uri'
  40740. parse_BaseURIDecl();
  40741. break;
  40742. case 50284: // 'declare' 'construction'
  40743. parse_ConstructionDecl();
  40744. break;
  40745. case 104044: // 'declare' 'ordering'
  40746. parse_OrderingModeDecl();
  40747. break;
  40748. case -6:
  40749. parse_EmptyOrderDecl();
  40750. break;
  40751. case 113772: // 'declare' 'revalidation'
  40752. parse_RevalidationDecl();
  40753. break;
  40754. case 53356: // 'declare' 'copy-namespaces'
  40755. parse_CopyNamespacesDecl();
  40756. break;
  40757. default:
  40758. parse_DecimalFormatDecl();
  40759. }
  40760. eventHandler.endNonterminal("Setter", e0);
  40761. }
  40762. function parse_BoundarySpaceDecl()
  40763. {
  40764. eventHandler.startNonterminal("BoundarySpaceDecl", e0);
  40765. shift(108); // 'declare'
  40766. lookahead1W(33); // S^WS | '(:' | 'boundary-space'
  40767. shift(85); // 'boundary-space'
  40768. lookahead1W(133); // S^WS | '(:' | 'preserve' | 'strip'
  40769. switch (l1)
  40770. {
  40771. case 214: // 'preserve'
  40772. shift(214); // 'preserve'
  40773. break;
  40774. default:
  40775. shift(241); // 'strip'
  40776. }
  40777. eventHandler.endNonterminal("BoundarySpaceDecl", e0);
  40778. }
  40779. function parse_DefaultCollationDecl()
  40780. {
  40781. eventHandler.startNonterminal("DefaultCollationDecl", e0);
  40782. shift(108); // 'declare'
  40783. lookahead1W(46); // S^WS | '(:' | 'default'
  40784. shift(109); // 'default'
  40785. lookahead1W(38); // S^WS | '(:' | 'collation'
  40786. shift(94); // 'collation'
  40787. lookahead1W(15); // URILiteral | S^WS | '(:'
  40788. shift(7); // URILiteral
  40789. eventHandler.endNonterminal("DefaultCollationDecl", e0);
  40790. }
  40791. function try_DefaultCollationDecl()
  40792. {
  40793. shiftT(108); // 'declare'
  40794. lookahead1W(46); // S^WS | '(:' | 'default'
  40795. shiftT(109); // 'default'
  40796. lookahead1W(38); // S^WS | '(:' | 'collation'
  40797. shiftT(94); // 'collation'
  40798. lookahead1W(15); // URILiteral | S^WS | '(:'
  40799. shiftT(7); // URILiteral
  40800. }
  40801. function parse_BaseURIDecl()
  40802. {
  40803. eventHandler.startNonterminal("BaseURIDecl", e0);
  40804. shift(108); // 'declare'
  40805. lookahead1W(32); // S^WS | '(:' | 'base-uri'
  40806. shift(83); // 'base-uri'
  40807. lookahead1W(15); // URILiteral | S^WS | '(:'
  40808. shift(7); // URILiteral
  40809. eventHandler.endNonterminal("BaseURIDecl", e0);
  40810. }
  40811. function parse_ConstructionDecl()
  40812. {
  40813. eventHandler.startNonterminal("ConstructionDecl", e0);
  40814. shift(108); // 'declare'
  40815. lookahead1W(41); // S^WS | '(:' | 'construction'
  40816. shift(98); // 'construction'
  40817. lookahead1W(133); // S^WS | '(:' | 'preserve' | 'strip'
  40818. switch (l1)
  40819. {
  40820. case 241: // 'strip'
  40821. shift(241); // 'strip'
  40822. break;
  40823. default:
  40824. shift(214); // 'preserve'
  40825. }
  40826. eventHandler.endNonterminal("ConstructionDecl", e0);
  40827. }
  40828. function parse_OrderingModeDecl()
  40829. {
  40830. eventHandler.startNonterminal("OrderingModeDecl", e0);
  40831. shift(108); // 'declare'
  40832. lookahead1W(68); // S^WS | '(:' | 'ordering'
  40833. shift(203); // 'ordering'
  40834. lookahead1W(131); // S^WS | '(:' | 'ordered' | 'unordered'
  40835. switch (l1)
  40836. {
  40837. case 202: // 'ordered'
  40838. shift(202); // 'ordered'
  40839. break;
  40840. default:
  40841. shift(256); // 'unordered'
  40842. }
  40843. eventHandler.endNonterminal("OrderingModeDecl", e0);
  40844. }
  40845. function parse_EmptyOrderDecl()
  40846. {
  40847. eventHandler.startNonterminal("EmptyOrderDecl", e0);
  40848. shift(108); // 'declare'
  40849. lookahead1W(46); // S^WS | '(:' | 'default'
  40850. shift(109); // 'default'
  40851. lookahead1W(67); // S^WS | '(:' | 'order'
  40852. shift(201); // 'order'
  40853. lookahead1W(49); // S^WS | '(:' | 'empty'
  40854. shift(123); // 'empty'
  40855. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  40856. switch (l1)
  40857. {
  40858. case 147: // 'greatest'
  40859. shift(147); // 'greatest'
  40860. break;
  40861. default:
  40862. shift(173); // 'least'
  40863. }
  40864. eventHandler.endNonterminal("EmptyOrderDecl", e0);
  40865. }
  40866. function try_EmptyOrderDecl()
  40867. {
  40868. shiftT(108); // 'declare'
  40869. lookahead1W(46); // S^WS | '(:' | 'default'
  40870. shiftT(109); // 'default'
  40871. lookahead1W(67); // S^WS | '(:' | 'order'
  40872. shiftT(201); // 'order'
  40873. lookahead1W(49); // S^WS | '(:' | 'empty'
  40874. shiftT(123); // 'empty'
  40875. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  40876. switch (l1)
  40877. {
  40878. case 147: // 'greatest'
  40879. shiftT(147); // 'greatest'
  40880. break;
  40881. default:
  40882. shiftT(173); // 'least'
  40883. }
  40884. }
  40885. function parse_CopyNamespacesDecl()
  40886. {
  40887. eventHandler.startNonterminal("CopyNamespacesDecl", e0);
  40888. shift(108); // 'declare'
  40889. lookahead1W(44); // S^WS | '(:' | 'copy-namespaces'
  40890. shift(104); // 'copy-namespaces'
  40891. lookahead1W(128); // S^WS | '(:' | 'no-preserve' | 'preserve'
  40892. whitespace();
  40893. parse_PreserveMode();
  40894. lookahead1W(25); // S^WS | '(:' | ','
  40895. shift(41); // ','
  40896. lookahead1W(123); // S^WS | '(:' | 'inherit' | 'no-inherit'
  40897. whitespace();
  40898. parse_InheritMode();
  40899. eventHandler.endNonterminal("CopyNamespacesDecl", e0);
  40900. }
  40901. function parse_PreserveMode()
  40902. {
  40903. eventHandler.startNonterminal("PreserveMode", e0);
  40904. switch (l1)
  40905. {
  40906. case 214: // 'preserve'
  40907. shift(214); // 'preserve'
  40908. break;
  40909. default:
  40910. shift(190); // 'no-preserve'
  40911. }
  40912. eventHandler.endNonterminal("PreserveMode", e0);
  40913. }
  40914. function parse_InheritMode()
  40915. {
  40916. eventHandler.startNonterminal("InheritMode", e0);
  40917. switch (l1)
  40918. {
  40919. case 157: // 'inherit'
  40920. shift(157); // 'inherit'
  40921. break;
  40922. default:
  40923. shift(189); // 'no-inherit'
  40924. }
  40925. eventHandler.endNonterminal("InheritMode", e0);
  40926. }
  40927. function parse_DecimalFormatDecl()
  40928. {
  40929. eventHandler.startNonterminal("DecimalFormatDecl", e0);
  40930. shift(108); // 'declare'
  40931. lookahead1W(114); // S^WS | '(:' | 'decimal-format' | 'default'
  40932. switch (l1)
  40933. {
  40934. case 106: // 'decimal-format'
  40935. shift(106); // 'decimal-format'
  40936. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  40937. whitespace();
  40938. parse_EQName();
  40939. break;
  40940. default:
  40941. shift(109); // 'default'
  40942. lookahead1W(45); // S^WS | '(:' | 'decimal-format'
  40943. shift(106); // 'decimal-format'
  40944. }
  40945. for (;;)
  40946. {
  40947. lookahead1W(180); // S^WS | '(:' | ';' | 'NaN' | 'decimal-separator' | 'digit' |
  40948. if (l1 == 53) // ';'
  40949. {
  40950. break;
  40951. }
  40952. whitespace();
  40953. parse_DFPropertyName();
  40954. lookahead1W(29); // S^WS | '(:' | '='
  40955. shift(60); // '='
  40956. lookahead1W(17); // StringLiteral | S^WS | '(:'
  40957. shift(11); // StringLiteral
  40958. }
  40959. eventHandler.endNonterminal("DecimalFormatDecl", e0);
  40960. }
  40961. function parse_DFPropertyName()
  40962. {
  40963. eventHandler.startNonterminal("DFPropertyName", e0);
  40964. switch (l1)
  40965. {
  40966. case 107: // 'decimal-separator'
  40967. shift(107); // 'decimal-separator'
  40968. break;
  40969. case 149: // 'grouping-separator'
  40970. shift(149); // 'grouping-separator'
  40971. break;
  40972. case 156: // 'infinity'
  40973. shift(156); // 'infinity'
  40974. break;
  40975. case 179: // 'minus-sign'
  40976. shift(179); // 'minus-sign'
  40977. break;
  40978. case 67: // 'NaN'
  40979. shift(67); // 'NaN'
  40980. break;
  40981. case 209: // 'percent'
  40982. shift(209); // 'percent'
  40983. break;
  40984. case 208: // 'per-mille'
  40985. shift(208); // 'per-mille'
  40986. break;
  40987. case 275: // 'zero-digit'
  40988. shift(275); // 'zero-digit'
  40989. break;
  40990. case 116: // 'digit'
  40991. shift(116); // 'digit'
  40992. break;
  40993. default:
  40994. shift(207); // 'pattern-separator'
  40995. }
  40996. eventHandler.endNonterminal("DFPropertyName", e0);
  40997. }
  40998. function parse_Import()
  40999. {
  41000. eventHandler.startNonterminal("Import", e0);
  41001. switch (l1)
  41002. {
  41003. case 153: // 'import'
  41004. lookahead2W(126); // S^WS | '(:' | 'module' | 'schema'
  41005. break;
  41006. default:
  41007. lk = l1;
  41008. }
  41009. switch (lk)
  41010. {
  41011. case 115353: // 'import' 'schema'
  41012. parse_SchemaImport();
  41013. break;
  41014. default:
  41015. parse_ModuleImport();
  41016. }
  41017. eventHandler.endNonterminal("Import", e0);
  41018. }
  41019. function parse_SchemaImport()
  41020. {
  41021. eventHandler.startNonterminal("SchemaImport", e0);
  41022. shift(153); // 'import'
  41023. lookahead1W(73); // S^WS | '(:' | 'schema'
  41024. shift(225); // 'schema'
  41025. lookahead1W(137); // URILiteral | S^WS | '(:' | 'default' | 'namespace'
  41026. if (l1 != 7) // URILiteral
  41027. {
  41028. whitespace();
  41029. parse_SchemaPrefix();
  41030. }
  41031. lookahead1W(15); // URILiteral | S^WS | '(:'
  41032. shift(7); // URILiteral
  41033. lookahead1W(108); // S^WS | '(:' | ';' | 'at'
  41034. if (l1 == 81) // 'at'
  41035. {
  41036. shift(81); // 'at'
  41037. lookahead1W(15); // URILiteral | S^WS | '(:'
  41038. shift(7); // URILiteral
  41039. for (;;)
  41040. {
  41041. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  41042. if (l1 != 41) // ','
  41043. {
  41044. break;
  41045. }
  41046. shift(41); // ','
  41047. lookahead1W(15); // URILiteral | S^WS | '(:'
  41048. shift(7); // URILiteral
  41049. }
  41050. }
  41051. eventHandler.endNonterminal("SchemaImport", e0);
  41052. }
  41053. function parse_SchemaPrefix()
  41054. {
  41055. eventHandler.startNonterminal("SchemaPrefix", e0);
  41056. switch (l1)
  41057. {
  41058. case 184: // 'namespace'
  41059. shift(184); // 'namespace'
  41060. lookahead1W(248); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41061. whitespace();
  41062. parse_NCName();
  41063. lookahead1W(29); // S^WS | '(:' | '='
  41064. shift(60); // '='
  41065. break;
  41066. default:
  41067. shift(109); // 'default'
  41068. lookahead1W(47); // S^WS | '(:' | 'element'
  41069. shift(121); // 'element'
  41070. lookahead1W(61); // S^WS | '(:' | 'namespace'
  41071. shift(184); // 'namespace'
  41072. }
  41073. eventHandler.endNonterminal("SchemaPrefix", e0);
  41074. }
  41075. function parse_ModuleImport()
  41076. {
  41077. eventHandler.startNonterminal("ModuleImport", e0);
  41078. shift(153); // 'import'
  41079. lookahead1W(60); // S^WS | '(:' | 'module'
  41080. shift(182); // 'module'
  41081. lookahead1W(90); // URILiteral | S^WS | '(:' | 'namespace'
  41082. if (l1 == 184) // 'namespace'
  41083. {
  41084. shift(184); // 'namespace'
  41085. lookahead1W(248); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41086. whitespace();
  41087. parse_NCName();
  41088. lookahead1W(29); // S^WS | '(:' | '='
  41089. shift(60); // '='
  41090. }
  41091. lookahead1W(15); // URILiteral | S^WS | '(:'
  41092. shift(7); // URILiteral
  41093. lookahead1W(108); // S^WS | '(:' | ';' | 'at'
  41094. if (l1 == 81) // 'at'
  41095. {
  41096. shift(81); // 'at'
  41097. lookahead1W(15); // URILiteral | S^WS | '(:'
  41098. shift(7); // URILiteral
  41099. for (;;)
  41100. {
  41101. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  41102. if (l1 != 41) // ','
  41103. {
  41104. break;
  41105. }
  41106. shift(41); // ','
  41107. lookahead1W(15); // URILiteral | S^WS | '(:'
  41108. shift(7); // URILiteral
  41109. }
  41110. }
  41111. eventHandler.endNonterminal("ModuleImport", e0);
  41112. }
  41113. function parse_NamespaceDecl()
  41114. {
  41115. eventHandler.startNonterminal("NamespaceDecl", e0);
  41116. shift(108); // 'declare'
  41117. lookahead1W(61); // S^WS | '(:' | 'namespace'
  41118. shift(184); // 'namespace'
  41119. lookahead1W(248); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41120. whitespace();
  41121. parse_NCName();
  41122. lookahead1W(29); // S^WS | '(:' | '='
  41123. shift(60); // '='
  41124. lookahead1W(15); // URILiteral | S^WS | '(:'
  41125. shift(7); // URILiteral
  41126. eventHandler.endNonterminal("NamespaceDecl", e0);
  41127. }
  41128. function parse_DefaultNamespaceDecl()
  41129. {
  41130. eventHandler.startNonterminal("DefaultNamespaceDecl", e0);
  41131. shift(108); // 'declare'
  41132. lookahead1W(46); // S^WS | '(:' | 'default'
  41133. shift(109); // 'default'
  41134. lookahead1W(115); // S^WS | '(:' | 'element' | 'function'
  41135. switch (l1)
  41136. {
  41137. case 121: // 'element'
  41138. shift(121); // 'element'
  41139. break;
  41140. default:
  41141. shift(145); // 'function'
  41142. }
  41143. lookahead1W(61); // S^WS | '(:' | 'namespace'
  41144. shift(184); // 'namespace'
  41145. lookahead1W(15); // URILiteral | S^WS | '(:'
  41146. shift(7); // URILiteral
  41147. eventHandler.endNonterminal("DefaultNamespaceDecl", e0);
  41148. }
  41149. function try_DefaultNamespaceDecl()
  41150. {
  41151. shiftT(108); // 'declare'
  41152. lookahead1W(46); // S^WS | '(:' | 'default'
  41153. shiftT(109); // 'default'
  41154. lookahead1W(115); // S^WS | '(:' | 'element' | 'function'
  41155. switch (l1)
  41156. {
  41157. case 121: // 'element'
  41158. shiftT(121); // 'element'
  41159. break;
  41160. default:
  41161. shiftT(145); // 'function'
  41162. }
  41163. lookahead1W(61); // S^WS | '(:' | 'namespace'
  41164. shiftT(184); // 'namespace'
  41165. lookahead1W(15); // URILiteral | S^WS | '(:'
  41166. shiftT(7); // URILiteral
  41167. }
  41168. function parse_FTOptionDecl()
  41169. {
  41170. eventHandler.startNonterminal("FTOptionDecl", e0);
  41171. shift(108); // 'declare'
  41172. lookahead1W(52); // S^WS | '(:' | 'ft-option'
  41173. shift(141); // 'ft-option'
  41174. lookahead1W(81); // S^WS | '(:' | 'using'
  41175. whitespace();
  41176. parse_FTMatchOptions();
  41177. eventHandler.endNonterminal("FTOptionDecl", e0);
  41178. }
  41179. function parse_AnnotatedDecl()
  41180. {
  41181. eventHandler.startNonterminal("AnnotatedDecl", e0);
  41182. shift(108); // 'declare'
  41183. for (;;)
  41184. {
  41185. lookahead1W(170); // S^WS | '%' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  41186. if (l1 != 32 // '%'
  41187. && l1 != 257) // 'updating'
  41188. {
  41189. break;
  41190. }
  41191. switch (l1)
  41192. {
  41193. case 257: // 'updating'
  41194. whitespace();
  41195. parse_CompatibilityAnnotation();
  41196. break;
  41197. default:
  41198. whitespace();
  41199. parse_Annotation();
  41200. }
  41201. }
  41202. switch (l1)
  41203. {
  41204. case 262: // 'variable'
  41205. whitespace();
  41206. parse_VarDecl();
  41207. break;
  41208. case 145: // 'function'
  41209. whitespace();
  41210. parse_FunctionDecl();
  41211. break;
  41212. case 95: // 'collection'
  41213. whitespace();
  41214. parse_CollectionDecl();
  41215. break;
  41216. case 155: // 'index'
  41217. whitespace();
  41218. parse_IndexDecl();
  41219. break;
  41220. default:
  41221. whitespace();
  41222. parse_ICDecl();
  41223. }
  41224. eventHandler.endNonterminal("AnnotatedDecl", e0);
  41225. }
  41226. function parse_CompatibilityAnnotation()
  41227. {
  41228. eventHandler.startNonterminal("CompatibilityAnnotation", e0);
  41229. shift(257); // 'updating'
  41230. eventHandler.endNonterminal("CompatibilityAnnotation", e0);
  41231. }
  41232. function parse_Annotation()
  41233. {
  41234. eventHandler.startNonterminal("Annotation", e0);
  41235. shift(32); // '%'
  41236. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41237. whitespace();
  41238. parse_EQName();
  41239. lookahead1W(171); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  41240. if (l1 == 34) // '('
  41241. {
  41242. shift(34); // '('
  41243. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  41244. whitespace();
  41245. parse_Literal();
  41246. for (;;)
  41247. {
  41248. lookahead1W(101); // S^WS | '(:' | ')' | ','
  41249. if (l1 != 41) // ','
  41250. {
  41251. break;
  41252. }
  41253. shift(41); // ','
  41254. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  41255. whitespace();
  41256. parse_Literal();
  41257. }
  41258. shift(37); // ')'
  41259. }
  41260. eventHandler.endNonterminal("Annotation", e0);
  41261. }
  41262. function try_Annotation()
  41263. {
  41264. shiftT(32); // '%'
  41265. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41266. try_EQName();
  41267. lookahead1W(171); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  41268. if (l1 == 34) // '('
  41269. {
  41270. shiftT(34); // '('
  41271. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  41272. try_Literal();
  41273. for (;;)
  41274. {
  41275. lookahead1W(101); // S^WS | '(:' | ')' | ','
  41276. if (l1 != 41) // ','
  41277. {
  41278. break;
  41279. }
  41280. shiftT(41); // ','
  41281. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  41282. try_Literal();
  41283. }
  41284. shiftT(37); // ')'
  41285. }
  41286. }
  41287. function parse_VarDecl()
  41288. {
  41289. eventHandler.startNonterminal("VarDecl", e0);
  41290. shift(262); // 'variable'
  41291. lookahead1W(21); // S^WS | '$' | '(:'
  41292. shift(31); // '$'
  41293. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41294. whitespace();
  41295. parse_VarName();
  41296. lookahead1W(147); // S^WS | '(:' | ':=' | 'as' | 'external'
  41297. if (l1 == 79) // 'as'
  41298. {
  41299. whitespace();
  41300. parse_TypeDeclaration();
  41301. }
  41302. lookahead1W(106); // S^WS | '(:' | ':=' | 'external'
  41303. switch (l1)
  41304. {
  41305. case 52: // ':='
  41306. shift(52); // ':='
  41307. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41308. whitespace();
  41309. parse_VarValue();
  41310. break;
  41311. default:
  41312. shift(133); // 'external'
  41313. lookahead1W(104); // S^WS | '(:' | ':=' | ';'
  41314. if (l1 == 52) // ':='
  41315. {
  41316. shift(52); // ':='
  41317. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41318. whitespace();
  41319. parse_VarDefaultValue();
  41320. }
  41321. }
  41322. eventHandler.endNonterminal("VarDecl", e0);
  41323. }
  41324. function parse_VarValue()
  41325. {
  41326. eventHandler.startNonterminal("VarValue", e0);
  41327. parse_ExprSingle();
  41328. eventHandler.endNonterminal("VarValue", e0);
  41329. }
  41330. function parse_VarDefaultValue()
  41331. {
  41332. eventHandler.startNonterminal("VarDefaultValue", e0);
  41333. parse_ExprSingle();
  41334. eventHandler.endNonterminal("VarDefaultValue", e0);
  41335. }
  41336. function parse_ContextItemDecl()
  41337. {
  41338. eventHandler.startNonterminal("ContextItemDecl", e0);
  41339. shift(108); // 'declare'
  41340. lookahead1W(43); // S^WS | '(:' | 'context'
  41341. shift(101); // 'context'
  41342. lookahead1W(55); // S^WS | '(:' | 'item'
  41343. shift(165); // 'item'
  41344. lookahead1W(147); // S^WS | '(:' | ':=' | 'as' | 'external'
  41345. if (l1 == 79) // 'as'
  41346. {
  41347. shift(79); // 'as'
  41348. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  41349. whitespace();
  41350. parse_ItemType();
  41351. }
  41352. lookahead1W(106); // S^WS | '(:' | ':=' | 'external'
  41353. switch (l1)
  41354. {
  41355. case 52: // ':='
  41356. shift(52); // ':='
  41357. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41358. whitespace();
  41359. parse_VarValue();
  41360. break;
  41361. default:
  41362. shift(133); // 'external'
  41363. lookahead1W(104); // S^WS | '(:' | ':=' | ';'
  41364. if (l1 == 52) // ':='
  41365. {
  41366. shift(52); // ':='
  41367. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41368. whitespace();
  41369. parse_VarDefaultValue();
  41370. }
  41371. }
  41372. eventHandler.endNonterminal("ContextItemDecl", e0);
  41373. }
  41374. function parse_ParamList()
  41375. {
  41376. eventHandler.startNonterminal("ParamList", e0);
  41377. parse_Param();
  41378. for (;;)
  41379. {
  41380. lookahead1W(101); // S^WS | '(:' | ')' | ','
  41381. if (l1 != 41) // ','
  41382. {
  41383. break;
  41384. }
  41385. shift(41); // ','
  41386. lookahead1W(21); // S^WS | '$' | '(:'
  41387. whitespace();
  41388. parse_Param();
  41389. }
  41390. eventHandler.endNonterminal("ParamList", e0);
  41391. }
  41392. function try_ParamList()
  41393. {
  41394. try_Param();
  41395. for (;;)
  41396. {
  41397. lookahead1W(101); // S^WS | '(:' | ')' | ','
  41398. if (l1 != 41) // ','
  41399. {
  41400. break;
  41401. }
  41402. shiftT(41); // ','
  41403. lookahead1W(21); // S^WS | '$' | '(:'
  41404. try_Param();
  41405. }
  41406. }
  41407. function parse_Param()
  41408. {
  41409. eventHandler.startNonterminal("Param", e0);
  41410. shift(31); // '$'
  41411. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41412. whitespace();
  41413. parse_EQName();
  41414. lookahead1W(143); // S^WS | '(:' | ')' | ',' | 'as'
  41415. if (l1 == 79) // 'as'
  41416. {
  41417. whitespace();
  41418. parse_TypeDeclaration();
  41419. }
  41420. eventHandler.endNonterminal("Param", e0);
  41421. }
  41422. function try_Param()
  41423. {
  41424. shiftT(31); // '$'
  41425. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41426. try_EQName();
  41427. lookahead1W(143); // S^WS | '(:' | ')' | ',' | 'as'
  41428. if (l1 == 79) // 'as'
  41429. {
  41430. try_TypeDeclaration();
  41431. }
  41432. }
  41433. function parse_FunctionBody()
  41434. {
  41435. eventHandler.startNonterminal("FunctionBody", e0);
  41436. parse_EnclosedExpr();
  41437. eventHandler.endNonterminal("FunctionBody", e0);
  41438. }
  41439. function try_FunctionBody()
  41440. {
  41441. try_EnclosedExpr();
  41442. }
  41443. function parse_EnclosedExpr()
  41444. {
  41445. eventHandler.startNonterminal("EnclosedExpr", e0);
  41446. shift(276); // '{'
  41447. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41448. whitespace();
  41449. parse_Expr();
  41450. shift(282); // '}'
  41451. eventHandler.endNonterminal("EnclosedExpr", e0);
  41452. }
  41453. function try_EnclosedExpr()
  41454. {
  41455. shiftT(276); // '{'
  41456. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41457. try_Expr();
  41458. shiftT(282); // '}'
  41459. }
  41460. function parse_OptionDecl()
  41461. {
  41462. eventHandler.startNonterminal("OptionDecl", e0);
  41463. shift(108); // 'declare'
  41464. lookahead1W(66); // S^WS | '(:' | 'option'
  41465. shift(199); // 'option'
  41466. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41467. whitespace();
  41468. parse_EQName();
  41469. lookahead1W(17); // StringLiteral | S^WS | '(:'
  41470. shift(11); // StringLiteral
  41471. eventHandler.endNonterminal("OptionDecl", e0);
  41472. }
  41473. function parse_Expr()
  41474. {
  41475. eventHandler.startNonterminal("Expr", e0);
  41476. parse_ExprSingle();
  41477. for (;;)
  41478. {
  41479. if (l1 != 41) // ','
  41480. {
  41481. break;
  41482. }
  41483. shift(41); // ','
  41484. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41485. whitespace();
  41486. parse_ExprSingle();
  41487. }
  41488. eventHandler.endNonterminal("Expr", e0);
  41489. }
  41490. function try_Expr()
  41491. {
  41492. try_ExprSingle();
  41493. for (;;)
  41494. {
  41495. if (l1 != 41) // ','
  41496. {
  41497. break;
  41498. }
  41499. shiftT(41); // ','
  41500. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41501. try_ExprSingle();
  41502. }
  41503. }
  41504. function parse_FLWORExpr()
  41505. {
  41506. eventHandler.startNonterminal("FLWORExpr", e0);
  41507. parse_InitialClause();
  41508. for (;;)
  41509. {
  41510. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  41511. if (l1 == 220) // 'return'
  41512. {
  41513. break;
  41514. }
  41515. whitespace();
  41516. parse_IntermediateClause();
  41517. }
  41518. whitespace();
  41519. parse_ReturnClause();
  41520. eventHandler.endNonterminal("FLWORExpr", e0);
  41521. }
  41522. function try_FLWORExpr()
  41523. {
  41524. try_InitialClause();
  41525. for (;;)
  41526. {
  41527. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  41528. if (l1 == 220) // 'return'
  41529. {
  41530. break;
  41531. }
  41532. try_IntermediateClause();
  41533. }
  41534. try_ReturnClause();
  41535. }
  41536. function parse_InitialClause()
  41537. {
  41538. eventHandler.startNonterminal("InitialClause", e0);
  41539. switch (l1)
  41540. {
  41541. case 137: // 'for'
  41542. lookahead2W(141); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  41543. break;
  41544. default:
  41545. lk = l1;
  41546. }
  41547. switch (lk)
  41548. {
  41549. case 16009: // 'for' '$'
  41550. parse_ForClause();
  41551. break;
  41552. case 174: // 'let'
  41553. parse_LetClause();
  41554. break;
  41555. default:
  41556. parse_WindowClause();
  41557. }
  41558. eventHandler.endNonterminal("InitialClause", e0);
  41559. }
  41560. function try_InitialClause()
  41561. {
  41562. switch (l1)
  41563. {
  41564. case 137: // 'for'
  41565. lookahead2W(141); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  41566. break;
  41567. default:
  41568. lk = l1;
  41569. }
  41570. switch (lk)
  41571. {
  41572. case 16009: // 'for' '$'
  41573. try_ForClause();
  41574. break;
  41575. case 174: // 'let'
  41576. try_LetClause();
  41577. break;
  41578. default:
  41579. try_WindowClause();
  41580. }
  41581. }
  41582. function parse_IntermediateClause()
  41583. {
  41584. eventHandler.startNonterminal("IntermediateClause", e0);
  41585. switch (l1)
  41586. {
  41587. case 137: // 'for'
  41588. case 174: // 'let'
  41589. parse_InitialClause();
  41590. break;
  41591. case 266: // 'where'
  41592. parse_WhereClause();
  41593. break;
  41594. case 148: // 'group'
  41595. parse_GroupByClause();
  41596. break;
  41597. case 105: // 'count'
  41598. parse_CountClause();
  41599. break;
  41600. default:
  41601. parse_OrderByClause();
  41602. }
  41603. eventHandler.endNonterminal("IntermediateClause", e0);
  41604. }
  41605. function try_IntermediateClause()
  41606. {
  41607. switch (l1)
  41608. {
  41609. case 137: // 'for'
  41610. case 174: // 'let'
  41611. try_InitialClause();
  41612. break;
  41613. case 266: // 'where'
  41614. try_WhereClause();
  41615. break;
  41616. case 148: // 'group'
  41617. try_GroupByClause();
  41618. break;
  41619. case 105: // 'count'
  41620. try_CountClause();
  41621. break;
  41622. default:
  41623. try_OrderByClause();
  41624. }
  41625. }
  41626. function parse_ForClause()
  41627. {
  41628. eventHandler.startNonterminal("ForClause", e0);
  41629. shift(137); // 'for'
  41630. lookahead1W(21); // S^WS | '$' | '(:'
  41631. whitespace();
  41632. parse_ForBinding();
  41633. for (;;)
  41634. {
  41635. if (l1 != 41) // ','
  41636. {
  41637. break;
  41638. }
  41639. shift(41); // ','
  41640. lookahead1W(21); // S^WS | '$' | '(:'
  41641. whitespace();
  41642. parse_ForBinding();
  41643. }
  41644. eventHandler.endNonterminal("ForClause", e0);
  41645. }
  41646. function try_ForClause()
  41647. {
  41648. shiftT(137); // 'for'
  41649. lookahead1W(21); // S^WS | '$' | '(:'
  41650. try_ForBinding();
  41651. for (;;)
  41652. {
  41653. if (l1 != 41) // ','
  41654. {
  41655. break;
  41656. }
  41657. shiftT(41); // ','
  41658. lookahead1W(21); // S^WS | '$' | '(:'
  41659. try_ForBinding();
  41660. }
  41661. }
  41662. function parse_ForBinding()
  41663. {
  41664. eventHandler.startNonterminal("ForBinding", e0);
  41665. shift(31); // '$'
  41666. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41667. whitespace();
  41668. parse_VarName();
  41669. lookahead1W(164); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  41670. if (l1 == 79) // 'as'
  41671. {
  41672. whitespace();
  41673. parse_TypeDeclaration();
  41674. }
  41675. lookahead1W(158); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  41676. if (l1 == 72) // 'allowing'
  41677. {
  41678. whitespace();
  41679. parse_AllowingEmpty();
  41680. }
  41681. lookahead1W(150); // S^WS | '(:' | 'at' | 'in' | 'score'
  41682. if (l1 == 81) // 'at'
  41683. {
  41684. whitespace();
  41685. parse_PositionalVar();
  41686. }
  41687. lookahead1W(122); // S^WS | '(:' | 'in' | 'score'
  41688. if (l1 == 228) // 'score'
  41689. {
  41690. whitespace();
  41691. parse_FTScoreVar();
  41692. }
  41693. lookahead1W(53); // S^WS | '(:' | 'in'
  41694. shift(154); // 'in'
  41695. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41696. whitespace();
  41697. parse_ExprSingle();
  41698. eventHandler.endNonterminal("ForBinding", e0);
  41699. }
  41700. function try_ForBinding()
  41701. {
  41702. shiftT(31); // '$'
  41703. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41704. try_VarName();
  41705. lookahead1W(164); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  41706. if (l1 == 79) // 'as'
  41707. {
  41708. try_TypeDeclaration();
  41709. }
  41710. lookahead1W(158); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  41711. if (l1 == 72) // 'allowing'
  41712. {
  41713. try_AllowingEmpty();
  41714. }
  41715. lookahead1W(150); // S^WS | '(:' | 'at' | 'in' | 'score'
  41716. if (l1 == 81) // 'at'
  41717. {
  41718. try_PositionalVar();
  41719. }
  41720. lookahead1W(122); // S^WS | '(:' | 'in' | 'score'
  41721. if (l1 == 228) // 'score'
  41722. {
  41723. try_FTScoreVar();
  41724. }
  41725. lookahead1W(53); // S^WS | '(:' | 'in'
  41726. shiftT(154); // 'in'
  41727. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41728. try_ExprSingle();
  41729. }
  41730. function parse_AllowingEmpty()
  41731. {
  41732. eventHandler.startNonterminal("AllowingEmpty", e0);
  41733. shift(72); // 'allowing'
  41734. lookahead1W(49); // S^WS | '(:' | 'empty'
  41735. shift(123); // 'empty'
  41736. eventHandler.endNonterminal("AllowingEmpty", e0);
  41737. }
  41738. function try_AllowingEmpty()
  41739. {
  41740. shiftT(72); // 'allowing'
  41741. lookahead1W(49); // S^WS | '(:' | 'empty'
  41742. shiftT(123); // 'empty'
  41743. }
  41744. function parse_PositionalVar()
  41745. {
  41746. eventHandler.startNonterminal("PositionalVar", e0);
  41747. shift(81); // 'at'
  41748. lookahead1W(21); // S^WS | '$' | '(:'
  41749. shift(31); // '$'
  41750. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41751. whitespace();
  41752. parse_VarName();
  41753. eventHandler.endNonterminal("PositionalVar", e0);
  41754. }
  41755. function try_PositionalVar()
  41756. {
  41757. shiftT(81); // 'at'
  41758. lookahead1W(21); // S^WS | '$' | '(:'
  41759. shiftT(31); // '$'
  41760. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41761. try_VarName();
  41762. }
  41763. function parse_FTScoreVar()
  41764. {
  41765. eventHandler.startNonterminal("FTScoreVar", e0);
  41766. shift(228); // 'score'
  41767. lookahead1W(21); // S^WS | '$' | '(:'
  41768. shift(31); // '$'
  41769. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41770. whitespace();
  41771. parse_VarName();
  41772. eventHandler.endNonterminal("FTScoreVar", e0);
  41773. }
  41774. function try_FTScoreVar()
  41775. {
  41776. shiftT(228); // 'score'
  41777. lookahead1W(21); // S^WS | '$' | '(:'
  41778. shiftT(31); // '$'
  41779. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41780. try_VarName();
  41781. }
  41782. function parse_LetClause()
  41783. {
  41784. eventHandler.startNonterminal("LetClause", e0);
  41785. shift(174); // 'let'
  41786. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  41787. whitespace();
  41788. parse_LetBinding();
  41789. for (;;)
  41790. {
  41791. if (l1 != 41) // ','
  41792. {
  41793. break;
  41794. }
  41795. shift(41); // ','
  41796. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  41797. whitespace();
  41798. parse_LetBinding();
  41799. }
  41800. eventHandler.endNonterminal("LetClause", e0);
  41801. }
  41802. function try_LetClause()
  41803. {
  41804. shiftT(174); // 'let'
  41805. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  41806. try_LetBinding();
  41807. for (;;)
  41808. {
  41809. if (l1 != 41) // ','
  41810. {
  41811. break;
  41812. }
  41813. shiftT(41); // ','
  41814. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  41815. try_LetBinding();
  41816. }
  41817. }
  41818. function parse_LetBinding()
  41819. {
  41820. eventHandler.startNonterminal("LetBinding", e0);
  41821. switch (l1)
  41822. {
  41823. case 31: // '$'
  41824. shift(31); // '$'
  41825. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41826. whitespace();
  41827. parse_VarName();
  41828. lookahead1W(105); // S^WS | '(:' | ':=' | 'as'
  41829. if (l1 == 79) // 'as'
  41830. {
  41831. whitespace();
  41832. parse_TypeDeclaration();
  41833. }
  41834. break;
  41835. default:
  41836. parse_FTScoreVar();
  41837. }
  41838. lookahead1W(27); // S^WS | '(:' | ':='
  41839. shift(52); // ':='
  41840. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41841. whitespace();
  41842. parse_ExprSingle();
  41843. eventHandler.endNonterminal("LetBinding", e0);
  41844. }
  41845. function try_LetBinding()
  41846. {
  41847. switch (l1)
  41848. {
  41849. case 31: // '$'
  41850. shiftT(31); // '$'
  41851. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41852. try_VarName();
  41853. lookahead1W(105); // S^WS | '(:' | ':=' | 'as'
  41854. if (l1 == 79) // 'as'
  41855. {
  41856. try_TypeDeclaration();
  41857. }
  41858. break;
  41859. default:
  41860. try_FTScoreVar();
  41861. }
  41862. lookahead1W(27); // S^WS | '(:' | ':='
  41863. shiftT(52); // ':='
  41864. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41865. try_ExprSingle();
  41866. }
  41867. function parse_WindowClause()
  41868. {
  41869. eventHandler.startNonterminal("WindowClause", e0);
  41870. shift(137); // 'for'
  41871. lookahead1W(135); // S^WS | '(:' | 'sliding' | 'tumbling'
  41872. switch (l1)
  41873. {
  41874. case 251: // 'tumbling'
  41875. whitespace();
  41876. parse_TumblingWindowClause();
  41877. break;
  41878. default:
  41879. whitespace();
  41880. parse_SlidingWindowClause();
  41881. }
  41882. eventHandler.endNonterminal("WindowClause", e0);
  41883. }
  41884. function try_WindowClause()
  41885. {
  41886. shiftT(137); // 'for'
  41887. lookahead1W(135); // S^WS | '(:' | 'sliding' | 'tumbling'
  41888. switch (l1)
  41889. {
  41890. case 251: // 'tumbling'
  41891. try_TumblingWindowClause();
  41892. break;
  41893. default:
  41894. try_SlidingWindowClause();
  41895. }
  41896. }
  41897. function parse_TumblingWindowClause()
  41898. {
  41899. eventHandler.startNonterminal("TumblingWindowClause", e0);
  41900. shift(251); // 'tumbling'
  41901. lookahead1W(85); // S^WS | '(:' | 'window'
  41902. shift(269); // 'window'
  41903. lookahead1W(21); // S^WS | '$' | '(:'
  41904. shift(31); // '$'
  41905. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41906. whitespace();
  41907. parse_VarName();
  41908. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  41909. if (l1 == 79) // 'as'
  41910. {
  41911. whitespace();
  41912. parse_TypeDeclaration();
  41913. }
  41914. lookahead1W(53); // S^WS | '(:' | 'in'
  41915. shift(154); // 'in'
  41916. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41917. whitespace();
  41918. parse_ExprSingle();
  41919. whitespace();
  41920. parse_WindowStartCondition();
  41921. if (l1 == 126 // 'end'
  41922. || l1 == 198) // 'only'
  41923. {
  41924. whitespace();
  41925. parse_WindowEndCondition();
  41926. }
  41927. eventHandler.endNonterminal("TumblingWindowClause", e0);
  41928. }
  41929. function try_TumblingWindowClause()
  41930. {
  41931. shiftT(251); // 'tumbling'
  41932. lookahead1W(85); // S^WS | '(:' | 'window'
  41933. shiftT(269); // 'window'
  41934. lookahead1W(21); // S^WS | '$' | '(:'
  41935. shiftT(31); // '$'
  41936. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41937. try_VarName();
  41938. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  41939. if (l1 == 79) // 'as'
  41940. {
  41941. try_TypeDeclaration();
  41942. }
  41943. lookahead1W(53); // S^WS | '(:' | 'in'
  41944. shiftT(154); // 'in'
  41945. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41946. try_ExprSingle();
  41947. try_WindowStartCondition();
  41948. if (l1 == 126 // 'end'
  41949. || l1 == 198) // 'only'
  41950. {
  41951. try_WindowEndCondition();
  41952. }
  41953. }
  41954. function parse_SlidingWindowClause()
  41955. {
  41956. eventHandler.startNonterminal("SlidingWindowClause", e0);
  41957. shift(234); // 'sliding'
  41958. lookahead1W(85); // S^WS | '(:' | 'window'
  41959. shift(269); // 'window'
  41960. lookahead1W(21); // S^WS | '$' | '(:'
  41961. shift(31); // '$'
  41962. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41963. whitespace();
  41964. parse_VarName();
  41965. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  41966. if (l1 == 79) // 'as'
  41967. {
  41968. whitespace();
  41969. parse_TypeDeclaration();
  41970. }
  41971. lookahead1W(53); // S^WS | '(:' | 'in'
  41972. shift(154); // 'in'
  41973. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41974. whitespace();
  41975. parse_ExprSingle();
  41976. whitespace();
  41977. parse_WindowStartCondition();
  41978. whitespace();
  41979. parse_WindowEndCondition();
  41980. eventHandler.endNonterminal("SlidingWindowClause", e0);
  41981. }
  41982. function try_SlidingWindowClause()
  41983. {
  41984. shiftT(234); // 'sliding'
  41985. lookahead1W(85); // S^WS | '(:' | 'window'
  41986. shiftT(269); // 'window'
  41987. lookahead1W(21); // S^WS | '$' | '(:'
  41988. shiftT(31); // '$'
  41989. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  41990. try_VarName();
  41991. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  41992. if (l1 == 79) // 'as'
  41993. {
  41994. try_TypeDeclaration();
  41995. }
  41996. lookahead1W(53); // S^WS | '(:' | 'in'
  41997. shiftT(154); // 'in'
  41998. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  41999. try_ExprSingle();
  42000. try_WindowStartCondition();
  42001. try_WindowEndCondition();
  42002. }
  42003. function parse_WindowStartCondition()
  42004. {
  42005. eventHandler.startNonterminal("WindowStartCondition", e0);
  42006. shift(237); // 'start'
  42007. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  42008. whitespace();
  42009. parse_WindowVars();
  42010. lookahead1W(83); // S^WS | '(:' | 'when'
  42011. shift(265); // 'when'
  42012. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42013. whitespace();
  42014. parse_ExprSingle();
  42015. eventHandler.endNonterminal("WindowStartCondition", e0);
  42016. }
  42017. function try_WindowStartCondition()
  42018. {
  42019. shiftT(237); // 'start'
  42020. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  42021. try_WindowVars();
  42022. lookahead1W(83); // S^WS | '(:' | 'when'
  42023. shiftT(265); // 'when'
  42024. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42025. try_ExprSingle();
  42026. }
  42027. function parse_WindowEndCondition()
  42028. {
  42029. eventHandler.startNonterminal("WindowEndCondition", e0);
  42030. if (l1 == 198) // 'only'
  42031. {
  42032. shift(198); // 'only'
  42033. }
  42034. lookahead1W(50); // S^WS | '(:' | 'end'
  42035. shift(126); // 'end'
  42036. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  42037. whitespace();
  42038. parse_WindowVars();
  42039. lookahead1W(83); // S^WS | '(:' | 'when'
  42040. shift(265); // 'when'
  42041. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42042. whitespace();
  42043. parse_ExprSingle();
  42044. eventHandler.endNonterminal("WindowEndCondition", e0);
  42045. }
  42046. function try_WindowEndCondition()
  42047. {
  42048. if (l1 == 198) // 'only'
  42049. {
  42050. shiftT(198); // 'only'
  42051. }
  42052. lookahead1W(50); // S^WS | '(:' | 'end'
  42053. shiftT(126); // 'end'
  42054. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  42055. try_WindowVars();
  42056. lookahead1W(83); // S^WS | '(:' | 'when'
  42057. shiftT(265); // 'when'
  42058. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42059. try_ExprSingle();
  42060. }
  42061. function parse_WindowVars()
  42062. {
  42063. eventHandler.startNonterminal("WindowVars", e0);
  42064. if (l1 == 31) // '$'
  42065. {
  42066. shift(31); // '$'
  42067. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42068. whitespace();
  42069. parse_CurrentItem();
  42070. }
  42071. lookahead1W(159); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  42072. if (l1 == 81) // 'at'
  42073. {
  42074. whitespace();
  42075. parse_PositionalVar();
  42076. }
  42077. lookahead1W(153); // S^WS | '(:' | 'next' | 'previous' | 'when'
  42078. if (l1 == 215) // 'previous'
  42079. {
  42080. shift(215); // 'previous'
  42081. lookahead1W(21); // S^WS | '$' | '(:'
  42082. shift(31); // '$'
  42083. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42084. whitespace();
  42085. parse_PreviousItem();
  42086. }
  42087. lookahead1W(127); // S^WS | '(:' | 'next' | 'when'
  42088. if (l1 == 187) // 'next'
  42089. {
  42090. shift(187); // 'next'
  42091. lookahead1W(21); // S^WS | '$' | '(:'
  42092. shift(31); // '$'
  42093. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42094. whitespace();
  42095. parse_NextItem();
  42096. }
  42097. eventHandler.endNonterminal("WindowVars", e0);
  42098. }
  42099. function try_WindowVars()
  42100. {
  42101. if (l1 == 31) // '$'
  42102. {
  42103. shiftT(31); // '$'
  42104. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42105. try_CurrentItem();
  42106. }
  42107. lookahead1W(159); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  42108. if (l1 == 81) // 'at'
  42109. {
  42110. try_PositionalVar();
  42111. }
  42112. lookahead1W(153); // S^WS | '(:' | 'next' | 'previous' | 'when'
  42113. if (l1 == 215) // 'previous'
  42114. {
  42115. shiftT(215); // 'previous'
  42116. lookahead1W(21); // S^WS | '$' | '(:'
  42117. shiftT(31); // '$'
  42118. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42119. try_PreviousItem();
  42120. }
  42121. lookahead1W(127); // S^WS | '(:' | 'next' | 'when'
  42122. if (l1 == 187) // 'next'
  42123. {
  42124. shiftT(187); // 'next'
  42125. lookahead1W(21); // S^WS | '$' | '(:'
  42126. shiftT(31); // '$'
  42127. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42128. try_NextItem();
  42129. }
  42130. }
  42131. function parse_CurrentItem()
  42132. {
  42133. eventHandler.startNonterminal("CurrentItem", e0);
  42134. parse_EQName();
  42135. eventHandler.endNonterminal("CurrentItem", e0);
  42136. }
  42137. function try_CurrentItem()
  42138. {
  42139. try_EQName();
  42140. }
  42141. function parse_PreviousItem()
  42142. {
  42143. eventHandler.startNonterminal("PreviousItem", e0);
  42144. parse_EQName();
  42145. eventHandler.endNonterminal("PreviousItem", e0);
  42146. }
  42147. function try_PreviousItem()
  42148. {
  42149. try_EQName();
  42150. }
  42151. function parse_NextItem()
  42152. {
  42153. eventHandler.startNonterminal("NextItem", e0);
  42154. parse_EQName();
  42155. eventHandler.endNonterminal("NextItem", e0);
  42156. }
  42157. function try_NextItem()
  42158. {
  42159. try_EQName();
  42160. }
  42161. function parse_CountClause()
  42162. {
  42163. eventHandler.startNonterminal("CountClause", e0);
  42164. shift(105); // 'count'
  42165. lookahead1W(21); // S^WS | '$' | '(:'
  42166. shift(31); // '$'
  42167. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42168. whitespace();
  42169. parse_VarName();
  42170. eventHandler.endNonterminal("CountClause", e0);
  42171. }
  42172. function try_CountClause()
  42173. {
  42174. shiftT(105); // 'count'
  42175. lookahead1W(21); // S^WS | '$' | '(:'
  42176. shiftT(31); // '$'
  42177. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42178. try_VarName();
  42179. }
  42180. function parse_WhereClause()
  42181. {
  42182. eventHandler.startNonterminal("WhereClause", e0);
  42183. shift(266); // 'where'
  42184. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42185. whitespace();
  42186. parse_ExprSingle();
  42187. eventHandler.endNonterminal("WhereClause", e0);
  42188. }
  42189. function try_WhereClause()
  42190. {
  42191. shiftT(266); // 'where'
  42192. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42193. try_ExprSingle();
  42194. }
  42195. function parse_GroupByClause()
  42196. {
  42197. eventHandler.startNonterminal("GroupByClause", e0);
  42198. shift(148); // 'group'
  42199. lookahead1W(34); // S^WS | '(:' | 'by'
  42200. shift(87); // 'by'
  42201. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42202. whitespace();
  42203. parse_GroupingSpecList();
  42204. eventHandler.endNonterminal("GroupByClause", e0);
  42205. }
  42206. function try_GroupByClause()
  42207. {
  42208. shiftT(148); // 'group'
  42209. lookahead1W(34); // S^WS | '(:' | 'by'
  42210. shiftT(87); // 'by'
  42211. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42212. try_GroupingSpecList();
  42213. }
  42214. function parse_GroupingSpecList()
  42215. {
  42216. eventHandler.startNonterminal("GroupingSpecList", e0);
  42217. parse_GroupingSpec();
  42218. for (;;)
  42219. {
  42220. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  42221. if (l1 != 41) // ','
  42222. {
  42223. break;
  42224. }
  42225. shift(41); // ','
  42226. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42227. whitespace();
  42228. parse_GroupingSpec();
  42229. }
  42230. eventHandler.endNonterminal("GroupingSpecList", e0);
  42231. }
  42232. function try_GroupingSpecList()
  42233. {
  42234. try_GroupingSpec();
  42235. for (;;)
  42236. {
  42237. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  42238. if (l1 != 41) // ','
  42239. {
  42240. break;
  42241. }
  42242. shiftT(41); // ','
  42243. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42244. try_GroupingSpec();
  42245. }
  42246. }
  42247. function parse_GroupingSpec()
  42248. {
  42249. eventHandler.startNonterminal("GroupingSpec", e0);
  42250. switch (l1)
  42251. {
  42252. case 31: // '$'
  42253. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42254. break;
  42255. default:
  42256. lk = l1;
  42257. }
  42258. if (lk == 3103 // '$' EQName^Token
  42259. || lk == 35871 // '$' 'after'
  42260. || lk == 36895 // '$' 'allowing'
  42261. || lk == 37407 // '$' 'ancestor'
  42262. || lk == 37919 // '$' 'ancestor-or-self'
  42263. || lk == 38431 // '$' 'and'
  42264. || lk == 39455 // '$' 'append'
  42265. || lk == 39967 // '$' 'array'
  42266. || lk == 40479 // '$' 'as'
  42267. || lk == 40991 // '$' 'ascending'
  42268. || lk == 41503 // '$' 'at'
  42269. || lk == 42015 // '$' 'attribute'
  42270. || lk == 42527 // '$' 'base-uri'
  42271. || lk == 43039 // '$' 'before'
  42272. || lk == 43551 // '$' 'boundary-space'
  42273. || lk == 44063 // '$' 'break'
  42274. || lk == 45087 // '$' 'case'
  42275. || lk == 45599 // '$' 'cast'
  42276. || lk == 46111 // '$' 'castable'
  42277. || lk == 46623 // '$' 'catch'
  42278. || lk == 47647 // '$' 'child'
  42279. || lk == 48159 // '$' 'collation'
  42280. || lk == 49183 // '$' 'comment'
  42281. || lk == 49695 // '$' 'constraint'
  42282. || lk == 50207 // '$' 'construction'
  42283. || lk == 51743 // '$' 'context'
  42284. || lk == 52255 // '$' 'continue'
  42285. || lk == 52767 // '$' 'copy'
  42286. || lk == 53279 // '$' 'copy-namespaces'
  42287. || lk == 53791 // '$' 'count'
  42288. || lk == 54303 // '$' 'decimal-format'
  42289. || lk == 55327 // '$' 'declare'
  42290. || lk == 55839 // '$' 'default'
  42291. || lk == 56351 // '$' 'delete'
  42292. || lk == 56863 // '$' 'descendant'
  42293. || lk == 57375 // '$' 'descendant-or-self'
  42294. || lk == 57887 // '$' 'descending'
  42295. || lk == 60447 // '$' 'div'
  42296. || lk == 60959 // '$' 'document'
  42297. || lk == 61471 // '$' 'document-node'
  42298. || lk == 61983 // '$' 'element'
  42299. || lk == 62495 // '$' 'else'
  42300. || lk == 63007 // '$' 'empty'
  42301. || lk == 63519 // '$' 'empty-sequence'
  42302. || lk == 64031 // '$' 'encoding'
  42303. || lk == 64543 // '$' 'end'
  42304. || lk == 65567 // '$' 'eq'
  42305. || lk == 66079 // '$' 'every'
  42306. || lk == 67103 // '$' 'except'
  42307. || lk == 67615 // '$' 'exit'
  42308. || lk == 68127 // '$' 'external'
  42309. || lk == 68639 // '$' 'first'
  42310. || lk == 69151 // '$' 'following'
  42311. || lk == 69663 // '$' 'following-sibling'
  42312. || lk == 70175 // '$' 'for'
  42313. || lk == 72223 // '$' 'ft-option'
  42314. || lk == 74271 // '$' 'function'
  42315. || lk == 74783 // '$' 'ge'
  42316. || lk == 75807 // '$' 'group'
  42317. || lk == 76831 // '$' 'gt'
  42318. || lk == 77343 // '$' 'idiv'
  42319. || lk == 77855 // '$' 'if'
  42320. || lk == 78367 // '$' 'import'
  42321. || lk == 78879 // '$' 'in'
  42322. || lk == 79391 // '$' 'index'
  42323. || lk == 81439 // '$' 'insert'
  42324. || lk == 81951 // '$' 'instance'
  42325. || lk == 82463 // '$' 'integrity'
  42326. || lk == 82975 // '$' 'intersect'
  42327. || lk == 83487 // '$' 'into'
  42328. || lk == 83999 // '$' 'is'
  42329. || lk == 84511 // '$' 'item'
  42330. || lk == 85023 // '$' 'json'
  42331. || lk == 85535 // '$' 'json-item'
  42332. || lk == 87071 // '$' 'last'
  42333. || lk == 87583 // '$' 'lax'
  42334. || lk == 88095 // '$' 'le'
  42335. || lk == 89119 // '$' 'let'
  42336. || lk == 90143 // '$' 'loop'
  42337. || lk == 91167 // '$' 'lt'
  42338. || lk == 92191 // '$' 'mod'
  42339. || lk == 92703 // '$' 'modify'
  42340. || lk == 93215 // '$' 'module'
  42341. || lk == 94239 // '$' 'namespace'
  42342. || lk == 94751 // '$' 'namespace-node'
  42343. || lk == 95263 // '$' 'ne'
  42344. || lk == 97823 // '$' 'node'
  42345. || lk == 98335 // '$' 'nodes'
  42346. || lk == 99359 // '$' 'object'
  42347. || lk == 101407 // '$' 'only'
  42348. || lk == 101919 // '$' 'option'
  42349. || lk == 102431 // '$' 'or'
  42350. || lk == 102943 // '$' 'order'
  42351. || lk == 103455 // '$' 'ordered'
  42352. || lk == 103967 // '$' 'ordering'
  42353. || lk == 105503 // '$' 'parent'
  42354. || lk == 108575 // '$' 'preceding'
  42355. || lk == 109087 // '$' 'preceding-sibling'
  42356. || lk == 110623 // '$' 'processing-instruction'
  42357. || lk == 111647 // '$' 'rename'
  42358. || lk == 112159 // '$' 'replace'
  42359. || lk == 112671 // '$' 'return'
  42360. || lk == 113183 // '$' 'returning'
  42361. || lk == 113695 // '$' 'revalidation'
  42362. || lk == 114719 // '$' 'satisfies'
  42363. || lk == 115231 // '$' 'schema'
  42364. || lk == 115743 // '$' 'schema-attribute'
  42365. || lk == 116255 // '$' 'schema-element'
  42366. || lk == 116767 // '$' 'score'
  42367. || lk == 117279 // '$' 'self'
  42368. || lk == 119839 // '$' 'sliding'
  42369. || lk == 120351 // '$' 'some'
  42370. || lk == 120863 // '$' 'stable'
  42371. || lk == 121375 // '$' 'start'
  42372. || lk == 122911 // '$' 'strict'
  42373. || lk == 123935 // '$' 'structured-item'
  42374. || lk == 124447 // '$' 'switch'
  42375. || lk == 124959 // '$' 'text'
  42376. || lk == 127007 // '$' 'to'
  42377. || lk == 127519 // '$' 'treat'
  42378. || lk == 128031 // '$' 'try'
  42379. || lk == 128543 // '$' 'tumbling'
  42380. || lk == 129055 // '$' 'type'
  42381. || lk == 129567 // '$' 'typeswitch'
  42382. || lk == 130079 // '$' 'union'
  42383. || lk == 131103 // '$' 'unordered'
  42384. || lk == 131615 // '$' 'updating'
  42385. || lk == 133151 // '$' 'validate'
  42386. || lk == 133663 // '$' 'value'
  42387. || lk == 134175 // '$' 'variable'
  42388. || lk == 134687 // '$' 'version'
  42389. || lk == 136223 // '$' 'where'
  42390. || lk == 136735 // '$' 'while'
  42391. || lk == 138271 // '$' 'with'
  42392. || lk == 140319) // '$' 'xquery'
  42393. {
  42394. lk = memoized(2, e0);
  42395. if (lk == 0)
  42396. {
  42397. var b0A = b0; var e0A = e0; var l1A = l1;
  42398. var b1A = b1; var e1A = e1; var l2A = l2;
  42399. var b2A = b2; var e2A = e2;
  42400. try
  42401. {
  42402. try_GroupingVariable();
  42403. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  42404. if (l1 == 52 // ':='
  42405. || l1 == 79) // 'as'
  42406. {
  42407. if (l1 == 79) // 'as'
  42408. {
  42409. try_TypeDeclaration();
  42410. }
  42411. lookahead1W(27); // S^WS | '(:' | ':='
  42412. shiftT(52); // ':='
  42413. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42414. try_ExprSingle();
  42415. }
  42416. if (l1 == 94) // 'collation'
  42417. {
  42418. shiftT(94); // 'collation'
  42419. lookahead1W(15); // URILiteral | S^WS | '(:'
  42420. shiftT(7); // URILiteral
  42421. }
  42422. lk = -1;
  42423. }
  42424. catch (p1A)
  42425. {
  42426. lk = -2;
  42427. }
  42428. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  42429. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  42430. b2 = b2A; e2 = e2A; end = e2A; }}
  42431. memoize(2, e0, lk);
  42432. }
  42433. }
  42434. switch (lk)
  42435. {
  42436. case -1:
  42437. parse_GroupingVariable();
  42438. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  42439. if (l1 == 52 // ':='
  42440. || l1 == 79) // 'as'
  42441. {
  42442. if (l1 == 79) // 'as'
  42443. {
  42444. whitespace();
  42445. parse_TypeDeclaration();
  42446. }
  42447. lookahead1W(27); // S^WS | '(:' | ':='
  42448. shift(52); // ':='
  42449. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42450. whitespace();
  42451. parse_ExprSingle();
  42452. }
  42453. if (l1 == 94) // 'collation'
  42454. {
  42455. shift(94); // 'collation'
  42456. lookahead1W(15); // URILiteral | S^WS | '(:'
  42457. shift(7); // URILiteral
  42458. }
  42459. break;
  42460. default:
  42461. parse_ExprSingle();
  42462. }
  42463. eventHandler.endNonterminal("GroupingSpec", e0);
  42464. }
  42465. function try_GroupingSpec()
  42466. {
  42467. switch (l1)
  42468. {
  42469. case 31: // '$'
  42470. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42471. break;
  42472. default:
  42473. lk = l1;
  42474. }
  42475. if (lk == 3103 // '$' EQName^Token
  42476. || lk == 35871 // '$' 'after'
  42477. || lk == 36895 // '$' 'allowing'
  42478. || lk == 37407 // '$' 'ancestor'
  42479. || lk == 37919 // '$' 'ancestor-or-self'
  42480. || lk == 38431 // '$' 'and'
  42481. || lk == 39455 // '$' 'append'
  42482. || lk == 39967 // '$' 'array'
  42483. || lk == 40479 // '$' 'as'
  42484. || lk == 40991 // '$' 'ascending'
  42485. || lk == 41503 // '$' 'at'
  42486. || lk == 42015 // '$' 'attribute'
  42487. || lk == 42527 // '$' 'base-uri'
  42488. || lk == 43039 // '$' 'before'
  42489. || lk == 43551 // '$' 'boundary-space'
  42490. || lk == 44063 // '$' 'break'
  42491. || lk == 45087 // '$' 'case'
  42492. || lk == 45599 // '$' 'cast'
  42493. || lk == 46111 // '$' 'castable'
  42494. || lk == 46623 // '$' 'catch'
  42495. || lk == 47647 // '$' 'child'
  42496. || lk == 48159 // '$' 'collation'
  42497. || lk == 49183 // '$' 'comment'
  42498. || lk == 49695 // '$' 'constraint'
  42499. || lk == 50207 // '$' 'construction'
  42500. || lk == 51743 // '$' 'context'
  42501. || lk == 52255 // '$' 'continue'
  42502. || lk == 52767 // '$' 'copy'
  42503. || lk == 53279 // '$' 'copy-namespaces'
  42504. || lk == 53791 // '$' 'count'
  42505. || lk == 54303 // '$' 'decimal-format'
  42506. || lk == 55327 // '$' 'declare'
  42507. || lk == 55839 // '$' 'default'
  42508. || lk == 56351 // '$' 'delete'
  42509. || lk == 56863 // '$' 'descendant'
  42510. || lk == 57375 // '$' 'descendant-or-self'
  42511. || lk == 57887 // '$' 'descending'
  42512. || lk == 60447 // '$' 'div'
  42513. || lk == 60959 // '$' 'document'
  42514. || lk == 61471 // '$' 'document-node'
  42515. || lk == 61983 // '$' 'element'
  42516. || lk == 62495 // '$' 'else'
  42517. || lk == 63007 // '$' 'empty'
  42518. || lk == 63519 // '$' 'empty-sequence'
  42519. || lk == 64031 // '$' 'encoding'
  42520. || lk == 64543 // '$' 'end'
  42521. || lk == 65567 // '$' 'eq'
  42522. || lk == 66079 // '$' 'every'
  42523. || lk == 67103 // '$' 'except'
  42524. || lk == 67615 // '$' 'exit'
  42525. || lk == 68127 // '$' 'external'
  42526. || lk == 68639 // '$' 'first'
  42527. || lk == 69151 // '$' 'following'
  42528. || lk == 69663 // '$' 'following-sibling'
  42529. || lk == 70175 // '$' 'for'
  42530. || lk == 72223 // '$' 'ft-option'
  42531. || lk == 74271 // '$' 'function'
  42532. || lk == 74783 // '$' 'ge'
  42533. || lk == 75807 // '$' 'group'
  42534. || lk == 76831 // '$' 'gt'
  42535. || lk == 77343 // '$' 'idiv'
  42536. || lk == 77855 // '$' 'if'
  42537. || lk == 78367 // '$' 'import'
  42538. || lk == 78879 // '$' 'in'
  42539. || lk == 79391 // '$' 'index'
  42540. || lk == 81439 // '$' 'insert'
  42541. || lk == 81951 // '$' 'instance'
  42542. || lk == 82463 // '$' 'integrity'
  42543. || lk == 82975 // '$' 'intersect'
  42544. || lk == 83487 // '$' 'into'
  42545. || lk == 83999 // '$' 'is'
  42546. || lk == 84511 // '$' 'item'
  42547. || lk == 85023 // '$' 'json'
  42548. || lk == 85535 // '$' 'json-item'
  42549. || lk == 87071 // '$' 'last'
  42550. || lk == 87583 // '$' 'lax'
  42551. || lk == 88095 // '$' 'le'
  42552. || lk == 89119 // '$' 'let'
  42553. || lk == 90143 // '$' 'loop'
  42554. || lk == 91167 // '$' 'lt'
  42555. || lk == 92191 // '$' 'mod'
  42556. || lk == 92703 // '$' 'modify'
  42557. || lk == 93215 // '$' 'module'
  42558. || lk == 94239 // '$' 'namespace'
  42559. || lk == 94751 // '$' 'namespace-node'
  42560. || lk == 95263 // '$' 'ne'
  42561. || lk == 97823 // '$' 'node'
  42562. || lk == 98335 // '$' 'nodes'
  42563. || lk == 99359 // '$' 'object'
  42564. || lk == 101407 // '$' 'only'
  42565. || lk == 101919 // '$' 'option'
  42566. || lk == 102431 // '$' 'or'
  42567. || lk == 102943 // '$' 'order'
  42568. || lk == 103455 // '$' 'ordered'
  42569. || lk == 103967 // '$' 'ordering'
  42570. || lk == 105503 // '$' 'parent'
  42571. || lk == 108575 // '$' 'preceding'
  42572. || lk == 109087 // '$' 'preceding-sibling'
  42573. || lk == 110623 // '$' 'processing-instruction'
  42574. || lk == 111647 // '$' 'rename'
  42575. || lk == 112159 // '$' 'replace'
  42576. || lk == 112671 // '$' 'return'
  42577. || lk == 113183 // '$' 'returning'
  42578. || lk == 113695 // '$' 'revalidation'
  42579. || lk == 114719 // '$' 'satisfies'
  42580. || lk == 115231 // '$' 'schema'
  42581. || lk == 115743 // '$' 'schema-attribute'
  42582. || lk == 116255 // '$' 'schema-element'
  42583. || lk == 116767 // '$' 'score'
  42584. || lk == 117279 // '$' 'self'
  42585. || lk == 119839 // '$' 'sliding'
  42586. || lk == 120351 // '$' 'some'
  42587. || lk == 120863 // '$' 'stable'
  42588. || lk == 121375 // '$' 'start'
  42589. || lk == 122911 // '$' 'strict'
  42590. || lk == 123935 // '$' 'structured-item'
  42591. || lk == 124447 // '$' 'switch'
  42592. || lk == 124959 // '$' 'text'
  42593. || lk == 127007 // '$' 'to'
  42594. || lk == 127519 // '$' 'treat'
  42595. || lk == 128031 // '$' 'try'
  42596. || lk == 128543 // '$' 'tumbling'
  42597. || lk == 129055 // '$' 'type'
  42598. || lk == 129567 // '$' 'typeswitch'
  42599. || lk == 130079 // '$' 'union'
  42600. || lk == 131103 // '$' 'unordered'
  42601. || lk == 131615 // '$' 'updating'
  42602. || lk == 133151 // '$' 'validate'
  42603. || lk == 133663 // '$' 'value'
  42604. || lk == 134175 // '$' 'variable'
  42605. || lk == 134687 // '$' 'version'
  42606. || lk == 136223 // '$' 'where'
  42607. || lk == 136735 // '$' 'while'
  42608. || lk == 138271 // '$' 'with'
  42609. || lk == 140319) // '$' 'xquery'
  42610. {
  42611. lk = memoized(2, e0);
  42612. if (lk == 0)
  42613. {
  42614. var b0A = b0; var e0A = e0; var l1A = l1;
  42615. var b1A = b1; var e1A = e1; var l2A = l2;
  42616. var b2A = b2; var e2A = e2;
  42617. try
  42618. {
  42619. try_GroupingVariable();
  42620. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  42621. if (l1 == 52 // ':='
  42622. || l1 == 79) // 'as'
  42623. {
  42624. if (l1 == 79) // 'as'
  42625. {
  42626. try_TypeDeclaration();
  42627. }
  42628. lookahead1W(27); // S^WS | '(:' | ':='
  42629. shiftT(52); // ':='
  42630. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42631. try_ExprSingle();
  42632. }
  42633. if (l1 == 94) // 'collation'
  42634. {
  42635. shiftT(94); // 'collation'
  42636. lookahead1W(15); // URILiteral | S^WS | '(:'
  42637. shiftT(7); // URILiteral
  42638. }
  42639. memoize(2, e0A, -1);
  42640. lk = -3;
  42641. }
  42642. catch (p1A)
  42643. {
  42644. lk = -2;
  42645. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  42646. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  42647. b2 = b2A; e2 = e2A; end = e2A; }}
  42648. memoize(2, e0A, -2);
  42649. }
  42650. }
  42651. }
  42652. switch (lk)
  42653. {
  42654. case -1:
  42655. try_GroupingVariable();
  42656. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  42657. if (l1 == 52 // ':='
  42658. || l1 == 79) // 'as'
  42659. {
  42660. if (l1 == 79) // 'as'
  42661. {
  42662. try_TypeDeclaration();
  42663. }
  42664. lookahead1W(27); // S^WS | '(:' | ':='
  42665. shiftT(52); // ':='
  42666. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42667. try_ExprSingle();
  42668. }
  42669. if (l1 == 94) // 'collation'
  42670. {
  42671. shiftT(94); // 'collation'
  42672. lookahead1W(15); // URILiteral | S^WS | '(:'
  42673. shiftT(7); // URILiteral
  42674. }
  42675. break;
  42676. case -3:
  42677. break;
  42678. default:
  42679. try_ExprSingle();
  42680. }
  42681. }
  42682. function parse_GroupingVariable()
  42683. {
  42684. eventHandler.startNonterminal("GroupingVariable", e0);
  42685. shift(31); // '$'
  42686. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42687. whitespace();
  42688. parse_VarName();
  42689. eventHandler.endNonterminal("GroupingVariable", e0);
  42690. }
  42691. function try_GroupingVariable()
  42692. {
  42693. shiftT(31); // '$'
  42694. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42695. try_VarName();
  42696. }
  42697. function parse_OrderByClause()
  42698. {
  42699. eventHandler.startNonterminal("OrderByClause", e0);
  42700. switch (l1)
  42701. {
  42702. case 201: // 'order'
  42703. shift(201); // 'order'
  42704. lookahead1W(34); // S^WS | '(:' | 'by'
  42705. shift(87); // 'by'
  42706. break;
  42707. default:
  42708. shift(236); // 'stable'
  42709. lookahead1W(67); // S^WS | '(:' | 'order'
  42710. shift(201); // 'order'
  42711. lookahead1W(34); // S^WS | '(:' | 'by'
  42712. shift(87); // 'by'
  42713. }
  42714. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42715. whitespace();
  42716. parse_OrderSpecList();
  42717. eventHandler.endNonterminal("OrderByClause", e0);
  42718. }
  42719. function try_OrderByClause()
  42720. {
  42721. switch (l1)
  42722. {
  42723. case 201: // 'order'
  42724. shiftT(201); // 'order'
  42725. lookahead1W(34); // S^WS | '(:' | 'by'
  42726. shiftT(87); // 'by'
  42727. break;
  42728. default:
  42729. shiftT(236); // 'stable'
  42730. lookahead1W(67); // S^WS | '(:' | 'order'
  42731. shiftT(201); // 'order'
  42732. lookahead1W(34); // S^WS | '(:' | 'by'
  42733. shiftT(87); // 'by'
  42734. }
  42735. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42736. try_OrderSpecList();
  42737. }
  42738. function parse_OrderSpecList()
  42739. {
  42740. eventHandler.startNonterminal("OrderSpecList", e0);
  42741. parse_OrderSpec();
  42742. for (;;)
  42743. {
  42744. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  42745. if (l1 != 41) // ','
  42746. {
  42747. break;
  42748. }
  42749. shift(41); // ','
  42750. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42751. whitespace();
  42752. parse_OrderSpec();
  42753. }
  42754. eventHandler.endNonterminal("OrderSpecList", e0);
  42755. }
  42756. function try_OrderSpecList()
  42757. {
  42758. try_OrderSpec();
  42759. for (;;)
  42760. {
  42761. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  42762. if (l1 != 41) // ','
  42763. {
  42764. break;
  42765. }
  42766. shiftT(41); // ','
  42767. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42768. try_OrderSpec();
  42769. }
  42770. }
  42771. function parse_OrderSpec()
  42772. {
  42773. eventHandler.startNonterminal("OrderSpec", e0);
  42774. parse_ExprSingle();
  42775. whitespace();
  42776. parse_OrderModifier();
  42777. eventHandler.endNonterminal("OrderSpec", e0);
  42778. }
  42779. function try_OrderSpec()
  42780. {
  42781. try_ExprSingle();
  42782. try_OrderModifier();
  42783. }
  42784. function parse_OrderModifier()
  42785. {
  42786. eventHandler.startNonterminal("OrderModifier", e0);
  42787. if (l1 == 80 // 'ascending'
  42788. || l1 == 113) // 'descending'
  42789. {
  42790. switch (l1)
  42791. {
  42792. case 80: // 'ascending'
  42793. shift(80); // 'ascending'
  42794. break;
  42795. default:
  42796. shift(113); // 'descending'
  42797. }
  42798. }
  42799. lookahead1W(179); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  42800. if (l1 == 123) // 'empty'
  42801. {
  42802. shift(123); // 'empty'
  42803. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  42804. switch (l1)
  42805. {
  42806. case 147: // 'greatest'
  42807. shift(147); // 'greatest'
  42808. break;
  42809. default:
  42810. shift(173); // 'least'
  42811. }
  42812. }
  42813. lookahead1W(177); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  42814. if (l1 == 94) // 'collation'
  42815. {
  42816. shift(94); // 'collation'
  42817. lookahead1W(15); // URILiteral | S^WS | '(:'
  42818. shift(7); // URILiteral
  42819. }
  42820. eventHandler.endNonterminal("OrderModifier", e0);
  42821. }
  42822. function try_OrderModifier()
  42823. {
  42824. if (l1 == 80 // 'ascending'
  42825. || l1 == 113) // 'descending'
  42826. {
  42827. switch (l1)
  42828. {
  42829. case 80: // 'ascending'
  42830. shiftT(80); // 'ascending'
  42831. break;
  42832. default:
  42833. shiftT(113); // 'descending'
  42834. }
  42835. }
  42836. lookahead1W(179); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  42837. if (l1 == 123) // 'empty'
  42838. {
  42839. shiftT(123); // 'empty'
  42840. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  42841. switch (l1)
  42842. {
  42843. case 147: // 'greatest'
  42844. shiftT(147); // 'greatest'
  42845. break;
  42846. default:
  42847. shiftT(173); // 'least'
  42848. }
  42849. }
  42850. lookahead1W(177); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  42851. if (l1 == 94) // 'collation'
  42852. {
  42853. shiftT(94); // 'collation'
  42854. lookahead1W(15); // URILiteral | S^WS | '(:'
  42855. shiftT(7); // URILiteral
  42856. }
  42857. }
  42858. function parse_ReturnClause()
  42859. {
  42860. eventHandler.startNonterminal("ReturnClause", e0);
  42861. shift(220); // 'return'
  42862. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42863. whitespace();
  42864. parse_ExprSingle();
  42865. eventHandler.endNonterminal("ReturnClause", e0);
  42866. }
  42867. function try_ReturnClause()
  42868. {
  42869. shiftT(220); // 'return'
  42870. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42871. try_ExprSingle();
  42872. }
  42873. function parse_QuantifiedExpr()
  42874. {
  42875. eventHandler.startNonterminal("QuantifiedExpr", e0);
  42876. switch (l1)
  42877. {
  42878. case 235: // 'some'
  42879. shift(235); // 'some'
  42880. break;
  42881. default:
  42882. shift(129); // 'every'
  42883. }
  42884. lookahead1W(21); // S^WS | '$' | '(:'
  42885. whitespace();
  42886. parse_QuantifiedVarDecl();
  42887. for (;;)
  42888. {
  42889. if (l1 != 41) // ','
  42890. {
  42891. break;
  42892. }
  42893. shift(41); // ','
  42894. lookahead1W(21); // S^WS | '$' | '(:'
  42895. whitespace();
  42896. parse_QuantifiedVarDecl();
  42897. }
  42898. shift(224); // 'satisfies'
  42899. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42900. whitespace();
  42901. parse_ExprSingle();
  42902. eventHandler.endNonterminal("QuantifiedExpr", e0);
  42903. }
  42904. function try_QuantifiedExpr()
  42905. {
  42906. switch (l1)
  42907. {
  42908. case 235: // 'some'
  42909. shiftT(235); // 'some'
  42910. break;
  42911. default:
  42912. shiftT(129); // 'every'
  42913. }
  42914. lookahead1W(21); // S^WS | '$' | '(:'
  42915. try_QuantifiedVarDecl();
  42916. for (;;)
  42917. {
  42918. if (l1 != 41) // ','
  42919. {
  42920. break;
  42921. }
  42922. shiftT(41); // ','
  42923. lookahead1W(21); // S^WS | '$' | '(:'
  42924. try_QuantifiedVarDecl();
  42925. }
  42926. shiftT(224); // 'satisfies'
  42927. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42928. try_ExprSingle();
  42929. }
  42930. function parse_QuantifiedVarDecl()
  42931. {
  42932. eventHandler.startNonterminal("QuantifiedVarDecl", e0);
  42933. shift(31); // '$'
  42934. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42935. whitespace();
  42936. parse_VarName();
  42937. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  42938. if (l1 == 79) // 'as'
  42939. {
  42940. whitespace();
  42941. parse_TypeDeclaration();
  42942. }
  42943. lookahead1W(53); // S^WS | '(:' | 'in'
  42944. shift(154); // 'in'
  42945. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42946. whitespace();
  42947. parse_ExprSingle();
  42948. eventHandler.endNonterminal("QuantifiedVarDecl", e0);
  42949. }
  42950. function try_QuantifiedVarDecl()
  42951. {
  42952. shiftT(31); // '$'
  42953. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  42954. try_VarName();
  42955. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  42956. if (l1 == 79) // 'as'
  42957. {
  42958. try_TypeDeclaration();
  42959. }
  42960. lookahead1W(53); // S^WS | '(:' | 'in'
  42961. shiftT(154); // 'in'
  42962. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42963. try_ExprSingle();
  42964. }
  42965. function parse_SwitchExpr()
  42966. {
  42967. eventHandler.startNonterminal("SwitchExpr", e0);
  42968. shift(243); // 'switch'
  42969. lookahead1W(22); // S^WS | '(' | '(:'
  42970. shift(34); // '('
  42971. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42972. whitespace();
  42973. parse_Expr();
  42974. shift(37); // ')'
  42975. for (;;)
  42976. {
  42977. lookahead1W(35); // S^WS | '(:' | 'case'
  42978. whitespace();
  42979. parse_SwitchCaseClause();
  42980. if (l1 != 88) // 'case'
  42981. {
  42982. break;
  42983. }
  42984. }
  42985. shift(109); // 'default'
  42986. lookahead1W(70); // S^WS | '(:' | 'return'
  42987. shift(220); // 'return'
  42988. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42989. whitespace();
  42990. parse_ExprSingle();
  42991. eventHandler.endNonterminal("SwitchExpr", e0);
  42992. }
  42993. function try_SwitchExpr()
  42994. {
  42995. shiftT(243); // 'switch'
  42996. lookahead1W(22); // S^WS | '(' | '(:'
  42997. shiftT(34); // '('
  42998. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  42999. try_Expr();
  43000. shiftT(37); // ')'
  43001. for (;;)
  43002. {
  43003. lookahead1W(35); // S^WS | '(:' | 'case'
  43004. try_SwitchCaseClause();
  43005. if (l1 != 88) // 'case'
  43006. {
  43007. break;
  43008. }
  43009. }
  43010. shiftT(109); // 'default'
  43011. lookahead1W(70); // S^WS | '(:' | 'return'
  43012. shiftT(220); // 'return'
  43013. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43014. try_ExprSingle();
  43015. }
  43016. function parse_SwitchCaseClause()
  43017. {
  43018. eventHandler.startNonterminal("SwitchCaseClause", e0);
  43019. for (;;)
  43020. {
  43021. shift(88); // 'case'
  43022. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43023. whitespace();
  43024. parse_SwitchCaseOperand();
  43025. if (l1 != 88) // 'case'
  43026. {
  43027. break;
  43028. }
  43029. }
  43030. shift(220); // 'return'
  43031. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43032. whitespace();
  43033. parse_ExprSingle();
  43034. eventHandler.endNonterminal("SwitchCaseClause", e0);
  43035. }
  43036. function try_SwitchCaseClause()
  43037. {
  43038. for (;;)
  43039. {
  43040. shiftT(88); // 'case'
  43041. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43042. try_SwitchCaseOperand();
  43043. if (l1 != 88) // 'case'
  43044. {
  43045. break;
  43046. }
  43047. }
  43048. shiftT(220); // 'return'
  43049. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43050. try_ExprSingle();
  43051. }
  43052. function parse_SwitchCaseOperand()
  43053. {
  43054. eventHandler.startNonterminal("SwitchCaseOperand", e0);
  43055. parse_ExprSingle();
  43056. eventHandler.endNonterminal("SwitchCaseOperand", e0);
  43057. }
  43058. function try_SwitchCaseOperand()
  43059. {
  43060. try_ExprSingle();
  43061. }
  43062. function parse_TypeswitchExpr()
  43063. {
  43064. eventHandler.startNonterminal("TypeswitchExpr", e0);
  43065. shift(253); // 'typeswitch'
  43066. lookahead1W(22); // S^WS | '(' | '(:'
  43067. shift(34); // '('
  43068. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43069. whitespace();
  43070. parse_Expr();
  43071. shift(37); // ')'
  43072. for (;;)
  43073. {
  43074. lookahead1W(35); // S^WS | '(:' | 'case'
  43075. whitespace();
  43076. parse_CaseClause();
  43077. if (l1 != 88) // 'case'
  43078. {
  43079. break;
  43080. }
  43081. }
  43082. shift(109); // 'default'
  43083. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  43084. if (l1 == 31) // '$'
  43085. {
  43086. shift(31); // '$'
  43087. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43088. whitespace();
  43089. parse_VarName();
  43090. }
  43091. lookahead1W(70); // S^WS | '(:' | 'return'
  43092. shift(220); // 'return'
  43093. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43094. whitespace();
  43095. parse_ExprSingle();
  43096. eventHandler.endNonterminal("TypeswitchExpr", e0);
  43097. }
  43098. function try_TypeswitchExpr()
  43099. {
  43100. shiftT(253); // 'typeswitch'
  43101. lookahead1W(22); // S^WS | '(' | '(:'
  43102. shiftT(34); // '('
  43103. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43104. try_Expr();
  43105. shiftT(37); // ')'
  43106. for (;;)
  43107. {
  43108. lookahead1W(35); // S^WS | '(:' | 'case'
  43109. try_CaseClause();
  43110. if (l1 != 88) // 'case'
  43111. {
  43112. break;
  43113. }
  43114. }
  43115. shiftT(109); // 'default'
  43116. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  43117. if (l1 == 31) // '$'
  43118. {
  43119. shiftT(31); // '$'
  43120. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43121. try_VarName();
  43122. }
  43123. lookahead1W(70); // S^WS | '(:' | 'return'
  43124. shiftT(220); // 'return'
  43125. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43126. try_ExprSingle();
  43127. }
  43128. function parse_CaseClause()
  43129. {
  43130. eventHandler.startNonterminal("CaseClause", e0);
  43131. shift(88); // 'case'
  43132. lookahead1W(261); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  43133. if (l1 == 31) // '$'
  43134. {
  43135. shift(31); // '$'
  43136. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43137. whitespace();
  43138. parse_VarName();
  43139. lookahead1W(30); // S^WS | '(:' | 'as'
  43140. shift(79); // 'as'
  43141. }
  43142. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43143. whitespace();
  43144. parse_SequenceTypeUnion();
  43145. shift(220); // 'return'
  43146. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43147. whitespace();
  43148. parse_ExprSingle();
  43149. eventHandler.endNonterminal("CaseClause", e0);
  43150. }
  43151. function try_CaseClause()
  43152. {
  43153. shiftT(88); // 'case'
  43154. lookahead1W(261); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  43155. if (l1 == 31) // '$'
  43156. {
  43157. shiftT(31); // '$'
  43158. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43159. try_VarName();
  43160. lookahead1W(30); // S^WS | '(:' | 'as'
  43161. shiftT(79); // 'as'
  43162. }
  43163. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43164. try_SequenceTypeUnion();
  43165. shiftT(220); // 'return'
  43166. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43167. try_ExprSingle();
  43168. }
  43169. function parse_SequenceTypeUnion()
  43170. {
  43171. eventHandler.startNonterminal("SequenceTypeUnion", e0);
  43172. parse_SequenceType();
  43173. for (;;)
  43174. {
  43175. lookahead1W(134); // S^WS | '(:' | 'return' | '|'
  43176. if (l1 != 279) // '|'
  43177. {
  43178. break;
  43179. }
  43180. shift(279); // '|'
  43181. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43182. whitespace();
  43183. parse_SequenceType();
  43184. }
  43185. eventHandler.endNonterminal("SequenceTypeUnion", e0);
  43186. }
  43187. function try_SequenceTypeUnion()
  43188. {
  43189. try_SequenceType();
  43190. for (;;)
  43191. {
  43192. lookahead1W(134); // S^WS | '(:' | 'return' | '|'
  43193. if (l1 != 279) // '|'
  43194. {
  43195. break;
  43196. }
  43197. shiftT(279); // '|'
  43198. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43199. try_SequenceType();
  43200. }
  43201. }
  43202. function parse_IfExpr()
  43203. {
  43204. eventHandler.startNonterminal("IfExpr", e0);
  43205. shift(152); // 'if'
  43206. lookahead1W(22); // S^WS | '(' | '(:'
  43207. shift(34); // '('
  43208. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43209. whitespace();
  43210. parse_Expr();
  43211. shift(37); // ')'
  43212. lookahead1W(77); // S^WS | '(:' | 'then'
  43213. shift(245); // 'then'
  43214. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43215. whitespace();
  43216. parse_ExprSingle();
  43217. shift(122); // 'else'
  43218. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43219. whitespace();
  43220. parse_ExprSingle();
  43221. eventHandler.endNonterminal("IfExpr", e0);
  43222. }
  43223. function try_IfExpr()
  43224. {
  43225. shiftT(152); // 'if'
  43226. lookahead1W(22); // S^WS | '(' | '(:'
  43227. shiftT(34); // '('
  43228. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43229. try_Expr();
  43230. shiftT(37); // ')'
  43231. lookahead1W(77); // S^WS | '(:' | 'then'
  43232. shiftT(245); // 'then'
  43233. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43234. try_ExprSingle();
  43235. shiftT(122); // 'else'
  43236. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43237. try_ExprSingle();
  43238. }
  43239. function parse_TryCatchExpr()
  43240. {
  43241. eventHandler.startNonterminal("TryCatchExpr", e0);
  43242. parse_TryClause();
  43243. for (;;)
  43244. {
  43245. lookahead1W(36); // S^WS | '(:' | 'catch'
  43246. whitespace();
  43247. parse_CatchClause();
  43248. lookahead1W(183); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  43249. if (l1 != 91) // 'catch'
  43250. {
  43251. break;
  43252. }
  43253. }
  43254. eventHandler.endNonterminal("TryCatchExpr", e0);
  43255. }
  43256. function try_TryCatchExpr()
  43257. {
  43258. try_TryClause();
  43259. for (;;)
  43260. {
  43261. lookahead1W(36); // S^WS | '(:' | 'catch'
  43262. try_CatchClause();
  43263. lookahead1W(183); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  43264. if (l1 != 91) // 'catch'
  43265. {
  43266. break;
  43267. }
  43268. }
  43269. }
  43270. function parse_TryClause()
  43271. {
  43272. eventHandler.startNonterminal("TryClause", e0);
  43273. shift(250); // 'try'
  43274. lookahead1W(87); // S^WS | '(:' | '{'
  43275. shift(276); // '{'
  43276. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43277. whitespace();
  43278. parse_TryTargetExpr();
  43279. shift(282); // '}'
  43280. eventHandler.endNonterminal("TryClause", e0);
  43281. }
  43282. function try_TryClause()
  43283. {
  43284. shiftT(250); // 'try'
  43285. lookahead1W(87); // S^WS | '(:' | '{'
  43286. shiftT(276); // '{'
  43287. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43288. try_TryTargetExpr();
  43289. shiftT(282); // '}'
  43290. }
  43291. function parse_TryTargetExpr()
  43292. {
  43293. eventHandler.startNonterminal("TryTargetExpr", e0);
  43294. parse_Expr();
  43295. eventHandler.endNonterminal("TryTargetExpr", e0);
  43296. }
  43297. function try_TryTargetExpr()
  43298. {
  43299. try_Expr();
  43300. }
  43301. function parse_CatchClause()
  43302. {
  43303. eventHandler.startNonterminal("CatchClause", e0);
  43304. shift(91); // 'catch'
  43305. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43306. whitespace();
  43307. parse_CatchErrorList();
  43308. shift(276); // '{'
  43309. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43310. whitespace();
  43311. parse_Expr();
  43312. shift(282); // '}'
  43313. eventHandler.endNonterminal("CatchClause", e0);
  43314. }
  43315. function try_CatchClause()
  43316. {
  43317. shiftT(91); // 'catch'
  43318. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43319. try_CatchErrorList();
  43320. shiftT(276); // '{'
  43321. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43322. try_Expr();
  43323. shiftT(282); // '}'
  43324. }
  43325. function parse_CatchErrorList()
  43326. {
  43327. eventHandler.startNonterminal("CatchErrorList", e0);
  43328. parse_NameTest();
  43329. for (;;)
  43330. {
  43331. lookahead1W(136); // S^WS | '(:' | '{' | '|'
  43332. if (l1 != 279) // '|'
  43333. {
  43334. break;
  43335. }
  43336. shift(279); // '|'
  43337. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43338. whitespace();
  43339. parse_NameTest();
  43340. }
  43341. eventHandler.endNonterminal("CatchErrorList", e0);
  43342. }
  43343. function try_CatchErrorList()
  43344. {
  43345. try_NameTest();
  43346. for (;;)
  43347. {
  43348. lookahead1W(136); // S^WS | '(:' | '{' | '|'
  43349. if (l1 != 279) // '|'
  43350. {
  43351. break;
  43352. }
  43353. shiftT(279); // '|'
  43354. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43355. try_NameTest();
  43356. }
  43357. }
  43358. function parse_OrExpr()
  43359. {
  43360. eventHandler.startNonterminal("OrExpr", e0);
  43361. parse_AndExpr();
  43362. for (;;)
  43363. {
  43364. if (l1 != 200) // 'or'
  43365. {
  43366. break;
  43367. }
  43368. shift(200); // 'or'
  43369. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43370. whitespace();
  43371. parse_AndExpr();
  43372. }
  43373. eventHandler.endNonterminal("OrExpr", e0);
  43374. }
  43375. function try_OrExpr()
  43376. {
  43377. try_AndExpr();
  43378. for (;;)
  43379. {
  43380. if (l1 != 200) // 'or'
  43381. {
  43382. break;
  43383. }
  43384. shiftT(200); // 'or'
  43385. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43386. try_AndExpr();
  43387. }
  43388. }
  43389. function parse_AndExpr()
  43390. {
  43391. eventHandler.startNonterminal("AndExpr", e0);
  43392. parse_ComparisonExpr();
  43393. for (;;)
  43394. {
  43395. if (l1 != 75) // 'and'
  43396. {
  43397. break;
  43398. }
  43399. shift(75); // 'and'
  43400. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43401. whitespace();
  43402. parse_ComparisonExpr();
  43403. }
  43404. eventHandler.endNonterminal("AndExpr", e0);
  43405. }
  43406. function try_AndExpr()
  43407. {
  43408. try_ComparisonExpr();
  43409. for (;;)
  43410. {
  43411. if (l1 != 75) // 'and'
  43412. {
  43413. break;
  43414. }
  43415. shiftT(75); // 'and'
  43416. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43417. try_ComparisonExpr();
  43418. }
  43419. }
  43420. function parse_ComparisonExpr()
  43421. {
  43422. eventHandler.startNonterminal("ComparisonExpr", e0);
  43423. parse_FTContainsExpr();
  43424. if (l1 == 27 // '!='
  43425. || l1 == 54 // '<'
  43426. || l1 == 57 // '<<'
  43427. || l1 == 58 // '<='
  43428. || l1 == 60 // '='
  43429. || l1 == 61 // '>'
  43430. || l1 == 62 // '>='
  43431. || l1 == 63 // '>>'
  43432. || l1 == 128 // 'eq'
  43433. || l1 == 146 // 'ge'
  43434. || l1 == 150 // 'gt'
  43435. || l1 == 164 // 'is'
  43436. || l1 == 172 // 'le'
  43437. || l1 == 178 // 'lt'
  43438. || l1 == 186) // 'ne'
  43439. {
  43440. switch (l1)
  43441. {
  43442. case 128: // 'eq'
  43443. case 146: // 'ge'
  43444. case 150: // 'gt'
  43445. case 172: // 'le'
  43446. case 178: // 'lt'
  43447. case 186: // 'ne'
  43448. whitespace();
  43449. parse_ValueComp();
  43450. break;
  43451. case 57: // '<<'
  43452. case 63: // '>>'
  43453. case 164: // 'is'
  43454. whitespace();
  43455. parse_NodeComp();
  43456. break;
  43457. default:
  43458. whitespace();
  43459. parse_GeneralComp();
  43460. }
  43461. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43462. whitespace();
  43463. parse_FTContainsExpr();
  43464. }
  43465. eventHandler.endNonterminal("ComparisonExpr", e0);
  43466. }
  43467. function try_ComparisonExpr()
  43468. {
  43469. try_FTContainsExpr();
  43470. if (l1 == 27 // '!='
  43471. || l1 == 54 // '<'
  43472. || l1 == 57 // '<<'
  43473. || l1 == 58 // '<='
  43474. || l1 == 60 // '='
  43475. || l1 == 61 // '>'
  43476. || l1 == 62 // '>='
  43477. || l1 == 63 // '>>'
  43478. || l1 == 128 // 'eq'
  43479. || l1 == 146 // 'ge'
  43480. || l1 == 150 // 'gt'
  43481. || l1 == 164 // 'is'
  43482. || l1 == 172 // 'le'
  43483. || l1 == 178 // 'lt'
  43484. || l1 == 186) // 'ne'
  43485. {
  43486. switch (l1)
  43487. {
  43488. case 128: // 'eq'
  43489. case 146: // 'ge'
  43490. case 150: // 'gt'
  43491. case 172: // 'le'
  43492. case 178: // 'lt'
  43493. case 186: // 'ne'
  43494. try_ValueComp();
  43495. break;
  43496. case 57: // '<<'
  43497. case 63: // '>>'
  43498. case 164: // 'is'
  43499. try_NodeComp();
  43500. break;
  43501. default:
  43502. try_GeneralComp();
  43503. }
  43504. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43505. try_FTContainsExpr();
  43506. }
  43507. }
  43508. function parse_FTContainsExpr()
  43509. {
  43510. eventHandler.startNonterminal("FTContainsExpr", e0);
  43511. parse_StringConcatExpr();
  43512. if (l1 == 99) // 'contains'
  43513. {
  43514. shift(99); // 'contains'
  43515. lookahead1W(76); // S^WS | '(:' | 'text'
  43516. shift(244); // 'text'
  43517. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  43518. whitespace();
  43519. parse_FTSelection();
  43520. if (l1 == 271) // 'without'
  43521. {
  43522. whitespace();
  43523. parse_FTIgnoreOption();
  43524. }
  43525. }
  43526. eventHandler.endNonterminal("FTContainsExpr", e0);
  43527. }
  43528. function try_FTContainsExpr()
  43529. {
  43530. try_StringConcatExpr();
  43531. if (l1 == 99) // 'contains'
  43532. {
  43533. shiftT(99); // 'contains'
  43534. lookahead1W(76); // S^WS | '(:' | 'text'
  43535. shiftT(244); // 'text'
  43536. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  43537. try_FTSelection();
  43538. if (l1 == 271) // 'without'
  43539. {
  43540. try_FTIgnoreOption();
  43541. }
  43542. }
  43543. }
  43544. function parse_StringConcatExpr()
  43545. {
  43546. eventHandler.startNonterminal("StringConcatExpr", e0);
  43547. parse_RangeExpr();
  43548. for (;;)
  43549. {
  43550. if (l1 != 280) // '||'
  43551. {
  43552. break;
  43553. }
  43554. shift(280); // '||'
  43555. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43556. whitespace();
  43557. parse_RangeExpr();
  43558. }
  43559. eventHandler.endNonterminal("StringConcatExpr", e0);
  43560. }
  43561. function try_StringConcatExpr()
  43562. {
  43563. try_RangeExpr();
  43564. for (;;)
  43565. {
  43566. if (l1 != 280) // '||'
  43567. {
  43568. break;
  43569. }
  43570. shiftT(280); // '||'
  43571. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43572. try_RangeExpr();
  43573. }
  43574. }
  43575. function parse_RangeExpr()
  43576. {
  43577. eventHandler.startNonterminal("RangeExpr", e0);
  43578. parse_AdditiveExpr();
  43579. if (l1 == 248) // 'to'
  43580. {
  43581. shift(248); // 'to'
  43582. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43583. whitespace();
  43584. parse_AdditiveExpr();
  43585. }
  43586. eventHandler.endNonterminal("RangeExpr", e0);
  43587. }
  43588. function try_RangeExpr()
  43589. {
  43590. try_AdditiveExpr();
  43591. if (l1 == 248) // 'to'
  43592. {
  43593. shiftT(248); // 'to'
  43594. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43595. try_AdditiveExpr();
  43596. }
  43597. }
  43598. function parse_AdditiveExpr()
  43599. {
  43600. eventHandler.startNonterminal("AdditiveExpr", e0);
  43601. parse_MultiplicativeExpr();
  43602. for (;;)
  43603. {
  43604. if (l1 != 40 // '+'
  43605. && l1 != 42) // '-'
  43606. {
  43607. break;
  43608. }
  43609. switch (l1)
  43610. {
  43611. case 40: // '+'
  43612. shift(40); // '+'
  43613. break;
  43614. default:
  43615. shift(42); // '-'
  43616. }
  43617. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43618. whitespace();
  43619. parse_MultiplicativeExpr();
  43620. }
  43621. eventHandler.endNonterminal("AdditiveExpr", e0);
  43622. }
  43623. function try_AdditiveExpr()
  43624. {
  43625. try_MultiplicativeExpr();
  43626. for (;;)
  43627. {
  43628. if (l1 != 40 // '+'
  43629. && l1 != 42) // '-'
  43630. {
  43631. break;
  43632. }
  43633. switch (l1)
  43634. {
  43635. case 40: // '+'
  43636. shiftT(40); // '+'
  43637. break;
  43638. default:
  43639. shiftT(42); // '-'
  43640. }
  43641. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43642. try_MultiplicativeExpr();
  43643. }
  43644. }
  43645. function parse_MultiplicativeExpr()
  43646. {
  43647. eventHandler.startNonterminal("MultiplicativeExpr", e0);
  43648. parse_UnionExpr();
  43649. for (;;)
  43650. {
  43651. if (l1 != 38 // '*'
  43652. && l1 != 118 // 'div'
  43653. && l1 != 151 // 'idiv'
  43654. && l1 != 180) // 'mod'
  43655. {
  43656. break;
  43657. }
  43658. switch (l1)
  43659. {
  43660. case 38: // '*'
  43661. shift(38); // '*'
  43662. break;
  43663. case 118: // 'div'
  43664. shift(118); // 'div'
  43665. break;
  43666. case 151: // 'idiv'
  43667. shift(151); // 'idiv'
  43668. break;
  43669. default:
  43670. shift(180); // 'mod'
  43671. }
  43672. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43673. whitespace();
  43674. parse_UnionExpr();
  43675. }
  43676. eventHandler.endNonterminal("MultiplicativeExpr", e0);
  43677. }
  43678. function try_MultiplicativeExpr()
  43679. {
  43680. try_UnionExpr();
  43681. for (;;)
  43682. {
  43683. if (l1 != 38 // '*'
  43684. && l1 != 118 // 'div'
  43685. && l1 != 151 // 'idiv'
  43686. && l1 != 180) // 'mod'
  43687. {
  43688. break;
  43689. }
  43690. switch (l1)
  43691. {
  43692. case 38: // '*'
  43693. shiftT(38); // '*'
  43694. break;
  43695. case 118: // 'div'
  43696. shiftT(118); // 'div'
  43697. break;
  43698. case 151: // 'idiv'
  43699. shiftT(151); // 'idiv'
  43700. break;
  43701. default:
  43702. shiftT(180); // 'mod'
  43703. }
  43704. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43705. try_UnionExpr();
  43706. }
  43707. }
  43708. function parse_UnionExpr()
  43709. {
  43710. eventHandler.startNonterminal("UnionExpr", e0);
  43711. parse_IntersectExceptExpr();
  43712. for (;;)
  43713. {
  43714. if (l1 != 254 // 'union'
  43715. && l1 != 279) // '|'
  43716. {
  43717. break;
  43718. }
  43719. switch (l1)
  43720. {
  43721. case 254: // 'union'
  43722. shift(254); // 'union'
  43723. break;
  43724. default:
  43725. shift(279); // '|'
  43726. }
  43727. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43728. whitespace();
  43729. parse_IntersectExceptExpr();
  43730. }
  43731. eventHandler.endNonterminal("UnionExpr", e0);
  43732. }
  43733. function try_UnionExpr()
  43734. {
  43735. try_IntersectExceptExpr();
  43736. for (;;)
  43737. {
  43738. if (l1 != 254 // 'union'
  43739. && l1 != 279) // '|'
  43740. {
  43741. break;
  43742. }
  43743. switch (l1)
  43744. {
  43745. case 254: // 'union'
  43746. shiftT(254); // 'union'
  43747. break;
  43748. default:
  43749. shiftT(279); // '|'
  43750. }
  43751. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43752. try_IntersectExceptExpr();
  43753. }
  43754. }
  43755. function parse_IntersectExceptExpr()
  43756. {
  43757. eventHandler.startNonterminal("IntersectExceptExpr", e0);
  43758. parse_InstanceofExpr();
  43759. for (;;)
  43760. {
  43761. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43762. if (l1 != 131 // 'except'
  43763. && l1 != 162) // 'intersect'
  43764. {
  43765. break;
  43766. }
  43767. switch (l1)
  43768. {
  43769. case 162: // 'intersect'
  43770. shift(162); // 'intersect'
  43771. break;
  43772. default:
  43773. shift(131); // 'except'
  43774. }
  43775. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43776. whitespace();
  43777. parse_InstanceofExpr();
  43778. }
  43779. eventHandler.endNonterminal("IntersectExceptExpr", e0);
  43780. }
  43781. function try_IntersectExceptExpr()
  43782. {
  43783. try_InstanceofExpr();
  43784. for (;;)
  43785. {
  43786. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43787. if (l1 != 131 // 'except'
  43788. && l1 != 162) // 'intersect'
  43789. {
  43790. break;
  43791. }
  43792. switch (l1)
  43793. {
  43794. case 162: // 'intersect'
  43795. shiftT(162); // 'intersect'
  43796. break;
  43797. default:
  43798. shiftT(131); // 'except'
  43799. }
  43800. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43801. try_InstanceofExpr();
  43802. }
  43803. }
  43804. function parse_InstanceofExpr()
  43805. {
  43806. eventHandler.startNonterminal("InstanceofExpr", e0);
  43807. parse_TreatExpr();
  43808. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43809. if (l1 == 160) // 'instance'
  43810. {
  43811. shift(160); // 'instance'
  43812. lookahead1W(64); // S^WS | '(:' | 'of'
  43813. shift(196); // 'of'
  43814. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43815. whitespace();
  43816. parse_SequenceType();
  43817. }
  43818. eventHandler.endNonterminal("InstanceofExpr", e0);
  43819. }
  43820. function try_InstanceofExpr()
  43821. {
  43822. try_TreatExpr();
  43823. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43824. if (l1 == 160) // 'instance'
  43825. {
  43826. shiftT(160); // 'instance'
  43827. lookahead1W(64); // S^WS | '(:' | 'of'
  43828. shiftT(196); // 'of'
  43829. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43830. try_SequenceType();
  43831. }
  43832. }
  43833. function parse_TreatExpr()
  43834. {
  43835. eventHandler.startNonterminal("TreatExpr", e0);
  43836. parse_CastableExpr();
  43837. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43838. if (l1 == 249) // 'treat'
  43839. {
  43840. shift(249); // 'treat'
  43841. lookahead1W(30); // S^WS | '(:' | 'as'
  43842. shift(79); // 'as'
  43843. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43844. whitespace();
  43845. parse_SequenceType();
  43846. }
  43847. eventHandler.endNonterminal("TreatExpr", e0);
  43848. }
  43849. function try_TreatExpr()
  43850. {
  43851. try_CastableExpr();
  43852. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43853. if (l1 == 249) // 'treat'
  43854. {
  43855. shiftT(249); // 'treat'
  43856. lookahead1W(30); // S^WS | '(:' | 'as'
  43857. shiftT(79); // 'as'
  43858. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  43859. try_SequenceType();
  43860. }
  43861. }
  43862. function parse_CastableExpr()
  43863. {
  43864. eventHandler.startNonterminal("CastableExpr", e0);
  43865. parse_CastExpr();
  43866. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43867. if (l1 == 90) // 'castable'
  43868. {
  43869. shift(90); // 'castable'
  43870. lookahead1W(30); // S^WS | '(:' | 'as'
  43871. shift(79); // 'as'
  43872. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43873. whitespace();
  43874. parse_SingleType();
  43875. }
  43876. eventHandler.endNonterminal("CastableExpr", e0);
  43877. }
  43878. function try_CastableExpr()
  43879. {
  43880. try_CastExpr();
  43881. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43882. if (l1 == 90) // 'castable'
  43883. {
  43884. shiftT(90); // 'castable'
  43885. lookahead1W(30); // S^WS | '(:' | 'as'
  43886. shiftT(79); // 'as'
  43887. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43888. try_SingleType();
  43889. }
  43890. }
  43891. function parse_CastExpr()
  43892. {
  43893. eventHandler.startNonterminal("CastExpr", e0);
  43894. parse_UnaryExpr();
  43895. lookahead1W(227); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43896. if (l1 == 89) // 'cast'
  43897. {
  43898. shift(89); // 'cast'
  43899. lookahead1W(30); // S^WS | '(:' | 'as'
  43900. shift(79); // 'as'
  43901. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43902. whitespace();
  43903. parse_SingleType();
  43904. }
  43905. eventHandler.endNonterminal("CastExpr", e0);
  43906. }
  43907. function try_CastExpr()
  43908. {
  43909. try_UnaryExpr();
  43910. lookahead1W(227); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  43911. if (l1 == 89) // 'cast'
  43912. {
  43913. shiftT(89); // 'cast'
  43914. lookahead1W(30); // S^WS | '(:' | 'as'
  43915. shiftT(79); // 'as'
  43916. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  43917. try_SingleType();
  43918. }
  43919. }
  43920. function parse_UnaryExpr()
  43921. {
  43922. eventHandler.startNonterminal("UnaryExpr", e0);
  43923. for (;;)
  43924. {
  43925. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43926. if (l1 != 40 // '+'
  43927. && l1 != 42) // '-'
  43928. {
  43929. break;
  43930. }
  43931. switch (l1)
  43932. {
  43933. case 42: // '-'
  43934. shift(42); // '-'
  43935. break;
  43936. default:
  43937. shift(40); // '+'
  43938. }
  43939. }
  43940. whitespace();
  43941. parse_ValueExpr();
  43942. eventHandler.endNonterminal("UnaryExpr", e0);
  43943. }
  43944. function try_UnaryExpr()
  43945. {
  43946. for (;;)
  43947. {
  43948. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  43949. if (l1 != 40 // '+'
  43950. && l1 != 42) // '-'
  43951. {
  43952. break;
  43953. }
  43954. switch (l1)
  43955. {
  43956. case 42: // '-'
  43957. shiftT(42); // '-'
  43958. break;
  43959. default:
  43960. shiftT(40); // '+'
  43961. }
  43962. }
  43963. try_ValueExpr();
  43964. }
  43965. function parse_ValueExpr()
  43966. {
  43967. eventHandler.startNonterminal("ValueExpr", e0);
  43968. switch (l1)
  43969. {
  43970. case 260: // 'validate'
  43971. lookahead2W(247); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  43972. break;
  43973. default:
  43974. lk = l1;
  43975. }
  43976. switch (lk)
  43977. {
  43978. case 87812: // 'validate' 'lax'
  43979. case 123140: // 'validate' 'strict'
  43980. case 129284: // 'validate' 'type'
  43981. case 141572: // 'validate' '{'
  43982. parse_ValidateExpr();
  43983. break;
  43984. case 35: // '(#'
  43985. parse_ExtensionExpr();
  43986. break;
  43987. default:
  43988. parse_SimpleMapExpr();
  43989. }
  43990. eventHandler.endNonterminal("ValueExpr", e0);
  43991. }
  43992. function try_ValueExpr()
  43993. {
  43994. switch (l1)
  43995. {
  43996. case 260: // 'validate'
  43997. lookahead2W(247); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  43998. break;
  43999. default:
  44000. lk = l1;
  44001. }
  44002. switch (lk)
  44003. {
  44004. case 87812: // 'validate' 'lax'
  44005. case 123140: // 'validate' 'strict'
  44006. case 129284: // 'validate' 'type'
  44007. case 141572: // 'validate' '{'
  44008. try_ValidateExpr();
  44009. break;
  44010. case 35: // '(#'
  44011. try_ExtensionExpr();
  44012. break;
  44013. default:
  44014. try_SimpleMapExpr();
  44015. }
  44016. }
  44017. function parse_SimpleMapExpr()
  44018. {
  44019. eventHandler.startNonterminal("SimpleMapExpr", e0);
  44020. parse_PathExpr();
  44021. for (;;)
  44022. {
  44023. if (l1 != 26) // '!'
  44024. {
  44025. break;
  44026. }
  44027. shift(26); // '!'
  44028. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44029. whitespace();
  44030. parse_PathExpr();
  44031. }
  44032. eventHandler.endNonterminal("SimpleMapExpr", e0);
  44033. }
  44034. function try_SimpleMapExpr()
  44035. {
  44036. try_PathExpr();
  44037. for (;;)
  44038. {
  44039. if (l1 != 26) // '!'
  44040. {
  44041. break;
  44042. }
  44043. shiftT(26); // '!'
  44044. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44045. try_PathExpr();
  44046. }
  44047. }
  44048. function parse_GeneralComp()
  44049. {
  44050. eventHandler.startNonterminal("GeneralComp", e0);
  44051. switch (l1)
  44052. {
  44053. case 60: // '='
  44054. shift(60); // '='
  44055. break;
  44056. case 27: // '!='
  44057. shift(27); // '!='
  44058. break;
  44059. case 54: // '<'
  44060. shift(54); // '<'
  44061. break;
  44062. case 58: // '<='
  44063. shift(58); // '<='
  44064. break;
  44065. case 61: // '>'
  44066. shift(61); // '>'
  44067. break;
  44068. default:
  44069. shift(62); // '>='
  44070. }
  44071. eventHandler.endNonterminal("GeneralComp", e0);
  44072. }
  44073. function try_GeneralComp()
  44074. {
  44075. switch (l1)
  44076. {
  44077. case 60: // '='
  44078. shiftT(60); // '='
  44079. break;
  44080. case 27: // '!='
  44081. shiftT(27); // '!='
  44082. break;
  44083. case 54: // '<'
  44084. shiftT(54); // '<'
  44085. break;
  44086. case 58: // '<='
  44087. shiftT(58); // '<='
  44088. break;
  44089. case 61: // '>'
  44090. shiftT(61); // '>'
  44091. break;
  44092. default:
  44093. shiftT(62); // '>='
  44094. }
  44095. }
  44096. function parse_ValueComp()
  44097. {
  44098. eventHandler.startNonterminal("ValueComp", e0);
  44099. switch (l1)
  44100. {
  44101. case 128: // 'eq'
  44102. shift(128); // 'eq'
  44103. break;
  44104. case 186: // 'ne'
  44105. shift(186); // 'ne'
  44106. break;
  44107. case 178: // 'lt'
  44108. shift(178); // 'lt'
  44109. break;
  44110. case 172: // 'le'
  44111. shift(172); // 'le'
  44112. break;
  44113. case 150: // 'gt'
  44114. shift(150); // 'gt'
  44115. break;
  44116. default:
  44117. shift(146); // 'ge'
  44118. }
  44119. eventHandler.endNonterminal("ValueComp", e0);
  44120. }
  44121. function try_ValueComp()
  44122. {
  44123. switch (l1)
  44124. {
  44125. case 128: // 'eq'
  44126. shiftT(128); // 'eq'
  44127. break;
  44128. case 186: // 'ne'
  44129. shiftT(186); // 'ne'
  44130. break;
  44131. case 178: // 'lt'
  44132. shiftT(178); // 'lt'
  44133. break;
  44134. case 172: // 'le'
  44135. shiftT(172); // 'le'
  44136. break;
  44137. case 150: // 'gt'
  44138. shiftT(150); // 'gt'
  44139. break;
  44140. default:
  44141. shiftT(146); // 'ge'
  44142. }
  44143. }
  44144. function parse_NodeComp()
  44145. {
  44146. eventHandler.startNonterminal("NodeComp", e0);
  44147. switch (l1)
  44148. {
  44149. case 164: // 'is'
  44150. shift(164); // 'is'
  44151. break;
  44152. case 57: // '<<'
  44153. shift(57); // '<<'
  44154. break;
  44155. default:
  44156. shift(63); // '>>'
  44157. }
  44158. eventHandler.endNonterminal("NodeComp", e0);
  44159. }
  44160. function try_NodeComp()
  44161. {
  44162. switch (l1)
  44163. {
  44164. case 164: // 'is'
  44165. shiftT(164); // 'is'
  44166. break;
  44167. case 57: // '<<'
  44168. shiftT(57); // '<<'
  44169. break;
  44170. default:
  44171. shiftT(63); // '>>'
  44172. }
  44173. }
  44174. function parse_ValidateExpr()
  44175. {
  44176. eventHandler.startNonterminal("ValidateExpr", e0);
  44177. shift(260); // 'validate'
  44178. lookahead1W(160); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  44179. if (l1 != 276) // '{'
  44180. {
  44181. switch (l1)
  44182. {
  44183. case 252: // 'type'
  44184. shift(252); // 'type'
  44185. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  44186. whitespace();
  44187. parse_TypeName();
  44188. break;
  44189. default:
  44190. whitespace();
  44191. parse_ValidationMode();
  44192. }
  44193. }
  44194. lookahead1W(87); // S^WS | '(:' | '{'
  44195. shift(276); // '{'
  44196. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44197. whitespace();
  44198. parse_Expr();
  44199. shift(282); // '}'
  44200. eventHandler.endNonterminal("ValidateExpr", e0);
  44201. }
  44202. function try_ValidateExpr()
  44203. {
  44204. shiftT(260); // 'validate'
  44205. lookahead1W(160); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  44206. if (l1 != 276) // '{'
  44207. {
  44208. switch (l1)
  44209. {
  44210. case 252: // 'type'
  44211. shiftT(252); // 'type'
  44212. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  44213. try_TypeName();
  44214. break;
  44215. default:
  44216. try_ValidationMode();
  44217. }
  44218. }
  44219. lookahead1W(87); // S^WS | '(:' | '{'
  44220. shiftT(276); // '{'
  44221. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44222. try_Expr();
  44223. shiftT(282); // '}'
  44224. }
  44225. function parse_ValidationMode()
  44226. {
  44227. eventHandler.startNonterminal("ValidationMode", e0);
  44228. switch (l1)
  44229. {
  44230. case 171: // 'lax'
  44231. shift(171); // 'lax'
  44232. break;
  44233. default:
  44234. shift(240); // 'strict'
  44235. }
  44236. eventHandler.endNonterminal("ValidationMode", e0);
  44237. }
  44238. function try_ValidationMode()
  44239. {
  44240. switch (l1)
  44241. {
  44242. case 171: // 'lax'
  44243. shiftT(171); // 'lax'
  44244. break;
  44245. default:
  44246. shiftT(240); // 'strict'
  44247. }
  44248. }
  44249. function parse_ExtensionExpr()
  44250. {
  44251. eventHandler.startNonterminal("ExtensionExpr", e0);
  44252. for (;;)
  44253. {
  44254. whitespace();
  44255. parse_Pragma();
  44256. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  44257. if (l1 != 35) // '(#'
  44258. {
  44259. break;
  44260. }
  44261. }
  44262. shift(276); // '{'
  44263. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44264. if (l1 != 282) // '}'
  44265. {
  44266. whitespace();
  44267. parse_Expr();
  44268. }
  44269. shift(282); // '}'
  44270. eventHandler.endNonterminal("ExtensionExpr", e0);
  44271. }
  44272. function try_ExtensionExpr()
  44273. {
  44274. for (;;)
  44275. {
  44276. try_Pragma();
  44277. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  44278. if (l1 != 35) // '(#'
  44279. {
  44280. break;
  44281. }
  44282. }
  44283. shiftT(276); // '{'
  44284. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44285. if (l1 != 282) // '}'
  44286. {
  44287. try_Expr();
  44288. }
  44289. shiftT(282); // '}'
  44290. }
  44291. function parse_Pragma()
  44292. {
  44293. eventHandler.startNonterminal("Pragma", e0);
  44294. shift(35); // '(#'
  44295. lookahead1(251); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  44296. if (l1 == 21) // S
  44297. {
  44298. shift(21); // S
  44299. }
  44300. parse_EQName();
  44301. lookahead1(10); // S | '#)'
  44302. if (l1 == 21) // S
  44303. {
  44304. shift(21); // S
  44305. lookahead1(0); // PragmaContents
  44306. shift(1); // PragmaContents
  44307. }
  44308. lookahead1(5); // '#)'
  44309. shift(30); // '#)'
  44310. eventHandler.endNonterminal("Pragma", e0);
  44311. }
  44312. function try_Pragma()
  44313. {
  44314. shiftT(35); // '(#'
  44315. lookahead1(251); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  44316. if (l1 == 21) // S
  44317. {
  44318. shiftT(21); // S
  44319. }
  44320. try_EQName();
  44321. lookahead1(10); // S | '#)'
  44322. if (l1 == 21) // S
  44323. {
  44324. shiftT(21); // S
  44325. lookahead1(0); // PragmaContents
  44326. shiftT(1); // PragmaContents
  44327. }
  44328. lookahead1(5); // '#)'
  44329. shiftT(30); // '#)'
  44330. }
  44331. function parse_PathExpr()
  44332. {
  44333. eventHandler.startNonterminal("PathExpr", e0);
  44334. switch (l1)
  44335. {
  44336. case 46: // '/'
  44337. shift(46); // '/'
  44338. lookahead1W(285); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44339. switch (l1)
  44340. {
  44341. case 25: // EOF
  44342. case 26: // '!'
  44343. case 27: // '!='
  44344. case 37: // ')'
  44345. case 38: // '*'
  44346. case 40: // '+'
  44347. case 41: // ','
  44348. case 42: // '-'
  44349. case 49: // ':'
  44350. case 53: // ';'
  44351. case 57: // '<<'
  44352. case 58: // '<='
  44353. case 60: // '='
  44354. case 61: // '>'
  44355. case 62: // '>='
  44356. case 63: // '>>'
  44357. case 69: // ']'
  44358. case 87: // 'by'
  44359. case 99: // 'contains'
  44360. case 205: // 'paragraphs'
  44361. case 232: // 'sentences'
  44362. case 247: // 'times'
  44363. case 273: // 'words'
  44364. case 279: // '|'
  44365. case 280: // '||'
  44366. case 281: // '|}'
  44367. case 282: // '}'
  44368. break;
  44369. default:
  44370. whitespace();
  44371. parse_RelativePathExpr();
  44372. }
  44373. break;
  44374. case 47: // '//'
  44375. shift(47); // '//'
  44376. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44377. whitespace();
  44378. parse_RelativePathExpr();
  44379. break;
  44380. default:
  44381. parse_RelativePathExpr();
  44382. }
  44383. eventHandler.endNonterminal("PathExpr", e0);
  44384. }
  44385. function try_PathExpr()
  44386. {
  44387. switch (l1)
  44388. {
  44389. case 46: // '/'
  44390. shiftT(46); // '/'
  44391. lookahead1W(285); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44392. switch (l1)
  44393. {
  44394. case 25: // EOF
  44395. case 26: // '!'
  44396. case 27: // '!='
  44397. case 37: // ')'
  44398. case 38: // '*'
  44399. case 40: // '+'
  44400. case 41: // ','
  44401. case 42: // '-'
  44402. case 49: // ':'
  44403. case 53: // ';'
  44404. case 57: // '<<'
  44405. case 58: // '<='
  44406. case 60: // '='
  44407. case 61: // '>'
  44408. case 62: // '>='
  44409. case 63: // '>>'
  44410. case 69: // ']'
  44411. case 87: // 'by'
  44412. case 99: // 'contains'
  44413. case 205: // 'paragraphs'
  44414. case 232: // 'sentences'
  44415. case 247: // 'times'
  44416. case 273: // 'words'
  44417. case 279: // '|'
  44418. case 280: // '||'
  44419. case 281: // '|}'
  44420. case 282: // '}'
  44421. break;
  44422. default:
  44423. try_RelativePathExpr();
  44424. }
  44425. break;
  44426. case 47: // '//'
  44427. shiftT(47); // '//'
  44428. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44429. try_RelativePathExpr();
  44430. break;
  44431. default:
  44432. try_RelativePathExpr();
  44433. }
  44434. }
  44435. function parse_RelativePathExpr()
  44436. {
  44437. eventHandler.startNonterminal("RelativePathExpr", e0);
  44438. parse_StepExpr();
  44439. for (;;)
  44440. {
  44441. switch (l1)
  44442. {
  44443. case 26: // '!'
  44444. lookahead2W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44445. break;
  44446. default:
  44447. lk = l1;
  44448. }
  44449. if (lk != 25 // EOF
  44450. && lk != 27 // '!='
  44451. && lk != 37 // ')'
  44452. && lk != 38 // '*'
  44453. && lk != 40 // '+'
  44454. && lk != 41 // ','
  44455. && lk != 42 // '-'
  44456. && lk != 46 // '/'
  44457. && lk != 47 // '//'
  44458. && lk != 49 // ':'
  44459. && lk != 53 // ';'
  44460. && lk != 54 // '<'
  44461. && lk != 57 // '<<'
  44462. && lk != 58 // '<='
  44463. && lk != 60 // '='
  44464. && lk != 61 // '>'
  44465. && lk != 62 // '>='
  44466. && lk != 63 // '>>'
  44467. && lk != 69 // ']'
  44468. && lk != 70 // 'after'
  44469. && lk != 75 // 'and'
  44470. && lk != 79 // 'as'
  44471. && lk != 80 // 'ascending'
  44472. && lk != 81 // 'at'
  44473. && lk != 84 // 'before'
  44474. && lk != 87 // 'by'
  44475. && lk != 88 // 'case'
  44476. && lk != 89 // 'cast'
  44477. && lk != 90 // 'castable'
  44478. && lk != 94 // 'collation'
  44479. && lk != 99 // 'contains'
  44480. && lk != 105 // 'count'
  44481. && lk != 109 // 'default'
  44482. && lk != 113 // 'descending'
  44483. && lk != 118 // 'div'
  44484. && lk != 122 // 'else'
  44485. && lk != 123 // 'empty'
  44486. && lk != 126 // 'end'
  44487. && lk != 128 // 'eq'
  44488. && lk != 131 // 'except'
  44489. && lk != 137 // 'for'
  44490. && lk != 146 // 'ge'
  44491. && lk != 148 // 'group'
  44492. && lk != 150 // 'gt'
  44493. && lk != 151 // 'idiv'
  44494. && lk != 160 // 'instance'
  44495. && lk != 162 // 'intersect'
  44496. && lk != 163 // 'into'
  44497. && lk != 164 // 'is'
  44498. && lk != 172 // 'le'
  44499. && lk != 174 // 'let'
  44500. && lk != 178 // 'lt'
  44501. && lk != 180 // 'mod'
  44502. && lk != 181 // 'modify'
  44503. && lk != 186 // 'ne'
  44504. && lk != 198 // 'only'
  44505. && lk != 200 // 'or'
  44506. && lk != 201 // 'order'
  44507. && lk != 205 // 'paragraphs'
  44508. && lk != 220 // 'return'
  44509. && lk != 224 // 'satisfies'
  44510. && lk != 232 // 'sentences'
  44511. && lk != 236 // 'stable'
  44512. && lk != 237 // 'start'
  44513. && lk != 247 // 'times'
  44514. && lk != 248 // 'to'
  44515. && lk != 249 // 'treat'
  44516. && lk != 254 // 'union'
  44517. && lk != 266 // 'where'
  44518. && lk != 270 // 'with'
  44519. && lk != 273 // 'words'
  44520. && lk != 279 // '|'
  44521. && lk != 280 // '||'
  44522. && lk != 281 // '|}'
  44523. && lk != 282 // '}'
  44524. && lk != 23578 // '!' '/'
  44525. && lk != 24090) // '!' '//'
  44526. {
  44527. lk = memoized(3, e0);
  44528. if (lk == 0)
  44529. {
  44530. var b0A = b0; var e0A = e0; var l1A = l1;
  44531. var b1A = b1; var e1A = e1; var l2A = l2;
  44532. var b2A = b2; var e2A = e2;
  44533. try
  44534. {
  44535. switch (l1)
  44536. {
  44537. case 46: // '/'
  44538. shiftT(46); // '/'
  44539. break;
  44540. case 47: // '//'
  44541. shiftT(47); // '//'
  44542. break;
  44543. default:
  44544. shiftT(26); // '!'
  44545. }
  44546. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44547. try_StepExpr();
  44548. lk = -1;
  44549. }
  44550. catch (p1A)
  44551. {
  44552. lk = -2;
  44553. }
  44554. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  44555. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  44556. b2 = b2A; e2 = e2A; end = e2A; }}
  44557. memoize(3, e0, lk);
  44558. }
  44559. }
  44560. if (lk != -1
  44561. && lk != 46 // '/'
  44562. && lk != 47) // '//'
  44563. {
  44564. break;
  44565. }
  44566. switch (l1)
  44567. {
  44568. case 46: // '/'
  44569. shift(46); // '/'
  44570. break;
  44571. case 47: // '//'
  44572. shift(47); // '//'
  44573. break;
  44574. default:
  44575. shift(26); // '!'
  44576. }
  44577. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44578. whitespace();
  44579. parse_StepExpr();
  44580. }
  44581. eventHandler.endNonterminal("RelativePathExpr", e0);
  44582. }
  44583. function try_RelativePathExpr()
  44584. {
  44585. try_StepExpr();
  44586. for (;;)
  44587. {
  44588. switch (l1)
  44589. {
  44590. case 26: // '!'
  44591. lookahead2W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44592. break;
  44593. default:
  44594. lk = l1;
  44595. }
  44596. if (lk != 25 // EOF
  44597. && lk != 27 // '!='
  44598. && lk != 37 // ')'
  44599. && lk != 38 // '*'
  44600. && lk != 40 // '+'
  44601. && lk != 41 // ','
  44602. && lk != 42 // '-'
  44603. && lk != 46 // '/'
  44604. && lk != 47 // '//'
  44605. && lk != 49 // ':'
  44606. && lk != 53 // ';'
  44607. && lk != 54 // '<'
  44608. && lk != 57 // '<<'
  44609. && lk != 58 // '<='
  44610. && lk != 60 // '='
  44611. && lk != 61 // '>'
  44612. && lk != 62 // '>='
  44613. && lk != 63 // '>>'
  44614. && lk != 69 // ']'
  44615. && lk != 70 // 'after'
  44616. && lk != 75 // 'and'
  44617. && lk != 79 // 'as'
  44618. && lk != 80 // 'ascending'
  44619. && lk != 81 // 'at'
  44620. && lk != 84 // 'before'
  44621. && lk != 87 // 'by'
  44622. && lk != 88 // 'case'
  44623. && lk != 89 // 'cast'
  44624. && lk != 90 // 'castable'
  44625. && lk != 94 // 'collation'
  44626. && lk != 99 // 'contains'
  44627. && lk != 105 // 'count'
  44628. && lk != 109 // 'default'
  44629. && lk != 113 // 'descending'
  44630. && lk != 118 // 'div'
  44631. && lk != 122 // 'else'
  44632. && lk != 123 // 'empty'
  44633. && lk != 126 // 'end'
  44634. && lk != 128 // 'eq'
  44635. && lk != 131 // 'except'
  44636. && lk != 137 // 'for'
  44637. && lk != 146 // 'ge'
  44638. && lk != 148 // 'group'
  44639. && lk != 150 // 'gt'
  44640. && lk != 151 // 'idiv'
  44641. && lk != 160 // 'instance'
  44642. && lk != 162 // 'intersect'
  44643. && lk != 163 // 'into'
  44644. && lk != 164 // 'is'
  44645. && lk != 172 // 'le'
  44646. && lk != 174 // 'let'
  44647. && lk != 178 // 'lt'
  44648. && lk != 180 // 'mod'
  44649. && lk != 181 // 'modify'
  44650. && lk != 186 // 'ne'
  44651. && lk != 198 // 'only'
  44652. && lk != 200 // 'or'
  44653. && lk != 201 // 'order'
  44654. && lk != 205 // 'paragraphs'
  44655. && lk != 220 // 'return'
  44656. && lk != 224 // 'satisfies'
  44657. && lk != 232 // 'sentences'
  44658. && lk != 236 // 'stable'
  44659. && lk != 237 // 'start'
  44660. && lk != 247 // 'times'
  44661. && lk != 248 // 'to'
  44662. && lk != 249 // 'treat'
  44663. && lk != 254 // 'union'
  44664. && lk != 266 // 'where'
  44665. && lk != 270 // 'with'
  44666. && lk != 273 // 'words'
  44667. && lk != 279 // '|'
  44668. && lk != 280 // '||'
  44669. && lk != 281 // '|}'
  44670. && lk != 282 // '}'
  44671. && lk != 23578 // '!' '/'
  44672. && lk != 24090) // '!' '//'
  44673. {
  44674. lk = memoized(3, e0);
  44675. if (lk == 0)
  44676. {
  44677. var b0A = b0; var e0A = e0; var l1A = l1;
  44678. var b1A = b1; var e1A = e1; var l2A = l2;
  44679. var b2A = b2; var e2A = e2;
  44680. try
  44681. {
  44682. switch (l1)
  44683. {
  44684. case 46: // '/'
  44685. shiftT(46); // '/'
  44686. break;
  44687. case 47: // '//'
  44688. shiftT(47); // '//'
  44689. break;
  44690. default:
  44691. shiftT(26); // '!'
  44692. }
  44693. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44694. try_StepExpr();
  44695. memoize(3, e0A, -1);
  44696. continue;
  44697. }
  44698. catch (p1A)
  44699. {
  44700. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  44701. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  44702. b2 = b2A; e2 = e2A; end = e2A; }}
  44703. memoize(3, e0A, -2);
  44704. break;
  44705. }
  44706. }
  44707. }
  44708. if (lk != -1
  44709. && lk != 46 // '/'
  44710. && lk != 47) // '//'
  44711. {
  44712. break;
  44713. }
  44714. switch (l1)
  44715. {
  44716. case 46: // '/'
  44717. shiftT(46); // '/'
  44718. break;
  44719. case 47: // '//'
  44720. shiftT(47); // '//'
  44721. break;
  44722. default:
  44723. shiftT(26); // '!'
  44724. }
  44725. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  44726. try_StepExpr();
  44727. }
  44728. }
  44729. function parse_StepExpr()
  44730. {
  44731. eventHandler.startNonterminal("StepExpr", e0);
  44732. switch (l1)
  44733. {
  44734. case 82: // 'attribute'
  44735. lookahead2W(284); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  44736. break;
  44737. case 121: // 'element'
  44738. lookahead2W(282); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  44739. break;
  44740. case 184: // 'namespace'
  44741. case 216: // 'processing-instruction'
  44742. lookahead2W(281); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  44743. break;
  44744. case 96: // 'comment'
  44745. case 119: // 'document'
  44746. case 202: // 'ordered'
  44747. case 244: // 'text'
  44748. case 256: // 'unordered'
  44749. lookahead2W(246); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  44750. break;
  44751. case 78: // 'array'
  44752. case 124: // 'empty-sequence'
  44753. case 152: // 'if'
  44754. case 165: // 'item'
  44755. case 167: // 'json-item'
  44756. case 242: // 'structured-item'
  44757. case 243: // 'switch'
  44758. case 253: // 'typeswitch'
  44759. lookahead2W(239); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  44760. break;
  44761. case 73: // 'ancestor'
  44762. case 74: // 'ancestor-or-self'
  44763. case 93: // 'child'
  44764. case 111: // 'descendant'
  44765. case 112: // 'descendant-or-self'
  44766. case 135: // 'following'
  44767. case 136: // 'following-sibling'
  44768. case 206: // 'parent'
  44769. case 212: // 'preceding'
  44770. case 213: // 'preceding-sibling'
  44771. case 229: // 'self'
  44772. lookahead2W(245); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  44773. break;
  44774. case 6: // EQName^Token
  44775. case 70: // 'after'
  44776. case 72: // 'allowing'
  44777. case 75: // 'and'
  44778. case 77: // 'append'
  44779. case 79: // 'as'
  44780. case 80: // 'ascending'
  44781. case 81: // 'at'
  44782. case 83: // 'base-uri'
  44783. case 84: // 'before'
  44784. case 85: // 'boundary-space'
  44785. case 86: // 'break'
  44786. case 88: // 'case'
  44787. case 89: // 'cast'
  44788. case 90: // 'castable'
  44789. case 91: // 'catch'
  44790. case 94: // 'collation'
  44791. case 97: // 'constraint'
  44792. case 98: // 'construction'
  44793. case 101: // 'context'
  44794. case 102: // 'continue'
  44795. case 103: // 'copy'
  44796. case 104: // 'copy-namespaces'
  44797. case 105: // 'count'
  44798. case 106: // 'decimal-format'
  44799. case 108: // 'declare'
  44800. case 109: // 'default'
  44801. case 110: // 'delete'
  44802. case 113: // 'descending'
  44803. case 118: // 'div'
  44804. case 120: // 'document-node'
  44805. case 122: // 'else'
  44806. case 123: // 'empty'
  44807. case 125: // 'encoding'
  44808. case 126: // 'end'
  44809. case 128: // 'eq'
  44810. case 129: // 'every'
  44811. case 131: // 'except'
  44812. case 132: // 'exit'
  44813. case 133: // 'external'
  44814. case 134: // 'first'
  44815. case 137: // 'for'
  44816. case 141: // 'ft-option'
  44817. case 145: // 'function'
  44818. case 146: // 'ge'
  44819. case 148: // 'group'
  44820. case 150: // 'gt'
  44821. case 151: // 'idiv'
  44822. case 153: // 'import'
  44823. case 154: // 'in'
  44824. case 155: // 'index'
  44825. case 159: // 'insert'
  44826. case 160: // 'instance'
  44827. case 161: // 'integrity'
  44828. case 162: // 'intersect'
  44829. case 163: // 'into'
  44830. case 164: // 'is'
  44831. case 166: // 'json'
  44832. case 170: // 'last'
  44833. case 171: // 'lax'
  44834. case 172: // 'le'
  44835. case 174: // 'let'
  44836. case 176: // 'loop'
  44837. case 178: // 'lt'
  44838. case 180: // 'mod'
  44839. case 181: // 'modify'
  44840. case 182: // 'module'
  44841. case 185: // 'namespace-node'
  44842. case 186: // 'ne'
  44843. case 191: // 'node'
  44844. case 192: // 'nodes'
  44845. case 194: // 'object'
  44846. case 198: // 'only'
  44847. case 199: // 'option'
  44848. case 200: // 'or'
  44849. case 201: // 'order'
  44850. case 203: // 'ordering'
  44851. case 218: // 'rename'
  44852. case 219: // 'replace'
  44853. case 220: // 'return'
  44854. case 221: // 'returning'
  44855. case 222: // 'revalidation'
  44856. case 224: // 'satisfies'
  44857. case 225: // 'schema'
  44858. case 226: // 'schema-attribute'
  44859. case 227: // 'schema-element'
  44860. case 228: // 'score'
  44861. case 234: // 'sliding'
  44862. case 235: // 'some'
  44863. case 236: // 'stable'
  44864. case 237: // 'start'
  44865. case 240: // 'strict'
  44866. case 248: // 'to'
  44867. case 249: // 'treat'
  44868. case 250: // 'try'
  44869. case 251: // 'tumbling'
  44870. case 252: // 'type'
  44871. case 254: // 'union'
  44872. case 257: // 'updating'
  44873. case 260: // 'validate'
  44874. case 261: // 'value'
  44875. case 262: // 'variable'
  44876. case 263: // 'version'
  44877. case 266: // 'where'
  44878. case 267: // 'while'
  44879. case 270: // 'with'
  44880. case 274: // 'xquery'
  44881. lookahead2W(243); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  44882. break;
  44883. default:
  44884. lk = l1;
  44885. }
  44886. if (lk == 35922 // 'attribute' 'after'
  44887. || lk == 35961 // 'element' 'after'
  44888. || lk == 36024 // 'namespace' 'after'
  44889. || lk == 36056 // 'processing-instruction' 'after'
  44890. || lk == 38482 // 'attribute' 'and'
  44891. || lk == 38521 // 'element' 'and'
  44892. || lk == 38584 // 'namespace' 'and'
  44893. || lk == 38616 // 'processing-instruction' 'and'
  44894. || lk == 40530 // 'attribute' 'as'
  44895. || lk == 40569 // 'element' 'as'
  44896. || lk == 40632 // 'namespace' 'as'
  44897. || lk == 40664 // 'processing-instruction' 'as'
  44898. || lk == 41042 // 'attribute' 'ascending'
  44899. || lk == 41081 // 'element' 'ascending'
  44900. || lk == 41144 // 'namespace' 'ascending'
  44901. || lk == 41176 // 'processing-instruction' 'ascending'
  44902. || lk == 41554 // 'attribute' 'at'
  44903. || lk == 41593 // 'element' 'at'
  44904. || lk == 41656 // 'namespace' 'at'
  44905. || lk == 41688 // 'processing-instruction' 'at'
  44906. || lk == 43090 // 'attribute' 'before'
  44907. || lk == 43129 // 'element' 'before'
  44908. || lk == 43192 // 'namespace' 'before'
  44909. || lk == 43224 // 'processing-instruction' 'before'
  44910. || lk == 45138 // 'attribute' 'case'
  44911. || lk == 45177 // 'element' 'case'
  44912. || lk == 45240 // 'namespace' 'case'
  44913. || lk == 45272 // 'processing-instruction' 'case'
  44914. || lk == 45650 // 'attribute' 'cast'
  44915. || lk == 45689 // 'element' 'cast'
  44916. || lk == 45752 // 'namespace' 'cast'
  44917. || lk == 45784 // 'processing-instruction' 'cast'
  44918. || lk == 46162 // 'attribute' 'castable'
  44919. || lk == 46201 // 'element' 'castable'
  44920. || lk == 46264 // 'namespace' 'castable'
  44921. || lk == 46296 // 'processing-instruction' 'castable'
  44922. || lk == 48210 // 'attribute' 'collation'
  44923. || lk == 48249 // 'element' 'collation'
  44924. || lk == 48312 // 'namespace' 'collation'
  44925. || lk == 48344 // 'processing-instruction' 'collation'
  44926. || lk == 53842 // 'attribute' 'count'
  44927. || lk == 53881 // 'element' 'count'
  44928. || lk == 53944 // 'namespace' 'count'
  44929. || lk == 53976 // 'processing-instruction' 'count'
  44930. || lk == 55890 // 'attribute' 'default'
  44931. || lk == 55929 // 'element' 'default'
  44932. || lk == 55992 // 'namespace' 'default'
  44933. || lk == 56024 // 'processing-instruction' 'default'
  44934. || lk == 57938 // 'attribute' 'descending'
  44935. || lk == 57977 // 'element' 'descending'
  44936. || lk == 58040 // 'namespace' 'descending'
  44937. || lk == 58072 // 'processing-instruction' 'descending'
  44938. || lk == 60498 // 'attribute' 'div'
  44939. || lk == 60537 // 'element' 'div'
  44940. || lk == 60600 // 'namespace' 'div'
  44941. || lk == 60632 // 'processing-instruction' 'div'
  44942. || lk == 62546 // 'attribute' 'else'
  44943. || lk == 62585 // 'element' 'else'
  44944. || lk == 62648 // 'namespace' 'else'
  44945. || lk == 62680 // 'processing-instruction' 'else'
  44946. || lk == 63058 // 'attribute' 'empty'
  44947. || lk == 63097 // 'element' 'empty'
  44948. || lk == 63160 // 'namespace' 'empty'
  44949. || lk == 63192 // 'processing-instruction' 'empty'
  44950. || lk == 64594 // 'attribute' 'end'
  44951. || lk == 64633 // 'element' 'end'
  44952. || lk == 64696 // 'namespace' 'end'
  44953. || lk == 64728 // 'processing-instruction' 'end'
  44954. || lk == 65618 // 'attribute' 'eq'
  44955. || lk == 65657 // 'element' 'eq'
  44956. || lk == 65720 // 'namespace' 'eq'
  44957. || lk == 65752 // 'processing-instruction' 'eq'
  44958. || lk == 67154 // 'attribute' 'except'
  44959. || lk == 67193 // 'element' 'except'
  44960. || lk == 67256 // 'namespace' 'except'
  44961. || lk == 67288 // 'processing-instruction' 'except'
  44962. || lk == 70226 // 'attribute' 'for'
  44963. || lk == 70265 // 'element' 'for'
  44964. || lk == 70328 // 'namespace' 'for'
  44965. || lk == 70360 // 'processing-instruction' 'for'
  44966. || lk == 74834 // 'attribute' 'ge'
  44967. || lk == 74873 // 'element' 'ge'
  44968. || lk == 74936 // 'namespace' 'ge'
  44969. || lk == 74968 // 'processing-instruction' 'ge'
  44970. || lk == 75858 // 'attribute' 'group'
  44971. || lk == 75897 // 'element' 'group'
  44972. || lk == 75960 // 'namespace' 'group'
  44973. || lk == 75992 // 'processing-instruction' 'group'
  44974. || lk == 76882 // 'attribute' 'gt'
  44975. || lk == 76921 // 'element' 'gt'
  44976. || lk == 76984 // 'namespace' 'gt'
  44977. || lk == 77016 // 'processing-instruction' 'gt'
  44978. || lk == 77394 // 'attribute' 'idiv'
  44979. || lk == 77433 // 'element' 'idiv'
  44980. || lk == 77496 // 'namespace' 'idiv'
  44981. || lk == 77528 // 'processing-instruction' 'idiv'
  44982. || lk == 82002 // 'attribute' 'instance'
  44983. || lk == 82041 // 'element' 'instance'
  44984. || lk == 82104 // 'namespace' 'instance'
  44985. || lk == 82136 // 'processing-instruction' 'instance'
  44986. || lk == 83026 // 'attribute' 'intersect'
  44987. || lk == 83065 // 'element' 'intersect'
  44988. || lk == 83128 // 'namespace' 'intersect'
  44989. || lk == 83160 // 'processing-instruction' 'intersect'
  44990. || lk == 83538 // 'attribute' 'into'
  44991. || lk == 83577 // 'element' 'into'
  44992. || lk == 83640 // 'namespace' 'into'
  44993. || lk == 83672 // 'processing-instruction' 'into'
  44994. || lk == 84050 // 'attribute' 'is'
  44995. || lk == 84089 // 'element' 'is'
  44996. || lk == 84152 // 'namespace' 'is'
  44997. || lk == 84184 // 'processing-instruction' 'is'
  44998. || lk == 88146 // 'attribute' 'le'
  44999. || lk == 88185 // 'element' 'le'
  45000. || lk == 88248 // 'namespace' 'le'
  45001. || lk == 88280 // 'processing-instruction' 'le'
  45002. || lk == 89170 // 'attribute' 'let'
  45003. || lk == 89209 // 'element' 'let'
  45004. || lk == 89272 // 'namespace' 'let'
  45005. || lk == 89304 // 'processing-instruction' 'let'
  45006. || lk == 91218 // 'attribute' 'lt'
  45007. || lk == 91257 // 'element' 'lt'
  45008. || lk == 91320 // 'namespace' 'lt'
  45009. || lk == 91352 // 'processing-instruction' 'lt'
  45010. || lk == 92242 // 'attribute' 'mod'
  45011. || lk == 92281 // 'element' 'mod'
  45012. || lk == 92344 // 'namespace' 'mod'
  45013. || lk == 92376 // 'processing-instruction' 'mod'
  45014. || lk == 92754 // 'attribute' 'modify'
  45015. || lk == 92793 // 'element' 'modify'
  45016. || lk == 92856 // 'namespace' 'modify'
  45017. || lk == 92888 // 'processing-instruction' 'modify'
  45018. || lk == 95314 // 'attribute' 'ne'
  45019. || lk == 95353 // 'element' 'ne'
  45020. || lk == 95416 // 'namespace' 'ne'
  45021. || lk == 95448 // 'processing-instruction' 'ne'
  45022. || lk == 101458 // 'attribute' 'only'
  45023. || lk == 101497 // 'element' 'only'
  45024. || lk == 101560 // 'namespace' 'only'
  45025. || lk == 101592 // 'processing-instruction' 'only'
  45026. || lk == 102482 // 'attribute' 'or'
  45027. || lk == 102521 // 'element' 'or'
  45028. || lk == 102584 // 'namespace' 'or'
  45029. || lk == 102616 // 'processing-instruction' 'or'
  45030. || lk == 102994 // 'attribute' 'order'
  45031. || lk == 103033 // 'element' 'order'
  45032. || lk == 103096 // 'namespace' 'order'
  45033. || lk == 103128 // 'processing-instruction' 'order'
  45034. || lk == 112722 // 'attribute' 'return'
  45035. || lk == 112761 // 'element' 'return'
  45036. || lk == 112824 // 'namespace' 'return'
  45037. || lk == 112856 // 'processing-instruction' 'return'
  45038. || lk == 114770 // 'attribute' 'satisfies'
  45039. || lk == 114809 // 'element' 'satisfies'
  45040. || lk == 114872 // 'namespace' 'satisfies'
  45041. || lk == 114904 // 'processing-instruction' 'satisfies'
  45042. || lk == 120914 // 'attribute' 'stable'
  45043. || lk == 120953 // 'element' 'stable'
  45044. || lk == 121016 // 'namespace' 'stable'
  45045. || lk == 121048 // 'processing-instruction' 'stable'
  45046. || lk == 121426 // 'attribute' 'start'
  45047. || lk == 121465 // 'element' 'start'
  45048. || lk == 121528 // 'namespace' 'start'
  45049. || lk == 121560 // 'processing-instruction' 'start'
  45050. || lk == 127058 // 'attribute' 'to'
  45051. || lk == 127097 // 'element' 'to'
  45052. || lk == 127160 // 'namespace' 'to'
  45053. || lk == 127192 // 'processing-instruction' 'to'
  45054. || lk == 127570 // 'attribute' 'treat'
  45055. || lk == 127609 // 'element' 'treat'
  45056. || lk == 127672 // 'namespace' 'treat'
  45057. || lk == 127704 // 'processing-instruction' 'treat'
  45058. || lk == 130130 // 'attribute' 'union'
  45059. || lk == 130169 // 'element' 'union'
  45060. || lk == 130232 // 'namespace' 'union'
  45061. || lk == 130264 // 'processing-instruction' 'union'
  45062. || lk == 136274 // 'attribute' 'where'
  45063. || lk == 136313 // 'element' 'where'
  45064. || lk == 136376 // 'namespace' 'where'
  45065. || lk == 136408 // 'processing-instruction' 'where'
  45066. || lk == 138322 // 'attribute' 'with'
  45067. || lk == 138361 // 'element' 'with'
  45068. || lk == 138424 // 'namespace' 'with'
  45069. || lk == 138456) // 'processing-instruction' 'with'
  45070. {
  45071. lk = memoized(4, e0);
  45072. if (lk == 0)
  45073. {
  45074. var b0A = b0; var e0A = e0; var l1A = l1;
  45075. var b1A = b1; var e1A = e1; var l2A = l2;
  45076. var b2A = b2; var e2A = e2;
  45077. try
  45078. {
  45079. try_PostfixExpr();
  45080. lk = -1;
  45081. }
  45082. catch (p1A)
  45083. {
  45084. lk = -2;
  45085. }
  45086. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  45087. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  45088. b2 = b2A; e2 = e2A; end = e2A; }}
  45089. memoize(4, e0, lk);
  45090. }
  45091. }
  45092. switch (lk)
  45093. {
  45094. case -1:
  45095. case 8: // IntegerLiteral
  45096. case 9: // DecimalLiteral
  45097. case 10: // DoubleLiteral
  45098. case 11: // StringLiteral
  45099. case 31: // '$'
  45100. case 32: // '%'
  45101. case 34: // '('
  45102. case 44: // '.'
  45103. case 54: // '<'
  45104. case 55: // '<!--'
  45105. case 59: // '<?'
  45106. case 68: // '['
  45107. case 276: // '{'
  45108. case 278: // '{|'
  45109. case 3154: // 'attribute' EQName^Token
  45110. case 3193: // 'element' EQName^Token
  45111. case 9912: // 'namespace' NCName^Token
  45112. case 9944: // 'processing-instruction' NCName^Token
  45113. case 14854: // EQName^Token '#'
  45114. case 14918: // 'after' '#'
  45115. case 14920: // 'allowing' '#'
  45116. case 14921: // 'ancestor' '#'
  45117. case 14922: // 'ancestor-or-self' '#'
  45118. case 14923: // 'and' '#'
  45119. case 14925: // 'append' '#'
  45120. case 14926: // 'array' '#'
  45121. case 14927: // 'as' '#'
  45122. case 14928: // 'ascending' '#'
  45123. case 14929: // 'at' '#'
  45124. case 14930: // 'attribute' '#'
  45125. case 14931: // 'base-uri' '#'
  45126. case 14932: // 'before' '#'
  45127. case 14933: // 'boundary-space' '#'
  45128. case 14934: // 'break' '#'
  45129. case 14936: // 'case' '#'
  45130. case 14937: // 'cast' '#'
  45131. case 14938: // 'castable' '#'
  45132. case 14939: // 'catch' '#'
  45133. case 14941: // 'child' '#'
  45134. case 14942: // 'collation' '#'
  45135. case 14944: // 'comment' '#'
  45136. case 14945: // 'constraint' '#'
  45137. case 14946: // 'construction' '#'
  45138. case 14949: // 'context' '#'
  45139. case 14950: // 'continue' '#'
  45140. case 14951: // 'copy' '#'
  45141. case 14952: // 'copy-namespaces' '#'
  45142. case 14953: // 'count' '#'
  45143. case 14954: // 'decimal-format' '#'
  45144. case 14956: // 'declare' '#'
  45145. case 14957: // 'default' '#'
  45146. case 14958: // 'delete' '#'
  45147. case 14959: // 'descendant' '#'
  45148. case 14960: // 'descendant-or-self' '#'
  45149. case 14961: // 'descending' '#'
  45150. case 14966: // 'div' '#'
  45151. case 14967: // 'document' '#'
  45152. case 14968: // 'document-node' '#'
  45153. case 14969: // 'element' '#'
  45154. case 14970: // 'else' '#'
  45155. case 14971: // 'empty' '#'
  45156. case 14972: // 'empty-sequence' '#'
  45157. case 14973: // 'encoding' '#'
  45158. case 14974: // 'end' '#'
  45159. case 14976: // 'eq' '#'
  45160. case 14977: // 'every' '#'
  45161. case 14979: // 'except' '#'
  45162. case 14980: // 'exit' '#'
  45163. case 14981: // 'external' '#'
  45164. case 14982: // 'first' '#'
  45165. case 14983: // 'following' '#'
  45166. case 14984: // 'following-sibling' '#'
  45167. case 14985: // 'for' '#'
  45168. case 14989: // 'ft-option' '#'
  45169. case 14993: // 'function' '#'
  45170. case 14994: // 'ge' '#'
  45171. case 14996: // 'group' '#'
  45172. case 14998: // 'gt' '#'
  45173. case 14999: // 'idiv' '#'
  45174. case 15000: // 'if' '#'
  45175. case 15001: // 'import' '#'
  45176. case 15002: // 'in' '#'
  45177. case 15003: // 'index' '#'
  45178. case 15007: // 'insert' '#'
  45179. case 15008: // 'instance' '#'
  45180. case 15009: // 'integrity' '#'
  45181. case 15010: // 'intersect' '#'
  45182. case 15011: // 'into' '#'
  45183. case 15012: // 'is' '#'
  45184. case 15013: // 'item' '#'
  45185. case 15014: // 'json' '#'
  45186. case 15015: // 'json-item' '#'
  45187. case 15018: // 'last' '#'
  45188. case 15019: // 'lax' '#'
  45189. case 15020: // 'le' '#'
  45190. case 15022: // 'let' '#'
  45191. case 15024: // 'loop' '#'
  45192. case 15026: // 'lt' '#'
  45193. case 15028: // 'mod' '#'
  45194. case 15029: // 'modify' '#'
  45195. case 15030: // 'module' '#'
  45196. case 15032: // 'namespace' '#'
  45197. case 15033: // 'namespace-node' '#'
  45198. case 15034: // 'ne' '#'
  45199. case 15039: // 'node' '#'
  45200. case 15040: // 'nodes' '#'
  45201. case 15042: // 'object' '#'
  45202. case 15046: // 'only' '#'
  45203. case 15047: // 'option' '#'
  45204. case 15048: // 'or' '#'
  45205. case 15049: // 'order' '#'
  45206. case 15050: // 'ordered' '#'
  45207. case 15051: // 'ordering' '#'
  45208. case 15054: // 'parent' '#'
  45209. case 15060: // 'preceding' '#'
  45210. case 15061: // 'preceding-sibling' '#'
  45211. case 15064: // 'processing-instruction' '#'
  45212. case 15066: // 'rename' '#'
  45213. case 15067: // 'replace' '#'
  45214. case 15068: // 'return' '#'
  45215. case 15069: // 'returning' '#'
  45216. case 15070: // 'revalidation' '#'
  45217. case 15072: // 'satisfies' '#'
  45218. case 15073: // 'schema' '#'
  45219. case 15074: // 'schema-attribute' '#'
  45220. case 15075: // 'schema-element' '#'
  45221. case 15076: // 'score' '#'
  45222. case 15077: // 'self' '#'
  45223. case 15082: // 'sliding' '#'
  45224. case 15083: // 'some' '#'
  45225. case 15084: // 'stable' '#'
  45226. case 15085: // 'start' '#'
  45227. case 15088: // 'strict' '#'
  45228. case 15090: // 'structured-item' '#'
  45229. case 15091: // 'switch' '#'
  45230. case 15092: // 'text' '#'
  45231. case 15096: // 'to' '#'
  45232. case 15097: // 'treat' '#'
  45233. case 15098: // 'try' '#'
  45234. case 15099: // 'tumbling' '#'
  45235. case 15100: // 'type' '#'
  45236. case 15101: // 'typeswitch' '#'
  45237. case 15102: // 'union' '#'
  45238. case 15104: // 'unordered' '#'
  45239. case 15105: // 'updating' '#'
  45240. case 15108: // 'validate' '#'
  45241. case 15109: // 'value' '#'
  45242. case 15110: // 'variable' '#'
  45243. case 15111: // 'version' '#'
  45244. case 15114: // 'where' '#'
  45245. case 15115: // 'while' '#'
  45246. case 15118: // 'with' '#'
  45247. case 15122: // 'xquery' '#'
  45248. case 17414: // EQName^Token '('
  45249. case 17478: // 'after' '('
  45250. case 17480: // 'allowing' '('
  45251. case 17481: // 'ancestor' '('
  45252. case 17482: // 'ancestor-or-self' '('
  45253. case 17483: // 'and' '('
  45254. case 17485: // 'append' '('
  45255. case 17487: // 'as' '('
  45256. case 17488: // 'ascending' '('
  45257. case 17489: // 'at' '('
  45258. case 17491: // 'base-uri' '('
  45259. case 17492: // 'before' '('
  45260. case 17493: // 'boundary-space' '('
  45261. case 17494: // 'break' '('
  45262. case 17496: // 'case' '('
  45263. case 17497: // 'cast' '('
  45264. case 17498: // 'castable' '('
  45265. case 17499: // 'catch' '('
  45266. case 17501: // 'child' '('
  45267. case 17502: // 'collation' '('
  45268. case 17505: // 'constraint' '('
  45269. case 17506: // 'construction' '('
  45270. case 17509: // 'context' '('
  45271. case 17510: // 'continue' '('
  45272. case 17511: // 'copy' '('
  45273. case 17512: // 'copy-namespaces' '('
  45274. case 17513: // 'count' '('
  45275. case 17514: // 'decimal-format' '('
  45276. case 17516: // 'declare' '('
  45277. case 17517: // 'default' '('
  45278. case 17518: // 'delete' '('
  45279. case 17519: // 'descendant' '('
  45280. case 17520: // 'descendant-or-self' '('
  45281. case 17521: // 'descending' '('
  45282. case 17526: // 'div' '('
  45283. case 17527: // 'document' '('
  45284. case 17530: // 'else' '('
  45285. case 17531: // 'empty' '('
  45286. case 17533: // 'encoding' '('
  45287. case 17534: // 'end' '('
  45288. case 17536: // 'eq' '('
  45289. case 17537: // 'every' '('
  45290. case 17539: // 'except' '('
  45291. case 17540: // 'exit' '('
  45292. case 17541: // 'external' '('
  45293. case 17542: // 'first' '('
  45294. case 17543: // 'following' '('
  45295. case 17544: // 'following-sibling' '('
  45296. case 17545: // 'for' '('
  45297. case 17549: // 'ft-option' '('
  45298. case 17553: // 'function' '('
  45299. case 17554: // 'ge' '('
  45300. case 17556: // 'group' '('
  45301. case 17558: // 'gt' '('
  45302. case 17559: // 'idiv' '('
  45303. case 17561: // 'import' '('
  45304. case 17562: // 'in' '('
  45305. case 17563: // 'index' '('
  45306. case 17567: // 'insert' '('
  45307. case 17568: // 'instance' '('
  45308. case 17569: // 'integrity' '('
  45309. case 17570: // 'intersect' '('
  45310. case 17571: // 'into' '('
  45311. case 17572: // 'is' '('
  45312. case 17574: // 'json' '('
  45313. case 17578: // 'last' '('
  45314. case 17579: // 'lax' '('
  45315. case 17580: // 'le' '('
  45316. case 17582: // 'let' '('
  45317. case 17584: // 'loop' '('
  45318. case 17586: // 'lt' '('
  45319. case 17588: // 'mod' '('
  45320. case 17589: // 'modify' '('
  45321. case 17590: // 'module' '('
  45322. case 17592: // 'namespace' '('
  45323. case 17594: // 'ne' '('
  45324. case 17600: // 'nodes' '('
  45325. case 17602: // 'object' '('
  45326. case 17606: // 'only' '('
  45327. case 17607: // 'option' '('
  45328. case 17608: // 'or' '('
  45329. case 17609: // 'order' '('
  45330. case 17610: // 'ordered' '('
  45331. case 17611: // 'ordering' '('
  45332. case 17614: // 'parent' '('
  45333. case 17620: // 'preceding' '('
  45334. case 17621: // 'preceding-sibling' '('
  45335. case 17626: // 'rename' '('
  45336. case 17627: // 'replace' '('
  45337. case 17628: // 'return' '('
  45338. case 17629: // 'returning' '('
  45339. case 17630: // 'revalidation' '('
  45340. case 17632: // 'satisfies' '('
  45341. case 17633: // 'schema' '('
  45342. case 17636: // 'score' '('
  45343. case 17637: // 'self' '('
  45344. case 17642: // 'sliding' '('
  45345. case 17643: // 'some' '('
  45346. case 17644: // 'stable' '('
  45347. case 17645: // 'start' '('
  45348. case 17648: // 'strict' '('
  45349. case 17656: // 'to' '('
  45350. case 17657: // 'treat' '('
  45351. case 17658: // 'try' '('
  45352. case 17659: // 'tumbling' '('
  45353. case 17660: // 'type' '('
  45354. case 17662: // 'union' '('
  45355. case 17664: // 'unordered' '('
  45356. case 17665: // 'updating' '('
  45357. case 17668: // 'validate' '('
  45358. case 17669: // 'value' '('
  45359. case 17670: // 'variable' '('
  45360. case 17671: // 'version' '('
  45361. case 17674: // 'where' '('
  45362. case 17675: // 'while' '('
  45363. case 17678: // 'with' '('
  45364. case 17682: // 'xquery' '('
  45365. case 36946: // 'attribute' 'allowing'
  45366. case 36985: // 'element' 'allowing'
  45367. case 37048: // 'namespace' 'allowing'
  45368. case 37080: // 'processing-instruction' 'allowing'
  45369. case 37458: // 'attribute' 'ancestor'
  45370. case 37497: // 'element' 'ancestor'
  45371. case 37560: // 'namespace' 'ancestor'
  45372. case 37592: // 'processing-instruction' 'ancestor'
  45373. case 37970: // 'attribute' 'ancestor-or-self'
  45374. case 38009: // 'element' 'ancestor-or-self'
  45375. case 38072: // 'namespace' 'ancestor-or-self'
  45376. case 38104: // 'processing-instruction' 'ancestor-or-self'
  45377. case 39506: // 'attribute' 'append'
  45378. case 39545: // 'element' 'append'
  45379. case 39608: // 'namespace' 'append'
  45380. case 39640: // 'processing-instruction' 'append'
  45381. case 40018: // 'attribute' 'array'
  45382. case 40057: // 'element' 'array'
  45383. case 42066: // 'attribute' 'attribute'
  45384. case 42105: // 'element' 'attribute'
  45385. case 42168: // 'namespace' 'attribute'
  45386. case 42200: // 'processing-instruction' 'attribute'
  45387. case 42578: // 'attribute' 'base-uri'
  45388. case 42617: // 'element' 'base-uri'
  45389. case 42680: // 'namespace' 'base-uri'
  45390. case 42712: // 'processing-instruction' 'base-uri'
  45391. case 43602: // 'attribute' 'boundary-space'
  45392. case 43641: // 'element' 'boundary-space'
  45393. case 43704: // 'namespace' 'boundary-space'
  45394. case 43736: // 'processing-instruction' 'boundary-space'
  45395. case 44114: // 'attribute' 'break'
  45396. case 44153: // 'element' 'break'
  45397. case 44216: // 'namespace' 'break'
  45398. case 44248: // 'processing-instruction' 'break'
  45399. case 46674: // 'attribute' 'catch'
  45400. case 46713: // 'element' 'catch'
  45401. case 46776: // 'namespace' 'catch'
  45402. case 46808: // 'processing-instruction' 'catch'
  45403. case 47698: // 'attribute' 'child'
  45404. case 47737: // 'element' 'child'
  45405. case 47800: // 'namespace' 'child'
  45406. case 47832: // 'processing-instruction' 'child'
  45407. case 49234: // 'attribute' 'comment'
  45408. case 49273: // 'element' 'comment'
  45409. case 49336: // 'namespace' 'comment'
  45410. case 49368: // 'processing-instruction' 'comment'
  45411. case 49746: // 'attribute' 'constraint'
  45412. case 49785: // 'element' 'constraint'
  45413. case 49848: // 'namespace' 'constraint'
  45414. case 49880: // 'processing-instruction' 'constraint'
  45415. case 50258: // 'attribute' 'construction'
  45416. case 50297: // 'element' 'construction'
  45417. case 50360: // 'namespace' 'construction'
  45418. case 50392: // 'processing-instruction' 'construction'
  45419. case 51794: // 'attribute' 'context'
  45420. case 51833: // 'element' 'context'
  45421. case 51896: // 'namespace' 'context'
  45422. case 51928: // 'processing-instruction' 'context'
  45423. case 52306: // 'attribute' 'continue'
  45424. case 52345: // 'element' 'continue'
  45425. case 52408: // 'namespace' 'continue'
  45426. case 52440: // 'processing-instruction' 'continue'
  45427. case 52818: // 'attribute' 'copy'
  45428. case 52857: // 'element' 'copy'
  45429. case 52920: // 'namespace' 'copy'
  45430. case 52952: // 'processing-instruction' 'copy'
  45431. case 53330: // 'attribute' 'copy-namespaces'
  45432. case 53369: // 'element' 'copy-namespaces'
  45433. case 53432: // 'namespace' 'copy-namespaces'
  45434. case 53464: // 'processing-instruction' 'copy-namespaces'
  45435. case 54354: // 'attribute' 'decimal-format'
  45436. case 54393: // 'element' 'decimal-format'
  45437. case 54456: // 'namespace' 'decimal-format'
  45438. case 54488: // 'processing-instruction' 'decimal-format'
  45439. case 55378: // 'attribute' 'declare'
  45440. case 55417: // 'element' 'declare'
  45441. case 55480: // 'namespace' 'declare'
  45442. case 55512: // 'processing-instruction' 'declare'
  45443. case 56402: // 'attribute' 'delete'
  45444. case 56441: // 'element' 'delete'
  45445. case 56504: // 'namespace' 'delete'
  45446. case 56536: // 'processing-instruction' 'delete'
  45447. case 56914: // 'attribute' 'descendant'
  45448. case 56953: // 'element' 'descendant'
  45449. case 57016: // 'namespace' 'descendant'
  45450. case 57048: // 'processing-instruction' 'descendant'
  45451. case 57426: // 'attribute' 'descendant-or-self'
  45452. case 57465: // 'element' 'descendant-or-self'
  45453. case 57528: // 'namespace' 'descendant-or-self'
  45454. case 57560: // 'processing-instruction' 'descendant-or-self'
  45455. case 61010: // 'attribute' 'document'
  45456. case 61049: // 'element' 'document'
  45457. case 61112: // 'namespace' 'document'
  45458. case 61144: // 'processing-instruction' 'document'
  45459. case 61522: // 'attribute' 'document-node'
  45460. case 61561: // 'element' 'document-node'
  45461. case 61624: // 'namespace' 'document-node'
  45462. case 61656: // 'processing-instruction' 'document-node'
  45463. case 62034: // 'attribute' 'element'
  45464. case 62073: // 'element' 'element'
  45465. case 62136: // 'namespace' 'element'
  45466. case 62168: // 'processing-instruction' 'element'
  45467. case 63570: // 'attribute' 'empty-sequence'
  45468. case 63609: // 'element' 'empty-sequence'
  45469. case 63672: // 'namespace' 'empty-sequence'
  45470. case 63704: // 'processing-instruction' 'empty-sequence'
  45471. case 64082: // 'attribute' 'encoding'
  45472. case 64121: // 'element' 'encoding'
  45473. case 64184: // 'namespace' 'encoding'
  45474. case 64216: // 'processing-instruction' 'encoding'
  45475. case 66130: // 'attribute' 'every'
  45476. case 66169: // 'element' 'every'
  45477. case 66232: // 'namespace' 'every'
  45478. case 66264: // 'processing-instruction' 'every'
  45479. case 67666: // 'attribute' 'exit'
  45480. case 67705: // 'element' 'exit'
  45481. case 67768: // 'namespace' 'exit'
  45482. case 67800: // 'processing-instruction' 'exit'
  45483. case 68178: // 'attribute' 'external'
  45484. case 68217: // 'element' 'external'
  45485. case 68280: // 'namespace' 'external'
  45486. case 68312: // 'processing-instruction' 'external'
  45487. case 68690: // 'attribute' 'first'
  45488. case 68729: // 'element' 'first'
  45489. case 68792: // 'namespace' 'first'
  45490. case 68824: // 'processing-instruction' 'first'
  45491. case 69202: // 'attribute' 'following'
  45492. case 69241: // 'element' 'following'
  45493. case 69304: // 'namespace' 'following'
  45494. case 69336: // 'processing-instruction' 'following'
  45495. case 69714: // 'attribute' 'following-sibling'
  45496. case 69753: // 'element' 'following-sibling'
  45497. case 69816: // 'namespace' 'following-sibling'
  45498. case 69848: // 'processing-instruction' 'following-sibling'
  45499. case 72274: // 'attribute' 'ft-option'
  45500. case 72313: // 'element' 'ft-option'
  45501. case 72376: // 'namespace' 'ft-option'
  45502. case 72408: // 'processing-instruction' 'ft-option'
  45503. case 74322: // 'attribute' 'function'
  45504. case 74361: // 'element' 'function'
  45505. case 74424: // 'namespace' 'function'
  45506. case 74456: // 'processing-instruction' 'function'
  45507. case 77906: // 'attribute' 'if'
  45508. case 77945: // 'element' 'if'
  45509. case 78008: // 'namespace' 'if'
  45510. case 78040: // 'processing-instruction' 'if'
  45511. case 78418: // 'attribute' 'import'
  45512. case 78457: // 'element' 'import'
  45513. case 78520: // 'namespace' 'import'
  45514. case 78552: // 'processing-instruction' 'import'
  45515. case 78930: // 'attribute' 'in'
  45516. case 78969: // 'element' 'in'
  45517. case 79032: // 'namespace' 'in'
  45518. case 79064: // 'processing-instruction' 'in'
  45519. case 79442: // 'attribute' 'index'
  45520. case 79481: // 'element' 'index'
  45521. case 79544: // 'namespace' 'index'
  45522. case 79576: // 'processing-instruction' 'index'
  45523. case 81490: // 'attribute' 'insert'
  45524. case 81529: // 'element' 'insert'
  45525. case 81592: // 'namespace' 'insert'
  45526. case 81624: // 'processing-instruction' 'insert'
  45527. case 82514: // 'attribute' 'integrity'
  45528. case 82553: // 'element' 'integrity'
  45529. case 82616: // 'namespace' 'integrity'
  45530. case 82648: // 'processing-instruction' 'integrity'
  45531. case 84562: // 'attribute' 'item'
  45532. case 84601: // 'element' 'item'
  45533. case 84664: // 'namespace' 'item'
  45534. case 84696: // 'processing-instruction' 'item'
  45535. case 85074: // 'attribute' 'json'
  45536. case 85113: // 'element' 'json'
  45537. case 85176: // 'namespace' 'json'
  45538. case 85208: // 'processing-instruction' 'json'
  45539. case 85586: // 'attribute' 'json-item'
  45540. case 85625: // 'element' 'json-item'
  45541. case 87122: // 'attribute' 'last'
  45542. case 87161: // 'element' 'last'
  45543. case 87224: // 'namespace' 'last'
  45544. case 87256: // 'processing-instruction' 'last'
  45545. case 87634: // 'attribute' 'lax'
  45546. case 87673: // 'element' 'lax'
  45547. case 87736: // 'namespace' 'lax'
  45548. case 87768: // 'processing-instruction' 'lax'
  45549. case 90194: // 'attribute' 'loop'
  45550. case 90233: // 'element' 'loop'
  45551. case 90296: // 'namespace' 'loop'
  45552. case 90328: // 'processing-instruction' 'loop'
  45553. case 93266: // 'attribute' 'module'
  45554. case 93305: // 'element' 'module'
  45555. case 93368: // 'namespace' 'module'
  45556. case 93400: // 'processing-instruction' 'module'
  45557. case 94290: // 'attribute' 'namespace'
  45558. case 94329: // 'element' 'namespace'
  45559. case 94392: // 'namespace' 'namespace'
  45560. case 94424: // 'processing-instruction' 'namespace'
  45561. case 94802: // 'attribute' 'namespace-node'
  45562. case 94841: // 'element' 'namespace-node'
  45563. case 94904: // 'namespace' 'namespace-node'
  45564. case 94936: // 'processing-instruction' 'namespace-node'
  45565. case 97874: // 'attribute' 'node'
  45566. case 97913: // 'element' 'node'
  45567. case 97976: // 'namespace' 'node'
  45568. case 98008: // 'processing-instruction' 'node'
  45569. case 98386: // 'attribute' 'nodes'
  45570. case 98425: // 'element' 'nodes'
  45571. case 98488: // 'namespace' 'nodes'
  45572. case 98520: // 'processing-instruction' 'nodes'
  45573. case 99410: // 'attribute' 'object'
  45574. case 99449: // 'element' 'object'
  45575. case 99512: // 'namespace' 'object'
  45576. case 99544: // 'processing-instruction' 'object'
  45577. case 101970: // 'attribute' 'option'
  45578. case 102009: // 'element' 'option'
  45579. case 102072: // 'namespace' 'option'
  45580. case 102104: // 'processing-instruction' 'option'
  45581. case 103506: // 'attribute' 'ordered'
  45582. case 103545: // 'element' 'ordered'
  45583. case 103608: // 'namespace' 'ordered'
  45584. case 103640: // 'processing-instruction' 'ordered'
  45585. case 104018: // 'attribute' 'ordering'
  45586. case 104057: // 'element' 'ordering'
  45587. case 104120: // 'namespace' 'ordering'
  45588. case 104152: // 'processing-instruction' 'ordering'
  45589. case 105554: // 'attribute' 'parent'
  45590. case 105593: // 'element' 'parent'
  45591. case 105656: // 'namespace' 'parent'
  45592. case 105688: // 'processing-instruction' 'parent'
  45593. case 108626: // 'attribute' 'preceding'
  45594. case 108665: // 'element' 'preceding'
  45595. case 108728: // 'namespace' 'preceding'
  45596. case 108760: // 'processing-instruction' 'preceding'
  45597. case 109138: // 'attribute' 'preceding-sibling'
  45598. case 109177: // 'element' 'preceding-sibling'
  45599. case 109240: // 'namespace' 'preceding-sibling'
  45600. case 109272: // 'processing-instruction' 'preceding-sibling'
  45601. case 110674: // 'attribute' 'processing-instruction'
  45602. case 110713: // 'element' 'processing-instruction'
  45603. case 110776: // 'namespace' 'processing-instruction'
  45604. case 110808: // 'processing-instruction' 'processing-instruction'
  45605. case 111698: // 'attribute' 'rename'
  45606. case 111737: // 'element' 'rename'
  45607. case 111800: // 'namespace' 'rename'
  45608. case 111832: // 'processing-instruction' 'rename'
  45609. case 112210: // 'attribute' 'replace'
  45610. case 112249: // 'element' 'replace'
  45611. case 112312: // 'namespace' 'replace'
  45612. case 112344: // 'processing-instruction' 'replace'
  45613. case 113234: // 'attribute' 'returning'
  45614. case 113273: // 'element' 'returning'
  45615. case 113336: // 'namespace' 'returning'
  45616. case 113368: // 'processing-instruction' 'returning'
  45617. case 113746: // 'attribute' 'revalidation'
  45618. case 113785: // 'element' 'revalidation'
  45619. case 113848: // 'namespace' 'revalidation'
  45620. case 113880: // 'processing-instruction' 'revalidation'
  45621. case 115282: // 'attribute' 'schema'
  45622. case 115321: // 'element' 'schema'
  45623. case 115384: // 'namespace' 'schema'
  45624. case 115416: // 'processing-instruction' 'schema'
  45625. case 115794: // 'attribute' 'schema-attribute'
  45626. case 115833: // 'element' 'schema-attribute'
  45627. case 115896: // 'namespace' 'schema-attribute'
  45628. case 115928: // 'processing-instruction' 'schema-attribute'
  45629. case 116306: // 'attribute' 'schema-element'
  45630. case 116345: // 'element' 'schema-element'
  45631. case 116408: // 'namespace' 'schema-element'
  45632. case 116440: // 'processing-instruction' 'schema-element'
  45633. case 116818: // 'attribute' 'score'
  45634. case 116857: // 'element' 'score'
  45635. case 116920: // 'namespace' 'score'
  45636. case 116952: // 'processing-instruction' 'score'
  45637. case 117330: // 'attribute' 'self'
  45638. case 117369: // 'element' 'self'
  45639. case 117432: // 'namespace' 'self'
  45640. case 117464: // 'processing-instruction' 'self'
  45641. case 119890: // 'attribute' 'sliding'
  45642. case 119929: // 'element' 'sliding'
  45643. case 119992: // 'namespace' 'sliding'
  45644. case 120024: // 'processing-instruction' 'sliding'
  45645. case 120402: // 'attribute' 'some'
  45646. case 120441: // 'element' 'some'
  45647. case 120504: // 'namespace' 'some'
  45648. case 120536: // 'processing-instruction' 'some'
  45649. case 122962: // 'attribute' 'strict'
  45650. case 123001: // 'element' 'strict'
  45651. case 123064: // 'namespace' 'strict'
  45652. case 123096: // 'processing-instruction' 'strict'
  45653. case 123986: // 'attribute' 'structured-item'
  45654. case 124025: // 'element' 'structured-item'
  45655. case 124498: // 'attribute' 'switch'
  45656. case 124537: // 'element' 'switch'
  45657. case 124600: // 'namespace' 'switch'
  45658. case 124632: // 'processing-instruction' 'switch'
  45659. case 125010: // 'attribute' 'text'
  45660. case 125049: // 'element' 'text'
  45661. case 125112: // 'namespace' 'text'
  45662. case 125144: // 'processing-instruction' 'text'
  45663. case 128082: // 'attribute' 'try'
  45664. case 128121: // 'element' 'try'
  45665. case 128184: // 'namespace' 'try'
  45666. case 128216: // 'processing-instruction' 'try'
  45667. case 128594: // 'attribute' 'tumbling'
  45668. case 128633: // 'element' 'tumbling'
  45669. case 128696: // 'namespace' 'tumbling'
  45670. case 128728: // 'processing-instruction' 'tumbling'
  45671. case 129106: // 'attribute' 'type'
  45672. case 129145: // 'element' 'type'
  45673. case 129208: // 'namespace' 'type'
  45674. case 129240: // 'processing-instruction' 'type'
  45675. case 129618: // 'attribute' 'typeswitch'
  45676. case 129657: // 'element' 'typeswitch'
  45677. case 129720: // 'namespace' 'typeswitch'
  45678. case 129752: // 'processing-instruction' 'typeswitch'
  45679. case 131154: // 'attribute' 'unordered'
  45680. case 131193: // 'element' 'unordered'
  45681. case 131256: // 'namespace' 'unordered'
  45682. case 131288: // 'processing-instruction' 'unordered'
  45683. case 131666: // 'attribute' 'updating'
  45684. case 131705: // 'element' 'updating'
  45685. case 131768: // 'namespace' 'updating'
  45686. case 131800: // 'processing-instruction' 'updating'
  45687. case 133202: // 'attribute' 'validate'
  45688. case 133241: // 'element' 'validate'
  45689. case 133304: // 'namespace' 'validate'
  45690. case 133336: // 'processing-instruction' 'validate'
  45691. case 133714: // 'attribute' 'value'
  45692. case 133753: // 'element' 'value'
  45693. case 133816: // 'namespace' 'value'
  45694. case 133848: // 'processing-instruction' 'value'
  45695. case 134226: // 'attribute' 'variable'
  45696. case 134265: // 'element' 'variable'
  45697. case 134328: // 'namespace' 'variable'
  45698. case 134360: // 'processing-instruction' 'variable'
  45699. case 134738: // 'attribute' 'version'
  45700. case 134777: // 'element' 'version'
  45701. case 134840: // 'namespace' 'version'
  45702. case 134872: // 'processing-instruction' 'version'
  45703. case 136786: // 'attribute' 'while'
  45704. case 136825: // 'element' 'while'
  45705. case 136888: // 'namespace' 'while'
  45706. case 136920: // 'processing-instruction' 'while'
  45707. case 140370: // 'attribute' 'xquery'
  45708. case 140409: // 'element' 'xquery'
  45709. case 140472: // 'namespace' 'xquery'
  45710. case 140504: // 'processing-instruction' 'xquery'
  45711. case 141394: // 'attribute' '{'
  45712. case 141408: // 'comment' '{'
  45713. case 141431: // 'document' '{'
  45714. case 141433: // 'element' '{'
  45715. case 141496: // 'namespace' '{'
  45716. case 141514: // 'ordered' '{'
  45717. case 141528: // 'processing-instruction' '{'
  45718. case 141556: // 'text' '{'
  45719. case 141568: // 'unordered' '{'
  45720. parse_PostfixExpr();
  45721. break;
  45722. default:
  45723. parse_AxisStep();
  45724. }
  45725. eventHandler.endNonterminal("StepExpr", e0);
  45726. }
  45727. function try_StepExpr()
  45728. {
  45729. switch (l1)
  45730. {
  45731. case 82: // 'attribute'
  45732. lookahead2W(284); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  45733. break;
  45734. case 121: // 'element'
  45735. lookahead2W(282); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  45736. break;
  45737. case 184: // 'namespace'
  45738. case 216: // 'processing-instruction'
  45739. lookahead2W(281); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  45740. break;
  45741. case 96: // 'comment'
  45742. case 119: // 'document'
  45743. case 202: // 'ordered'
  45744. case 244: // 'text'
  45745. case 256: // 'unordered'
  45746. lookahead2W(246); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  45747. break;
  45748. case 78: // 'array'
  45749. case 124: // 'empty-sequence'
  45750. case 152: // 'if'
  45751. case 165: // 'item'
  45752. case 167: // 'json-item'
  45753. case 242: // 'structured-item'
  45754. case 243: // 'switch'
  45755. case 253: // 'typeswitch'
  45756. lookahead2W(239); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  45757. break;
  45758. case 73: // 'ancestor'
  45759. case 74: // 'ancestor-or-self'
  45760. case 93: // 'child'
  45761. case 111: // 'descendant'
  45762. case 112: // 'descendant-or-self'
  45763. case 135: // 'following'
  45764. case 136: // 'following-sibling'
  45765. case 206: // 'parent'
  45766. case 212: // 'preceding'
  45767. case 213: // 'preceding-sibling'
  45768. case 229: // 'self'
  45769. lookahead2W(245); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  45770. break;
  45771. case 6: // EQName^Token
  45772. case 70: // 'after'
  45773. case 72: // 'allowing'
  45774. case 75: // 'and'
  45775. case 77: // 'append'
  45776. case 79: // 'as'
  45777. case 80: // 'ascending'
  45778. case 81: // 'at'
  45779. case 83: // 'base-uri'
  45780. case 84: // 'before'
  45781. case 85: // 'boundary-space'
  45782. case 86: // 'break'
  45783. case 88: // 'case'
  45784. case 89: // 'cast'
  45785. case 90: // 'castable'
  45786. case 91: // 'catch'
  45787. case 94: // 'collation'
  45788. case 97: // 'constraint'
  45789. case 98: // 'construction'
  45790. case 101: // 'context'
  45791. case 102: // 'continue'
  45792. case 103: // 'copy'
  45793. case 104: // 'copy-namespaces'
  45794. case 105: // 'count'
  45795. case 106: // 'decimal-format'
  45796. case 108: // 'declare'
  45797. case 109: // 'default'
  45798. case 110: // 'delete'
  45799. case 113: // 'descending'
  45800. case 118: // 'div'
  45801. case 120: // 'document-node'
  45802. case 122: // 'else'
  45803. case 123: // 'empty'
  45804. case 125: // 'encoding'
  45805. case 126: // 'end'
  45806. case 128: // 'eq'
  45807. case 129: // 'every'
  45808. case 131: // 'except'
  45809. case 132: // 'exit'
  45810. case 133: // 'external'
  45811. case 134: // 'first'
  45812. case 137: // 'for'
  45813. case 141: // 'ft-option'
  45814. case 145: // 'function'
  45815. case 146: // 'ge'
  45816. case 148: // 'group'
  45817. case 150: // 'gt'
  45818. case 151: // 'idiv'
  45819. case 153: // 'import'
  45820. case 154: // 'in'
  45821. case 155: // 'index'
  45822. case 159: // 'insert'
  45823. case 160: // 'instance'
  45824. case 161: // 'integrity'
  45825. case 162: // 'intersect'
  45826. case 163: // 'into'
  45827. case 164: // 'is'
  45828. case 166: // 'json'
  45829. case 170: // 'last'
  45830. case 171: // 'lax'
  45831. case 172: // 'le'
  45832. case 174: // 'let'
  45833. case 176: // 'loop'
  45834. case 178: // 'lt'
  45835. case 180: // 'mod'
  45836. case 181: // 'modify'
  45837. case 182: // 'module'
  45838. case 185: // 'namespace-node'
  45839. case 186: // 'ne'
  45840. case 191: // 'node'
  45841. case 192: // 'nodes'
  45842. case 194: // 'object'
  45843. case 198: // 'only'
  45844. case 199: // 'option'
  45845. case 200: // 'or'
  45846. case 201: // 'order'
  45847. case 203: // 'ordering'
  45848. case 218: // 'rename'
  45849. case 219: // 'replace'
  45850. case 220: // 'return'
  45851. case 221: // 'returning'
  45852. case 222: // 'revalidation'
  45853. case 224: // 'satisfies'
  45854. case 225: // 'schema'
  45855. case 226: // 'schema-attribute'
  45856. case 227: // 'schema-element'
  45857. case 228: // 'score'
  45858. case 234: // 'sliding'
  45859. case 235: // 'some'
  45860. case 236: // 'stable'
  45861. case 237: // 'start'
  45862. case 240: // 'strict'
  45863. case 248: // 'to'
  45864. case 249: // 'treat'
  45865. case 250: // 'try'
  45866. case 251: // 'tumbling'
  45867. case 252: // 'type'
  45868. case 254: // 'union'
  45869. case 257: // 'updating'
  45870. case 260: // 'validate'
  45871. case 261: // 'value'
  45872. case 262: // 'variable'
  45873. case 263: // 'version'
  45874. case 266: // 'where'
  45875. case 267: // 'while'
  45876. case 270: // 'with'
  45877. case 274: // 'xquery'
  45878. lookahead2W(243); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  45879. break;
  45880. default:
  45881. lk = l1;
  45882. }
  45883. if (lk == 35922 // 'attribute' 'after'
  45884. || lk == 35961 // 'element' 'after'
  45885. || lk == 36024 // 'namespace' 'after'
  45886. || lk == 36056 // 'processing-instruction' 'after'
  45887. || lk == 38482 // 'attribute' 'and'
  45888. || lk == 38521 // 'element' 'and'
  45889. || lk == 38584 // 'namespace' 'and'
  45890. || lk == 38616 // 'processing-instruction' 'and'
  45891. || lk == 40530 // 'attribute' 'as'
  45892. || lk == 40569 // 'element' 'as'
  45893. || lk == 40632 // 'namespace' 'as'
  45894. || lk == 40664 // 'processing-instruction' 'as'
  45895. || lk == 41042 // 'attribute' 'ascending'
  45896. || lk == 41081 // 'element' 'ascending'
  45897. || lk == 41144 // 'namespace' 'ascending'
  45898. || lk == 41176 // 'processing-instruction' 'ascending'
  45899. || lk == 41554 // 'attribute' 'at'
  45900. || lk == 41593 // 'element' 'at'
  45901. || lk == 41656 // 'namespace' 'at'
  45902. || lk == 41688 // 'processing-instruction' 'at'
  45903. || lk == 43090 // 'attribute' 'before'
  45904. || lk == 43129 // 'element' 'before'
  45905. || lk == 43192 // 'namespace' 'before'
  45906. || lk == 43224 // 'processing-instruction' 'before'
  45907. || lk == 45138 // 'attribute' 'case'
  45908. || lk == 45177 // 'element' 'case'
  45909. || lk == 45240 // 'namespace' 'case'
  45910. || lk == 45272 // 'processing-instruction' 'case'
  45911. || lk == 45650 // 'attribute' 'cast'
  45912. || lk == 45689 // 'element' 'cast'
  45913. || lk == 45752 // 'namespace' 'cast'
  45914. || lk == 45784 // 'processing-instruction' 'cast'
  45915. || lk == 46162 // 'attribute' 'castable'
  45916. || lk == 46201 // 'element' 'castable'
  45917. || lk == 46264 // 'namespace' 'castable'
  45918. || lk == 46296 // 'processing-instruction' 'castable'
  45919. || lk == 48210 // 'attribute' 'collation'
  45920. || lk == 48249 // 'element' 'collation'
  45921. || lk == 48312 // 'namespace' 'collation'
  45922. || lk == 48344 // 'processing-instruction' 'collation'
  45923. || lk == 53842 // 'attribute' 'count'
  45924. || lk == 53881 // 'element' 'count'
  45925. || lk == 53944 // 'namespace' 'count'
  45926. || lk == 53976 // 'processing-instruction' 'count'
  45927. || lk == 55890 // 'attribute' 'default'
  45928. || lk == 55929 // 'element' 'default'
  45929. || lk == 55992 // 'namespace' 'default'
  45930. || lk == 56024 // 'processing-instruction' 'default'
  45931. || lk == 57938 // 'attribute' 'descending'
  45932. || lk == 57977 // 'element' 'descending'
  45933. || lk == 58040 // 'namespace' 'descending'
  45934. || lk == 58072 // 'processing-instruction' 'descending'
  45935. || lk == 60498 // 'attribute' 'div'
  45936. || lk == 60537 // 'element' 'div'
  45937. || lk == 60600 // 'namespace' 'div'
  45938. || lk == 60632 // 'processing-instruction' 'div'
  45939. || lk == 62546 // 'attribute' 'else'
  45940. || lk == 62585 // 'element' 'else'
  45941. || lk == 62648 // 'namespace' 'else'
  45942. || lk == 62680 // 'processing-instruction' 'else'
  45943. || lk == 63058 // 'attribute' 'empty'
  45944. || lk == 63097 // 'element' 'empty'
  45945. || lk == 63160 // 'namespace' 'empty'
  45946. || lk == 63192 // 'processing-instruction' 'empty'
  45947. || lk == 64594 // 'attribute' 'end'
  45948. || lk == 64633 // 'element' 'end'
  45949. || lk == 64696 // 'namespace' 'end'
  45950. || lk == 64728 // 'processing-instruction' 'end'
  45951. || lk == 65618 // 'attribute' 'eq'
  45952. || lk == 65657 // 'element' 'eq'
  45953. || lk == 65720 // 'namespace' 'eq'
  45954. || lk == 65752 // 'processing-instruction' 'eq'
  45955. || lk == 67154 // 'attribute' 'except'
  45956. || lk == 67193 // 'element' 'except'
  45957. || lk == 67256 // 'namespace' 'except'
  45958. || lk == 67288 // 'processing-instruction' 'except'
  45959. || lk == 70226 // 'attribute' 'for'
  45960. || lk == 70265 // 'element' 'for'
  45961. || lk == 70328 // 'namespace' 'for'
  45962. || lk == 70360 // 'processing-instruction' 'for'
  45963. || lk == 74834 // 'attribute' 'ge'
  45964. || lk == 74873 // 'element' 'ge'
  45965. || lk == 74936 // 'namespace' 'ge'
  45966. || lk == 74968 // 'processing-instruction' 'ge'
  45967. || lk == 75858 // 'attribute' 'group'
  45968. || lk == 75897 // 'element' 'group'
  45969. || lk == 75960 // 'namespace' 'group'
  45970. || lk == 75992 // 'processing-instruction' 'group'
  45971. || lk == 76882 // 'attribute' 'gt'
  45972. || lk == 76921 // 'element' 'gt'
  45973. || lk == 76984 // 'namespace' 'gt'
  45974. || lk == 77016 // 'processing-instruction' 'gt'
  45975. || lk == 77394 // 'attribute' 'idiv'
  45976. || lk == 77433 // 'element' 'idiv'
  45977. || lk == 77496 // 'namespace' 'idiv'
  45978. || lk == 77528 // 'processing-instruction' 'idiv'
  45979. || lk == 82002 // 'attribute' 'instance'
  45980. || lk == 82041 // 'element' 'instance'
  45981. || lk == 82104 // 'namespace' 'instance'
  45982. || lk == 82136 // 'processing-instruction' 'instance'
  45983. || lk == 83026 // 'attribute' 'intersect'
  45984. || lk == 83065 // 'element' 'intersect'
  45985. || lk == 83128 // 'namespace' 'intersect'
  45986. || lk == 83160 // 'processing-instruction' 'intersect'
  45987. || lk == 83538 // 'attribute' 'into'
  45988. || lk == 83577 // 'element' 'into'
  45989. || lk == 83640 // 'namespace' 'into'
  45990. || lk == 83672 // 'processing-instruction' 'into'
  45991. || lk == 84050 // 'attribute' 'is'
  45992. || lk == 84089 // 'element' 'is'
  45993. || lk == 84152 // 'namespace' 'is'
  45994. || lk == 84184 // 'processing-instruction' 'is'
  45995. || lk == 88146 // 'attribute' 'le'
  45996. || lk == 88185 // 'element' 'le'
  45997. || lk == 88248 // 'namespace' 'le'
  45998. || lk == 88280 // 'processing-instruction' 'le'
  45999. || lk == 89170 // 'attribute' 'let'
  46000. || lk == 89209 // 'element' 'let'
  46001. || lk == 89272 // 'namespace' 'let'
  46002. || lk == 89304 // 'processing-instruction' 'let'
  46003. || lk == 91218 // 'attribute' 'lt'
  46004. || lk == 91257 // 'element' 'lt'
  46005. || lk == 91320 // 'namespace' 'lt'
  46006. || lk == 91352 // 'processing-instruction' 'lt'
  46007. || lk == 92242 // 'attribute' 'mod'
  46008. || lk == 92281 // 'element' 'mod'
  46009. || lk == 92344 // 'namespace' 'mod'
  46010. || lk == 92376 // 'processing-instruction' 'mod'
  46011. || lk == 92754 // 'attribute' 'modify'
  46012. || lk == 92793 // 'element' 'modify'
  46013. || lk == 92856 // 'namespace' 'modify'
  46014. || lk == 92888 // 'processing-instruction' 'modify'
  46015. || lk == 95314 // 'attribute' 'ne'
  46016. || lk == 95353 // 'element' 'ne'
  46017. || lk == 95416 // 'namespace' 'ne'
  46018. || lk == 95448 // 'processing-instruction' 'ne'
  46019. || lk == 101458 // 'attribute' 'only'
  46020. || lk == 101497 // 'element' 'only'
  46021. || lk == 101560 // 'namespace' 'only'
  46022. || lk == 101592 // 'processing-instruction' 'only'
  46023. || lk == 102482 // 'attribute' 'or'
  46024. || lk == 102521 // 'element' 'or'
  46025. || lk == 102584 // 'namespace' 'or'
  46026. || lk == 102616 // 'processing-instruction' 'or'
  46027. || lk == 102994 // 'attribute' 'order'
  46028. || lk == 103033 // 'element' 'order'
  46029. || lk == 103096 // 'namespace' 'order'
  46030. || lk == 103128 // 'processing-instruction' 'order'
  46031. || lk == 112722 // 'attribute' 'return'
  46032. || lk == 112761 // 'element' 'return'
  46033. || lk == 112824 // 'namespace' 'return'
  46034. || lk == 112856 // 'processing-instruction' 'return'
  46035. || lk == 114770 // 'attribute' 'satisfies'
  46036. || lk == 114809 // 'element' 'satisfies'
  46037. || lk == 114872 // 'namespace' 'satisfies'
  46038. || lk == 114904 // 'processing-instruction' 'satisfies'
  46039. || lk == 120914 // 'attribute' 'stable'
  46040. || lk == 120953 // 'element' 'stable'
  46041. || lk == 121016 // 'namespace' 'stable'
  46042. || lk == 121048 // 'processing-instruction' 'stable'
  46043. || lk == 121426 // 'attribute' 'start'
  46044. || lk == 121465 // 'element' 'start'
  46045. || lk == 121528 // 'namespace' 'start'
  46046. || lk == 121560 // 'processing-instruction' 'start'
  46047. || lk == 127058 // 'attribute' 'to'
  46048. || lk == 127097 // 'element' 'to'
  46049. || lk == 127160 // 'namespace' 'to'
  46050. || lk == 127192 // 'processing-instruction' 'to'
  46051. || lk == 127570 // 'attribute' 'treat'
  46052. || lk == 127609 // 'element' 'treat'
  46053. || lk == 127672 // 'namespace' 'treat'
  46054. || lk == 127704 // 'processing-instruction' 'treat'
  46055. || lk == 130130 // 'attribute' 'union'
  46056. || lk == 130169 // 'element' 'union'
  46057. || lk == 130232 // 'namespace' 'union'
  46058. || lk == 130264 // 'processing-instruction' 'union'
  46059. || lk == 136274 // 'attribute' 'where'
  46060. || lk == 136313 // 'element' 'where'
  46061. || lk == 136376 // 'namespace' 'where'
  46062. || lk == 136408 // 'processing-instruction' 'where'
  46063. || lk == 138322 // 'attribute' 'with'
  46064. || lk == 138361 // 'element' 'with'
  46065. || lk == 138424 // 'namespace' 'with'
  46066. || lk == 138456) // 'processing-instruction' 'with'
  46067. {
  46068. lk = memoized(4, e0);
  46069. if (lk == 0)
  46070. {
  46071. var b0A = b0; var e0A = e0; var l1A = l1;
  46072. var b1A = b1; var e1A = e1; var l2A = l2;
  46073. var b2A = b2; var e2A = e2;
  46074. try
  46075. {
  46076. try_PostfixExpr();
  46077. memoize(4, e0A, -1);
  46078. lk = -3;
  46079. }
  46080. catch (p1A)
  46081. {
  46082. lk = -2;
  46083. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  46084. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  46085. b2 = b2A; e2 = e2A; end = e2A; }}
  46086. memoize(4, e0A, -2);
  46087. }
  46088. }
  46089. }
  46090. switch (lk)
  46091. {
  46092. case -1:
  46093. case 8: // IntegerLiteral
  46094. case 9: // DecimalLiteral
  46095. case 10: // DoubleLiteral
  46096. case 11: // StringLiteral
  46097. case 31: // '$'
  46098. case 32: // '%'
  46099. case 34: // '('
  46100. case 44: // '.'
  46101. case 54: // '<'
  46102. case 55: // '<!--'
  46103. case 59: // '<?'
  46104. case 68: // '['
  46105. case 276: // '{'
  46106. case 278: // '{|'
  46107. case 3154: // 'attribute' EQName^Token
  46108. case 3193: // 'element' EQName^Token
  46109. case 9912: // 'namespace' NCName^Token
  46110. case 9944: // 'processing-instruction' NCName^Token
  46111. case 14854: // EQName^Token '#'
  46112. case 14918: // 'after' '#'
  46113. case 14920: // 'allowing' '#'
  46114. case 14921: // 'ancestor' '#'
  46115. case 14922: // 'ancestor-or-self' '#'
  46116. case 14923: // 'and' '#'
  46117. case 14925: // 'append' '#'
  46118. case 14926: // 'array' '#'
  46119. case 14927: // 'as' '#'
  46120. case 14928: // 'ascending' '#'
  46121. case 14929: // 'at' '#'
  46122. case 14930: // 'attribute' '#'
  46123. case 14931: // 'base-uri' '#'
  46124. case 14932: // 'before' '#'
  46125. case 14933: // 'boundary-space' '#'
  46126. case 14934: // 'break' '#'
  46127. case 14936: // 'case' '#'
  46128. case 14937: // 'cast' '#'
  46129. case 14938: // 'castable' '#'
  46130. case 14939: // 'catch' '#'
  46131. case 14941: // 'child' '#'
  46132. case 14942: // 'collation' '#'
  46133. case 14944: // 'comment' '#'
  46134. case 14945: // 'constraint' '#'
  46135. case 14946: // 'construction' '#'
  46136. case 14949: // 'context' '#'
  46137. case 14950: // 'continue' '#'
  46138. case 14951: // 'copy' '#'
  46139. case 14952: // 'copy-namespaces' '#'
  46140. case 14953: // 'count' '#'
  46141. case 14954: // 'decimal-format' '#'
  46142. case 14956: // 'declare' '#'
  46143. case 14957: // 'default' '#'
  46144. case 14958: // 'delete' '#'
  46145. case 14959: // 'descendant' '#'
  46146. case 14960: // 'descendant-or-self' '#'
  46147. case 14961: // 'descending' '#'
  46148. case 14966: // 'div' '#'
  46149. case 14967: // 'document' '#'
  46150. case 14968: // 'document-node' '#'
  46151. case 14969: // 'element' '#'
  46152. case 14970: // 'else' '#'
  46153. case 14971: // 'empty' '#'
  46154. case 14972: // 'empty-sequence' '#'
  46155. case 14973: // 'encoding' '#'
  46156. case 14974: // 'end' '#'
  46157. case 14976: // 'eq' '#'
  46158. case 14977: // 'every' '#'
  46159. case 14979: // 'except' '#'
  46160. case 14980: // 'exit' '#'
  46161. case 14981: // 'external' '#'
  46162. case 14982: // 'first' '#'
  46163. case 14983: // 'following' '#'
  46164. case 14984: // 'following-sibling' '#'
  46165. case 14985: // 'for' '#'
  46166. case 14989: // 'ft-option' '#'
  46167. case 14993: // 'function' '#'
  46168. case 14994: // 'ge' '#'
  46169. case 14996: // 'group' '#'
  46170. case 14998: // 'gt' '#'
  46171. case 14999: // 'idiv' '#'
  46172. case 15000: // 'if' '#'
  46173. case 15001: // 'import' '#'
  46174. case 15002: // 'in' '#'
  46175. case 15003: // 'index' '#'
  46176. case 15007: // 'insert' '#'
  46177. case 15008: // 'instance' '#'
  46178. case 15009: // 'integrity' '#'
  46179. case 15010: // 'intersect' '#'
  46180. case 15011: // 'into' '#'
  46181. case 15012: // 'is' '#'
  46182. case 15013: // 'item' '#'
  46183. case 15014: // 'json' '#'
  46184. case 15015: // 'json-item' '#'
  46185. case 15018: // 'last' '#'
  46186. case 15019: // 'lax' '#'
  46187. case 15020: // 'le' '#'
  46188. case 15022: // 'let' '#'
  46189. case 15024: // 'loop' '#'
  46190. case 15026: // 'lt' '#'
  46191. case 15028: // 'mod' '#'
  46192. case 15029: // 'modify' '#'
  46193. case 15030: // 'module' '#'
  46194. case 15032: // 'namespace' '#'
  46195. case 15033: // 'namespace-node' '#'
  46196. case 15034: // 'ne' '#'
  46197. case 15039: // 'node' '#'
  46198. case 15040: // 'nodes' '#'
  46199. case 15042: // 'object' '#'
  46200. case 15046: // 'only' '#'
  46201. case 15047: // 'option' '#'
  46202. case 15048: // 'or' '#'
  46203. case 15049: // 'order' '#'
  46204. case 15050: // 'ordered' '#'
  46205. case 15051: // 'ordering' '#'
  46206. case 15054: // 'parent' '#'
  46207. case 15060: // 'preceding' '#'
  46208. case 15061: // 'preceding-sibling' '#'
  46209. case 15064: // 'processing-instruction' '#'
  46210. case 15066: // 'rename' '#'
  46211. case 15067: // 'replace' '#'
  46212. case 15068: // 'return' '#'
  46213. case 15069: // 'returning' '#'
  46214. case 15070: // 'revalidation' '#'
  46215. case 15072: // 'satisfies' '#'
  46216. case 15073: // 'schema' '#'
  46217. case 15074: // 'schema-attribute' '#'
  46218. case 15075: // 'schema-element' '#'
  46219. case 15076: // 'score' '#'
  46220. case 15077: // 'self' '#'
  46221. case 15082: // 'sliding' '#'
  46222. case 15083: // 'some' '#'
  46223. case 15084: // 'stable' '#'
  46224. case 15085: // 'start' '#'
  46225. case 15088: // 'strict' '#'
  46226. case 15090: // 'structured-item' '#'
  46227. case 15091: // 'switch' '#'
  46228. case 15092: // 'text' '#'
  46229. case 15096: // 'to' '#'
  46230. case 15097: // 'treat' '#'
  46231. case 15098: // 'try' '#'
  46232. case 15099: // 'tumbling' '#'
  46233. case 15100: // 'type' '#'
  46234. case 15101: // 'typeswitch' '#'
  46235. case 15102: // 'union' '#'
  46236. case 15104: // 'unordered' '#'
  46237. case 15105: // 'updating' '#'
  46238. case 15108: // 'validate' '#'
  46239. case 15109: // 'value' '#'
  46240. case 15110: // 'variable' '#'
  46241. case 15111: // 'version' '#'
  46242. case 15114: // 'where' '#'
  46243. case 15115: // 'while' '#'
  46244. case 15118: // 'with' '#'
  46245. case 15122: // 'xquery' '#'
  46246. case 17414: // EQName^Token '('
  46247. case 17478: // 'after' '('
  46248. case 17480: // 'allowing' '('
  46249. case 17481: // 'ancestor' '('
  46250. case 17482: // 'ancestor-or-self' '('
  46251. case 17483: // 'and' '('
  46252. case 17485: // 'append' '('
  46253. case 17487: // 'as' '('
  46254. case 17488: // 'ascending' '('
  46255. case 17489: // 'at' '('
  46256. case 17491: // 'base-uri' '('
  46257. case 17492: // 'before' '('
  46258. case 17493: // 'boundary-space' '('
  46259. case 17494: // 'break' '('
  46260. case 17496: // 'case' '('
  46261. case 17497: // 'cast' '('
  46262. case 17498: // 'castable' '('
  46263. case 17499: // 'catch' '('
  46264. case 17501: // 'child' '('
  46265. case 17502: // 'collation' '('
  46266. case 17505: // 'constraint' '('
  46267. case 17506: // 'construction' '('
  46268. case 17509: // 'context' '('
  46269. case 17510: // 'continue' '('
  46270. case 17511: // 'copy' '('
  46271. case 17512: // 'copy-namespaces' '('
  46272. case 17513: // 'count' '('
  46273. case 17514: // 'decimal-format' '('
  46274. case 17516: // 'declare' '('
  46275. case 17517: // 'default' '('
  46276. case 17518: // 'delete' '('
  46277. case 17519: // 'descendant' '('
  46278. case 17520: // 'descendant-or-self' '('
  46279. case 17521: // 'descending' '('
  46280. case 17526: // 'div' '('
  46281. case 17527: // 'document' '('
  46282. case 17530: // 'else' '('
  46283. case 17531: // 'empty' '('
  46284. case 17533: // 'encoding' '('
  46285. case 17534: // 'end' '('
  46286. case 17536: // 'eq' '('
  46287. case 17537: // 'every' '('
  46288. case 17539: // 'except' '('
  46289. case 17540: // 'exit' '('
  46290. case 17541: // 'external' '('
  46291. case 17542: // 'first' '('
  46292. case 17543: // 'following' '('
  46293. case 17544: // 'following-sibling' '('
  46294. case 17545: // 'for' '('
  46295. case 17549: // 'ft-option' '('
  46296. case 17553: // 'function' '('
  46297. case 17554: // 'ge' '('
  46298. case 17556: // 'group' '('
  46299. case 17558: // 'gt' '('
  46300. case 17559: // 'idiv' '('
  46301. case 17561: // 'import' '('
  46302. case 17562: // 'in' '('
  46303. case 17563: // 'index' '('
  46304. case 17567: // 'insert' '('
  46305. case 17568: // 'instance' '('
  46306. case 17569: // 'integrity' '('
  46307. case 17570: // 'intersect' '('
  46308. case 17571: // 'into' '('
  46309. case 17572: // 'is' '('
  46310. case 17574: // 'json' '('
  46311. case 17578: // 'last' '('
  46312. case 17579: // 'lax' '('
  46313. case 17580: // 'le' '('
  46314. case 17582: // 'let' '('
  46315. case 17584: // 'loop' '('
  46316. case 17586: // 'lt' '('
  46317. case 17588: // 'mod' '('
  46318. case 17589: // 'modify' '('
  46319. case 17590: // 'module' '('
  46320. case 17592: // 'namespace' '('
  46321. case 17594: // 'ne' '('
  46322. case 17600: // 'nodes' '('
  46323. case 17602: // 'object' '('
  46324. case 17606: // 'only' '('
  46325. case 17607: // 'option' '('
  46326. case 17608: // 'or' '('
  46327. case 17609: // 'order' '('
  46328. case 17610: // 'ordered' '('
  46329. case 17611: // 'ordering' '('
  46330. case 17614: // 'parent' '('
  46331. case 17620: // 'preceding' '('
  46332. case 17621: // 'preceding-sibling' '('
  46333. case 17626: // 'rename' '('
  46334. case 17627: // 'replace' '('
  46335. case 17628: // 'return' '('
  46336. case 17629: // 'returning' '('
  46337. case 17630: // 'revalidation' '('
  46338. case 17632: // 'satisfies' '('
  46339. case 17633: // 'schema' '('
  46340. case 17636: // 'score' '('
  46341. case 17637: // 'self' '('
  46342. case 17642: // 'sliding' '('
  46343. case 17643: // 'some' '('
  46344. case 17644: // 'stable' '('
  46345. case 17645: // 'start' '('
  46346. case 17648: // 'strict' '('
  46347. case 17656: // 'to' '('
  46348. case 17657: // 'treat' '('
  46349. case 17658: // 'try' '('
  46350. case 17659: // 'tumbling' '('
  46351. case 17660: // 'type' '('
  46352. case 17662: // 'union' '('
  46353. case 17664: // 'unordered' '('
  46354. case 17665: // 'updating' '('
  46355. case 17668: // 'validate' '('
  46356. case 17669: // 'value' '('
  46357. case 17670: // 'variable' '('
  46358. case 17671: // 'version' '('
  46359. case 17674: // 'where' '('
  46360. case 17675: // 'while' '('
  46361. case 17678: // 'with' '('
  46362. case 17682: // 'xquery' '('
  46363. case 36946: // 'attribute' 'allowing'
  46364. case 36985: // 'element' 'allowing'
  46365. case 37048: // 'namespace' 'allowing'
  46366. case 37080: // 'processing-instruction' 'allowing'
  46367. case 37458: // 'attribute' 'ancestor'
  46368. case 37497: // 'element' 'ancestor'
  46369. case 37560: // 'namespace' 'ancestor'
  46370. case 37592: // 'processing-instruction' 'ancestor'
  46371. case 37970: // 'attribute' 'ancestor-or-self'
  46372. case 38009: // 'element' 'ancestor-or-self'
  46373. case 38072: // 'namespace' 'ancestor-or-self'
  46374. case 38104: // 'processing-instruction' 'ancestor-or-self'
  46375. case 39506: // 'attribute' 'append'
  46376. case 39545: // 'element' 'append'
  46377. case 39608: // 'namespace' 'append'
  46378. case 39640: // 'processing-instruction' 'append'
  46379. case 40018: // 'attribute' 'array'
  46380. case 40057: // 'element' 'array'
  46381. case 42066: // 'attribute' 'attribute'
  46382. case 42105: // 'element' 'attribute'
  46383. case 42168: // 'namespace' 'attribute'
  46384. case 42200: // 'processing-instruction' 'attribute'
  46385. case 42578: // 'attribute' 'base-uri'
  46386. case 42617: // 'element' 'base-uri'
  46387. case 42680: // 'namespace' 'base-uri'
  46388. case 42712: // 'processing-instruction' 'base-uri'
  46389. case 43602: // 'attribute' 'boundary-space'
  46390. case 43641: // 'element' 'boundary-space'
  46391. case 43704: // 'namespace' 'boundary-space'
  46392. case 43736: // 'processing-instruction' 'boundary-space'
  46393. case 44114: // 'attribute' 'break'
  46394. case 44153: // 'element' 'break'
  46395. case 44216: // 'namespace' 'break'
  46396. case 44248: // 'processing-instruction' 'break'
  46397. case 46674: // 'attribute' 'catch'
  46398. case 46713: // 'element' 'catch'
  46399. case 46776: // 'namespace' 'catch'
  46400. case 46808: // 'processing-instruction' 'catch'
  46401. case 47698: // 'attribute' 'child'
  46402. case 47737: // 'element' 'child'
  46403. case 47800: // 'namespace' 'child'
  46404. case 47832: // 'processing-instruction' 'child'
  46405. case 49234: // 'attribute' 'comment'
  46406. case 49273: // 'element' 'comment'
  46407. case 49336: // 'namespace' 'comment'
  46408. case 49368: // 'processing-instruction' 'comment'
  46409. case 49746: // 'attribute' 'constraint'
  46410. case 49785: // 'element' 'constraint'
  46411. case 49848: // 'namespace' 'constraint'
  46412. case 49880: // 'processing-instruction' 'constraint'
  46413. case 50258: // 'attribute' 'construction'
  46414. case 50297: // 'element' 'construction'
  46415. case 50360: // 'namespace' 'construction'
  46416. case 50392: // 'processing-instruction' 'construction'
  46417. case 51794: // 'attribute' 'context'
  46418. case 51833: // 'element' 'context'
  46419. case 51896: // 'namespace' 'context'
  46420. case 51928: // 'processing-instruction' 'context'
  46421. case 52306: // 'attribute' 'continue'
  46422. case 52345: // 'element' 'continue'
  46423. case 52408: // 'namespace' 'continue'
  46424. case 52440: // 'processing-instruction' 'continue'
  46425. case 52818: // 'attribute' 'copy'
  46426. case 52857: // 'element' 'copy'
  46427. case 52920: // 'namespace' 'copy'
  46428. case 52952: // 'processing-instruction' 'copy'
  46429. case 53330: // 'attribute' 'copy-namespaces'
  46430. case 53369: // 'element' 'copy-namespaces'
  46431. case 53432: // 'namespace' 'copy-namespaces'
  46432. case 53464: // 'processing-instruction' 'copy-namespaces'
  46433. case 54354: // 'attribute' 'decimal-format'
  46434. case 54393: // 'element' 'decimal-format'
  46435. case 54456: // 'namespace' 'decimal-format'
  46436. case 54488: // 'processing-instruction' 'decimal-format'
  46437. case 55378: // 'attribute' 'declare'
  46438. case 55417: // 'element' 'declare'
  46439. case 55480: // 'namespace' 'declare'
  46440. case 55512: // 'processing-instruction' 'declare'
  46441. case 56402: // 'attribute' 'delete'
  46442. case 56441: // 'element' 'delete'
  46443. case 56504: // 'namespace' 'delete'
  46444. case 56536: // 'processing-instruction' 'delete'
  46445. case 56914: // 'attribute' 'descendant'
  46446. case 56953: // 'element' 'descendant'
  46447. case 57016: // 'namespace' 'descendant'
  46448. case 57048: // 'processing-instruction' 'descendant'
  46449. case 57426: // 'attribute' 'descendant-or-self'
  46450. case 57465: // 'element' 'descendant-or-self'
  46451. case 57528: // 'namespace' 'descendant-or-self'
  46452. case 57560: // 'processing-instruction' 'descendant-or-self'
  46453. case 61010: // 'attribute' 'document'
  46454. case 61049: // 'element' 'document'
  46455. case 61112: // 'namespace' 'document'
  46456. case 61144: // 'processing-instruction' 'document'
  46457. case 61522: // 'attribute' 'document-node'
  46458. case 61561: // 'element' 'document-node'
  46459. case 61624: // 'namespace' 'document-node'
  46460. case 61656: // 'processing-instruction' 'document-node'
  46461. case 62034: // 'attribute' 'element'
  46462. case 62073: // 'element' 'element'
  46463. case 62136: // 'namespace' 'element'
  46464. case 62168: // 'processing-instruction' 'element'
  46465. case 63570: // 'attribute' 'empty-sequence'
  46466. case 63609: // 'element' 'empty-sequence'
  46467. case 63672: // 'namespace' 'empty-sequence'
  46468. case 63704: // 'processing-instruction' 'empty-sequence'
  46469. case 64082: // 'attribute' 'encoding'
  46470. case 64121: // 'element' 'encoding'
  46471. case 64184: // 'namespace' 'encoding'
  46472. case 64216: // 'processing-instruction' 'encoding'
  46473. case 66130: // 'attribute' 'every'
  46474. case 66169: // 'element' 'every'
  46475. case 66232: // 'namespace' 'every'
  46476. case 66264: // 'processing-instruction' 'every'
  46477. case 67666: // 'attribute' 'exit'
  46478. case 67705: // 'element' 'exit'
  46479. case 67768: // 'namespace' 'exit'
  46480. case 67800: // 'processing-instruction' 'exit'
  46481. case 68178: // 'attribute' 'external'
  46482. case 68217: // 'element' 'external'
  46483. case 68280: // 'namespace' 'external'
  46484. case 68312: // 'processing-instruction' 'external'
  46485. case 68690: // 'attribute' 'first'
  46486. case 68729: // 'element' 'first'
  46487. case 68792: // 'namespace' 'first'
  46488. case 68824: // 'processing-instruction' 'first'
  46489. case 69202: // 'attribute' 'following'
  46490. case 69241: // 'element' 'following'
  46491. case 69304: // 'namespace' 'following'
  46492. case 69336: // 'processing-instruction' 'following'
  46493. case 69714: // 'attribute' 'following-sibling'
  46494. case 69753: // 'element' 'following-sibling'
  46495. case 69816: // 'namespace' 'following-sibling'
  46496. case 69848: // 'processing-instruction' 'following-sibling'
  46497. case 72274: // 'attribute' 'ft-option'
  46498. case 72313: // 'element' 'ft-option'
  46499. case 72376: // 'namespace' 'ft-option'
  46500. case 72408: // 'processing-instruction' 'ft-option'
  46501. case 74322: // 'attribute' 'function'
  46502. case 74361: // 'element' 'function'
  46503. case 74424: // 'namespace' 'function'
  46504. case 74456: // 'processing-instruction' 'function'
  46505. case 77906: // 'attribute' 'if'
  46506. case 77945: // 'element' 'if'
  46507. case 78008: // 'namespace' 'if'
  46508. case 78040: // 'processing-instruction' 'if'
  46509. case 78418: // 'attribute' 'import'
  46510. case 78457: // 'element' 'import'
  46511. case 78520: // 'namespace' 'import'
  46512. case 78552: // 'processing-instruction' 'import'
  46513. case 78930: // 'attribute' 'in'
  46514. case 78969: // 'element' 'in'
  46515. case 79032: // 'namespace' 'in'
  46516. case 79064: // 'processing-instruction' 'in'
  46517. case 79442: // 'attribute' 'index'
  46518. case 79481: // 'element' 'index'
  46519. case 79544: // 'namespace' 'index'
  46520. case 79576: // 'processing-instruction' 'index'
  46521. case 81490: // 'attribute' 'insert'
  46522. case 81529: // 'element' 'insert'
  46523. case 81592: // 'namespace' 'insert'
  46524. case 81624: // 'processing-instruction' 'insert'
  46525. case 82514: // 'attribute' 'integrity'
  46526. case 82553: // 'element' 'integrity'
  46527. case 82616: // 'namespace' 'integrity'
  46528. case 82648: // 'processing-instruction' 'integrity'
  46529. case 84562: // 'attribute' 'item'
  46530. case 84601: // 'element' 'item'
  46531. case 84664: // 'namespace' 'item'
  46532. case 84696: // 'processing-instruction' 'item'
  46533. case 85074: // 'attribute' 'json'
  46534. case 85113: // 'element' 'json'
  46535. case 85176: // 'namespace' 'json'
  46536. case 85208: // 'processing-instruction' 'json'
  46537. case 85586: // 'attribute' 'json-item'
  46538. case 85625: // 'element' 'json-item'
  46539. case 87122: // 'attribute' 'last'
  46540. case 87161: // 'element' 'last'
  46541. case 87224: // 'namespace' 'last'
  46542. case 87256: // 'processing-instruction' 'last'
  46543. case 87634: // 'attribute' 'lax'
  46544. case 87673: // 'element' 'lax'
  46545. case 87736: // 'namespace' 'lax'
  46546. case 87768: // 'processing-instruction' 'lax'
  46547. case 90194: // 'attribute' 'loop'
  46548. case 90233: // 'element' 'loop'
  46549. case 90296: // 'namespace' 'loop'
  46550. case 90328: // 'processing-instruction' 'loop'
  46551. case 93266: // 'attribute' 'module'
  46552. case 93305: // 'element' 'module'
  46553. case 93368: // 'namespace' 'module'
  46554. case 93400: // 'processing-instruction' 'module'
  46555. case 94290: // 'attribute' 'namespace'
  46556. case 94329: // 'element' 'namespace'
  46557. case 94392: // 'namespace' 'namespace'
  46558. case 94424: // 'processing-instruction' 'namespace'
  46559. case 94802: // 'attribute' 'namespace-node'
  46560. case 94841: // 'element' 'namespace-node'
  46561. case 94904: // 'namespace' 'namespace-node'
  46562. case 94936: // 'processing-instruction' 'namespace-node'
  46563. case 97874: // 'attribute' 'node'
  46564. case 97913: // 'element' 'node'
  46565. case 97976: // 'namespace' 'node'
  46566. case 98008: // 'processing-instruction' 'node'
  46567. case 98386: // 'attribute' 'nodes'
  46568. case 98425: // 'element' 'nodes'
  46569. case 98488: // 'namespace' 'nodes'
  46570. case 98520: // 'processing-instruction' 'nodes'
  46571. case 99410: // 'attribute' 'object'
  46572. case 99449: // 'element' 'object'
  46573. case 99512: // 'namespace' 'object'
  46574. case 99544: // 'processing-instruction' 'object'
  46575. case 101970: // 'attribute' 'option'
  46576. case 102009: // 'element' 'option'
  46577. case 102072: // 'namespace' 'option'
  46578. case 102104: // 'processing-instruction' 'option'
  46579. case 103506: // 'attribute' 'ordered'
  46580. case 103545: // 'element' 'ordered'
  46581. case 103608: // 'namespace' 'ordered'
  46582. case 103640: // 'processing-instruction' 'ordered'
  46583. case 104018: // 'attribute' 'ordering'
  46584. case 104057: // 'element' 'ordering'
  46585. case 104120: // 'namespace' 'ordering'
  46586. case 104152: // 'processing-instruction' 'ordering'
  46587. case 105554: // 'attribute' 'parent'
  46588. case 105593: // 'element' 'parent'
  46589. case 105656: // 'namespace' 'parent'
  46590. case 105688: // 'processing-instruction' 'parent'
  46591. case 108626: // 'attribute' 'preceding'
  46592. case 108665: // 'element' 'preceding'
  46593. case 108728: // 'namespace' 'preceding'
  46594. case 108760: // 'processing-instruction' 'preceding'
  46595. case 109138: // 'attribute' 'preceding-sibling'
  46596. case 109177: // 'element' 'preceding-sibling'
  46597. case 109240: // 'namespace' 'preceding-sibling'
  46598. case 109272: // 'processing-instruction' 'preceding-sibling'
  46599. case 110674: // 'attribute' 'processing-instruction'
  46600. case 110713: // 'element' 'processing-instruction'
  46601. case 110776: // 'namespace' 'processing-instruction'
  46602. case 110808: // 'processing-instruction' 'processing-instruction'
  46603. case 111698: // 'attribute' 'rename'
  46604. case 111737: // 'element' 'rename'
  46605. case 111800: // 'namespace' 'rename'
  46606. case 111832: // 'processing-instruction' 'rename'
  46607. case 112210: // 'attribute' 'replace'
  46608. case 112249: // 'element' 'replace'
  46609. case 112312: // 'namespace' 'replace'
  46610. case 112344: // 'processing-instruction' 'replace'
  46611. case 113234: // 'attribute' 'returning'
  46612. case 113273: // 'element' 'returning'
  46613. case 113336: // 'namespace' 'returning'
  46614. case 113368: // 'processing-instruction' 'returning'
  46615. case 113746: // 'attribute' 'revalidation'
  46616. case 113785: // 'element' 'revalidation'
  46617. case 113848: // 'namespace' 'revalidation'
  46618. case 113880: // 'processing-instruction' 'revalidation'
  46619. case 115282: // 'attribute' 'schema'
  46620. case 115321: // 'element' 'schema'
  46621. case 115384: // 'namespace' 'schema'
  46622. case 115416: // 'processing-instruction' 'schema'
  46623. case 115794: // 'attribute' 'schema-attribute'
  46624. case 115833: // 'element' 'schema-attribute'
  46625. case 115896: // 'namespace' 'schema-attribute'
  46626. case 115928: // 'processing-instruction' 'schema-attribute'
  46627. case 116306: // 'attribute' 'schema-element'
  46628. case 116345: // 'element' 'schema-element'
  46629. case 116408: // 'namespace' 'schema-element'
  46630. case 116440: // 'processing-instruction' 'schema-element'
  46631. case 116818: // 'attribute' 'score'
  46632. case 116857: // 'element' 'score'
  46633. case 116920: // 'namespace' 'score'
  46634. case 116952: // 'processing-instruction' 'score'
  46635. case 117330: // 'attribute' 'self'
  46636. case 117369: // 'element' 'self'
  46637. case 117432: // 'namespace' 'self'
  46638. case 117464: // 'processing-instruction' 'self'
  46639. case 119890: // 'attribute' 'sliding'
  46640. case 119929: // 'element' 'sliding'
  46641. case 119992: // 'namespace' 'sliding'
  46642. case 120024: // 'processing-instruction' 'sliding'
  46643. case 120402: // 'attribute' 'some'
  46644. case 120441: // 'element' 'some'
  46645. case 120504: // 'namespace' 'some'
  46646. case 120536: // 'processing-instruction' 'some'
  46647. case 122962: // 'attribute' 'strict'
  46648. case 123001: // 'element' 'strict'
  46649. case 123064: // 'namespace' 'strict'
  46650. case 123096: // 'processing-instruction' 'strict'
  46651. case 123986: // 'attribute' 'structured-item'
  46652. case 124025: // 'element' 'structured-item'
  46653. case 124498: // 'attribute' 'switch'
  46654. case 124537: // 'element' 'switch'
  46655. case 124600: // 'namespace' 'switch'
  46656. case 124632: // 'processing-instruction' 'switch'
  46657. case 125010: // 'attribute' 'text'
  46658. case 125049: // 'element' 'text'
  46659. case 125112: // 'namespace' 'text'
  46660. case 125144: // 'processing-instruction' 'text'
  46661. case 128082: // 'attribute' 'try'
  46662. case 128121: // 'element' 'try'
  46663. case 128184: // 'namespace' 'try'
  46664. case 128216: // 'processing-instruction' 'try'
  46665. case 128594: // 'attribute' 'tumbling'
  46666. case 128633: // 'element' 'tumbling'
  46667. case 128696: // 'namespace' 'tumbling'
  46668. case 128728: // 'processing-instruction' 'tumbling'
  46669. case 129106: // 'attribute' 'type'
  46670. case 129145: // 'element' 'type'
  46671. case 129208: // 'namespace' 'type'
  46672. case 129240: // 'processing-instruction' 'type'
  46673. case 129618: // 'attribute' 'typeswitch'
  46674. case 129657: // 'element' 'typeswitch'
  46675. case 129720: // 'namespace' 'typeswitch'
  46676. case 129752: // 'processing-instruction' 'typeswitch'
  46677. case 131154: // 'attribute' 'unordered'
  46678. case 131193: // 'element' 'unordered'
  46679. case 131256: // 'namespace' 'unordered'
  46680. case 131288: // 'processing-instruction' 'unordered'
  46681. case 131666: // 'attribute' 'updating'
  46682. case 131705: // 'element' 'updating'
  46683. case 131768: // 'namespace' 'updating'
  46684. case 131800: // 'processing-instruction' 'updating'
  46685. case 133202: // 'attribute' 'validate'
  46686. case 133241: // 'element' 'validate'
  46687. case 133304: // 'namespace' 'validate'
  46688. case 133336: // 'processing-instruction' 'validate'
  46689. case 133714: // 'attribute' 'value'
  46690. case 133753: // 'element' 'value'
  46691. case 133816: // 'namespace' 'value'
  46692. case 133848: // 'processing-instruction' 'value'
  46693. case 134226: // 'attribute' 'variable'
  46694. case 134265: // 'element' 'variable'
  46695. case 134328: // 'namespace' 'variable'
  46696. case 134360: // 'processing-instruction' 'variable'
  46697. case 134738: // 'attribute' 'version'
  46698. case 134777: // 'element' 'version'
  46699. case 134840: // 'namespace' 'version'
  46700. case 134872: // 'processing-instruction' 'version'
  46701. case 136786: // 'attribute' 'while'
  46702. case 136825: // 'element' 'while'
  46703. case 136888: // 'namespace' 'while'
  46704. case 136920: // 'processing-instruction' 'while'
  46705. case 140370: // 'attribute' 'xquery'
  46706. case 140409: // 'element' 'xquery'
  46707. case 140472: // 'namespace' 'xquery'
  46708. case 140504: // 'processing-instruction' 'xquery'
  46709. case 141394: // 'attribute' '{'
  46710. case 141408: // 'comment' '{'
  46711. case 141431: // 'document' '{'
  46712. case 141433: // 'element' '{'
  46713. case 141496: // 'namespace' '{'
  46714. case 141514: // 'ordered' '{'
  46715. case 141528: // 'processing-instruction' '{'
  46716. case 141556: // 'text' '{'
  46717. case 141568: // 'unordered' '{'
  46718. try_PostfixExpr();
  46719. break;
  46720. case -3:
  46721. break;
  46722. default:
  46723. try_AxisStep();
  46724. }
  46725. }
  46726. function parse_AxisStep()
  46727. {
  46728. eventHandler.startNonterminal("AxisStep", e0);
  46729. switch (l1)
  46730. {
  46731. case 73: // 'ancestor'
  46732. case 74: // 'ancestor-or-self'
  46733. case 206: // 'parent'
  46734. case 212: // 'preceding'
  46735. case 213: // 'preceding-sibling'
  46736. lookahead2W(241); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46737. break;
  46738. default:
  46739. lk = l1;
  46740. }
  46741. switch (lk)
  46742. {
  46743. case 45: // '..'
  46744. case 26185: // 'ancestor' '::'
  46745. case 26186: // 'ancestor-or-self' '::'
  46746. case 26318: // 'parent' '::'
  46747. case 26324: // 'preceding' '::'
  46748. case 26325: // 'preceding-sibling' '::'
  46749. parse_ReverseStep();
  46750. break;
  46751. default:
  46752. parse_ForwardStep();
  46753. }
  46754. lookahead1W(237); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46755. whitespace();
  46756. parse_PredicateList();
  46757. eventHandler.endNonterminal("AxisStep", e0);
  46758. }
  46759. function try_AxisStep()
  46760. {
  46761. switch (l1)
  46762. {
  46763. case 73: // 'ancestor'
  46764. case 74: // 'ancestor-or-self'
  46765. case 206: // 'parent'
  46766. case 212: // 'preceding'
  46767. case 213: // 'preceding-sibling'
  46768. lookahead2W(241); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46769. break;
  46770. default:
  46771. lk = l1;
  46772. }
  46773. switch (lk)
  46774. {
  46775. case 45: // '..'
  46776. case 26185: // 'ancestor' '::'
  46777. case 26186: // 'ancestor-or-self' '::'
  46778. case 26318: // 'parent' '::'
  46779. case 26324: // 'preceding' '::'
  46780. case 26325: // 'preceding-sibling' '::'
  46781. try_ReverseStep();
  46782. break;
  46783. default:
  46784. try_ForwardStep();
  46785. }
  46786. lookahead1W(237); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46787. try_PredicateList();
  46788. }
  46789. function parse_ForwardStep()
  46790. {
  46791. eventHandler.startNonterminal("ForwardStep", e0);
  46792. switch (l1)
  46793. {
  46794. case 82: // 'attribute'
  46795. lookahead2W(244); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  46796. break;
  46797. case 93: // 'child'
  46798. case 111: // 'descendant'
  46799. case 112: // 'descendant-or-self'
  46800. case 135: // 'following'
  46801. case 136: // 'following-sibling'
  46802. case 229: // 'self'
  46803. lookahead2W(241); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46804. break;
  46805. default:
  46806. lk = l1;
  46807. }
  46808. switch (lk)
  46809. {
  46810. case 26194: // 'attribute' '::'
  46811. case 26205: // 'child' '::'
  46812. case 26223: // 'descendant' '::'
  46813. case 26224: // 'descendant-or-self' '::'
  46814. case 26247: // 'following' '::'
  46815. case 26248: // 'following-sibling' '::'
  46816. case 26341: // 'self' '::'
  46817. parse_ForwardAxis();
  46818. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46819. whitespace();
  46820. parse_NodeTest();
  46821. break;
  46822. default:
  46823. parse_AbbrevForwardStep();
  46824. }
  46825. eventHandler.endNonterminal("ForwardStep", e0);
  46826. }
  46827. function try_ForwardStep()
  46828. {
  46829. switch (l1)
  46830. {
  46831. case 82: // 'attribute'
  46832. lookahead2W(244); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  46833. break;
  46834. case 93: // 'child'
  46835. case 111: // 'descendant'
  46836. case 112: // 'descendant-or-self'
  46837. case 135: // 'following'
  46838. case 136: // 'following-sibling'
  46839. case 229: // 'self'
  46840. lookahead2W(241); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  46841. break;
  46842. default:
  46843. lk = l1;
  46844. }
  46845. switch (lk)
  46846. {
  46847. case 26194: // 'attribute' '::'
  46848. case 26205: // 'child' '::'
  46849. case 26223: // 'descendant' '::'
  46850. case 26224: // 'descendant-or-self' '::'
  46851. case 26247: // 'following' '::'
  46852. case 26248: // 'following-sibling' '::'
  46853. case 26341: // 'self' '::'
  46854. try_ForwardAxis();
  46855. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46856. try_NodeTest();
  46857. break;
  46858. default:
  46859. try_AbbrevForwardStep();
  46860. }
  46861. }
  46862. function parse_ForwardAxis()
  46863. {
  46864. eventHandler.startNonterminal("ForwardAxis", e0);
  46865. switch (l1)
  46866. {
  46867. case 93: // 'child'
  46868. shift(93); // 'child'
  46869. lookahead1W(26); // S^WS | '(:' | '::'
  46870. shift(51); // '::'
  46871. break;
  46872. case 111: // 'descendant'
  46873. shift(111); // 'descendant'
  46874. lookahead1W(26); // S^WS | '(:' | '::'
  46875. shift(51); // '::'
  46876. break;
  46877. case 82: // 'attribute'
  46878. shift(82); // 'attribute'
  46879. lookahead1W(26); // S^WS | '(:' | '::'
  46880. shift(51); // '::'
  46881. break;
  46882. case 229: // 'self'
  46883. shift(229); // 'self'
  46884. lookahead1W(26); // S^WS | '(:' | '::'
  46885. shift(51); // '::'
  46886. break;
  46887. case 112: // 'descendant-or-self'
  46888. shift(112); // 'descendant-or-self'
  46889. lookahead1W(26); // S^WS | '(:' | '::'
  46890. shift(51); // '::'
  46891. break;
  46892. case 136: // 'following-sibling'
  46893. shift(136); // 'following-sibling'
  46894. lookahead1W(26); // S^WS | '(:' | '::'
  46895. shift(51); // '::'
  46896. break;
  46897. default:
  46898. shift(135); // 'following'
  46899. lookahead1W(26); // S^WS | '(:' | '::'
  46900. shift(51); // '::'
  46901. }
  46902. eventHandler.endNonterminal("ForwardAxis", e0);
  46903. }
  46904. function try_ForwardAxis()
  46905. {
  46906. switch (l1)
  46907. {
  46908. case 93: // 'child'
  46909. shiftT(93); // 'child'
  46910. lookahead1W(26); // S^WS | '(:' | '::'
  46911. shiftT(51); // '::'
  46912. break;
  46913. case 111: // 'descendant'
  46914. shiftT(111); // 'descendant'
  46915. lookahead1W(26); // S^WS | '(:' | '::'
  46916. shiftT(51); // '::'
  46917. break;
  46918. case 82: // 'attribute'
  46919. shiftT(82); // 'attribute'
  46920. lookahead1W(26); // S^WS | '(:' | '::'
  46921. shiftT(51); // '::'
  46922. break;
  46923. case 229: // 'self'
  46924. shiftT(229); // 'self'
  46925. lookahead1W(26); // S^WS | '(:' | '::'
  46926. shiftT(51); // '::'
  46927. break;
  46928. case 112: // 'descendant-or-self'
  46929. shiftT(112); // 'descendant-or-self'
  46930. lookahead1W(26); // S^WS | '(:' | '::'
  46931. shiftT(51); // '::'
  46932. break;
  46933. case 136: // 'following-sibling'
  46934. shiftT(136); // 'following-sibling'
  46935. lookahead1W(26); // S^WS | '(:' | '::'
  46936. shiftT(51); // '::'
  46937. break;
  46938. default:
  46939. shiftT(135); // 'following'
  46940. lookahead1W(26); // S^WS | '(:' | '::'
  46941. shiftT(51); // '::'
  46942. }
  46943. }
  46944. function parse_AbbrevForwardStep()
  46945. {
  46946. eventHandler.startNonterminal("AbbrevForwardStep", e0);
  46947. if (l1 == 66) // '@'
  46948. {
  46949. shift(66); // '@'
  46950. }
  46951. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46952. whitespace();
  46953. parse_NodeTest();
  46954. eventHandler.endNonterminal("AbbrevForwardStep", e0);
  46955. }
  46956. function try_AbbrevForwardStep()
  46957. {
  46958. if (l1 == 66) // '@'
  46959. {
  46960. shiftT(66); // '@'
  46961. }
  46962. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46963. try_NodeTest();
  46964. }
  46965. function parse_ReverseStep()
  46966. {
  46967. eventHandler.startNonterminal("ReverseStep", e0);
  46968. switch (l1)
  46969. {
  46970. case 45: // '..'
  46971. parse_AbbrevReverseStep();
  46972. break;
  46973. default:
  46974. parse_ReverseAxis();
  46975. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46976. whitespace();
  46977. parse_NodeTest();
  46978. }
  46979. eventHandler.endNonterminal("ReverseStep", e0);
  46980. }
  46981. function try_ReverseStep()
  46982. {
  46983. switch (l1)
  46984. {
  46985. case 45: // '..'
  46986. try_AbbrevReverseStep();
  46987. break;
  46988. default:
  46989. try_ReverseAxis();
  46990. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  46991. try_NodeTest();
  46992. }
  46993. }
  46994. function parse_ReverseAxis()
  46995. {
  46996. eventHandler.startNonterminal("ReverseAxis", e0);
  46997. switch (l1)
  46998. {
  46999. case 206: // 'parent'
  47000. shift(206); // 'parent'
  47001. lookahead1W(26); // S^WS | '(:' | '::'
  47002. shift(51); // '::'
  47003. break;
  47004. case 73: // 'ancestor'
  47005. shift(73); // 'ancestor'
  47006. lookahead1W(26); // S^WS | '(:' | '::'
  47007. shift(51); // '::'
  47008. break;
  47009. case 213: // 'preceding-sibling'
  47010. shift(213); // 'preceding-sibling'
  47011. lookahead1W(26); // S^WS | '(:' | '::'
  47012. shift(51); // '::'
  47013. break;
  47014. case 212: // 'preceding'
  47015. shift(212); // 'preceding'
  47016. lookahead1W(26); // S^WS | '(:' | '::'
  47017. shift(51); // '::'
  47018. break;
  47019. default:
  47020. shift(74); // 'ancestor-or-self'
  47021. lookahead1W(26); // S^WS | '(:' | '::'
  47022. shift(51); // '::'
  47023. }
  47024. eventHandler.endNonterminal("ReverseAxis", e0);
  47025. }
  47026. function try_ReverseAxis()
  47027. {
  47028. switch (l1)
  47029. {
  47030. case 206: // 'parent'
  47031. shiftT(206); // 'parent'
  47032. lookahead1W(26); // S^WS | '(:' | '::'
  47033. shiftT(51); // '::'
  47034. break;
  47035. case 73: // 'ancestor'
  47036. shiftT(73); // 'ancestor'
  47037. lookahead1W(26); // S^WS | '(:' | '::'
  47038. shiftT(51); // '::'
  47039. break;
  47040. case 213: // 'preceding-sibling'
  47041. shiftT(213); // 'preceding-sibling'
  47042. lookahead1W(26); // S^WS | '(:' | '::'
  47043. shiftT(51); // '::'
  47044. break;
  47045. case 212: // 'preceding'
  47046. shiftT(212); // 'preceding'
  47047. lookahead1W(26); // S^WS | '(:' | '::'
  47048. shiftT(51); // '::'
  47049. break;
  47050. default:
  47051. shiftT(74); // 'ancestor-or-self'
  47052. lookahead1W(26); // S^WS | '(:' | '::'
  47053. shiftT(51); // '::'
  47054. }
  47055. }
  47056. function parse_AbbrevReverseStep()
  47057. {
  47058. eventHandler.startNonterminal("AbbrevReverseStep", e0);
  47059. shift(45); // '..'
  47060. eventHandler.endNonterminal("AbbrevReverseStep", e0);
  47061. }
  47062. function try_AbbrevReverseStep()
  47063. {
  47064. shiftT(45); // '..'
  47065. }
  47066. function parse_NodeTest()
  47067. {
  47068. eventHandler.startNonterminal("NodeTest", e0);
  47069. switch (l1)
  47070. {
  47071. case 82: // 'attribute'
  47072. case 96: // 'comment'
  47073. case 120: // 'document-node'
  47074. case 121: // 'element'
  47075. case 185: // 'namespace-node'
  47076. case 191: // 'node'
  47077. case 216: // 'processing-instruction'
  47078. case 226: // 'schema-attribute'
  47079. case 227: // 'schema-element'
  47080. case 244: // 'text'
  47081. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  47082. break;
  47083. default:
  47084. lk = l1;
  47085. }
  47086. switch (lk)
  47087. {
  47088. case 17490: // 'attribute' '('
  47089. case 17504: // 'comment' '('
  47090. case 17528: // 'document-node' '('
  47091. case 17529: // 'element' '('
  47092. case 17593: // 'namespace-node' '('
  47093. case 17599: // 'node' '('
  47094. case 17624: // 'processing-instruction' '('
  47095. case 17634: // 'schema-attribute' '('
  47096. case 17635: // 'schema-element' '('
  47097. case 17652: // 'text' '('
  47098. parse_KindTest();
  47099. break;
  47100. default:
  47101. parse_NameTest();
  47102. }
  47103. eventHandler.endNonterminal("NodeTest", e0);
  47104. }
  47105. function try_NodeTest()
  47106. {
  47107. switch (l1)
  47108. {
  47109. case 82: // 'attribute'
  47110. case 96: // 'comment'
  47111. case 120: // 'document-node'
  47112. case 121: // 'element'
  47113. case 185: // 'namespace-node'
  47114. case 191: // 'node'
  47115. case 216: // 'processing-instruction'
  47116. case 226: // 'schema-attribute'
  47117. case 227: // 'schema-element'
  47118. case 244: // 'text'
  47119. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  47120. break;
  47121. default:
  47122. lk = l1;
  47123. }
  47124. switch (lk)
  47125. {
  47126. case 17490: // 'attribute' '('
  47127. case 17504: // 'comment' '('
  47128. case 17528: // 'document-node' '('
  47129. case 17529: // 'element' '('
  47130. case 17593: // 'namespace-node' '('
  47131. case 17599: // 'node' '('
  47132. case 17624: // 'processing-instruction' '('
  47133. case 17634: // 'schema-attribute' '('
  47134. case 17635: // 'schema-element' '('
  47135. case 17652: // 'text' '('
  47136. try_KindTest();
  47137. break;
  47138. default:
  47139. try_NameTest();
  47140. }
  47141. }
  47142. function parse_NameTest()
  47143. {
  47144. eventHandler.startNonterminal("NameTest", e0);
  47145. switch (l1)
  47146. {
  47147. case 5: // Wildcard
  47148. shift(5); // Wildcard
  47149. break;
  47150. default:
  47151. parse_EQName();
  47152. }
  47153. eventHandler.endNonterminal("NameTest", e0);
  47154. }
  47155. function try_NameTest()
  47156. {
  47157. switch (l1)
  47158. {
  47159. case 5: // Wildcard
  47160. shiftT(5); // Wildcard
  47161. break;
  47162. default:
  47163. try_EQName();
  47164. }
  47165. }
  47166. function parse_PostfixExpr()
  47167. {
  47168. eventHandler.startNonterminal("PostfixExpr", e0);
  47169. parse_PrimaryExpr();
  47170. for (;;)
  47171. {
  47172. lookahead1W(240); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  47173. if (l1 != 34 // '('
  47174. && l1 != 68) // '['
  47175. {
  47176. break;
  47177. }
  47178. switch (l1)
  47179. {
  47180. case 68: // '['
  47181. whitespace();
  47182. parse_Predicate();
  47183. break;
  47184. default:
  47185. whitespace();
  47186. parse_ArgumentList();
  47187. }
  47188. }
  47189. eventHandler.endNonterminal("PostfixExpr", e0);
  47190. }
  47191. function try_PostfixExpr()
  47192. {
  47193. try_PrimaryExpr();
  47194. for (;;)
  47195. {
  47196. lookahead1W(240); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  47197. if (l1 != 34 // '('
  47198. && l1 != 68) // '['
  47199. {
  47200. break;
  47201. }
  47202. switch (l1)
  47203. {
  47204. case 68: // '['
  47205. try_Predicate();
  47206. break;
  47207. default:
  47208. try_ArgumentList();
  47209. }
  47210. }
  47211. }
  47212. function parse_ArgumentList()
  47213. {
  47214. eventHandler.startNonterminal("ArgumentList", e0);
  47215. shift(34); // '('
  47216. lookahead1W(275); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47217. if (l1 != 37) // ')'
  47218. {
  47219. whitespace();
  47220. parse_Argument();
  47221. for (;;)
  47222. {
  47223. lookahead1W(101); // S^WS | '(:' | ')' | ','
  47224. if (l1 != 41) // ','
  47225. {
  47226. break;
  47227. }
  47228. shift(41); // ','
  47229. lookahead1W(270); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47230. whitespace();
  47231. parse_Argument();
  47232. }
  47233. }
  47234. shift(37); // ')'
  47235. eventHandler.endNonterminal("ArgumentList", e0);
  47236. }
  47237. function try_ArgumentList()
  47238. {
  47239. shiftT(34); // '('
  47240. lookahead1W(275); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47241. if (l1 != 37) // ')'
  47242. {
  47243. try_Argument();
  47244. for (;;)
  47245. {
  47246. lookahead1W(101); // S^WS | '(:' | ')' | ','
  47247. if (l1 != 41) // ','
  47248. {
  47249. break;
  47250. }
  47251. shiftT(41); // ','
  47252. lookahead1W(270); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47253. try_Argument();
  47254. }
  47255. }
  47256. shiftT(37); // ')'
  47257. }
  47258. function parse_PredicateList()
  47259. {
  47260. eventHandler.startNonterminal("PredicateList", e0);
  47261. for (;;)
  47262. {
  47263. lookahead1W(237); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  47264. if (l1 != 68) // '['
  47265. {
  47266. break;
  47267. }
  47268. whitespace();
  47269. parse_Predicate();
  47270. }
  47271. eventHandler.endNonterminal("PredicateList", e0);
  47272. }
  47273. function try_PredicateList()
  47274. {
  47275. for (;;)
  47276. {
  47277. lookahead1W(237); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  47278. if (l1 != 68) // '['
  47279. {
  47280. break;
  47281. }
  47282. try_Predicate();
  47283. }
  47284. }
  47285. function parse_Predicate()
  47286. {
  47287. eventHandler.startNonterminal("Predicate", e0);
  47288. shift(68); // '['
  47289. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47290. whitespace();
  47291. parse_Expr();
  47292. shift(69); // ']'
  47293. eventHandler.endNonterminal("Predicate", e0);
  47294. }
  47295. function try_Predicate()
  47296. {
  47297. shiftT(68); // '['
  47298. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47299. try_Expr();
  47300. shiftT(69); // ']'
  47301. }
  47302. function parse_Literal()
  47303. {
  47304. eventHandler.startNonterminal("Literal", e0);
  47305. switch (l1)
  47306. {
  47307. case 11: // StringLiteral
  47308. shift(11); // StringLiteral
  47309. break;
  47310. default:
  47311. parse_NumericLiteral();
  47312. }
  47313. eventHandler.endNonterminal("Literal", e0);
  47314. }
  47315. function try_Literal()
  47316. {
  47317. switch (l1)
  47318. {
  47319. case 11: // StringLiteral
  47320. shiftT(11); // StringLiteral
  47321. break;
  47322. default:
  47323. try_NumericLiteral();
  47324. }
  47325. }
  47326. function parse_NumericLiteral()
  47327. {
  47328. eventHandler.startNonterminal("NumericLiteral", e0);
  47329. switch (l1)
  47330. {
  47331. case 8: // IntegerLiteral
  47332. shift(8); // IntegerLiteral
  47333. break;
  47334. case 9: // DecimalLiteral
  47335. shift(9); // DecimalLiteral
  47336. break;
  47337. default:
  47338. shift(10); // DoubleLiteral
  47339. }
  47340. eventHandler.endNonterminal("NumericLiteral", e0);
  47341. }
  47342. function try_NumericLiteral()
  47343. {
  47344. switch (l1)
  47345. {
  47346. case 8: // IntegerLiteral
  47347. shiftT(8); // IntegerLiteral
  47348. break;
  47349. case 9: // DecimalLiteral
  47350. shiftT(9); // DecimalLiteral
  47351. break;
  47352. default:
  47353. shiftT(10); // DoubleLiteral
  47354. }
  47355. }
  47356. function parse_VarRef()
  47357. {
  47358. eventHandler.startNonterminal("VarRef", e0);
  47359. shift(31); // '$'
  47360. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  47361. whitespace();
  47362. parse_VarName();
  47363. eventHandler.endNonterminal("VarRef", e0);
  47364. }
  47365. function try_VarRef()
  47366. {
  47367. shiftT(31); // '$'
  47368. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  47369. try_VarName();
  47370. }
  47371. function parse_VarName()
  47372. {
  47373. eventHandler.startNonterminal("VarName", e0);
  47374. parse_EQName();
  47375. eventHandler.endNonterminal("VarName", e0);
  47376. }
  47377. function try_VarName()
  47378. {
  47379. try_EQName();
  47380. }
  47381. function parse_ParenthesizedExpr()
  47382. {
  47383. eventHandler.startNonterminal("ParenthesizedExpr", e0);
  47384. shift(34); // '('
  47385. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47386. if (l1 != 37) // ')'
  47387. {
  47388. whitespace();
  47389. parse_Expr();
  47390. }
  47391. shift(37); // ')'
  47392. eventHandler.endNonterminal("ParenthesizedExpr", e0);
  47393. }
  47394. function try_ParenthesizedExpr()
  47395. {
  47396. shiftT(34); // '('
  47397. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47398. if (l1 != 37) // ')'
  47399. {
  47400. try_Expr();
  47401. }
  47402. shiftT(37); // ')'
  47403. }
  47404. function parse_ContextItemExpr()
  47405. {
  47406. eventHandler.startNonterminal("ContextItemExpr", e0);
  47407. shift(44); // '.'
  47408. eventHandler.endNonterminal("ContextItemExpr", e0);
  47409. }
  47410. function try_ContextItemExpr()
  47411. {
  47412. shiftT(44); // '.'
  47413. }
  47414. function parse_OrderedExpr()
  47415. {
  47416. eventHandler.startNonterminal("OrderedExpr", e0);
  47417. shift(202); // 'ordered'
  47418. lookahead1W(87); // S^WS | '(:' | '{'
  47419. shift(276); // '{'
  47420. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47421. whitespace();
  47422. parse_Expr();
  47423. shift(282); // '}'
  47424. eventHandler.endNonterminal("OrderedExpr", e0);
  47425. }
  47426. function try_OrderedExpr()
  47427. {
  47428. shiftT(202); // 'ordered'
  47429. lookahead1W(87); // S^WS | '(:' | '{'
  47430. shiftT(276); // '{'
  47431. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47432. try_Expr();
  47433. shiftT(282); // '}'
  47434. }
  47435. function parse_UnorderedExpr()
  47436. {
  47437. eventHandler.startNonterminal("UnorderedExpr", e0);
  47438. shift(256); // 'unordered'
  47439. lookahead1W(87); // S^WS | '(:' | '{'
  47440. shift(276); // '{'
  47441. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47442. whitespace();
  47443. parse_Expr();
  47444. shift(282); // '}'
  47445. eventHandler.endNonterminal("UnorderedExpr", e0);
  47446. }
  47447. function try_UnorderedExpr()
  47448. {
  47449. shiftT(256); // 'unordered'
  47450. lookahead1W(87); // S^WS | '(:' | '{'
  47451. shiftT(276); // '{'
  47452. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47453. try_Expr();
  47454. shiftT(282); // '}'
  47455. }
  47456. function parse_FunctionCall()
  47457. {
  47458. eventHandler.startNonterminal("FunctionCall", e0);
  47459. parse_FunctionName();
  47460. lookahead1W(22); // S^WS | '(' | '(:'
  47461. whitespace();
  47462. parse_ArgumentList();
  47463. eventHandler.endNonterminal("FunctionCall", e0);
  47464. }
  47465. function try_FunctionCall()
  47466. {
  47467. try_FunctionName();
  47468. lookahead1W(22); // S^WS | '(' | '(:'
  47469. try_ArgumentList();
  47470. }
  47471. function parse_Argument()
  47472. {
  47473. eventHandler.startNonterminal("Argument", e0);
  47474. switch (l1)
  47475. {
  47476. case 64: // '?'
  47477. parse_ArgumentPlaceholder();
  47478. break;
  47479. default:
  47480. parse_ExprSingle();
  47481. }
  47482. eventHandler.endNonterminal("Argument", e0);
  47483. }
  47484. function try_Argument()
  47485. {
  47486. switch (l1)
  47487. {
  47488. case 64: // '?'
  47489. try_ArgumentPlaceholder();
  47490. break;
  47491. default:
  47492. try_ExprSingle();
  47493. }
  47494. }
  47495. function parse_ArgumentPlaceholder()
  47496. {
  47497. eventHandler.startNonterminal("ArgumentPlaceholder", e0);
  47498. shift(64); // '?'
  47499. eventHandler.endNonterminal("ArgumentPlaceholder", e0);
  47500. }
  47501. function try_ArgumentPlaceholder()
  47502. {
  47503. shiftT(64); // '?'
  47504. }
  47505. function parse_Constructor()
  47506. {
  47507. eventHandler.startNonterminal("Constructor", e0);
  47508. switch (l1)
  47509. {
  47510. case 54: // '<'
  47511. case 55: // '<!--'
  47512. case 59: // '<?'
  47513. parse_DirectConstructor();
  47514. break;
  47515. default:
  47516. parse_ComputedConstructor();
  47517. }
  47518. eventHandler.endNonterminal("Constructor", e0);
  47519. }
  47520. function try_Constructor()
  47521. {
  47522. switch (l1)
  47523. {
  47524. case 54: // '<'
  47525. case 55: // '<!--'
  47526. case 59: // '<?'
  47527. try_DirectConstructor();
  47528. break;
  47529. default:
  47530. try_ComputedConstructor();
  47531. }
  47532. }
  47533. function parse_DirectConstructor()
  47534. {
  47535. eventHandler.startNonterminal("DirectConstructor", e0);
  47536. switch (l1)
  47537. {
  47538. case 54: // '<'
  47539. parse_DirElemConstructor();
  47540. break;
  47541. case 55: // '<!--'
  47542. parse_DirCommentConstructor();
  47543. break;
  47544. default:
  47545. parse_DirPIConstructor();
  47546. }
  47547. eventHandler.endNonterminal("DirectConstructor", e0);
  47548. }
  47549. function try_DirectConstructor()
  47550. {
  47551. switch (l1)
  47552. {
  47553. case 54: // '<'
  47554. try_DirElemConstructor();
  47555. break;
  47556. case 55: // '<!--'
  47557. try_DirCommentConstructor();
  47558. break;
  47559. default:
  47560. try_DirPIConstructor();
  47561. }
  47562. }
  47563. function parse_DirElemConstructor()
  47564. {
  47565. eventHandler.startNonterminal("DirElemConstructor", e0);
  47566. shift(54); // '<'
  47567. lookahead1(4); // QName
  47568. shift(20); // QName
  47569. parse_DirAttributeList();
  47570. switch (l1)
  47571. {
  47572. case 48: // '/>'
  47573. shift(48); // '/>'
  47574. break;
  47575. default:
  47576. shift(61); // '>'
  47577. for (;;)
  47578. {
  47579. lookahead1(174); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  47580. if (l1 == 56) // '</'
  47581. {
  47582. break;
  47583. }
  47584. parse_DirElemContent();
  47585. }
  47586. shift(56); // '</'
  47587. lookahead1(4); // QName
  47588. shift(20); // QName
  47589. lookahead1(12); // S | '>'
  47590. if (l1 == 21) // S
  47591. {
  47592. shift(21); // S
  47593. }
  47594. lookahead1(8); // '>'
  47595. shift(61); // '>'
  47596. }
  47597. eventHandler.endNonterminal("DirElemConstructor", e0);
  47598. }
  47599. function try_DirElemConstructor()
  47600. {
  47601. shiftT(54); // '<'
  47602. lookahead1(4); // QName
  47603. shiftT(20); // QName
  47604. try_DirAttributeList();
  47605. switch (l1)
  47606. {
  47607. case 48: // '/>'
  47608. shiftT(48); // '/>'
  47609. break;
  47610. default:
  47611. shiftT(61); // '>'
  47612. for (;;)
  47613. {
  47614. lookahead1(174); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  47615. if (l1 == 56) // '</'
  47616. {
  47617. break;
  47618. }
  47619. try_DirElemContent();
  47620. }
  47621. shiftT(56); // '</'
  47622. lookahead1(4); // QName
  47623. shiftT(20); // QName
  47624. lookahead1(12); // S | '>'
  47625. if (l1 == 21) // S
  47626. {
  47627. shiftT(21); // S
  47628. }
  47629. lookahead1(8); // '>'
  47630. shiftT(61); // '>'
  47631. }
  47632. }
  47633. function parse_DirAttributeList()
  47634. {
  47635. eventHandler.startNonterminal("DirAttributeList", e0);
  47636. for (;;)
  47637. {
  47638. lookahead1(19); // S | '/>' | '>'
  47639. if (l1 != 21) // S
  47640. {
  47641. break;
  47642. }
  47643. shift(21); // S
  47644. lookahead1(91); // QName | S | '/>' | '>'
  47645. if (l1 == 20) // QName
  47646. {
  47647. shift(20); // QName
  47648. lookahead1(11); // S | '='
  47649. if (l1 == 21) // S
  47650. {
  47651. shift(21); // S
  47652. }
  47653. lookahead1(7); // '='
  47654. shift(60); // '='
  47655. lookahead1(18); // S | '"' | "'"
  47656. if (l1 == 21) // S
  47657. {
  47658. shift(21); // S
  47659. }
  47660. parse_DirAttributeValue();
  47661. }
  47662. }
  47663. eventHandler.endNonterminal("DirAttributeList", e0);
  47664. }
  47665. function try_DirAttributeList()
  47666. {
  47667. for (;;)
  47668. {
  47669. lookahead1(19); // S | '/>' | '>'
  47670. if (l1 != 21) // S
  47671. {
  47672. break;
  47673. }
  47674. shiftT(21); // S
  47675. lookahead1(91); // QName | S | '/>' | '>'
  47676. if (l1 == 20) // QName
  47677. {
  47678. shiftT(20); // QName
  47679. lookahead1(11); // S | '='
  47680. if (l1 == 21) // S
  47681. {
  47682. shiftT(21); // S
  47683. }
  47684. lookahead1(7); // '='
  47685. shiftT(60); // '='
  47686. lookahead1(18); // S | '"' | "'"
  47687. if (l1 == 21) // S
  47688. {
  47689. shiftT(21); // S
  47690. }
  47691. try_DirAttributeValue();
  47692. }
  47693. }
  47694. }
  47695. function parse_DirAttributeValue()
  47696. {
  47697. eventHandler.startNonterminal("DirAttributeValue", e0);
  47698. lookahead1(14); // '"' | "'"
  47699. switch (l1)
  47700. {
  47701. case 28: // '"'
  47702. shift(28); // '"'
  47703. for (;;)
  47704. {
  47705. lookahead1(167); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  47706. if (l1 == 28) // '"'
  47707. {
  47708. break;
  47709. }
  47710. switch (l1)
  47711. {
  47712. case 13: // EscapeQuot
  47713. shift(13); // EscapeQuot
  47714. break;
  47715. default:
  47716. parse_QuotAttrValueContent();
  47717. }
  47718. }
  47719. shift(28); // '"'
  47720. break;
  47721. default:
  47722. shift(33); // "'"
  47723. for (;;)
  47724. {
  47725. lookahead1(168); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  47726. if (l1 == 33) // "'"
  47727. {
  47728. break;
  47729. }
  47730. switch (l1)
  47731. {
  47732. case 14: // EscapeApos
  47733. shift(14); // EscapeApos
  47734. break;
  47735. default:
  47736. parse_AposAttrValueContent();
  47737. }
  47738. }
  47739. shift(33); // "'"
  47740. }
  47741. eventHandler.endNonterminal("DirAttributeValue", e0);
  47742. }
  47743. function try_DirAttributeValue()
  47744. {
  47745. lookahead1(14); // '"' | "'"
  47746. switch (l1)
  47747. {
  47748. case 28: // '"'
  47749. shiftT(28); // '"'
  47750. for (;;)
  47751. {
  47752. lookahead1(167); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  47753. if (l1 == 28) // '"'
  47754. {
  47755. break;
  47756. }
  47757. switch (l1)
  47758. {
  47759. case 13: // EscapeQuot
  47760. shiftT(13); // EscapeQuot
  47761. break;
  47762. default:
  47763. try_QuotAttrValueContent();
  47764. }
  47765. }
  47766. shiftT(28); // '"'
  47767. break;
  47768. default:
  47769. shiftT(33); // "'"
  47770. for (;;)
  47771. {
  47772. lookahead1(168); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  47773. if (l1 == 33) // "'"
  47774. {
  47775. break;
  47776. }
  47777. switch (l1)
  47778. {
  47779. case 14: // EscapeApos
  47780. shiftT(14); // EscapeApos
  47781. break;
  47782. default:
  47783. try_AposAttrValueContent();
  47784. }
  47785. }
  47786. shiftT(33); // "'"
  47787. }
  47788. }
  47789. function parse_QuotAttrValueContent()
  47790. {
  47791. eventHandler.startNonterminal("QuotAttrValueContent", e0);
  47792. switch (l1)
  47793. {
  47794. case 16: // QuotAttrContentChar
  47795. shift(16); // QuotAttrContentChar
  47796. break;
  47797. default:
  47798. parse_CommonContent();
  47799. }
  47800. eventHandler.endNonterminal("QuotAttrValueContent", e0);
  47801. }
  47802. function try_QuotAttrValueContent()
  47803. {
  47804. switch (l1)
  47805. {
  47806. case 16: // QuotAttrContentChar
  47807. shiftT(16); // QuotAttrContentChar
  47808. break;
  47809. default:
  47810. try_CommonContent();
  47811. }
  47812. }
  47813. function parse_AposAttrValueContent()
  47814. {
  47815. eventHandler.startNonterminal("AposAttrValueContent", e0);
  47816. switch (l1)
  47817. {
  47818. case 17: // AposAttrContentChar
  47819. shift(17); // AposAttrContentChar
  47820. break;
  47821. default:
  47822. parse_CommonContent();
  47823. }
  47824. eventHandler.endNonterminal("AposAttrValueContent", e0);
  47825. }
  47826. function try_AposAttrValueContent()
  47827. {
  47828. switch (l1)
  47829. {
  47830. case 17: // AposAttrContentChar
  47831. shiftT(17); // AposAttrContentChar
  47832. break;
  47833. default:
  47834. try_CommonContent();
  47835. }
  47836. }
  47837. function parse_DirElemContent()
  47838. {
  47839. eventHandler.startNonterminal("DirElemContent", e0);
  47840. switch (l1)
  47841. {
  47842. case 54: // '<'
  47843. case 55: // '<!--'
  47844. case 59: // '<?'
  47845. parse_DirectConstructor();
  47846. break;
  47847. case 4: // CDataSection
  47848. shift(4); // CDataSection
  47849. break;
  47850. case 15: // ElementContentChar
  47851. shift(15); // ElementContentChar
  47852. break;
  47853. default:
  47854. parse_CommonContent();
  47855. }
  47856. eventHandler.endNonterminal("DirElemContent", e0);
  47857. }
  47858. function try_DirElemContent()
  47859. {
  47860. switch (l1)
  47861. {
  47862. case 54: // '<'
  47863. case 55: // '<!--'
  47864. case 59: // '<?'
  47865. try_DirectConstructor();
  47866. break;
  47867. case 4: // CDataSection
  47868. shiftT(4); // CDataSection
  47869. break;
  47870. case 15: // ElementContentChar
  47871. shiftT(15); // ElementContentChar
  47872. break;
  47873. default:
  47874. try_CommonContent();
  47875. }
  47876. }
  47877. function parse_DirCommentConstructor()
  47878. {
  47879. eventHandler.startNonterminal("DirCommentConstructor", e0);
  47880. shift(55); // '<!--'
  47881. lookahead1(1); // DirCommentContents
  47882. shift(2); // DirCommentContents
  47883. lookahead1(6); // '-->'
  47884. shift(43); // '-->'
  47885. eventHandler.endNonterminal("DirCommentConstructor", e0);
  47886. }
  47887. function try_DirCommentConstructor()
  47888. {
  47889. shiftT(55); // '<!--'
  47890. lookahead1(1); // DirCommentContents
  47891. shiftT(2); // DirCommentContents
  47892. lookahead1(6); // '-->'
  47893. shiftT(43); // '-->'
  47894. }
  47895. function parse_DirPIConstructor()
  47896. {
  47897. eventHandler.startNonterminal("DirPIConstructor", e0);
  47898. shift(59); // '<?'
  47899. lookahead1(3); // PITarget
  47900. shift(18); // PITarget
  47901. lookahead1(13); // S | '?>'
  47902. if (l1 == 21) // S
  47903. {
  47904. shift(21); // S
  47905. lookahead1(2); // DirPIContents
  47906. shift(3); // DirPIContents
  47907. }
  47908. lookahead1(9); // '?>'
  47909. shift(65); // '?>'
  47910. eventHandler.endNonterminal("DirPIConstructor", e0);
  47911. }
  47912. function try_DirPIConstructor()
  47913. {
  47914. shiftT(59); // '<?'
  47915. lookahead1(3); // PITarget
  47916. shiftT(18); // PITarget
  47917. lookahead1(13); // S | '?>'
  47918. if (l1 == 21) // S
  47919. {
  47920. shiftT(21); // S
  47921. lookahead1(2); // DirPIContents
  47922. shiftT(3); // DirPIContents
  47923. }
  47924. lookahead1(9); // '?>'
  47925. shiftT(65); // '?>'
  47926. }
  47927. function parse_ComputedConstructor()
  47928. {
  47929. eventHandler.startNonterminal("ComputedConstructor", e0);
  47930. switch (l1)
  47931. {
  47932. case 119: // 'document'
  47933. parse_CompDocConstructor();
  47934. break;
  47935. case 121: // 'element'
  47936. parse_CompElemConstructor();
  47937. break;
  47938. case 82: // 'attribute'
  47939. parse_CompAttrConstructor();
  47940. break;
  47941. case 184: // 'namespace'
  47942. parse_CompNamespaceConstructor();
  47943. break;
  47944. case 244: // 'text'
  47945. parse_CompTextConstructor();
  47946. break;
  47947. case 96: // 'comment'
  47948. parse_CompCommentConstructor();
  47949. break;
  47950. default:
  47951. parse_CompPIConstructor();
  47952. }
  47953. eventHandler.endNonterminal("ComputedConstructor", e0);
  47954. }
  47955. function try_ComputedConstructor()
  47956. {
  47957. switch (l1)
  47958. {
  47959. case 119: // 'document'
  47960. try_CompDocConstructor();
  47961. break;
  47962. case 121: // 'element'
  47963. try_CompElemConstructor();
  47964. break;
  47965. case 82: // 'attribute'
  47966. try_CompAttrConstructor();
  47967. break;
  47968. case 184: // 'namespace'
  47969. try_CompNamespaceConstructor();
  47970. break;
  47971. case 244: // 'text'
  47972. try_CompTextConstructor();
  47973. break;
  47974. case 96: // 'comment'
  47975. try_CompCommentConstructor();
  47976. break;
  47977. default:
  47978. try_CompPIConstructor();
  47979. }
  47980. }
  47981. function parse_CompElemConstructor()
  47982. {
  47983. eventHandler.startNonterminal("CompElemConstructor", e0);
  47984. shift(121); // 'element'
  47985. lookahead1W(257); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  47986. switch (l1)
  47987. {
  47988. case 276: // '{'
  47989. shift(276); // '{'
  47990. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  47991. whitespace();
  47992. parse_Expr();
  47993. shift(282); // '}'
  47994. break;
  47995. default:
  47996. whitespace();
  47997. parse_EQName();
  47998. }
  47999. lookahead1W(87); // S^WS | '(:' | '{'
  48000. shift(276); // '{'
  48001. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48002. if (l1 != 282) // '}'
  48003. {
  48004. whitespace();
  48005. parse_ContentExpr();
  48006. }
  48007. shift(282); // '}'
  48008. eventHandler.endNonterminal("CompElemConstructor", e0);
  48009. }
  48010. function try_CompElemConstructor()
  48011. {
  48012. shiftT(121); // 'element'
  48013. lookahead1W(257); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48014. switch (l1)
  48015. {
  48016. case 276: // '{'
  48017. shiftT(276); // '{'
  48018. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48019. try_Expr();
  48020. shiftT(282); // '}'
  48021. break;
  48022. default:
  48023. try_EQName();
  48024. }
  48025. lookahead1W(87); // S^WS | '(:' | '{'
  48026. shiftT(276); // '{'
  48027. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48028. if (l1 != 282) // '}'
  48029. {
  48030. try_ContentExpr();
  48031. }
  48032. shiftT(282); // '}'
  48033. }
  48034. function parse_CompNamespaceConstructor()
  48035. {
  48036. eventHandler.startNonterminal("CompNamespaceConstructor", e0);
  48037. shift(184); // 'namespace'
  48038. lookahead1W(250); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48039. switch (l1)
  48040. {
  48041. case 276: // '{'
  48042. shift(276); // '{'
  48043. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48044. whitespace();
  48045. parse_PrefixExpr();
  48046. shift(282); // '}'
  48047. break;
  48048. default:
  48049. whitespace();
  48050. parse_Prefix();
  48051. }
  48052. lookahead1W(87); // S^WS | '(:' | '{'
  48053. shift(276); // '{'
  48054. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48055. whitespace();
  48056. parse_URIExpr();
  48057. shift(282); // '}'
  48058. eventHandler.endNonterminal("CompNamespaceConstructor", e0);
  48059. }
  48060. function try_CompNamespaceConstructor()
  48061. {
  48062. shiftT(184); // 'namespace'
  48063. lookahead1W(250); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48064. switch (l1)
  48065. {
  48066. case 276: // '{'
  48067. shiftT(276); // '{'
  48068. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48069. try_PrefixExpr();
  48070. shiftT(282); // '}'
  48071. break;
  48072. default:
  48073. try_Prefix();
  48074. }
  48075. lookahead1W(87); // S^WS | '(:' | '{'
  48076. shiftT(276); // '{'
  48077. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  48078. try_URIExpr();
  48079. shiftT(282); // '}'
  48080. }
  48081. function parse_Prefix()
  48082. {
  48083. eventHandler.startNonterminal("Prefix", e0);
  48084. parse_NCName();
  48085. eventHandler.endNonterminal("Prefix", e0);
  48086. }
  48087. function try_Prefix()
  48088. {
  48089. try_NCName();
  48090. }
  48091. function parse_PrefixExpr()
  48092. {
  48093. eventHandler.startNonterminal("PrefixExpr", e0);
  48094. parse_Expr();
  48095. eventHandler.endNonterminal("PrefixExpr", e0);
  48096. }
  48097. function try_PrefixExpr()
  48098. {
  48099. try_Expr();
  48100. }
  48101. function parse_URIExpr()
  48102. {
  48103. eventHandler.startNonterminal("URIExpr", e0);
  48104. parse_Expr();
  48105. eventHandler.endNonterminal("URIExpr", e0);
  48106. }
  48107. function try_URIExpr()
  48108. {
  48109. try_Expr();
  48110. }
  48111. function parse_FunctionItemExpr()
  48112. {
  48113. eventHandler.startNonterminal("FunctionItemExpr", e0);
  48114. switch (l1)
  48115. {
  48116. case 145: // 'function'
  48117. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  48118. break;
  48119. default:
  48120. lk = l1;
  48121. }
  48122. switch (lk)
  48123. {
  48124. case 32: // '%'
  48125. case 17553: // 'function' '('
  48126. parse_InlineFunctionExpr();
  48127. break;
  48128. default:
  48129. parse_NamedFunctionRef();
  48130. }
  48131. eventHandler.endNonterminal("FunctionItemExpr", e0);
  48132. }
  48133. function try_FunctionItemExpr()
  48134. {
  48135. switch (l1)
  48136. {
  48137. case 145: // 'function'
  48138. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  48139. break;
  48140. default:
  48141. lk = l1;
  48142. }
  48143. switch (lk)
  48144. {
  48145. case 32: // '%'
  48146. case 17553: // 'function' '('
  48147. try_InlineFunctionExpr();
  48148. break;
  48149. default:
  48150. try_NamedFunctionRef();
  48151. }
  48152. }
  48153. function parse_NamedFunctionRef()
  48154. {
  48155. eventHandler.startNonterminal("NamedFunctionRef", e0);
  48156. parse_EQName();
  48157. lookahead1W(20); // S^WS | '#' | '(:'
  48158. shift(29); // '#'
  48159. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  48160. shift(8); // IntegerLiteral
  48161. eventHandler.endNonterminal("NamedFunctionRef", e0);
  48162. }
  48163. function try_NamedFunctionRef()
  48164. {
  48165. try_EQName();
  48166. lookahead1W(20); // S^WS | '#' | '(:'
  48167. shiftT(29); // '#'
  48168. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  48169. shiftT(8); // IntegerLiteral
  48170. }
  48171. function parse_InlineFunctionExpr()
  48172. {
  48173. eventHandler.startNonterminal("InlineFunctionExpr", e0);
  48174. for (;;)
  48175. {
  48176. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  48177. if (l1 != 32) // '%'
  48178. {
  48179. break;
  48180. }
  48181. whitespace();
  48182. parse_Annotation();
  48183. }
  48184. shift(145); // 'function'
  48185. lookahead1W(22); // S^WS | '(' | '(:'
  48186. shift(34); // '('
  48187. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  48188. if (l1 == 31) // '$'
  48189. {
  48190. whitespace();
  48191. parse_ParamList();
  48192. }
  48193. shift(37); // ')'
  48194. lookahead1W(111); // S^WS | '(:' | 'as' | '{'
  48195. if (l1 == 79) // 'as'
  48196. {
  48197. shift(79); // 'as'
  48198. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  48199. whitespace();
  48200. parse_SequenceType();
  48201. }
  48202. lookahead1W(87); // S^WS | '(:' | '{'
  48203. whitespace();
  48204. parse_FunctionBody();
  48205. eventHandler.endNonterminal("InlineFunctionExpr", e0);
  48206. }
  48207. function try_InlineFunctionExpr()
  48208. {
  48209. for (;;)
  48210. {
  48211. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  48212. if (l1 != 32) // '%'
  48213. {
  48214. break;
  48215. }
  48216. try_Annotation();
  48217. }
  48218. shiftT(145); // 'function'
  48219. lookahead1W(22); // S^WS | '(' | '(:'
  48220. shiftT(34); // '('
  48221. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  48222. if (l1 == 31) // '$'
  48223. {
  48224. try_ParamList();
  48225. }
  48226. shiftT(37); // ')'
  48227. lookahead1W(111); // S^WS | '(:' | 'as' | '{'
  48228. if (l1 == 79) // 'as'
  48229. {
  48230. shiftT(79); // 'as'
  48231. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  48232. try_SequenceType();
  48233. }
  48234. lookahead1W(87); // S^WS | '(:' | '{'
  48235. try_FunctionBody();
  48236. }
  48237. function parse_SingleType()
  48238. {
  48239. eventHandler.startNonterminal("SingleType", e0);
  48240. parse_SimpleTypeName();
  48241. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  48242. if (l1 == 64) // '?'
  48243. {
  48244. shift(64); // '?'
  48245. }
  48246. eventHandler.endNonterminal("SingleType", e0);
  48247. }
  48248. function try_SingleType()
  48249. {
  48250. try_SimpleTypeName();
  48251. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  48252. if (l1 == 64) // '?'
  48253. {
  48254. shiftT(64); // '?'
  48255. }
  48256. }
  48257. function parse_TypeDeclaration()
  48258. {
  48259. eventHandler.startNonterminal("TypeDeclaration", e0);
  48260. shift(79); // 'as'
  48261. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  48262. whitespace();
  48263. parse_SequenceType();
  48264. eventHandler.endNonterminal("TypeDeclaration", e0);
  48265. }
  48266. function try_TypeDeclaration()
  48267. {
  48268. shiftT(79); // 'as'
  48269. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  48270. try_SequenceType();
  48271. }
  48272. function parse_SequenceType()
  48273. {
  48274. eventHandler.startNonterminal("SequenceType", e0);
  48275. switch (l1)
  48276. {
  48277. case 124: // 'empty-sequence'
  48278. lookahead2W(242); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  48279. break;
  48280. default:
  48281. lk = l1;
  48282. }
  48283. switch (lk)
  48284. {
  48285. case 17532: // 'empty-sequence' '('
  48286. shift(124); // 'empty-sequence'
  48287. lookahead1W(22); // S^WS | '(' | '(:'
  48288. shift(34); // '('
  48289. lookahead1W(23); // S^WS | '(:' | ')'
  48290. shift(37); // ')'
  48291. break;
  48292. default:
  48293. parse_ItemType();
  48294. lookahead1W(238); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  48295. switch (l1)
  48296. {
  48297. case 39: // '*'
  48298. case 40: // '+'
  48299. case 64: // '?'
  48300. whitespace();
  48301. parse_OccurrenceIndicator();
  48302. break;
  48303. default:
  48304. break;
  48305. }
  48306. }
  48307. eventHandler.endNonterminal("SequenceType", e0);
  48308. }
  48309. function try_SequenceType()
  48310. {
  48311. switch (l1)
  48312. {
  48313. case 124: // 'empty-sequence'
  48314. lookahead2W(242); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  48315. break;
  48316. default:
  48317. lk = l1;
  48318. }
  48319. switch (lk)
  48320. {
  48321. case 17532: // 'empty-sequence' '('
  48322. shiftT(124); // 'empty-sequence'
  48323. lookahead1W(22); // S^WS | '(' | '(:'
  48324. shiftT(34); // '('
  48325. lookahead1W(23); // S^WS | '(:' | ')'
  48326. shiftT(37); // ')'
  48327. break;
  48328. default:
  48329. try_ItemType();
  48330. lookahead1W(238); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  48331. switch (l1)
  48332. {
  48333. case 39: // '*'
  48334. case 40: // '+'
  48335. case 64: // '?'
  48336. try_OccurrenceIndicator();
  48337. break;
  48338. default:
  48339. break;
  48340. }
  48341. }
  48342. }
  48343. function parse_OccurrenceIndicator()
  48344. {
  48345. eventHandler.startNonterminal("OccurrenceIndicator", e0);
  48346. switch (l1)
  48347. {
  48348. case 64: // '?'
  48349. shift(64); // '?'
  48350. break;
  48351. case 39: // '*'
  48352. shift(39); // '*'
  48353. break;
  48354. default:
  48355. shift(40); // '+'
  48356. }
  48357. eventHandler.endNonterminal("OccurrenceIndicator", e0);
  48358. }
  48359. function try_OccurrenceIndicator()
  48360. {
  48361. switch (l1)
  48362. {
  48363. case 64: // '?'
  48364. shiftT(64); // '?'
  48365. break;
  48366. case 39: // '*'
  48367. shiftT(39); // '*'
  48368. break;
  48369. default:
  48370. shiftT(40); // '+'
  48371. }
  48372. }
  48373. function parse_ItemType()
  48374. {
  48375. eventHandler.startNonterminal("ItemType", e0);
  48376. switch (l1)
  48377. {
  48378. case 78: // 'array'
  48379. case 82: // 'attribute'
  48380. case 96: // 'comment'
  48381. case 120: // 'document-node'
  48382. case 121: // 'element'
  48383. case 145: // 'function'
  48384. case 165: // 'item'
  48385. case 167: // 'json-item'
  48386. case 185: // 'namespace-node'
  48387. case 191: // 'node'
  48388. case 194: // 'object'
  48389. case 216: // 'processing-instruction'
  48390. case 226: // 'schema-attribute'
  48391. case 227: // 'schema-element'
  48392. case 242: // 'structured-item'
  48393. case 244: // 'text'
  48394. lookahead2W(242); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  48395. break;
  48396. default:
  48397. lk = l1;
  48398. }
  48399. switch (lk)
  48400. {
  48401. case 17490: // 'attribute' '('
  48402. case 17504: // 'comment' '('
  48403. case 17528: // 'document-node' '('
  48404. case 17529: // 'element' '('
  48405. case 17593: // 'namespace-node' '('
  48406. case 17599: // 'node' '('
  48407. case 17624: // 'processing-instruction' '('
  48408. case 17634: // 'schema-attribute' '('
  48409. case 17635: // 'schema-element' '('
  48410. case 17652: // 'text' '('
  48411. parse_KindTest();
  48412. break;
  48413. case 17573: // 'item' '('
  48414. shift(165); // 'item'
  48415. lookahead1W(22); // S^WS | '(' | '(:'
  48416. shift(34); // '('
  48417. lookahead1W(23); // S^WS | '(:' | ')'
  48418. shift(37); // ')'
  48419. break;
  48420. case 32: // '%'
  48421. case 17553: // 'function' '('
  48422. parse_FunctionTest();
  48423. break;
  48424. case 34: // '('
  48425. parse_ParenthesizedItemType();
  48426. break;
  48427. case 17486: // 'array' '('
  48428. case 17575: // 'json-item' '('
  48429. case 17602: // 'object' '('
  48430. parse_JSONTest();
  48431. break;
  48432. case 17650: // 'structured-item' '('
  48433. parse_StructuredItemTest();
  48434. break;
  48435. default:
  48436. parse_AtomicOrUnionType();
  48437. }
  48438. eventHandler.endNonterminal("ItemType", e0);
  48439. }
  48440. function try_ItemType()
  48441. {
  48442. switch (l1)
  48443. {
  48444. case 78: // 'array'
  48445. case 82: // 'attribute'
  48446. case 96: // 'comment'
  48447. case 120: // 'document-node'
  48448. case 121: // 'element'
  48449. case 145: // 'function'
  48450. case 165: // 'item'
  48451. case 167: // 'json-item'
  48452. case 185: // 'namespace-node'
  48453. case 191: // 'node'
  48454. case 194: // 'object'
  48455. case 216: // 'processing-instruction'
  48456. case 226: // 'schema-attribute'
  48457. case 227: // 'schema-element'
  48458. case 242: // 'structured-item'
  48459. case 244: // 'text'
  48460. lookahead2W(242); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  48461. break;
  48462. default:
  48463. lk = l1;
  48464. }
  48465. switch (lk)
  48466. {
  48467. case 17490: // 'attribute' '('
  48468. case 17504: // 'comment' '('
  48469. case 17528: // 'document-node' '('
  48470. case 17529: // 'element' '('
  48471. case 17593: // 'namespace-node' '('
  48472. case 17599: // 'node' '('
  48473. case 17624: // 'processing-instruction' '('
  48474. case 17634: // 'schema-attribute' '('
  48475. case 17635: // 'schema-element' '('
  48476. case 17652: // 'text' '('
  48477. try_KindTest();
  48478. break;
  48479. case 17573: // 'item' '('
  48480. shiftT(165); // 'item'
  48481. lookahead1W(22); // S^WS | '(' | '(:'
  48482. shiftT(34); // '('
  48483. lookahead1W(23); // S^WS | '(:' | ')'
  48484. shiftT(37); // ')'
  48485. break;
  48486. case 32: // '%'
  48487. case 17553: // 'function' '('
  48488. try_FunctionTest();
  48489. break;
  48490. case 34: // '('
  48491. try_ParenthesizedItemType();
  48492. break;
  48493. case 17486: // 'array' '('
  48494. case 17575: // 'json-item' '('
  48495. case 17602: // 'object' '('
  48496. try_JSONTest();
  48497. break;
  48498. case 17650: // 'structured-item' '('
  48499. try_StructuredItemTest();
  48500. break;
  48501. default:
  48502. try_AtomicOrUnionType();
  48503. }
  48504. }
  48505. function parse_JSONTest()
  48506. {
  48507. eventHandler.startNonterminal("JSONTest", e0);
  48508. switch (l1)
  48509. {
  48510. case 167: // 'json-item'
  48511. parse_JSONItemTest();
  48512. break;
  48513. case 194: // 'object'
  48514. parse_JSONObjectTest();
  48515. break;
  48516. default:
  48517. parse_JSONArrayTest();
  48518. }
  48519. eventHandler.endNonterminal("JSONTest", e0);
  48520. }
  48521. function try_JSONTest()
  48522. {
  48523. switch (l1)
  48524. {
  48525. case 167: // 'json-item'
  48526. try_JSONItemTest();
  48527. break;
  48528. case 194: // 'object'
  48529. try_JSONObjectTest();
  48530. break;
  48531. default:
  48532. try_JSONArrayTest();
  48533. }
  48534. }
  48535. function parse_StructuredItemTest()
  48536. {
  48537. eventHandler.startNonterminal("StructuredItemTest", e0);
  48538. shift(242); // 'structured-item'
  48539. lookahead1W(22); // S^WS | '(' | '(:'
  48540. shift(34); // '('
  48541. lookahead1W(23); // S^WS | '(:' | ')'
  48542. shift(37); // ')'
  48543. eventHandler.endNonterminal("StructuredItemTest", e0);
  48544. }
  48545. function try_StructuredItemTest()
  48546. {
  48547. shiftT(242); // 'structured-item'
  48548. lookahead1W(22); // S^WS | '(' | '(:'
  48549. shiftT(34); // '('
  48550. lookahead1W(23); // S^WS | '(:' | ')'
  48551. shiftT(37); // ')'
  48552. }
  48553. function parse_JSONItemTest()
  48554. {
  48555. eventHandler.startNonterminal("JSONItemTest", e0);
  48556. shift(167); // 'json-item'
  48557. lookahead1W(22); // S^WS | '(' | '(:'
  48558. shift(34); // '('
  48559. lookahead1W(23); // S^WS | '(:' | ')'
  48560. shift(37); // ')'
  48561. eventHandler.endNonterminal("JSONItemTest", e0);
  48562. }
  48563. function try_JSONItemTest()
  48564. {
  48565. shiftT(167); // 'json-item'
  48566. lookahead1W(22); // S^WS | '(' | '(:'
  48567. shiftT(34); // '('
  48568. lookahead1W(23); // S^WS | '(:' | ')'
  48569. shiftT(37); // ')'
  48570. }
  48571. function parse_JSONObjectTest()
  48572. {
  48573. eventHandler.startNonterminal("JSONObjectTest", e0);
  48574. shift(194); // 'object'
  48575. lookahead1W(22); // S^WS | '(' | '(:'
  48576. shift(34); // '('
  48577. lookahead1W(23); // S^WS | '(:' | ')'
  48578. shift(37); // ')'
  48579. eventHandler.endNonterminal("JSONObjectTest", e0);
  48580. }
  48581. function try_JSONObjectTest()
  48582. {
  48583. shiftT(194); // 'object'
  48584. lookahead1W(22); // S^WS | '(' | '(:'
  48585. shiftT(34); // '('
  48586. lookahead1W(23); // S^WS | '(:' | ')'
  48587. shiftT(37); // ')'
  48588. }
  48589. function parse_JSONArrayTest()
  48590. {
  48591. eventHandler.startNonterminal("JSONArrayTest", e0);
  48592. shift(78); // 'array'
  48593. lookahead1W(22); // S^WS | '(' | '(:'
  48594. shift(34); // '('
  48595. lookahead1W(23); // S^WS | '(:' | ')'
  48596. shift(37); // ')'
  48597. eventHandler.endNonterminal("JSONArrayTest", e0);
  48598. }
  48599. function try_JSONArrayTest()
  48600. {
  48601. shiftT(78); // 'array'
  48602. lookahead1W(22); // S^WS | '(' | '(:'
  48603. shiftT(34); // '('
  48604. lookahead1W(23); // S^WS | '(:' | ')'
  48605. shiftT(37); // ')'
  48606. }
  48607. function parse_AtomicOrUnionType()
  48608. {
  48609. eventHandler.startNonterminal("AtomicOrUnionType", e0);
  48610. parse_EQName();
  48611. eventHandler.endNonterminal("AtomicOrUnionType", e0);
  48612. }
  48613. function try_AtomicOrUnionType()
  48614. {
  48615. try_EQName();
  48616. }
  48617. function parse_KindTest()
  48618. {
  48619. eventHandler.startNonterminal("KindTest", e0);
  48620. switch (l1)
  48621. {
  48622. case 120: // 'document-node'
  48623. parse_DocumentTest();
  48624. break;
  48625. case 121: // 'element'
  48626. parse_ElementTest();
  48627. break;
  48628. case 82: // 'attribute'
  48629. parse_AttributeTest();
  48630. break;
  48631. case 227: // 'schema-element'
  48632. parse_SchemaElementTest();
  48633. break;
  48634. case 226: // 'schema-attribute'
  48635. parse_SchemaAttributeTest();
  48636. break;
  48637. case 216: // 'processing-instruction'
  48638. parse_PITest();
  48639. break;
  48640. case 96: // 'comment'
  48641. parse_CommentTest();
  48642. break;
  48643. case 244: // 'text'
  48644. parse_TextTest();
  48645. break;
  48646. case 185: // 'namespace-node'
  48647. parse_NamespaceNodeTest();
  48648. break;
  48649. default:
  48650. parse_AnyKindTest();
  48651. }
  48652. eventHandler.endNonterminal("KindTest", e0);
  48653. }
  48654. function try_KindTest()
  48655. {
  48656. switch (l1)
  48657. {
  48658. case 120: // 'document-node'
  48659. try_DocumentTest();
  48660. break;
  48661. case 121: // 'element'
  48662. try_ElementTest();
  48663. break;
  48664. case 82: // 'attribute'
  48665. try_AttributeTest();
  48666. break;
  48667. case 227: // 'schema-element'
  48668. try_SchemaElementTest();
  48669. break;
  48670. case 226: // 'schema-attribute'
  48671. try_SchemaAttributeTest();
  48672. break;
  48673. case 216: // 'processing-instruction'
  48674. try_PITest();
  48675. break;
  48676. case 96: // 'comment'
  48677. try_CommentTest();
  48678. break;
  48679. case 244: // 'text'
  48680. try_TextTest();
  48681. break;
  48682. case 185: // 'namespace-node'
  48683. try_NamespaceNodeTest();
  48684. break;
  48685. default:
  48686. try_AnyKindTest();
  48687. }
  48688. }
  48689. function parse_AnyKindTest()
  48690. {
  48691. eventHandler.startNonterminal("AnyKindTest", e0);
  48692. shift(191); // 'node'
  48693. lookahead1W(22); // S^WS | '(' | '(:'
  48694. shift(34); // '('
  48695. lookahead1W(23); // S^WS | '(:' | ')'
  48696. shift(37); // ')'
  48697. eventHandler.endNonterminal("AnyKindTest", e0);
  48698. }
  48699. function try_AnyKindTest()
  48700. {
  48701. shiftT(191); // 'node'
  48702. lookahead1W(22); // S^WS | '(' | '(:'
  48703. shiftT(34); // '('
  48704. lookahead1W(23); // S^WS | '(:' | ')'
  48705. shiftT(37); // ')'
  48706. }
  48707. function parse_DocumentTest()
  48708. {
  48709. eventHandler.startNonterminal("DocumentTest", e0);
  48710. shift(120); // 'document-node'
  48711. lookahead1W(22); // S^WS | '(' | '(:'
  48712. shift(34); // '('
  48713. lookahead1W(144); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  48714. if (l1 != 37) // ')'
  48715. {
  48716. switch (l1)
  48717. {
  48718. case 121: // 'element'
  48719. whitespace();
  48720. parse_ElementTest();
  48721. break;
  48722. default:
  48723. whitespace();
  48724. parse_SchemaElementTest();
  48725. }
  48726. }
  48727. lookahead1W(23); // S^WS | '(:' | ')'
  48728. shift(37); // ')'
  48729. eventHandler.endNonterminal("DocumentTest", e0);
  48730. }
  48731. function try_DocumentTest()
  48732. {
  48733. shiftT(120); // 'document-node'
  48734. lookahead1W(22); // S^WS | '(' | '(:'
  48735. shiftT(34); // '('
  48736. lookahead1W(144); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  48737. if (l1 != 37) // ')'
  48738. {
  48739. switch (l1)
  48740. {
  48741. case 121: // 'element'
  48742. try_ElementTest();
  48743. break;
  48744. default:
  48745. try_SchemaElementTest();
  48746. }
  48747. }
  48748. lookahead1W(23); // S^WS | '(:' | ')'
  48749. shiftT(37); // ')'
  48750. }
  48751. function parse_TextTest()
  48752. {
  48753. eventHandler.startNonterminal("TextTest", e0);
  48754. shift(244); // 'text'
  48755. lookahead1W(22); // S^WS | '(' | '(:'
  48756. shift(34); // '('
  48757. lookahead1W(23); // S^WS | '(:' | ')'
  48758. shift(37); // ')'
  48759. eventHandler.endNonterminal("TextTest", e0);
  48760. }
  48761. function try_TextTest()
  48762. {
  48763. shiftT(244); // 'text'
  48764. lookahead1W(22); // S^WS | '(' | '(:'
  48765. shiftT(34); // '('
  48766. lookahead1W(23); // S^WS | '(:' | ')'
  48767. shiftT(37); // ')'
  48768. }
  48769. function parse_CommentTest()
  48770. {
  48771. eventHandler.startNonterminal("CommentTest", e0);
  48772. shift(96); // 'comment'
  48773. lookahead1W(22); // S^WS | '(' | '(:'
  48774. shift(34); // '('
  48775. lookahead1W(23); // S^WS | '(:' | ')'
  48776. shift(37); // ')'
  48777. eventHandler.endNonterminal("CommentTest", e0);
  48778. }
  48779. function try_CommentTest()
  48780. {
  48781. shiftT(96); // 'comment'
  48782. lookahead1W(22); // S^WS | '(' | '(:'
  48783. shiftT(34); // '('
  48784. lookahead1W(23); // S^WS | '(:' | ')'
  48785. shiftT(37); // ')'
  48786. }
  48787. function parse_NamespaceNodeTest()
  48788. {
  48789. eventHandler.startNonterminal("NamespaceNodeTest", e0);
  48790. shift(185); // 'namespace-node'
  48791. lookahead1W(22); // S^WS | '(' | '(:'
  48792. shift(34); // '('
  48793. lookahead1W(23); // S^WS | '(:' | ')'
  48794. shift(37); // ')'
  48795. eventHandler.endNonterminal("NamespaceNodeTest", e0);
  48796. }
  48797. function try_NamespaceNodeTest()
  48798. {
  48799. shiftT(185); // 'namespace-node'
  48800. lookahead1W(22); // S^WS | '(' | '(:'
  48801. shiftT(34); // '('
  48802. lookahead1W(23); // S^WS | '(:' | ')'
  48803. shiftT(37); // ')'
  48804. }
  48805. function parse_PITest()
  48806. {
  48807. eventHandler.startNonterminal("PITest", e0);
  48808. shift(216); // 'processing-instruction'
  48809. lookahead1W(22); // S^WS | '(' | '(:'
  48810. shift(34); // '('
  48811. lookahead1W(252); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  48812. if (l1 != 37) // ')'
  48813. {
  48814. switch (l1)
  48815. {
  48816. case 11: // StringLiteral
  48817. shift(11); // StringLiteral
  48818. break;
  48819. default:
  48820. whitespace();
  48821. parse_NCName();
  48822. }
  48823. }
  48824. lookahead1W(23); // S^WS | '(:' | ')'
  48825. shift(37); // ')'
  48826. eventHandler.endNonterminal("PITest", e0);
  48827. }
  48828. function try_PITest()
  48829. {
  48830. shiftT(216); // 'processing-instruction'
  48831. lookahead1W(22); // S^WS | '(' | '(:'
  48832. shiftT(34); // '('
  48833. lookahead1W(252); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  48834. if (l1 != 37) // ')'
  48835. {
  48836. switch (l1)
  48837. {
  48838. case 11: // StringLiteral
  48839. shiftT(11); // StringLiteral
  48840. break;
  48841. default:
  48842. try_NCName();
  48843. }
  48844. }
  48845. lookahead1W(23); // S^WS | '(:' | ')'
  48846. shiftT(37); // ')'
  48847. }
  48848. function parse_AttributeTest()
  48849. {
  48850. eventHandler.startNonterminal("AttributeTest", e0);
  48851. shift(82); // 'attribute'
  48852. lookahead1W(22); // S^WS | '(' | '(:'
  48853. shift(34); // '('
  48854. lookahead1W(260); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  48855. if (l1 != 37) // ')'
  48856. {
  48857. whitespace();
  48858. parse_AttribNameOrWildcard();
  48859. lookahead1W(101); // S^WS | '(:' | ')' | ','
  48860. if (l1 == 41) // ','
  48861. {
  48862. shift(41); // ','
  48863. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48864. whitespace();
  48865. parse_TypeName();
  48866. }
  48867. }
  48868. lookahead1W(23); // S^WS | '(:' | ')'
  48869. shift(37); // ')'
  48870. eventHandler.endNonterminal("AttributeTest", e0);
  48871. }
  48872. function try_AttributeTest()
  48873. {
  48874. shiftT(82); // 'attribute'
  48875. lookahead1W(22); // S^WS | '(' | '(:'
  48876. shiftT(34); // '('
  48877. lookahead1W(260); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  48878. if (l1 != 37) // ')'
  48879. {
  48880. try_AttribNameOrWildcard();
  48881. lookahead1W(101); // S^WS | '(:' | ')' | ','
  48882. if (l1 == 41) // ','
  48883. {
  48884. shiftT(41); // ','
  48885. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48886. try_TypeName();
  48887. }
  48888. }
  48889. lookahead1W(23); // S^WS | '(:' | ')'
  48890. shiftT(37); // ')'
  48891. }
  48892. function parse_AttribNameOrWildcard()
  48893. {
  48894. eventHandler.startNonterminal("AttribNameOrWildcard", e0);
  48895. switch (l1)
  48896. {
  48897. case 38: // '*'
  48898. shift(38); // '*'
  48899. break;
  48900. default:
  48901. parse_AttributeName();
  48902. }
  48903. eventHandler.endNonterminal("AttribNameOrWildcard", e0);
  48904. }
  48905. function try_AttribNameOrWildcard()
  48906. {
  48907. switch (l1)
  48908. {
  48909. case 38: // '*'
  48910. shiftT(38); // '*'
  48911. break;
  48912. default:
  48913. try_AttributeName();
  48914. }
  48915. }
  48916. function parse_SchemaAttributeTest()
  48917. {
  48918. eventHandler.startNonterminal("SchemaAttributeTest", e0);
  48919. shift(226); // 'schema-attribute'
  48920. lookahead1W(22); // S^WS | '(' | '(:'
  48921. shift(34); // '('
  48922. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48923. whitespace();
  48924. parse_AttributeDeclaration();
  48925. lookahead1W(23); // S^WS | '(:' | ')'
  48926. shift(37); // ')'
  48927. eventHandler.endNonterminal("SchemaAttributeTest", e0);
  48928. }
  48929. function try_SchemaAttributeTest()
  48930. {
  48931. shiftT(226); // 'schema-attribute'
  48932. lookahead1W(22); // S^WS | '(' | '(:'
  48933. shiftT(34); // '('
  48934. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48935. try_AttributeDeclaration();
  48936. lookahead1W(23); // S^WS | '(:' | ')'
  48937. shiftT(37); // ')'
  48938. }
  48939. function parse_AttributeDeclaration()
  48940. {
  48941. eventHandler.startNonterminal("AttributeDeclaration", e0);
  48942. parse_AttributeName();
  48943. eventHandler.endNonterminal("AttributeDeclaration", e0);
  48944. }
  48945. function try_AttributeDeclaration()
  48946. {
  48947. try_AttributeName();
  48948. }
  48949. function parse_ElementTest()
  48950. {
  48951. eventHandler.startNonterminal("ElementTest", e0);
  48952. shift(121); // 'element'
  48953. lookahead1W(22); // S^WS | '(' | '(:'
  48954. shift(34); // '('
  48955. lookahead1W(260); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  48956. if (l1 != 37) // ')'
  48957. {
  48958. whitespace();
  48959. parse_ElementNameOrWildcard();
  48960. lookahead1W(101); // S^WS | '(:' | ')' | ','
  48961. if (l1 == 41) // ','
  48962. {
  48963. shift(41); // ','
  48964. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48965. whitespace();
  48966. parse_TypeName();
  48967. lookahead1W(102); // S^WS | '(:' | ')' | '?'
  48968. if (l1 == 64) // '?'
  48969. {
  48970. shift(64); // '?'
  48971. }
  48972. }
  48973. }
  48974. lookahead1W(23); // S^WS | '(:' | ')'
  48975. shift(37); // ')'
  48976. eventHandler.endNonterminal("ElementTest", e0);
  48977. }
  48978. function try_ElementTest()
  48979. {
  48980. shiftT(121); // 'element'
  48981. lookahead1W(22); // S^WS | '(' | '(:'
  48982. shiftT(34); // '('
  48983. lookahead1W(260); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  48984. if (l1 != 37) // ')'
  48985. {
  48986. try_ElementNameOrWildcard();
  48987. lookahead1W(101); // S^WS | '(:' | ')' | ','
  48988. if (l1 == 41) // ','
  48989. {
  48990. shiftT(41); // ','
  48991. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  48992. try_TypeName();
  48993. lookahead1W(102); // S^WS | '(:' | ')' | '?'
  48994. if (l1 == 64) // '?'
  48995. {
  48996. shiftT(64); // '?'
  48997. }
  48998. }
  48999. }
  49000. lookahead1W(23); // S^WS | '(:' | ')'
  49001. shiftT(37); // ')'
  49002. }
  49003. function parse_ElementNameOrWildcard()
  49004. {
  49005. eventHandler.startNonterminal("ElementNameOrWildcard", e0);
  49006. switch (l1)
  49007. {
  49008. case 38: // '*'
  49009. shift(38); // '*'
  49010. break;
  49011. default:
  49012. parse_ElementName();
  49013. }
  49014. eventHandler.endNonterminal("ElementNameOrWildcard", e0);
  49015. }
  49016. function try_ElementNameOrWildcard()
  49017. {
  49018. switch (l1)
  49019. {
  49020. case 38: // '*'
  49021. shiftT(38); // '*'
  49022. break;
  49023. default:
  49024. try_ElementName();
  49025. }
  49026. }
  49027. function parse_SchemaElementTest()
  49028. {
  49029. eventHandler.startNonterminal("SchemaElementTest", e0);
  49030. shift(227); // 'schema-element'
  49031. lookahead1W(22); // S^WS | '(' | '(:'
  49032. shift(34); // '('
  49033. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  49034. whitespace();
  49035. parse_ElementDeclaration();
  49036. lookahead1W(23); // S^WS | '(:' | ')'
  49037. shift(37); // ')'
  49038. eventHandler.endNonterminal("SchemaElementTest", e0);
  49039. }
  49040. function try_SchemaElementTest()
  49041. {
  49042. shiftT(227); // 'schema-element'
  49043. lookahead1W(22); // S^WS | '(' | '(:'
  49044. shiftT(34); // '('
  49045. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  49046. try_ElementDeclaration();
  49047. lookahead1W(23); // S^WS | '(:' | ')'
  49048. shiftT(37); // ')'
  49049. }
  49050. function parse_ElementDeclaration()
  49051. {
  49052. eventHandler.startNonterminal("ElementDeclaration", e0);
  49053. parse_ElementName();
  49054. eventHandler.endNonterminal("ElementDeclaration", e0);
  49055. }
  49056. function try_ElementDeclaration()
  49057. {
  49058. try_ElementName();
  49059. }
  49060. function parse_AttributeName()
  49061. {
  49062. eventHandler.startNonterminal("AttributeName", e0);
  49063. parse_EQName();
  49064. eventHandler.endNonterminal("AttributeName", e0);
  49065. }
  49066. function try_AttributeName()
  49067. {
  49068. try_EQName();
  49069. }
  49070. function parse_ElementName()
  49071. {
  49072. eventHandler.startNonterminal("ElementName", e0);
  49073. parse_EQName();
  49074. eventHandler.endNonterminal("ElementName", e0);
  49075. }
  49076. function try_ElementName()
  49077. {
  49078. try_EQName();
  49079. }
  49080. function parse_SimpleTypeName()
  49081. {
  49082. eventHandler.startNonterminal("SimpleTypeName", e0);
  49083. parse_TypeName();
  49084. eventHandler.endNonterminal("SimpleTypeName", e0);
  49085. }
  49086. function try_SimpleTypeName()
  49087. {
  49088. try_TypeName();
  49089. }
  49090. function parse_TypeName()
  49091. {
  49092. eventHandler.startNonterminal("TypeName", e0);
  49093. parse_EQName();
  49094. eventHandler.endNonterminal("TypeName", e0);
  49095. }
  49096. function try_TypeName()
  49097. {
  49098. try_EQName();
  49099. }
  49100. function parse_FunctionTest()
  49101. {
  49102. eventHandler.startNonterminal("FunctionTest", e0);
  49103. for (;;)
  49104. {
  49105. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  49106. if (l1 != 32) // '%'
  49107. {
  49108. break;
  49109. }
  49110. whitespace();
  49111. parse_Annotation();
  49112. }
  49113. switch (l1)
  49114. {
  49115. case 145: // 'function'
  49116. lookahead2W(22); // S^WS | '(' | '(:'
  49117. break;
  49118. default:
  49119. lk = l1;
  49120. }
  49121. lk = memoized(5, e0);
  49122. if (lk == 0)
  49123. {
  49124. var b0A = b0; var e0A = e0; var l1A = l1;
  49125. var b1A = b1; var e1A = e1; var l2A = l2;
  49126. var b2A = b2; var e2A = e2;
  49127. try
  49128. {
  49129. try_AnyFunctionTest();
  49130. lk = -1;
  49131. }
  49132. catch (p1A)
  49133. {
  49134. lk = -2;
  49135. }
  49136. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  49137. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  49138. b2 = b2A; e2 = e2A; end = e2A; }}
  49139. memoize(5, e0, lk);
  49140. }
  49141. switch (lk)
  49142. {
  49143. case -1:
  49144. whitespace();
  49145. parse_AnyFunctionTest();
  49146. break;
  49147. default:
  49148. whitespace();
  49149. parse_TypedFunctionTest();
  49150. }
  49151. eventHandler.endNonterminal("FunctionTest", e0);
  49152. }
  49153. function try_FunctionTest()
  49154. {
  49155. for (;;)
  49156. {
  49157. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  49158. if (l1 != 32) // '%'
  49159. {
  49160. break;
  49161. }
  49162. try_Annotation();
  49163. }
  49164. switch (l1)
  49165. {
  49166. case 145: // 'function'
  49167. lookahead2W(22); // S^WS | '(' | '(:'
  49168. break;
  49169. default:
  49170. lk = l1;
  49171. }
  49172. lk = memoized(5, e0);
  49173. if (lk == 0)
  49174. {
  49175. var b0A = b0; var e0A = e0; var l1A = l1;
  49176. var b1A = b1; var e1A = e1; var l2A = l2;
  49177. var b2A = b2; var e2A = e2;
  49178. try
  49179. {
  49180. try_AnyFunctionTest();
  49181. memoize(5, e0A, -1);
  49182. lk = -3;
  49183. }
  49184. catch (p1A)
  49185. {
  49186. lk = -2;
  49187. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  49188. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  49189. b2 = b2A; e2 = e2A; end = e2A; }}
  49190. memoize(5, e0A, -2);
  49191. }
  49192. }
  49193. switch (lk)
  49194. {
  49195. case -1:
  49196. try_AnyFunctionTest();
  49197. break;
  49198. case -3:
  49199. break;
  49200. default:
  49201. try_TypedFunctionTest();
  49202. }
  49203. }
  49204. function parse_AnyFunctionTest()
  49205. {
  49206. eventHandler.startNonterminal("AnyFunctionTest", e0);
  49207. shift(145); // 'function'
  49208. lookahead1W(22); // S^WS | '(' | '(:'
  49209. shift(34); // '('
  49210. lookahead1W(24); // S^WS | '(:' | '*'
  49211. shift(38); // '*'
  49212. lookahead1W(23); // S^WS | '(:' | ')'
  49213. shift(37); // ')'
  49214. eventHandler.endNonterminal("AnyFunctionTest", e0);
  49215. }
  49216. function try_AnyFunctionTest()
  49217. {
  49218. shiftT(145); // 'function'
  49219. lookahead1W(22); // S^WS | '(' | '(:'
  49220. shiftT(34); // '('
  49221. lookahead1W(24); // S^WS | '(:' | '*'
  49222. shiftT(38); // '*'
  49223. lookahead1W(23); // S^WS | '(:' | ')'
  49224. shiftT(37); // ')'
  49225. }
  49226. function parse_TypedFunctionTest()
  49227. {
  49228. eventHandler.startNonterminal("TypedFunctionTest", e0);
  49229. shift(145); // 'function'
  49230. lookahead1W(22); // S^WS | '(' | '(:'
  49231. shift(34); // '('
  49232. lookahead1W(262); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  49233. if (l1 != 37) // ')'
  49234. {
  49235. whitespace();
  49236. parse_SequenceType();
  49237. for (;;)
  49238. {
  49239. lookahead1W(101); // S^WS | '(:' | ')' | ','
  49240. if (l1 != 41) // ','
  49241. {
  49242. break;
  49243. }
  49244. shift(41); // ','
  49245. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49246. whitespace();
  49247. parse_SequenceType();
  49248. }
  49249. }
  49250. shift(37); // ')'
  49251. lookahead1W(30); // S^WS | '(:' | 'as'
  49252. shift(79); // 'as'
  49253. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49254. whitespace();
  49255. parse_SequenceType();
  49256. eventHandler.endNonterminal("TypedFunctionTest", e0);
  49257. }
  49258. function try_TypedFunctionTest()
  49259. {
  49260. shiftT(145); // 'function'
  49261. lookahead1W(22); // S^WS | '(' | '(:'
  49262. shiftT(34); // '('
  49263. lookahead1W(262); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  49264. if (l1 != 37) // ')'
  49265. {
  49266. try_SequenceType();
  49267. for (;;)
  49268. {
  49269. lookahead1W(101); // S^WS | '(:' | ')' | ','
  49270. if (l1 != 41) // ','
  49271. {
  49272. break;
  49273. }
  49274. shiftT(41); // ','
  49275. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49276. try_SequenceType();
  49277. }
  49278. }
  49279. shiftT(37); // ')'
  49280. lookahead1W(30); // S^WS | '(:' | 'as'
  49281. shiftT(79); // 'as'
  49282. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49283. try_SequenceType();
  49284. }
  49285. function parse_ParenthesizedItemType()
  49286. {
  49287. eventHandler.startNonterminal("ParenthesizedItemType", e0);
  49288. shift(34); // '('
  49289. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49290. whitespace();
  49291. parse_ItemType();
  49292. lookahead1W(23); // S^WS | '(:' | ')'
  49293. shift(37); // ')'
  49294. eventHandler.endNonterminal("ParenthesizedItemType", e0);
  49295. }
  49296. function try_ParenthesizedItemType()
  49297. {
  49298. shiftT(34); // '('
  49299. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  49300. try_ItemType();
  49301. lookahead1W(23); // S^WS | '(:' | ')'
  49302. shiftT(37); // ')'
  49303. }
  49304. function parse_RevalidationDecl()
  49305. {
  49306. eventHandler.startNonterminal("RevalidationDecl", e0);
  49307. shift(108); // 'declare'
  49308. lookahead1W(72); // S^WS | '(:' | 'revalidation'
  49309. shift(222); // 'revalidation'
  49310. lookahead1W(152); // S^WS | '(:' | 'lax' | 'skip' | 'strict'
  49311. switch (l1)
  49312. {
  49313. case 240: // 'strict'
  49314. shift(240); // 'strict'
  49315. break;
  49316. case 171: // 'lax'
  49317. shift(171); // 'lax'
  49318. break;
  49319. default:
  49320. shift(233); // 'skip'
  49321. }
  49322. eventHandler.endNonterminal("RevalidationDecl", e0);
  49323. }
  49324. function parse_InsertExprTargetChoice()
  49325. {
  49326. eventHandler.startNonterminal("InsertExprTargetChoice", e0);
  49327. switch (l1)
  49328. {
  49329. case 70: // 'after'
  49330. shift(70); // 'after'
  49331. break;
  49332. case 84: // 'before'
  49333. shift(84); // 'before'
  49334. break;
  49335. default:
  49336. if (l1 == 79) // 'as'
  49337. {
  49338. shift(79); // 'as'
  49339. lookahead1W(119); // S^WS | '(:' | 'first' | 'last'
  49340. switch (l1)
  49341. {
  49342. case 134: // 'first'
  49343. shift(134); // 'first'
  49344. break;
  49345. default:
  49346. shift(170); // 'last'
  49347. }
  49348. }
  49349. lookahead1W(54); // S^WS | '(:' | 'into'
  49350. shift(163); // 'into'
  49351. }
  49352. eventHandler.endNonterminal("InsertExprTargetChoice", e0);
  49353. }
  49354. function try_InsertExprTargetChoice()
  49355. {
  49356. switch (l1)
  49357. {
  49358. case 70: // 'after'
  49359. shiftT(70); // 'after'
  49360. break;
  49361. case 84: // 'before'
  49362. shiftT(84); // 'before'
  49363. break;
  49364. default:
  49365. if (l1 == 79) // 'as'
  49366. {
  49367. shiftT(79); // 'as'
  49368. lookahead1W(119); // S^WS | '(:' | 'first' | 'last'
  49369. switch (l1)
  49370. {
  49371. case 134: // 'first'
  49372. shiftT(134); // 'first'
  49373. break;
  49374. default:
  49375. shiftT(170); // 'last'
  49376. }
  49377. }
  49378. lookahead1W(54); // S^WS | '(:' | 'into'
  49379. shiftT(163); // 'into'
  49380. }
  49381. }
  49382. function parse_InsertExpr()
  49383. {
  49384. eventHandler.startNonterminal("InsertExpr", e0);
  49385. shift(159); // 'insert'
  49386. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  49387. switch (l1)
  49388. {
  49389. case 191: // 'node'
  49390. shift(191); // 'node'
  49391. break;
  49392. default:
  49393. shift(192); // 'nodes'
  49394. }
  49395. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49396. whitespace();
  49397. parse_SourceExpr();
  49398. whitespace();
  49399. parse_InsertExprTargetChoice();
  49400. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49401. whitespace();
  49402. parse_TargetExpr();
  49403. eventHandler.endNonterminal("InsertExpr", e0);
  49404. }
  49405. function try_InsertExpr()
  49406. {
  49407. shiftT(159); // 'insert'
  49408. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  49409. switch (l1)
  49410. {
  49411. case 191: // 'node'
  49412. shiftT(191); // 'node'
  49413. break;
  49414. default:
  49415. shiftT(192); // 'nodes'
  49416. }
  49417. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49418. try_SourceExpr();
  49419. try_InsertExprTargetChoice();
  49420. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49421. try_TargetExpr();
  49422. }
  49423. function parse_DeleteExpr()
  49424. {
  49425. eventHandler.startNonterminal("DeleteExpr", e0);
  49426. shift(110); // 'delete'
  49427. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  49428. switch (l1)
  49429. {
  49430. case 191: // 'node'
  49431. shift(191); // 'node'
  49432. break;
  49433. default:
  49434. shift(192); // 'nodes'
  49435. }
  49436. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49437. whitespace();
  49438. parse_TargetExpr();
  49439. eventHandler.endNonterminal("DeleteExpr", e0);
  49440. }
  49441. function try_DeleteExpr()
  49442. {
  49443. shiftT(110); // 'delete'
  49444. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  49445. switch (l1)
  49446. {
  49447. case 191: // 'node'
  49448. shiftT(191); // 'node'
  49449. break;
  49450. default:
  49451. shiftT(192); // 'nodes'
  49452. }
  49453. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49454. try_TargetExpr();
  49455. }
  49456. function parse_ReplaceExpr()
  49457. {
  49458. eventHandler.startNonterminal("ReplaceExpr", e0);
  49459. shift(219); // 'replace'
  49460. lookahead1W(130); // S^WS | '(:' | 'node' | 'value'
  49461. if (l1 == 261) // 'value'
  49462. {
  49463. shift(261); // 'value'
  49464. lookahead1W(64); // S^WS | '(:' | 'of'
  49465. shift(196); // 'of'
  49466. }
  49467. lookahead1W(62); // S^WS | '(:' | 'node'
  49468. shift(191); // 'node'
  49469. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49470. whitespace();
  49471. parse_TargetExpr();
  49472. shift(270); // 'with'
  49473. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49474. whitespace();
  49475. parse_ExprSingle();
  49476. eventHandler.endNonterminal("ReplaceExpr", e0);
  49477. }
  49478. function try_ReplaceExpr()
  49479. {
  49480. shiftT(219); // 'replace'
  49481. lookahead1W(130); // S^WS | '(:' | 'node' | 'value'
  49482. if (l1 == 261) // 'value'
  49483. {
  49484. shiftT(261); // 'value'
  49485. lookahead1W(64); // S^WS | '(:' | 'of'
  49486. shiftT(196); // 'of'
  49487. }
  49488. lookahead1W(62); // S^WS | '(:' | 'node'
  49489. shiftT(191); // 'node'
  49490. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49491. try_TargetExpr();
  49492. shiftT(270); // 'with'
  49493. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49494. try_ExprSingle();
  49495. }
  49496. function parse_RenameExpr()
  49497. {
  49498. eventHandler.startNonterminal("RenameExpr", e0);
  49499. shift(218); // 'rename'
  49500. lookahead1W(62); // S^WS | '(:' | 'node'
  49501. shift(191); // 'node'
  49502. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49503. whitespace();
  49504. parse_TargetExpr();
  49505. shift(79); // 'as'
  49506. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49507. whitespace();
  49508. parse_NewNameExpr();
  49509. eventHandler.endNonterminal("RenameExpr", e0);
  49510. }
  49511. function try_RenameExpr()
  49512. {
  49513. shiftT(218); // 'rename'
  49514. lookahead1W(62); // S^WS | '(:' | 'node'
  49515. shiftT(191); // 'node'
  49516. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49517. try_TargetExpr();
  49518. shiftT(79); // 'as'
  49519. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49520. try_NewNameExpr();
  49521. }
  49522. function parse_SourceExpr()
  49523. {
  49524. eventHandler.startNonterminal("SourceExpr", e0);
  49525. parse_ExprSingle();
  49526. eventHandler.endNonterminal("SourceExpr", e0);
  49527. }
  49528. function try_SourceExpr()
  49529. {
  49530. try_ExprSingle();
  49531. }
  49532. function parse_TargetExpr()
  49533. {
  49534. eventHandler.startNonterminal("TargetExpr", e0);
  49535. parse_ExprSingle();
  49536. eventHandler.endNonterminal("TargetExpr", e0);
  49537. }
  49538. function try_TargetExpr()
  49539. {
  49540. try_ExprSingle();
  49541. }
  49542. function parse_NewNameExpr()
  49543. {
  49544. eventHandler.startNonterminal("NewNameExpr", e0);
  49545. parse_ExprSingle();
  49546. eventHandler.endNonterminal("NewNameExpr", e0);
  49547. }
  49548. function try_NewNameExpr()
  49549. {
  49550. try_ExprSingle();
  49551. }
  49552. function parse_TransformExpr()
  49553. {
  49554. eventHandler.startNonterminal("TransformExpr", e0);
  49555. shift(103); // 'copy'
  49556. lookahead1W(21); // S^WS | '$' | '(:'
  49557. whitespace();
  49558. parse_TransformSpec();
  49559. for (;;)
  49560. {
  49561. if (l1 != 41) // ','
  49562. {
  49563. break;
  49564. }
  49565. shift(41); // ','
  49566. lookahead1W(21); // S^WS | '$' | '(:'
  49567. whitespace();
  49568. parse_TransformSpec();
  49569. }
  49570. shift(181); // 'modify'
  49571. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49572. whitespace();
  49573. parse_ExprSingle();
  49574. shift(220); // 'return'
  49575. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49576. whitespace();
  49577. parse_ExprSingle();
  49578. eventHandler.endNonterminal("TransformExpr", e0);
  49579. }
  49580. function try_TransformExpr()
  49581. {
  49582. shiftT(103); // 'copy'
  49583. lookahead1W(21); // S^WS | '$' | '(:'
  49584. try_TransformSpec();
  49585. for (;;)
  49586. {
  49587. if (l1 != 41) // ','
  49588. {
  49589. break;
  49590. }
  49591. shiftT(41); // ','
  49592. lookahead1W(21); // S^WS | '$' | '(:'
  49593. try_TransformSpec();
  49594. }
  49595. shiftT(181); // 'modify'
  49596. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49597. try_ExprSingle();
  49598. shiftT(220); // 'return'
  49599. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49600. try_ExprSingle();
  49601. }
  49602. function parse_TransformSpec()
  49603. {
  49604. eventHandler.startNonterminal("TransformSpec", e0);
  49605. shift(31); // '$'
  49606. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  49607. whitespace();
  49608. parse_VarName();
  49609. lookahead1W(27); // S^WS | '(:' | ':='
  49610. shift(52); // ':='
  49611. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49612. whitespace();
  49613. parse_ExprSingle();
  49614. eventHandler.endNonterminal("TransformSpec", e0);
  49615. }
  49616. function try_TransformSpec()
  49617. {
  49618. shiftT(31); // '$'
  49619. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  49620. try_VarName();
  49621. lookahead1W(27); // S^WS | '(:' | ':='
  49622. shiftT(52); // ':='
  49623. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49624. try_ExprSingle();
  49625. }
  49626. function parse_FTSelection()
  49627. {
  49628. eventHandler.startNonterminal("FTSelection", e0);
  49629. parse_FTOr();
  49630. for (;;)
  49631. {
  49632. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49633. switch (l1)
  49634. {
  49635. case 81: // 'at'
  49636. lookahead2W(151); // S^WS | '(:' | 'end' | 'position' | 'start'
  49637. break;
  49638. default:
  49639. lk = l1;
  49640. }
  49641. if (lk != 115 // 'different'
  49642. && lk != 117 // 'distance'
  49643. && lk != 127 // 'entire'
  49644. && lk != 202 // 'ordered'
  49645. && lk != 223 // 'same'
  49646. && lk != 269 // 'window'
  49647. && lk != 64593 // 'at' 'end'
  49648. && lk != 121425) // 'at' 'start'
  49649. {
  49650. break;
  49651. }
  49652. whitespace();
  49653. parse_FTPosFilter();
  49654. }
  49655. eventHandler.endNonterminal("FTSelection", e0);
  49656. }
  49657. function try_FTSelection()
  49658. {
  49659. try_FTOr();
  49660. for (;;)
  49661. {
  49662. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49663. switch (l1)
  49664. {
  49665. case 81: // 'at'
  49666. lookahead2W(151); // S^WS | '(:' | 'end' | 'position' | 'start'
  49667. break;
  49668. default:
  49669. lk = l1;
  49670. }
  49671. if (lk != 115 // 'different'
  49672. && lk != 117 // 'distance'
  49673. && lk != 127 // 'entire'
  49674. && lk != 202 // 'ordered'
  49675. && lk != 223 // 'same'
  49676. && lk != 269 // 'window'
  49677. && lk != 64593 // 'at' 'end'
  49678. && lk != 121425) // 'at' 'start'
  49679. {
  49680. break;
  49681. }
  49682. try_FTPosFilter();
  49683. }
  49684. }
  49685. function parse_FTWeight()
  49686. {
  49687. eventHandler.startNonterminal("FTWeight", e0);
  49688. shift(264); // 'weight'
  49689. lookahead1W(87); // S^WS | '(:' | '{'
  49690. shift(276); // '{'
  49691. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49692. whitespace();
  49693. parse_Expr();
  49694. shift(282); // '}'
  49695. eventHandler.endNonterminal("FTWeight", e0);
  49696. }
  49697. function try_FTWeight()
  49698. {
  49699. shiftT(264); // 'weight'
  49700. lookahead1W(87); // S^WS | '(:' | '{'
  49701. shiftT(276); // '{'
  49702. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49703. try_Expr();
  49704. shiftT(282); // '}'
  49705. }
  49706. function parse_FTOr()
  49707. {
  49708. eventHandler.startNonterminal("FTOr", e0);
  49709. parse_FTAnd();
  49710. for (;;)
  49711. {
  49712. if (l1 != 144) // 'ftor'
  49713. {
  49714. break;
  49715. }
  49716. shift(144); // 'ftor'
  49717. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49718. whitespace();
  49719. parse_FTAnd();
  49720. }
  49721. eventHandler.endNonterminal("FTOr", e0);
  49722. }
  49723. function try_FTOr()
  49724. {
  49725. try_FTAnd();
  49726. for (;;)
  49727. {
  49728. if (l1 != 144) // 'ftor'
  49729. {
  49730. break;
  49731. }
  49732. shiftT(144); // 'ftor'
  49733. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49734. try_FTAnd();
  49735. }
  49736. }
  49737. function parse_FTAnd()
  49738. {
  49739. eventHandler.startNonterminal("FTAnd", e0);
  49740. parse_FTMildNot();
  49741. for (;;)
  49742. {
  49743. if (l1 != 142) // 'ftand'
  49744. {
  49745. break;
  49746. }
  49747. shift(142); // 'ftand'
  49748. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49749. whitespace();
  49750. parse_FTMildNot();
  49751. }
  49752. eventHandler.endNonterminal("FTAnd", e0);
  49753. }
  49754. function try_FTAnd()
  49755. {
  49756. try_FTMildNot();
  49757. for (;;)
  49758. {
  49759. if (l1 != 142) // 'ftand'
  49760. {
  49761. break;
  49762. }
  49763. shiftT(142); // 'ftand'
  49764. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49765. try_FTMildNot();
  49766. }
  49767. }
  49768. function parse_FTMildNot()
  49769. {
  49770. eventHandler.startNonterminal("FTMildNot", e0);
  49771. parse_FTUnaryNot();
  49772. for (;;)
  49773. {
  49774. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49775. if (l1 != 193) // 'not'
  49776. {
  49777. break;
  49778. }
  49779. shift(193); // 'not'
  49780. lookahead1W(53); // S^WS | '(:' | 'in'
  49781. shift(154); // 'in'
  49782. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49783. whitespace();
  49784. parse_FTUnaryNot();
  49785. }
  49786. eventHandler.endNonterminal("FTMildNot", e0);
  49787. }
  49788. function try_FTMildNot()
  49789. {
  49790. try_FTUnaryNot();
  49791. for (;;)
  49792. {
  49793. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49794. if (l1 != 193) // 'not'
  49795. {
  49796. break;
  49797. }
  49798. shiftT(193); // 'not'
  49799. lookahead1W(53); // S^WS | '(:' | 'in'
  49800. shiftT(154); // 'in'
  49801. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49802. try_FTUnaryNot();
  49803. }
  49804. }
  49805. function parse_FTUnaryNot()
  49806. {
  49807. eventHandler.startNonterminal("FTUnaryNot", e0);
  49808. if (l1 == 143) // 'ftnot'
  49809. {
  49810. shift(143); // 'ftnot'
  49811. }
  49812. lookahead1W(155); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  49813. whitespace();
  49814. parse_FTPrimaryWithOptions();
  49815. eventHandler.endNonterminal("FTUnaryNot", e0);
  49816. }
  49817. function try_FTUnaryNot()
  49818. {
  49819. if (l1 == 143) // 'ftnot'
  49820. {
  49821. shiftT(143); // 'ftnot'
  49822. }
  49823. lookahead1W(155); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  49824. try_FTPrimaryWithOptions();
  49825. }
  49826. function parse_FTPrimaryWithOptions()
  49827. {
  49828. eventHandler.startNonterminal("FTPrimaryWithOptions", e0);
  49829. parse_FTPrimary();
  49830. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49831. if (l1 == 259) // 'using'
  49832. {
  49833. whitespace();
  49834. parse_FTMatchOptions();
  49835. }
  49836. if (l1 == 264) // 'weight'
  49837. {
  49838. whitespace();
  49839. parse_FTWeight();
  49840. }
  49841. eventHandler.endNonterminal("FTPrimaryWithOptions", e0);
  49842. }
  49843. function try_FTPrimaryWithOptions()
  49844. {
  49845. try_FTPrimary();
  49846. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49847. if (l1 == 259) // 'using'
  49848. {
  49849. try_FTMatchOptions();
  49850. }
  49851. if (l1 == 264) // 'weight'
  49852. {
  49853. try_FTWeight();
  49854. }
  49855. }
  49856. function parse_FTPrimary()
  49857. {
  49858. eventHandler.startNonterminal("FTPrimary", e0);
  49859. switch (l1)
  49860. {
  49861. case 34: // '('
  49862. shift(34); // '('
  49863. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49864. whitespace();
  49865. parse_FTSelection();
  49866. shift(37); // ')'
  49867. break;
  49868. case 35: // '(#'
  49869. parse_FTExtensionSelection();
  49870. break;
  49871. default:
  49872. parse_FTWords();
  49873. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49874. if (l1 == 195) // 'occurs'
  49875. {
  49876. whitespace();
  49877. parse_FTTimes();
  49878. }
  49879. }
  49880. eventHandler.endNonterminal("FTPrimary", e0);
  49881. }
  49882. function try_FTPrimary()
  49883. {
  49884. switch (l1)
  49885. {
  49886. case 34: // '('
  49887. shiftT(34); // '('
  49888. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  49889. try_FTSelection();
  49890. shiftT(37); // ')'
  49891. break;
  49892. case 35: // '(#'
  49893. try_FTExtensionSelection();
  49894. break;
  49895. default:
  49896. try_FTWords();
  49897. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49898. if (l1 == 195) // 'occurs'
  49899. {
  49900. try_FTTimes();
  49901. }
  49902. }
  49903. }
  49904. function parse_FTWords()
  49905. {
  49906. eventHandler.startNonterminal("FTWords", e0);
  49907. parse_FTWordsValue();
  49908. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49909. if (l1 == 71 // 'all'
  49910. || l1 == 76 // 'any'
  49911. || l1 == 210) // 'phrase'
  49912. {
  49913. whitespace();
  49914. parse_FTAnyallOption();
  49915. }
  49916. eventHandler.endNonterminal("FTWords", e0);
  49917. }
  49918. function try_FTWords()
  49919. {
  49920. try_FTWordsValue();
  49921. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  49922. if (l1 == 71 // 'all'
  49923. || l1 == 76 // 'any'
  49924. || l1 == 210) // 'phrase'
  49925. {
  49926. try_FTAnyallOption();
  49927. }
  49928. }
  49929. function parse_FTWordsValue()
  49930. {
  49931. eventHandler.startNonterminal("FTWordsValue", e0);
  49932. switch (l1)
  49933. {
  49934. case 11: // StringLiteral
  49935. shift(11); // StringLiteral
  49936. break;
  49937. default:
  49938. shift(276); // '{'
  49939. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49940. whitespace();
  49941. parse_Expr();
  49942. shift(282); // '}'
  49943. }
  49944. eventHandler.endNonterminal("FTWordsValue", e0);
  49945. }
  49946. function try_FTWordsValue()
  49947. {
  49948. switch (l1)
  49949. {
  49950. case 11: // StringLiteral
  49951. shiftT(11); // StringLiteral
  49952. break;
  49953. default:
  49954. shiftT(276); // '{'
  49955. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  49956. try_Expr();
  49957. shiftT(282); // '}'
  49958. }
  49959. }
  49960. function parse_FTExtensionSelection()
  49961. {
  49962. eventHandler.startNonterminal("FTExtensionSelection", e0);
  49963. for (;;)
  49964. {
  49965. whitespace();
  49966. parse_Pragma();
  49967. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  49968. if (l1 != 35) // '(#'
  49969. {
  49970. break;
  49971. }
  49972. }
  49973. shift(276); // '{'
  49974. lookahead1W(166); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  49975. if (l1 != 282) // '}'
  49976. {
  49977. whitespace();
  49978. parse_FTSelection();
  49979. }
  49980. shift(282); // '}'
  49981. eventHandler.endNonterminal("FTExtensionSelection", e0);
  49982. }
  49983. function try_FTExtensionSelection()
  49984. {
  49985. for (;;)
  49986. {
  49987. try_Pragma();
  49988. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  49989. if (l1 != 35) // '(#'
  49990. {
  49991. break;
  49992. }
  49993. }
  49994. shiftT(276); // '{'
  49995. lookahead1W(166); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  49996. if (l1 != 282) // '}'
  49997. {
  49998. try_FTSelection();
  49999. }
  50000. shiftT(282); // '}'
  50001. }
  50002. function parse_FTAnyallOption()
  50003. {
  50004. eventHandler.startNonterminal("FTAnyallOption", e0);
  50005. switch (l1)
  50006. {
  50007. case 76: // 'any'
  50008. shift(76); // 'any'
  50009. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50010. if (l1 == 272) // 'word'
  50011. {
  50012. shift(272); // 'word'
  50013. }
  50014. break;
  50015. case 71: // 'all'
  50016. shift(71); // 'all'
  50017. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50018. if (l1 == 273) // 'words'
  50019. {
  50020. shift(273); // 'words'
  50021. }
  50022. break;
  50023. default:
  50024. shift(210); // 'phrase'
  50025. }
  50026. eventHandler.endNonterminal("FTAnyallOption", e0);
  50027. }
  50028. function try_FTAnyallOption()
  50029. {
  50030. switch (l1)
  50031. {
  50032. case 76: // 'any'
  50033. shiftT(76); // 'any'
  50034. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50035. if (l1 == 272) // 'word'
  50036. {
  50037. shiftT(272); // 'word'
  50038. }
  50039. break;
  50040. case 71: // 'all'
  50041. shiftT(71); // 'all'
  50042. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50043. if (l1 == 273) // 'words'
  50044. {
  50045. shiftT(273); // 'words'
  50046. }
  50047. break;
  50048. default:
  50049. shiftT(210); // 'phrase'
  50050. }
  50051. }
  50052. function parse_FTTimes()
  50053. {
  50054. eventHandler.startNonterminal("FTTimes", e0);
  50055. shift(195); // 'occurs'
  50056. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  50057. whitespace();
  50058. parse_FTRange();
  50059. shift(247); // 'times'
  50060. eventHandler.endNonterminal("FTTimes", e0);
  50061. }
  50062. function try_FTTimes()
  50063. {
  50064. shiftT(195); // 'occurs'
  50065. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  50066. try_FTRange();
  50067. shiftT(247); // 'times'
  50068. }
  50069. function parse_FTRange()
  50070. {
  50071. eventHandler.startNonterminal("FTRange", e0);
  50072. switch (l1)
  50073. {
  50074. case 130: // 'exactly'
  50075. shift(130); // 'exactly'
  50076. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50077. whitespace();
  50078. parse_AdditiveExpr();
  50079. break;
  50080. case 81: // 'at'
  50081. shift(81); // 'at'
  50082. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  50083. switch (l1)
  50084. {
  50085. case 173: // 'least'
  50086. shift(173); // 'least'
  50087. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50088. whitespace();
  50089. parse_AdditiveExpr();
  50090. break;
  50091. default:
  50092. shift(183); // 'most'
  50093. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50094. whitespace();
  50095. parse_AdditiveExpr();
  50096. }
  50097. break;
  50098. default:
  50099. shift(140); // 'from'
  50100. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50101. whitespace();
  50102. parse_AdditiveExpr();
  50103. shift(248); // 'to'
  50104. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50105. whitespace();
  50106. parse_AdditiveExpr();
  50107. }
  50108. eventHandler.endNonterminal("FTRange", e0);
  50109. }
  50110. function try_FTRange()
  50111. {
  50112. switch (l1)
  50113. {
  50114. case 130: // 'exactly'
  50115. shiftT(130); // 'exactly'
  50116. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50117. try_AdditiveExpr();
  50118. break;
  50119. case 81: // 'at'
  50120. shiftT(81); // 'at'
  50121. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  50122. switch (l1)
  50123. {
  50124. case 173: // 'least'
  50125. shiftT(173); // 'least'
  50126. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50127. try_AdditiveExpr();
  50128. break;
  50129. default:
  50130. shiftT(183); // 'most'
  50131. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50132. try_AdditiveExpr();
  50133. }
  50134. break;
  50135. default:
  50136. shiftT(140); // 'from'
  50137. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50138. try_AdditiveExpr();
  50139. shiftT(248); // 'to'
  50140. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50141. try_AdditiveExpr();
  50142. }
  50143. }
  50144. function parse_FTPosFilter()
  50145. {
  50146. eventHandler.startNonterminal("FTPosFilter", e0);
  50147. switch (l1)
  50148. {
  50149. case 202: // 'ordered'
  50150. parse_FTOrder();
  50151. break;
  50152. case 269: // 'window'
  50153. parse_FTWindow();
  50154. break;
  50155. case 117: // 'distance'
  50156. parse_FTDistance();
  50157. break;
  50158. case 115: // 'different'
  50159. case 223: // 'same'
  50160. parse_FTScope();
  50161. break;
  50162. default:
  50163. parse_FTContent();
  50164. }
  50165. eventHandler.endNonterminal("FTPosFilter", e0);
  50166. }
  50167. function try_FTPosFilter()
  50168. {
  50169. switch (l1)
  50170. {
  50171. case 202: // 'ordered'
  50172. try_FTOrder();
  50173. break;
  50174. case 269: // 'window'
  50175. try_FTWindow();
  50176. break;
  50177. case 117: // 'distance'
  50178. try_FTDistance();
  50179. break;
  50180. case 115: // 'different'
  50181. case 223: // 'same'
  50182. try_FTScope();
  50183. break;
  50184. default:
  50185. try_FTContent();
  50186. }
  50187. }
  50188. function parse_FTOrder()
  50189. {
  50190. eventHandler.startNonterminal("FTOrder", e0);
  50191. shift(202); // 'ordered'
  50192. eventHandler.endNonterminal("FTOrder", e0);
  50193. }
  50194. function try_FTOrder()
  50195. {
  50196. shiftT(202); // 'ordered'
  50197. }
  50198. function parse_FTWindow()
  50199. {
  50200. eventHandler.startNonterminal("FTWindow", e0);
  50201. shift(269); // 'window'
  50202. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50203. whitespace();
  50204. parse_AdditiveExpr();
  50205. whitespace();
  50206. parse_FTUnit();
  50207. eventHandler.endNonterminal("FTWindow", e0);
  50208. }
  50209. function try_FTWindow()
  50210. {
  50211. shiftT(269); // 'window'
  50212. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  50213. try_AdditiveExpr();
  50214. try_FTUnit();
  50215. }
  50216. function parse_FTDistance()
  50217. {
  50218. eventHandler.startNonterminal("FTDistance", e0);
  50219. shift(117); // 'distance'
  50220. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  50221. whitespace();
  50222. parse_FTRange();
  50223. whitespace();
  50224. parse_FTUnit();
  50225. eventHandler.endNonterminal("FTDistance", e0);
  50226. }
  50227. function try_FTDistance()
  50228. {
  50229. shiftT(117); // 'distance'
  50230. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  50231. try_FTRange();
  50232. try_FTUnit();
  50233. }
  50234. function parse_FTUnit()
  50235. {
  50236. eventHandler.startNonterminal("FTUnit", e0);
  50237. switch (l1)
  50238. {
  50239. case 273: // 'words'
  50240. shift(273); // 'words'
  50241. break;
  50242. case 232: // 'sentences'
  50243. shift(232); // 'sentences'
  50244. break;
  50245. default:
  50246. shift(205); // 'paragraphs'
  50247. }
  50248. eventHandler.endNonterminal("FTUnit", e0);
  50249. }
  50250. function try_FTUnit()
  50251. {
  50252. switch (l1)
  50253. {
  50254. case 273: // 'words'
  50255. shiftT(273); // 'words'
  50256. break;
  50257. case 232: // 'sentences'
  50258. shiftT(232); // 'sentences'
  50259. break;
  50260. default:
  50261. shiftT(205); // 'paragraphs'
  50262. }
  50263. }
  50264. function parse_FTScope()
  50265. {
  50266. eventHandler.startNonterminal("FTScope", e0);
  50267. switch (l1)
  50268. {
  50269. case 223: // 'same'
  50270. shift(223); // 'same'
  50271. break;
  50272. default:
  50273. shift(115); // 'different'
  50274. }
  50275. lookahead1W(132); // S^WS | '(:' | 'paragraph' | 'sentence'
  50276. whitespace();
  50277. parse_FTBigUnit();
  50278. eventHandler.endNonterminal("FTScope", e0);
  50279. }
  50280. function try_FTScope()
  50281. {
  50282. switch (l1)
  50283. {
  50284. case 223: // 'same'
  50285. shiftT(223); // 'same'
  50286. break;
  50287. default:
  50288. shiftT(115); // 'different'
  50289. }
  50290. lookahead1W(132); // S^WS | '(:' | 'paragraph' | 'sentence'
  50291. try_FTBigUnit();
  50292. }
  50293. function parse_FTBigUnit()
  50294. {
  50295. eventHandler.startNonterminal("FTBigUnit", e0);
  50296. switch (l1)
  50297. {
  50298. case 231: // 'sentence'
  50299. shift(231); // 'sentence'
  50300. break;
  50301. default:
  50302. shift(204); // 'paragraph'
  50303. }
  50304. eventHandler.endNonterminal("FTBigUnit", e0);
  50305. }
  50306. function try_FTBigUnit()
  50307. {
  50308. switch (l1)
  50309. {
  50310. case 231: // 'sentence'
  50311. shiftT(231); // 'sentence'
  50312. break;
  50313. default:
  50314. shiftT(204); // 'paragraph'
  50315. }
  50316. }
  50317. function parse_FTContent()
  50318. {
  50319. eventHandler.startNonterminal("FTContent", e0);
  50320. switch (l1)
  50321. {
  50322. case 81: // 'at'
  50323. shift(81); // 'at'
  50324. lookahead1W(117); // S^WS | '(:' | 'end' | 'start'
  50325. switch (l1)
  50326. {
  50327. case 237: // 'start'
  50328. shift(237); // 'start'
  50329. break;
  50330. default:
  50331. shift(126); // 'end'
  50332. }
  50333. break;
  50334. default:
  50335. shift(127); // 'entire'
  50336. lookahead1W(42); // S^WS | '(:' | 'content'
  50337. shift(100); // 'content'
  50338. }
  50339. eventHandler.endNonterminal("FTContent", e0);
  50340. }
  50341. function try_FTContent()
  50342. {
  50343. switch (l1)
  50344. {
  50345. case 81: // 'at'
  50346. shiftT(81); // 'at'
  50347. lookahead1W(117); // S^WS | '(:' | 'end' | 'start'
  50348. switch (l1)
  50349. {
  50350. case 237: // 'start'
  50351. shiftT(237); // 'start'
  50352. break;
  50353. default:
  50354. shiftT(126); // 'end'
  50355. }
  50356. break;
  50357. default:
  50358. shiftT(127); // 'entire'
  50359. lookahead1W(42); // S^WS | '(:' | 'content'
  50360. shiftT(100); // 'content'
  50361. }
  50362. }
  50363. function parse_FTMatchOptions()
  50364. {
  50365. eventHandler.startNonterminal("FTMatchOptions", e0);
  50366. for (;;)
  50367. {
  50368. shift(259); // 'using'
  50369. lookahead1W(181); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  50370. whitespace();
  50371. parse_FTMatchOption();
  50372. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50373. if (l1 != 259) // 'using'
  50374. {
  50375. break;
  50376. }
  50377. }
  50378. eventHandler.endNonterminal("FTMatchOptions", e0);
  50379. }
  50380. function try_FTMatchOptions()
  50381. {
  50382. for (;;)
  50383. {
  50384. shiftT(259); // 'using'
  50385. lookahead1W(181); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  50386. try_FTMatchOption();
  50387. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50388. if (l1 != 259) // 'using'
  50389. {
  50390. break;
  50391. }
  50392. }
  50393. }
  50394. function parse_FTMatchOption()
  50395. {
  50396. eventHandler.startNonterminal("FTMatchOption", e0);
  50397. switch (l1)
  50398. {
  50399. case 188: // 'no'
  50400. lookahead2W(161); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  50401. break;
  50402. default:
  50403. lk = l1;
  50404. }
  50405. switch (lk)
  50406. {
  50407. case 169: // 'language'
  50408. parse_FTLanguageOption();
  50409. break;
  50410. case 268: // 'wildcards'
  50411. case 137404: // 'no' 'wildcards'
  50412. parse_FTWildCardOption();
  50413. break;
  50414. case 246: // 'thesaurus'
  50415. case 126140: // 'no' 'thesaurus'
  50416. parse_FTThesaurusOption();
  50417. break;
  50418. case 238: // 'stemming'
  50419. case 122044: // 'no' 'stemming'
  50420. parse_FTStemOption();
  50421. break;
  50422. case 114: // 'diacritics'
  50423. parse_FTDiacriticsOption();
  50424. break;
  50425. case 239: // 'stop'
  50426. case 122556: // 'no' 'stop'
  50427. parse_FTStopWordOption();
  50428. break;
  50429. case 199: // 'option'
  50430. parse_FTExtensionOption();
  50431. break;
  50432. default:
  50433. parse_FTCaseOption();
  50434. }
  50435. eventHandler.endNonterminal("FTMatchOption", e0);
  50436. }
  50437. function try_FTMatchOption()
  50438. {
  50439. switch (l1)
  50440. {
  50441. case 188: // 'no'
  50442. lookahead2W(161); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  50443. break;
  50444. default:
  50445. lk = l1;
  50446. }
  50447. switch (lk)
  50448. {
  50449. case 169: // 'language'
  50450. try_FTLanguageOption();
  50451. break;
  50452. case 268: // 'wildcards'
  50453. case 137404: // 'no' 'wildcards'
  50454. try_FTWildCardOption();
  50455. break;
  50456. case 246: // 'thesaurus'
  50457. case 126140: // 'no' 'thesaurus'
  50458. try_FTThesaurusOption();
  50459. break;
  50460. case 238: // 'stemming'
  50461. case 122044: // 'no' 'stemming'
  50462. try_FTStemOption();
  50463. break;
  50464. case 114: // 'diacritics'
  50465. try_FTDiacriticsOption();
  50466. break;
  50467. case 239: // 'stop'
  50468. case 122556: // 'no' 'stop'
  50469. try_FTStopWordOption();
  50470. break;
  50471. case 199: // 'option'
  50472. try_FTExtensionOption();
  50473. break;
  50474. default:
  50475. try_FTCaseOption();
  50476. }
  50477. }
  50478. function parse_FTCaseOption()
  50479. {
  50480. eventHandler.startNonterminal("FTCaseOption", e0);
  50481. switch (l1)
  50482. {
  50483. case 88: // 'case'
  50484. shift(88); // 'case'
  50485. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  50486. switch (l1)
  50487. {
  50488. case 158: // 'insensitive'
  50489. shift(158); // 'insensitive'
  50490. break;
  50491. default:
  50492. shift(230); // 'sensitive'
  50493. }
  50494. break;
  50495. case 177: // 'lowercase'
  50496. shift(177); // 'lowercase'
  50497. break;
  50498. default:
  50499. shift(258); // 'uppercase'
  50500. }
  50501. eventHandler.endNonterminal("FTCaseOption", e0);
  50502. }
  50503. function try_FTCaseOption()
  50504. {
  50505. switch (l1)
  50506. {
  50507. case 88: // 'case'
  50508. shiftT(88); // 'case'
  50509. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  50510. switch (l1)
  50511. {
  50512. case 158: // 'insensitive'
  50513. shiftT(158); // 'insensitive'
  50514. break;
  50515. default:
  50516. shiftT(230); // 'sensitive'
  50517. }
  50518. break;
  50519. case 177: // 'lowercase'
  50520. shiftT(177); // 'lowercase'
  50521. break;
  50522. default:
  50523. shiftT(258); // 'uppercase'
  50524. }
  50525. }
  50526. function parse_FTDiacriticsOption()
  50527. {
  50528. eventHandler.startNonterminal("FTDiacriticsOption", e0);
  50529. shift(114); // 'diacritics'
  50530. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  50531. switch (l1)
  50532. {
  50533. case 158: // 'insensitive'
  50534. shift(158); // 'insensitive'
  50535. break;
  50536. default:
  50537. shift(230); // 'sensitive'
  50538. }
  50539. eventHandler.endNonterminal("FTDiacriticsOption", e0);
  50540. }
  50541. function try_FTDiacriticsOption()
  50542. {
  50543. shiftT(114); // 'diacritics'
  50544. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  50545. switch (l1)
  50546. {
  50547. case 158: // 'insensitive'
  50548. shiftT(158); // 'insensitive'
  50549. break;
  50550. default:
  50551. shiftT(230); // 'sensitive'
  50552. }
  50553. }
  50554. function parse_FTStemOption()
  50555. {
  50556. eventHandler.startNonterminal("FTStemOption", e0);
  50557. switch (l1)
  50558. {
  50559. case 238: // 'stemming'
  50560. shift(238); // 'stemming'
  50561. break;
  50562. default:
  50563. shift(188); // 'no'
  50564. lookahead1W(74); // S^WS | '(:' | 'stemming'
  50565. shift(238); // 'stemming'
  50566. }
  50567. eventHandler.endNonterminal("FTStemOption", e0);
  50568. }
  50569. function try_FTStemOption()
  50570. {
  50571. switch (l1)
  50572. {
  50573. case 238: // 'stemming'
  50574. shiftT(238); // 'stemming'
  50575. break;
  50576. default:
  50577. shiftT(188); // 'no'
  50578. lookahead1W(74); // S^WS | '(:' | 'stemming'
  50579. shiftT(238); // 'stemming'
  50580. }
  50581. }
  50582. function parse_FTThesaurusOption()
  50583. {
  50584. eventHandler.startNonterminal("FTThesaurusOption", e0);
  50585. switch (l1)
  50586. {
  50587. case 246: // 'thesaurus'
  50588. shift(246); // 'thesaurus'
  50589. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  50590. switch (l1)
  50591. {
  50592. case 81: // 'at'
  50593. whitespace();
  50594. parse_FTThesaurusID();
  50595. break;
  50596. case 109: // 'default'
  50597. shift(109); // 'default'
  50598. break;
  50599. default:
  50600. shift(34); // '('
  50601. lookahead1W(112); // S^WS | '(:' | 'at' | 'default'
  50602. switch (l1)
  50603. {
  50604. case 81: // 'at'
  50605. whitespace();
  50606. parse_FTThesaurusID();
  50607. break;
  50608. default:
  50609. shift(109); // 'default'
  50610. }
  50611. for (;;)
  50612. {
  50613. lookahead1W(101); // S^WS | '(:' | ')' | ','
  50614. if (l1 != 41) // ','
  50615. {
  50616. break;
  50617. }
  50618. shift(41); // ','
  50619. lookahead1W(31); // S^WS | '(:' | 'at'
  50620. whitespace();
  50621. parse_FTThesaurusID();
  50622. }
  50623. shift(37); // ')'
  50624. }
  50625. break;
  50626. default:
  50627. shift(188); // 'no'
  50628. lookahead1W(78); // S^WS | '(:' | 'thesaurus'
  50629. shift(246); // 'thesaurus'
  50630. }
  50631. eventHandler.endNonterminal("FTThesaurusOption", e0);
  50632. }
  50633. function try_FTThesaurusOption()
  50634. {
  50635. switch (l1)
  50636. {
  50637. case 246: // 'thesaurus'
  50638. shiftT(246); // 'thesaurus'
  50639. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  50640. switch (l1)
  50641. {
  50642. case 81: // 'at'
  50643. try_FTThesaurusID();
  50644. break;
  50645. case 109: // 'default'
  50646. shiftT(109); // 'default'
  50647. break;
  50648. default:
  50649. shiftT(34); // '('
  50650. lookahead1W(112); // S^WS | '(:' | 'at' | 'default'
  50651. switch (l1)
  50652. {
  50653. case 81: // 'at'
  50654. try_FTThesaurusID();
  50655. break;
  50656. default:
  50657. shiftT(109); // 'default'
  50658. }
  50659. for (;;)
  50660. {
  50661. lookahead1W(101); // S^WS | '(:' | ')' | ','
  50662. if (l1 != 41) // ','
  50663. {
  50664. break;
  50665. }
  50666. shiftT(41); // ','
  50667. lookahead1W(31); // S^WS | '(:' | 'at'
  50668. try_FTThesaurusID();
  50669. }
  50670. shiftT(37); // ')'
  50671. }
  50672. break;
  50673. default:
  50674. shiftT(188); // 'no'
  50675. lookahead1W(78); // S^WS | '(:' | 'thesaurus'
  50676. shiftT(246); // 'thesaurus'
  50677. }
  50678. }
  50679. function parse_FTThesaurusID()
  50680. {
  50681. eventHandler.startNonterminal("FTThesaurusID", e0);
  50682. shift(81); // 'at'
  50683. lookahead1W(15); // URILiteral | S^WS | '(:'
  50684. shift(7); // URILiteral
  50685. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50686. if (l1 == 217) // 'relationship'
  50687. {
  50688. shift(217); // 'relationship'
  50689. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50690. shift(11); // StringLiteral
  50691. }
  50692. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50693. switch (l1)
  50694. {
  50695. case 81: // 'at'
  50696. lookahead2W(165); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  50697. break;
  50698. default:
  50699. lk = l1;
  50700. }
  50701. if (lk == 130 // 'exactly'
  50702. || lk == 140 // 'from'
  50703. || lk == 88657 // 'at' 'least'
  50704. || lk == 93777) // 'at' 'most'
  50705. {
  50706. whitespace();
  50707. parse_FTLiteralRange();
  50708. lookahead1W(58); // S^WS | '(:' | 'levels'
  50709. shift(175); // 'levels'
  50710. }
  50711. eventHandler.endNonterminal("FTThesaurusID", e0);
  50712. }
  50713. function try_FTThesaurusID()
  50714. {
  50715. shiftT(81); // 'at'
  50716. lookahead1W(15); // URILiteral | S^WS | '(:'
  50717. shiftT(7); // URILiteral
  50718. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50719. if (l1 == 217) // 'relationship'
  50720. {
  50721. shiftT(217); // 'relationship'
  50722. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50723. shiftT(11); // StringLiteral
  50724. }
  50725. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50726. switch (l1)
  50727. {
  50728. case 81: // 'at'
  50729. lookahead2W(165); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  50730. break;
  50731. default:
  50732. lk = l1;
  50733. }
  50734. if (lk == 130 // 'exactly'
  50735. || lk == 140 // 'from'
  50736. || lk == 88657 // 'at' 'least'
  50737. || lk == 93777) // 'at' 'most'
  50738. {
  50739. try_FTLiteralRange();
  50740. lookahead1W(58); // S^WS | '(:' | 'levels'
  50741. shiftT(175); // 'levels'
  50742. }
  50743. }
  50744. function parse_FTLiteralRange()
  50745. {
  50746. eventHandler.startNonterminal("FTLiteralRange", e0);
  50747. switch (l1)
  50748. {
  50749. case 130: // 'exactly'
  50750. shift(130); // 'exactly'
  50751. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50752. shift(8); // IntegerLiteral
  50753. break;
  50754. case 81: // 'at'
  50755. shift(81); // 'at'
  50756. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  50757. switch (l1)
  50758. {
  50759. case 173: // 'least'
  50760. shift(173); // 'least'
  50761. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50762. shift(8); // IntegerLiteral
  50763. break;
  50764. default:
  50765. shift(183); // 'most'
  50766. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50767. shift(8); // IntegerLiteral
  50768. }
  50769. break;
  50770. default:
  50771. shift(140); // 'from'
  50772. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50773. shift(8); // IntegerLiteral
  50774. lookahead1W(79); // S^WS | '(:' | 'to'
  50775. shift(248); // 'to'
  50776. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50777. shift(8); // IntegerLiteral
  50778. }
  50779. eventHandler.endNonterminal("FTLiteralRange", e0);
  50780. }
  50781. function try_FTLiteralRange()
  50782. {
  50783. switch (l1)
  50784. {
  50785. case 130: // 'exactly'
  50786. shiftT(130); // 'exactly'
  50787. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50788. shiftT(8); // IntegerLiteral
  50789. break;
  50790. case 81: // 'at'
  50791. shiftT(81); // 'at'
  50792. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  50793. switch (l1)
  50794. {
  50795. case 173: // 'least'
  50796. shiftT(173); // 'least'
  50797. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50798. shiftT(8); // IntegerLiteral
  50799. break;
  50800. default:
  50801. shiftT(183); // 'most'
  50802. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50803. shiftT(8); // IntegerLiteral
  50804. }
  50805. break;
  50806. default:
  50807. shiftT(140); // 'from'
  50808. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50809. shiftT(8); // IntegerLiteral
  50810. lookahead1W(79); // S^WS | '(:' | 'to'
  50811. shiftT(248); // 'to'
  50812. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  50813. shiftT(8); // IntegerLiteral
  50814. }
  50815. }
  50816. function parse_FTStopWordOption()
  50817. {
  50818. eventHandler.startNonterminal("FTStopWordOption", e0);
  50819. switch (l1)
  50820. {
  50821. case 239: // 'stop'
  50822. shift(239); // 'stop'
  50823. lookahead1W(86); // S^WS | '(:' | 'words'
  50824. shift(273); // 'words'
  50825. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  50826. switch (l1)
  50827. {
  50828. case 109: // 'default'
  50829. shift(109); // 'default'
  50830. for (;;)
  50831. {
  50832. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50833. if (l1 != 131 // 'except'
  50834. && l1 != 254) // 'union'
  50835. {
  50836. break;
  50837. }
  50838. whitespace();
  50839. parse_FTStopWordsInclExcl();
  50840. }
  50841. break;
  50842. default:
  50843. whitespace();
  50844. parse_FTStopWords();
  50845. for (;;)
  50846. {
  50847. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50848. if (l1 != 131 // 'except'
  50849. && l1 != 254) // 'union'
  50850. {
  50851. break;
  50852. }
  50853. whitespace();
  50854. parse_FTStopWordsInclExcl();
  50855. }
  50856. }
  50857. break;
  50858. default:
  50859. shift(188); // 'no'
  50860. lookahead1W(75); // S^WS | '(:' | 'stop'
  50861. shift(239); // 'stop'
  50862. lookahead1W(86); // S^WS | '(:' | 'words'
  50863. shift(273); // 'words'
  50864. }
  50865. eventHandler.endNonterminal("FTStopWordOption", e0);
  50866. }
  50867. function try_FTStopWordOption()
  50868. {
  50869. switch (l1)
  50870. {
  50871. case 239: // 'stop'
  50872. shiftT(239); // 'stop'
  50873. lookahead1W(86); // S^WS | '(:' | 'words'
  50874. shiftT(273); // 'words'
  50875. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  50876. switch (l1)
  50877. {
  50878. case 109: // 'default'
  50879. shiftT(109); // 'default'
  50880. for (;;)
  50881. {
  50882. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50883. if (l1 != 131 // 'except'
  50884. && l1 != 254) // 'union'
  50885. {
  50886. break;
  50887. }
  50888. try_FTStopWordsInclExcl();
  50889. }
  50890. break;
  50891. default:
  50892. try_FTStopWords();
  50893. for (;;)
  50894. {
  50895. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  50896. if (l1 != 131 // 'except'
  50897. && l1 != 254) // 'union'
  50898. {
  50899. break;
  50900. }
  50901. try_FTStopWordsInclExcl();
  50902. }
  50903. }
  50904. break;
  50905. default:
  50906. shiftT(188); // 'no'
  50907. lookahead1W(75); // S^WS | '(:' | 'stop'
  50908. shiftT(239); // 'stop'
  50909. lookahead1W(86); // S^WS | '(:' | 'words'
  50910. shiftT(273); // 'words'
  50911. }
  50912. }
  50913. function parse_FTStopWords()
  50914. {
  50915. eventHandler.startNonterminal("FTStopWords", e0);
  50916. switch (l1)
  50917. {
  50918. case 81: // 'at'
  50919. shift(81); // 'at'
  50920. lookahead1W(15); // URILiteral | S^WS | '(:'
  50921. shift(7); // URILiteral
  50922. break;
  50923. default:
  50924. shift(34); // '('
  50925. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50926. shift(11); // StringLiteral
  50927. for (;;)
  50928. {
  50929. lookahead1W(101); // S^WS | '(:' | ')' | ','
  50930. if (l1 != 41) // ','
  50931. {
  50932. break;
  50933. }
  50934. shift(41); // ','
  50935. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50936. shift(11); // StringLiteral
  50937. }
  50938. shift(37); // ')'
  50939. }
  50940. eventHandler.endNonterminal("FTStopWords", e0);
  50941. }
  50942. function try_FTStopWords()
  50943. {
  50944. switch (l1)
  50945. {
  50946. case 81: // 'at'
  50947. shiftT(81); // 'at'
  50948. lookahead1W(15); // URILiteral | S^WS | '(:'
  50949. shiftT(7); // URILiteral
  50950. break;
  50951. default:
  50952. shiftT(34); // '('
  50953. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50954. shiftT(11); // StringLiteral
  50955. for (;;)
  50956. {
  50957. lookahead1W(101); // S^WS | '(:' | ')' | ','
  50958. if (l1 != 41) // ','
  50959. {
  50960. break;
  50961. }
  50962. shiftT(41); // ','
  50963. lookahead1W(17); // StringLiteral | S^WS | '(:'
  50964. shiftT(11); // StringLiteral
  50965. }
  50966. shiftT(37); // ')'
  50967. }
  50968. }
  50969. function parse_FTStopWordsInclExcl()
  50970. {
  50971. eventHandler.startNonterminal("FTStopWordsInclExcl", e0);
  50972. switch (l1)
  50973. {
  50974. case 254: // 'union'
  50975. shift(254); // 'union'
  50976. break;
  50977. default:
  50978. shift(131); // 'except'
  50979. }
  50980. lookahead1W(99); // S^WS | '(' | '(:' | 'at'
  50981. whitespace();
  50982. parse_FTStopWords();
  50983. eventHandler.endNonterminal("FTStopWordsInclExcl", e0);
  50984. }
  50985. function try_FTStopWordsInclExcl()
  50986. {
  50987. switch (l1)
  50988. {
  50989. case 254: // 'union'
  50990. shiftT(254); // 'union'
  50991. break;
  50992. default:
  50993. shiftT(131); // 'except'
  50994. }
  50995. lookahead1W(99); // S^WS | '(' | '(:' | 'at'
  50996. try_FTStopWords();
  50997. }
  50998. function parse_FTLanguageOption()
  50999. {
  51000. eventHandler.startNonterminal("FTLanguageOption", e0);
  51001. shift(169); // 'language'
  51002. lookahead1W(17); // StringLiteral | S^WS | '(:'
  51003. shift(11); // StringLiteral
  51004. eventHandler.endNonterminal("FTLanguageOption", e0);
  51005. }
  51006. function try_FTLanguageOption()
  51007. {
  51008. shiftT(169); // 'language'
  51009. lookahead1W(17); // StringLiteral | S^WS | '(:'
  51010. shiftT(11); // StringLiteral
  51011. }
  51012. function parse_FTWildCardOption()
  51013. {
  51014. eventHandler.startNonterminal("FTWildCardOption", e0);
  51015. switch (l1)
  51016. {
  51017. case 268: // 'wildcards'
  51018. shift(268); // 'wildcards'
  51019. break;
  51020. default:
  51021. shift(188); // 'no'
  51022. lookahead1W(84); // S^WS | '(:' | 'wildcards'
  51023. shift(268); // 'wildcards'
  51024. }
  51025. eventHandler.endNonterminal("FTWildCardOption", e0);
  51026. }
  51027. function try_FTWildCardOption()
  51028. {
  51029. switch (l1)
  51030. {
  51031. case 268: // 'wildcards'
  51032. shiftT(268); // 'wildcards'
  51033. break;
  51034. default:
  51035. shiftT(188); // 'no'
  51036. lookahead1W(84); // S^WS | '(:' | 'wildcards'
  51037. shiftT(268); // 'wildcards'
  51038. }
  51039. }
  51040. function parse_FTExtensionOption()
  51041. {
  51042. eventHandler.startNonterminal("FTExtensionOption", e0);
  51043. shift(199); // 'option'
  51044. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51045. whitespace();
  51046. parse_EQName();
  51047. lookahead1W(17); // StringLiteral | S^WS | '(:'
  51048. shift(11); // StringLiteral
  51049. eventHandler.endNonterminal("FTExtensionOption", e0);
  51050. }
  51051. function try_FTExtensionOption()
  51052. {
  51053. shiftT(199); // 'option'
  51054. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51055. try_EQName();
  51056. lookahead1W(17); // StringLiteral | S^WS | '(:'
  51057. shiftT(11); // StringLiteral
  51058. }
  51059. function parse_FTIgnoreOption()
  51060. {
  51061. eventHandler.startNonterminal("FTIgnoreOption", e0);
  51062. shift(271); // 'without'
  51063. lookahead1W(42); // S^WS | '(:' | 'content'
  51064. shift(100); // 'content'
  51065. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51066. whitespace();
  51067. parse_UnionExpr();
  51068. eventHandler.endNonterminal("FTIgnoreOption", e0);
  51069. }
  51070. function try_FTIgnoreOption()
  51071. {
  51072. shiftT(271); // 'without'
  51073. lookahead1W(42); // S^WS | '(:' | 'content'
  51074. shiftT(100); // 'content'
  51075. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51076. try_UnionExpr();
  51077. }
  51078. function parse_CollectionDecl()
  51079. {
  51080. eventHandler.startNonterminal("CollectionDecl", e0);
  51081. shift(95); // 'collection'
  51082. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51083. whitespace();
  51084. parse_EQName();
  51085. lookahead1W(107); // S^WS | '(:' | ';' | 'as'
  51086. if (l1 == 79) // 'as'
  51087. {
  51088. whitespace();
  51089. parse_CollectionTypeDecl();
  51090. }
  51091. eventHandler.endNonterminal("CollectionDecl", e0);
  51092. }
  51093. function parse_CollectionTypeDecl()
  51094. {
  51095. eventHandler.startNonterminal("CollectionTypeDecl", e0);
  51096. shift(79); // 'as'
  51097. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  51098. whitespace();
  51099. parse_ItemType();
  51100. lookahead1W(156); // S^WS | '(:' | '*' | '+' | ';' | '?'
  51101. if (l1 != 53) // ';'
  51102. {
  51103. whitespace();
  51104. parse_OccurrenceIndicator();
  51105. }
  51106. eventHandler.endNonterminal("CollectionTypeDecl", e0);
  51107. }
  51108. function parse_IndexName()
  51109. {
  51110. eventHandler.startNonterminal("IndexName", e0);
  51111. parse_EQName();
  51112. eventHandler.endNonterminal("IndexName", e0);
  51113. }
  51114. function parse_IndexDomainExpr()
  51115. {
  51116. eventHandler.startNonterminal("IndexDomainExpr", e0);
  51117. parse_PathExpr();
  51118. eventHandler.endNonterminal("IndexDomainExpr", e0);
  51119. }
  51120. function parse_IndexKeySpec()
  51121. {
  51122. eventHandler.startNonterminal("IndexKeySpec", e0);
  51123. parse_IndexKeyExpr();
  51124. if (l1 == 79) // 'as'
  51125. {
  51126. whitespace();
  51127. parse_IndexKeyTypeDecl();
  51128. }
  51129. lookahead1W(146); // S^WS | '(:' | ',' | ';' | 'collation'
  51130. if (l1 == 94) // 'collation'
  51131. {
  51132. whitespace();
  51133. parse_IndexKeyCollation();
  51134. }
  51135. eventHandler.endNonterminal("IndexKeySpec", e0);
  51136. }
  51137. function parse_IndexKeyExpr()
  51138. {
  51139. eventHandler.startNonterminal("IndexKeyExpr", e0);
  51140. parse_PathExpr();
  51141. eventHandler.endNonterminal("IndexKeyExpr", e0);
  51142. }
  51143. function parse_IndexKeyTypeDecl()
  51144. {
  51145. eventHandler.startNonterminal("IndexKeyTypeDecl", e0);
  51146. shift(79); // 'as'
  51147. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51148. whitespace();
  51149. parse_AtomicType();
  51150. lookahead1W(169); // S^WS | '(:' | '*' | '+' | ',' | ';' | '?' | 'collation'
  51151. if (l1 == 39 // '*'
  51152. || l1 == 40 // '+'
  51153. || l1 == 64) // '?'
  51154. {
  51155. whitespace();
  51156. parse_OccurrenceIndicator();
  51157. }
  51158. eventHandler.endNonterminal("IndexKeyTypeDecl", e0);
  51159. }
  51160. function parse_AtomicType()
  51161. {
  51162. eventHandler.startNonterminal("AtomicType", e0);
  51163. parse_EQName();
  51164. eventHandler.endNonterminal("AtomicType", e0);
  51165. }
  51166. function parse_IndexKeyCollation()
  51167. {
  51168. eventHandler.startNonterminal("IndexKeyCollation", e0);
  51169. shift(94); // 'collation'
  51170. lookahead1W(15); // URILiteral | S^WS | '(:'
  51171. shift(7); // URILiteral
  51172. eventHandler.endNonterminal("IndexKeyCollation", e0);
  51173. }
  51174. function parse_IndexDecl()
  51175. {
  51176. eventHandler.startNonterminal("IndexDecl", e0);
  51177. shift(155); // 'index'
  51178. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51179. whitespace();
  51180. parse_IndexName();
  51181. lookahead1W(65); // S^WS | '(:' | 'on'
  51182. shift(197); // 'on'
  51183. lookahead1W(63); // S^WS | '(:' | 'nodes'
  51184. shift(192); // 'nodes'
  51185. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51186. whitespace();
  51187. parse_IndexDomainExpr();
  51188. shift(87); // 'by'
  51189. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51190. whitespace();
  51191. parse_IndexKeySpec();
  51192. for (;;)
  51193. {
  51194. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  51195. if (l1 != 41) // ','
  51196. {
  51197. break;
  51198. }
  51199. shift(41); // ','
  51200. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51201. whitespace();
  51202. parse_IndexKeySpec();
  51203. }
  51204. eventHandler.endNonterminal("IndexDecl", e0);
  51205. }
  51206. function parse_ICDecl()
  51207. {
  51208. eventHandler.startNonterminal("ICDecl", e0);
  51209. shift(161); // 'integrity'
  51210. lookahead1W(40); // S^WS | '(:' | 'constraint'
  51211. shift(97); // 'constraint'
  51212. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51213. whitespace();
  51214. parse_EQName();
  51215. lookahead1W(120); // S^WS | '(:' | 'foreign' | 'on'
  51216. switch (l1)
  51217. {
  51218. case 197: // 'on'
  51219. whitespace();
  51220. parse_ICCollection();
  51221. break;
  51222. default:
  51223. whitespace();
  51224. parse_ICForeignKey();
  51225. }
  51226. eventHandler.endNonterminal("ICDecl", e0);
  51227. }
  51228. function parse_ICCollection()
  51229. {
  51230. eventHandler.startNonterminal("ICCollection", e0);
  51231. shift(197); // 'on'
  51232. lookahead1W(39); // S^WS | '(:' | 'collection'
  51233. shift(95); // 'collection'
  51234. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51235. whitespace();
  51236. parse_EQName();
  51237. lookahead1W(140); // S^WS | '$' | '(:' | 'foreach' | 'node'
  51238. switch (l1)
  51239. {
  51240. case 31: // '$'
  51241. whitespace();
  51242. parse_ICCollSequence();
  51243. break;
  51244. case 191: // 'node'
  51245. whitespace();
  51246. parse_ICCollSequenceUnique();
  51247. break;
  51248. default:
  51249. whitespace();
  51250. parse_ICCollNode();
  51251. }
  51252. eventHandler.endNonterminal("ICCollection", e0);
  51253. }
  51254. function parse_ICCollSequence()
  51255. {
  51256. eventHandler.startNonterminal("ICCollSequence", e0);
  51257. parse_VarRef();
  51258. lookahead1W(37); // S^WS | '(:' | 'check'
  51259. shift(92); // 'check'
  51260. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51261. whitespace();
  51262. parse_ExprSingle();
  51263. eventHandler.endNonterminal("ICCollSequence", e0);
  51264. }
  51265. function parse_ICCollSequenceUnique()
  51266. {
  51267. eventHandler.startNonterminal("ICCollSequenceUnique", e0);
  51268. shift(191); // 'node'
  51269. lookahead1W(21); // S^WS | '$' | '(:'
  51270. whitespace();
  51271. parse_VarRef();
  51272. lookahead1W(37); // S^WS | '(:' | 'check'
  51273. shift(92); // 'check'
  51274. lookahead1W(80); // S^WS | '(:' | 'unique'
  51275. shift(255); // 'unique'
  51276. lookahead1W(57); // S^WS | '(:' | 'key'
  51277. shift(168); // 'key'
  51278. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51279. whitespace();
  51280. parse_PathExpr();
  51281. eventHandler.endNonterminal("ICCollSequenceUnique", e0);
  51282. }
  51283. function parse_ICCollNode()
  51284. {
  51285. eventHandler.startNonterminal("ICCollNode", e0);
  51286. shift(138); // 'foreach'
  51287. lookahead1W(62); // S^WS | '(:' | 'node'
  51288. shift(191); // 'node'
  51289. lookahead1W(21); // S^WS | '$' | '(:'
  51290. whitespace();
  51291. parse_VarRef();
  51292. lookahead1W(37); // S^WS | '(:' | 'check'
  51293. shift(92); // 'check'
  51294. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51295. whitespace();
  51296. parse_ExprSingle();
  51297. eventHandler.endNonterminal("ICCollNode", e0);
  51298. }
  51299. function parse_ICForeignKey()
  51300. {
  51301. eventHandler.startNonterminal("ICForeignKey", e0);
  51302. shift(139); // 'foreign'
  51303. lookahead1W(57); // S^WS | '(:' | 'key'
  51304. shift(168); // 'key'
  51305. lookahead1W(51); // S^WS | '(:' | 'from'
  51306. whitespace();
  51307. parse_ICForeignKeySource();
  51308. whitespace();
  51309. parse_ICForeignKeyTarget();
  51310. eventHandler.endNonterminal("ICForeignKey", e0);
  51311. }
  51312. function parse_ICForeignKeySource()
  51313. {
  51314. eventHandler.startNonterminal("ICForeignKeySource", e0);
  51315. shift(140); // 'from'
  51316. lookahead1W(39); // S^WS | '(:' | 'collection'
  51317. whitespace();
  51318. parse_ICForeignKeyValues();
  51319. eventHandler.endNonterminal("ICForeignKeySource", e0);
  51320. }
  51321. function parse_ICForeignKeyTarget()
  51322. {
  51323. eventHandler.startNonterminal("ICForeignKeyTarget", e0);
  51324. shift(248); // 'to'
  51325. lookahead1W(39); // S^WS | '(:' | 'collection'
  51326. whitespace();
  51327. parse_ICForeignKeyValues();
  51328. eventHandler.endNonterminal("ICForeignKeyTarget", e0);
  51329. }
  51330. function parse_ICForeignKeyValues()
  51331. {
  51332. eventHandler.startNonterminal("ICForeignKeyValues", e0);
  51333. shift(95); // 'collection'
  51334. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  51335. whitespace();
  51336. parse_EQName();
  51337. lookahead1W(62); // S^WS | '(:' | 'node'
  51338. shift(191); // 'node'
  51339. lookahead1W(21); // S^WS | '$' | '(:'
  51340. whitespace();
  51341. parse_VarRef();
  51342. lookahead1W(57); // S^WS | '(:' | 'key'
  51343. shift(168); // 'key'
  51344. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  51345. whitespace();
  51346. parse_PathExpr();
  51347. eventHandler.endNonterminal("ICForeignKeyValues", e0);
  51348. }
  51349. function try_Comment()
  51350. {
  51351. shiftT(36); // '(:'
  51352. for (;;)
  51353. {
  51354. lookahead1(89); // CommentContents | '(:' | ':)'
  51355. if (l1 == 50) // ':)'
  51356. {
  51357. break;
  51358. }
  51359. switch (l1)
  51360. {
  51361. case 24: // CommentContents
  51362. shiftT(24); // CommentContents
  51363. break;
  51364. default:
  51365. try_Comment();
  51366. }
  51367. }
  51368. shiftT(50); // ':)'
  51369. }
  51370. function try_Whitespace()
  51371. {
  51372. switch (l1)
  51373. {
  51374. case 22: // S^WS
  51375. shiftT(22); // S^WS
  51376. break;
  51377. default:
  51378. try_Comment();
  51379. }
  51380. }
  51381. function parse_EQName()
  51382. {
  51383. eventHandler.startNonterminal("EQName", e0);
  51384. lookahead1(249); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  51385. switch (l1)
  51386. {
  51387. case 82: // 'attribute'
  51388. shift(82); // 'attribute'
  51389. break;
  51390. case 96: // 'comment'
  51391. shift(96); // 'comment'
  51392. break;
  51393. case 120: // 'document-node'
  51394. shift(120); // 'document-node'
  51395. break;
  51396. case 121: // 'element'
  51397. shift(121); // 'element'
  51398. break;
  51399. case 124: // 'empty-sequence'
  51400. shift(124); // 'empty-sequence'
  51401. break;
  51402. case 145: // 'function'
  51403. shift(145); // 'function'
  51404. break;
  51405. case 152: // 'if'
  51406. shift(152); // 'if'
  51407. break;
  51408. case 165: // 'item'
  51409. shift(165); // 'item'
  51410. break;
  51411. case 185: // 'namespace-node'
  51412. shift(185); // 'namespace-node'
  51413. break;
  51414. case 191: // 'node'
  51415. shift(191); // 'node'
  51416. break;
  51417. case 216: // 'processing-instruction'
  51418. shift(216); // 'processing-instruction'
  51419. break;
  51420. case 226: // 'schema-attribute'
  51421. shift(226); // 'schema-attribute'
  51422. break;
  51423. case 227: // 'schema-element'
  51424. shift(227); // 'schema-element'
  51425. break;
  51426. case 243: // 'switch'
  51427. shift(243); // 'switch'
  51428. break;
  51429. case 244: // 'text'
  51430. shift(244); // 'text'
  51431. break;
  51432. case 253: // 'typeswitch'
  51433. shift(253); // 'typeswitch'
  51434. break;
  51435. case 78: // 'array'
  51436. shift(78); // 'array'
  51437. break;
  51438. case 167: // 'json-item'
  51439. shift(167); // 'json-item'
  51440. break;
  51441. case 242: // 'structured-item'
  51442. shift(242); // 'structured-item'
  51443. break;
  51444. default:
  51445. parse_FunctionName();
  51446. }
  51447. eventHandler.endNonterminal("EQName", e0);
  51448. }
  51449. function try_EQName()
  51450. {
  51451. lookahead1(249); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  51452. switch (l1)
  51453. {
  51454. case 82: // 'attribute'
  51455. shiftT(82); // 'attribute'
  51456. break;
  51457. case 96: // 'comment'
  51458. shiftT(96); // 'comment'
  51459. break;
  51460. case 120: // 'document-node'
  51461. shiftT(120); // 'document-node'
  51462. break;
  51463. case 121: // 'element'
  51464. shiftT(121); // 'element'
  51465. break;
  51466. case 124: // 'empty-sequence'
  51467. shiftT(124); // 'empty-sequence'
  51468. break;
  51469. case 145: // 'function'
  51470. shiftT(145); // 'function'
  51471. break;
  51472. case 152: // 'if'
  51473. shiftT(152); // 'if'
  51474. break;
  51475. case 165: // 'item'
  51476. shiftT(165); // 'item'
  51477. break;
  51478. case 185: // 'namespace-node'
  51479. shiftT(185); // 'namespace-node'
  51480. break;
  51481. case 191: // 'node'
  51482. shiftT(191); // 'node'
  51483. break;
  51484. case 216: // 'processing-instruction'
  51485. shiftT(216); // 'processing-instruction'
  51486. break;
  51487. case 226: // 'schema-attribute'
  51488. shiftT(226); // 'schema-attribute'
  51489. break;
  51490. case 227: // 'schema-element'
  51491. shiftT(227); // 'schema-element'
  51492. break;
  51493. case 243: // 'switch'
  51494. shiftT(243); // 'switch'
  51495. break;
  51496. case 244: // 'text'
  51497. shiftT(244); // 'text'
  51498. break;
  51499. case 253: // 'typeswitch'
  51500. shiftT(253); // 'typeswitch'
  51501. break;
  51502. case 78: // 'array'
  51503. shiftT(78); // 'array'
  51504. break;
  51505. case 167: // 'json-item'
  51506. shiftT(167); // 'json-item'
  51507. break;
  51508. case 242: // 'structured-item'
  51509. shiftT(242); // 'structured-item'
  51510. break;
  51511. default:
  51512. try_FunctionName();
  51513. }
  51514. }
  51515. function parse_FunctionName()
  51516. {
  51517. eventHandler.startNonterminal("FunctionName", e0);
  51518. switch (l1)
  51519. {
  51520. case 6: // EQName^Token
  51521. shift(6); // EQName^Token
  51522. break;
  51523. case 70: // 'after'
  51524. shift(70); // 'after'
  51525. break;
  51526. case 73: // 'ancestor'
  51527. shift(73); // 'ancestor'
  51528. break;
  51529. case 74: // 'ancestor-or-self'
  51530. shift(74); // 'ancestor-or-self'
  51531. break;
  51532. case 75: // 'and'
  51533. shift(75); // 'and'
  51534. break;
  51535. case 79: // 'as'
  51536. shift(79); // 'as'
  51537. break;
  51538. case 80: // 'ascending'
  51539. shift(80); // 'ascending'
  51540. break;
  51541. case 84: // 'before'
  51542. shift(84); // 'before'
  51543. break;
  51544. case 88: // 'case'
  51545. shift(88); // 'case'
  51546. break;
  51547. case 89: // 'cast'
  51548. shift(89); // 'cast'
  51549. break;
  51550. case 90: // 'castable'
  51551. shift(90); // 'castable'
  51552. break;
  51553. case 93: // 'child'
  51554. shift(93); // 'child'
  51555. break;
  51556. case 94: // 'collation'
  51557. shift(94); // 'collation'
  51558. break;
  51559. case 103: // 'copy'
  51560. shift(103); // 'copy'
  51561. break;
  51562. case 105: // 'count'
  51563. shift(105); // 'count'
  51564. break;
  51565. case 108: // 'declare'
  51566. shift(108); // 'declare'
  51567. break;
  51568. case 109: // 'default'
  51569. shift(109); // 'default'
  51570. break;
  51571. case 110: // 'delete'
  51572. shift(110); // 'delete'
  51573. break;
  51574. case 111: // 'descendant'
  51575. shift(111); // 'descendant'
  51576. break;
  51577. case 112: // 'descendant-or-self'
  51578. shift(112); // 'descendant-or-self'
  51579. break;
  51580. case 113: // 'descending'
  51581. shift(113); // 'descending'
  51582. break;
  51583. case 118: // 'div'
  51584. shift(118); // 'div'
  51585. break;
  51586. case 119: // 'document'
  51587. shift(119); // 'document'
  51588. break;
  51589. case 122: // 'else'
  51590. shift(122); // 'else'
  51591. break;
  51592. case 123: // 'empty'
  51593. shift(123); // 'empty'
  51594. break;
  51595. case 126: // 'end'
  51596. shift(126); // 'end'
  51597. break;
  51598. case 128: // 'eq'
  51599. shift(128); // 'eq'
  51600. break;
  51601. case 129: // 'every'
  51602. shift(129); // 'every'
  51603. break;
  51604. case 131: // 'except'
  51605. shift(131); // 'except'
  51606. break;
  51607. case 134: // 'first'
  51608. shift(134); // 'first'
  51609. break;
  51610. case 135: // 'following'
  51611. shift(135); // 'following'
  51612. break;
  51613. case 136: // 'following-sibling'
  51614. shift(136); // 'following-sibling'
  51615. break;
  51616. case 137: // 'for'
  51617. shift(137); // 'for'
  51618. break;
  51619. case 146: // 'ge'
  51620. shift(146); // 'ge'
  51621. break;
  51622. case 148: // 'group'
  51623. shift(148); // 'group'
  51624. break;
  51625. case 150: // 'gt'
  51626. shift(150); // 'gt'
  51627. break;
  51628. case 151: // 'idiv'
  51629. shift(151); // 'idiv'
  51630. break;
  51631. case 153: // 'import'
  51632. shift(153); // 'import'
  51633. break;
  51634. case 159: // 'insert'
  51635. shift(159); // 'insert'
  51636. break;
  51637. case 160: // 'instance'
  51638. shift(160); // 'instance'
  51639. break;
  51640. case 162: // 'intersect'
  51641. shift(162); // 'intersect'
  51642. break;
  51643. case 163: // 'into'
  51644. shift(163); // 'into'
  51645. break;
  51646. case 164: // 'is'
  51647. shift(164); // 'is'
  51648. break;
  51649. case 170: // 'last'
  51650. shift(170); // 'last'
  51651. break;
  51652. case 172: // 'le'
  51653. shift(172); // 'le'
  51654. break;
  51655. case 174: // 'let'
  51656. shift(174); // 'let'
  51657. break;
  51658. case 178: // 'lt'
  51659. shift(178); // 'lt'
  51660. break;
  51661. case 180: // 'mod'
  51662. shift(180); // 'mod'
  51663. break;
  51664. case 181: // 'modify'
  51665. shift(181); // 'modify'
  51666. break;
  51667. case 182: // 'module'
  51668. shift(182); // 'module'
  51669. break;
  51670. case 184: // 'namespace'
  51671. shift(184); // 'namespace'
  51672. break;
  51673. case 186: // 'ne'
  51674. shift(186); // 'ne'
  51675. break;
  51676. case 198: // 'only'
  51677. shift(198); // 'only'
  51678. break;
  51679. case 200: // 'or'
  51680. shift(200); // 'or'
  51681. break;
  51682. case 201: // 'order'
  51683. shift(201); // 'order'
  51684. break;
  51685. case 202: // 'ordered'
  51686. shift(202); // 'ordered'
  51687. break;
  51688. case 206: // 'parent'
  51689. shift(206); // 'parent'
  51690. break;
  51691. case 212: // 'preceding'
  51692. shift(212); // 'preceding'
  51693. break;
  51694. case 213: // 'preceding-sibling'
  51695. shift(213); // 'preceding-sibling'
  51696. break;
  51697. case 218: // 'rename'
  51698. shift(218); // 'rename'
  51699. break;
  51700. case 219: // 'replace'
  51701. shift(219); // 'replace'
  51702. break;
  51703. case 220: // 'return'
  51704. shift(220); // 'return'
  51705. break;
  51706. case 224: // 'satisfies'
  51707. shift(224); // 'satisfies'
  51708. break;
  51709. case 229: // 'self'
  51710. shift(229); // 'self'
  51711. break;
  51712. case 235: // 'some'
  51713. shift(235); // 'some'
  51714. break;
  51715. case 236: // 'stable'
  51716. shift(236); // 'stable'
  51717. break;
  51718. case 237: // 'start'
  51719. shift(237); // 'start'
  51720. break;
  51721. case 248: // 'to'
  51722. shift(248); // 'to'
  51723. break;
  51724. case 249: // 'treat'
  51725. shift(249); // 'treat'
  51726. break;
  51727. case 250: // 'try'
  51728. shift(250); // 'try'
  51729. break;
  51730. case 254: // 'union'
  51731. shift(254); // 'union'
  51732. break;
  51733. case 256: // 'unordered'
  51734. shift(256); // 'unordered'
  51735. break;
  51736. case 260: // 'validate'
  51737. shift(260); // 'validate'
  51738. break;
  51739. case 266: // 'where'
  51740. shift(266); // 'where'
  51741. break;
  51742. case 270: // 'with'
  51743. shift(270); // 'with'
  51744. break;
  51745. case 274: // 'xquery'
  51746. shift(274); // 'xquery'
  51747. break;
  51748. case 72: // 'allowing'
  51749. shift(72); // 'allowing'
  51750. break;
  51751. case 81: // 'at'
  51752. shift(81); // 'at'
  51753. break;
  51754. case 83: // 'base-uri'
  51755. shift(83); // 'base-uri'
  51756. break;
  51757. case 85: // 'boundary-space'
  51758. shift(85); // 'boundary-space'
  51759. break;
  51760. case 86: // 'break'
  51761. shift(86); // 'break'
  51762. break;
  51763. case 91: // 'catch'
  51764. shift(91); // 'catch'
  51765. break;
  51766. case 98: // 'construction'
  51767. shift(98); // 'construction'
  51768. break;
  51769. case 101: // 'context'
  51770. shift(101); // 'context'
  51771. break;
  51772. case 102: // 'continue'
  51773. shift(102); // 'continue'
  51774. break;
  51775. case 104: // 'copy-namespaces'
  51776. shift(104); // 'copy-namespaces'
  51777. break;
  51778. case 106: // 'decimal-format'
  51779. shift(106); // 'decimal-format'
  51780. break;
  51781. case 125: // 'encoding'
  51782. shift(125); // 'encoding'
  51783. break;
  51784. case 132: // 'exit'
  51785. shift(132); // 'exit'
  51786. break;
  51787. case 133: // 'external'
  51788. shift(133); // 'external'
  51789. break;
  51790. case 141: // 'ft-option'
  51791. shift(141); // 'ft-option'
  51792. break;
  51793. case 154: // 'in'
  51794. shift(154); // 'in'
  51795. break;
  51796. case 155: // 'index'
  51797. shift(155); // 'index'
  51798. break;
  51799. case 161: // 'integrity'
  51800. shift(161); // 'integrity'
  51801. break;
  51802. case 171: // 'lax'
  51803. shift(171); // 'lax'
  51804. break;
  51805. case 192: // 'nodes'
  51806. shift(192); // 'nodes'
  51807. break;
  51808. case 199: // 'option'
  51809. shift(199); // 'option'
  51810. break;
  51811. case 203: // 'ordering'
  51812. shift(203); // 'ordering'
  51813. break;
  51814. case 222: // 'revalidation'
  51815. shift(222); // 'revalidation'
  51816. break;
  51817. case 225: // 'schema'
  51818. shift(225); // 'schema'
  51819. break;
  51820. case 228: // 'score'
  51821. shift(228); // 'score'
  51822. break;
  51823. case 234: // 'sliding'
  51824. shift(234); // 'sliding'
  51825. break;
  51826. case 240: // 'strict'
  51827. shift(240); // 'strict'
  51828. break;
  51829. case 251: // 'tumbling'
  51830. shift(251); // 'tumbling'
  51831. break;
  51832. case 252: // 'type'
  51833. shift(252); // 'type'
  51834. break;
  51835. case 257: // 'updating'
  51836. shift(257); // 'updating'
  51837. break;
  51838. case 261: // 'value'
  51839. shift(261); // 'value'
  51840. break;
  51841. case 262: // 'variable'
  51842. shift(262); // 'variable'
  51843. break;
  51844. case 263: // 'version'
  51845. shift(263); // 'version'
  51846. break;
  51847. case 267: // 'while'
  51848. shift(267); // 'while'
  51849. break;
  51850. case 97: // 'constraint'
  51851. shift(97); // 'constraint'
  51852. break;
  51853. case 176: // 'loop'
  51854. shift(176); // 'loop'
  51855. break;
  51856. case 221: // 'returning'
  51857. shift(221); // 'returning'
  51858. break;
  51859. case 77: // 'append'
  51860. shift(77); // 'append'
  51861. break;
  51862. case 166: // 'json'
  51863. shift(166); // 'json'
  51864. break;
  51865. default:
  51866. shift(194); // 'object'
  51867. }
  51868. eventHandler.endNonterminal("FunctionName", e0);
  51869. }
  51870. function try_FunctionName()
  51871. {
  51872. switch (l1)
  51873. {
  51874. case 6: // EQName^Token
  51875. shiftT(6); // EQName^Token
  51876. break;
  51877. case 70: // 'after'
  51878. shiftT(70); // 'after'
  51879. break;
  51880. case 73: // 'ancestor'
  51881. shiftT(73); // 'ancestor'
  51882. break;
  51883. case 74: // 'ancestor-or-self'
  51884. shiftT(74); // 'ancestor-or-self'
  51885. break;
  51886. case 75: // 'and'
  51887. shiftT(75); // 'and'
  51888. break;
  51889. case 79: // 'as'
  51890. shiftT(79); // 'as'
  51891. break;
  51892. case 80: // 'ascending'
  51893. shiftT(80); // 'ascending'
  51894. break;
  51895. case 84: // 'before'
  51896. shiftT(84); // 'before'
  51897. break;
  51898. case 88: // 'case'
  51899. shiftT(88); // 'case'
  51900. break;
  51901. case 89: // 'cast'
  51902. shiftT(89); // 'cast'
  51903. break;
  51904. case 90: // 'castable'
  51905. shiftT(90); // 'castable'
  51906. break;
  51907. case 93: // 'child'
  51908. shiftT(93); // 'child'
  51909. break;
  51910. case 94: // 'collation'
  51911. shiftT(94); // 'collation'
  51912. break;
  51913. case 103: // 'copy'
  51914. shiftT(103); // 'copy'
  51915. break;
  51916. case 105: // 'count'
  51917. shiftT(105); // 'count'
  51918. break;
  51919. case 108: // 'declare'
  51920. shiftT(108); // 'declare'
  51921. break;
  51922. case 109: // 'default'
  51923. shiftT(109); // 'default'
  51924. break;
  51925. case 110: // 'delete'
  51926. shiftT(110); // 'delete'
  51927. break;
  51928. case 111: // 'descendant'
  51929. shiftT(111); // 'descendant'
  51930. break;
  51931. case 112: // 'descendant-or-self'
  51932. shiftT(112); // 'descendant-or-self'
  51933. break;
  51934. case 113: // 'descending'
  51935. shiftT(113); // 'descending'
  51936. break;
  51937. case 118: // 'div'
  51938. shiftT(118); // 'div'
  51939. break;
  51940. case 119: // 'document'
  51941. shiftT(119); // 'document'
  51942. break;
  51943. case 122: // 'else'
  51944. shiftT(122); // 'else'
  51945. break;
  51946. case 123: // 'empty'
  51947. shiftT(123); // 'empty'
  51948. break;
  51949. case 126: // 'end'
  51950. shiftT(126); // 'end'
  51951. break;
  51952. case 128: // 'eq'
  51953. shiftT(128); // 'eq'
  51954. break;
  51955. case 129: // 'every'
  51956. shiftT(129); // 'every'
  51957. break;
  51958. case 131: // 'except'
  51959. shiftT(131); // 'except'
  51960. break;
  51961. case 134: // 'first'
  51962. shiftT(134); // 'first'
  51963. break;
  51964. case 135: // 'following'
  51965. shiftT(135); // 'following'
  51966. break;
  51967. case 136: // 'following-sibling'
  51968. shiftT(136); // 'following-sibling'
  51969. break;
  51970. case 137: // 'for'
  51971. shiftT(137); // 'for'
  51972. break;
  51973. case 146: // 'ge'
  51974. shiftT(146); // 'ge'
  51975. break;
  51976. case 148: // 'group'
  51977. shiftT(148); // 'group'
  51978. break;
  51979. case 150: // 'gt'
  51980. shiftT(150); // 'gt'
  51981. break;
  51982. case 151: // 'idiv'
  51983. shiftT(151); // 'idiv'
  51984. break;
  51985. case 153: // 'import'
  51986. shiftT(153); // 'import'
  51987. break;
  51988. case 159: // 'insert'
  51989. shiftT(159); // 'insert'
  51990. break;
  51991. case 160: // 'instance'
  51992. shiftT(160); // 'instance'
  51993. break;
  51994. case 162: // 'intersect'
  51995. shiftT(162); // 'intersect'
  51996. break;
  51997. case 163: // 'into'
  51998. shiftT(163); // 'into'
  51999. break;
  52000. case 164: // 'is'
  52001. shiftT(164); // 'is'
  52002. break;
  52003. case 170: // 'last'
  52004. shiftT(170); // 'last'
  52005. break;
  52006. case 172: // 'le'
  52007. shiftT(172); // 'le'
  52008. break;
  52009. case 174: // 'let'
  52010. shiftT(174); // 'let'
  52011. break;
  52012. case 178: // 'lt'
  52013. shiftT(178); // 'lt'
  52014. break;
  52015. case 180: // 'mod'
  52016. shiftT(180); // 'mod'
  52017. break;
  52018. case 181: // 'modify'
  52019. shiftT(181); // 'modify'
  52020. break;
  52021. case 182: // 'module'
  52022. shiftT(182); // 'module'
  52023. break;
  52024. case 184: // 'namespace'
  52025. shiftT(184); // 'namespace'
  52026. break;
  52027. case 186: // 'ne'
  52028. shiftT(186); // 'ne'
  52029. break;
  52030. case 198: // 'only'
  52031. shiftT(198); // 'only'
  52032. break;
  52033. case 200: // 'or'
  52034. shiftT(200); // 'or'
  52035. break;
  52036. case 201: // 'order'
  52037. shiftT(201); // 'order'
  52038. break;
  52039. case 202: // 'ordered'
  52040. shiftT(202); // 'ordered'
  52041. break;
  52042. case 206: // 'parent'
  52043. shiftT(206); // 'parent'
  52044. break;
  52045. case 212: // 'preceding'
  52046. shiftT(212); // 'preceding'
  52047. break;
  52048. case 213: // 'preceding-sibling'
  52049. shiftT(213); // 'preceding-sibling'
  52050. break;
  52051. case 218: // 'rename'
  52052. shiftT(218); // 'rename'
  52053. break;
  52054. case 219: // 'replace'
  52055. shiftT(219); // 'replace'
  52056. break;
  52057. case 220: // 'return'
  52058. shiftT(220); // 'return'
  52059. break;
  52060. case 224: // 'satisfies'
  52061. shiftT(224); // 'satisfies'
  52062. break;
  52063. case 229: // 'self'
  52064. shiftT(229); // 'self'
  52065. break;
  52066. case 235: // 'some'
  52067. shiftT(235); // 'some'
  52068. break;
  52069. case 236: // 'stable'
  52070. shiftT(236); // 'stable'
  52071. break;
  52072. case 237: // 'start'
  52073. shiftT(237); // 'start'
  52074. break;
  52075. case 248: // 'to'
  52076. shiftT(248); // 'to'
  52077. break;
  52078. case 249: // 'treat'
  52079. shiftT(249); // 'treat'
  52080. break;
  52081. case 250: // 'try'
  52082. shiftT(250); // 'try'
  52083. break;
  52084. case 254: // 'union'
  52085. shiftT(254); // 'union'
  52086. break;
  52087. case 256: // 'unordered'
  52088. shiftT(256); // 'unordered'
  52089. break;
  52090. case 260: // 'validate'
  52091. shiftT(260); // 'validate'
  52092. break;
  52093. case 266: // 'where'
  52094. shiftT(266); // 'where'
  52095. break;
  52096. case 270: // 'with'
  52097. shiftT(270); // 'with'
  52098. break;
  52099. case 274: // 'xquery'
  52100. shiftT(274); // 'xquery'
  52101. break;
  52102. case 72: // 'allowing'
  52103. shiftT(72); // 'allowing'
  52104. break;
  52105. case 81: // 'at'
  52106. shiftT(81); // 'at'
  52107. break;
  52108. case 83: // 'base-uri'
  52109. shiftT(83); // 'base-uri'
  52110. break;
  52111. case 85: // 'boundary-space'
  52112. shiftT(85); // 'boundary-space'
  52113. break;
  52114. case 86: // 'break'
  52115. shiftT(86); // 'break'
  52116. break;
  52117. case 91: // 'catch'
  52118. shiftT(91); // 'catch'
  52119. break;
  52120. case 98: // 'construction'
  52121. shiftT(98); // 'construction'
  52122. break;
  52123. case 101: // 'context'
  52124. shiftT(101); // 'context'
  52125. break;
  52126. case 102: // 'continue'
  52127. shiftT(102); // 'continue'
  52128. break;
  52129. case 104: // 'copy-namespaces'
  52130. shiftT(104); // 'copy-namespaces'
  52131. break;
  52132. case 106: // 'decimal-format'
  52133. shiftT(106); // 'decimal-format'
  52134. break;
  52135. case 125: // 'encoding'
  52136. shiftT(125); // 'encoding'
  52137. break;
  52138. case 132: // 'exit'
  52139. shiftT(132); // 'exit'
  52140. break;
  52141. case 133: // 'external'
  52142. shiftT(133); // 'external'
  52143. break;
  52144. case 141: // 'ft-option'
  52145. shiftT(141); // 'ft-option'
  52146. break;
  52147. case 154: // 'in'
  52148. shiftT(154); // 'in'
  52149. break;
  52150. case 155: // 'index'
  52151. shiftT(155); // 'index'
  52152. break;
  52153. case 161: // 'integrity'
  52154. shiftT(161); // 'integrity'
  52155. break;
  52156. case 171: // 'lax'
  52157. shiftT(171); // 'lax'
  52158. break;
  52159. case 192: // 'nodes'
  52160. shiftT(192); // 'nodes'
  52161. break;
  52162. case 199: // 'option'
  52163. shiftT(199); // 'option'
  52164. break;
  52165. case 203: // 'ordering'
  52166. shiftT(203); // 'ordering'
  52167. break;
  52168. case 222: // 'revalidation'
  52169. shiftT(222); // 'revalidation'
  52170. break;
  52171. case 225: // 'schema'
  52172. shiftT(225); // 'schema'
  52173. break;
  52174. case 228: // 'score'
  52175. shiftT(228); // 'score'
  52176. break;
  52177. case 234: // 'sliding'
  52178. shiftT(234); // 'sliding'
  52179. break;
  52180. case 240: // 'strict'
  52181. shiftT(240); // 'strict'
  52182. break;
  52183. case 251: // 'tumbling'
  52184. shiftT(251); // 'tumbling'
  52185. break;
  52186. case 252: // 'type'
  52187. shiftT(252); // 'type'
  52188. break;
  52189. case 257: // 'updating'
  52190. shiftT(257); // 'updating'
  52191. break;
  52192. case 261: // 'value'
  52193. shiftT(261); // 'value'
  52194. break;
  52195. case 262: // 'variable'
  52196. shiftT(262); // 'variable'
  52197. break;
  52198. case 263: // 'version'
  52199. shiftT(263); // 'version'
  52200. break;
  52201. case 267: // 'while'
  52202. shiftT(267); // 'while'
  52203. break;
  52204. case 97: // 'constraint'
  52205. shiftT(97); // 'constraint'
  52206. break;
  52207. case 176: // 'loop'
  52208. shiftT(176); // 'loop'
  52209. break;
  52210. case 221: // 'returning'
  52211. shiftT(221); // 'returning'
  52212. break;
  52213. case 77: // 'append'
  52214. shiftT(77); // 'append'
  52215. break;
  52216. case 166: // 'json'
  52217. shiftT(166); // 'json'
  52218. break;
  52219. default:
  52220. shiftT(194); // 'object'
  52221. }
  52222. }
  52223. function parse_NCName()
  52224. {
  52225. eventHandler.startNonterminal("NCName", e0);
  52226. switch (l1)
  52227. {
  52228. case 19: // NCName^Token
  52229. shift(19); // NCName^Token
  52230. break;
  52231. case 70: // 'after'
  52232. shift(70); // 'after'
  52233. break;
  52234. case 75: // 'and'
  52235. shift(75); // 'and'
  52236. break;
  52237. case 79: // 'as'
  52238. shift(79); // 'as'
  52239. break;
  52240. case 80: // 'ascending'
  52241. shift(80); // 'ascending'
  52242. break;
  52243. case 84: // 'before'
  52244. shift(84); // 'before'
  52245. break;
  52246. case 88: // 'case'
  52247. shift(88); // 'case'
  52248. break;
  52249. case 89: // 'cast'
  52250. shift(89); // 'cast'
  52251. break;
  52252. case 90: // 'castable'
  52253. shift(90); // 'castable'
  52254. break;
  52255. case 94: // 'collation'
  52256. shift(94); // 'collation'
  52257. break;
  52258. case 105: // 'count'
  52259. shift(105); // 'count'
  52260. break;
  52261. case 109: // 'default'
  52262. shift(109); // 'default'
  52263. break;
  52264. case 113: // 'descending'
  52265. shift(113); // 'descending'
  52266. break;
  52267. case 118: // 'div'
  52268. shift(118); // 'div'
  52269. break;
  52270. case 122: // 'else'
  52271. shift(122); // 'else'
  52272. break;
  52273. case 123: // 'empty'
  52274. shift(123); // 'empty'
  52275. break;
  52276. case 126: // 'end'
  52277. shift(126); // 'end'
  52278. break;
  52279. case 128: // 'eq'
  52280. shift(128); // 'eq'
  52281. break;
  52282. case 131: // 'except'
  52283. shift(131); // 'except'
  52284. break;
  52285. case 137: // 'for'
  52286. shift(137); // 'for'
  52287. break;
  52288. case 146: // 'ge'
  52289. shift(146); // 'ge'
  52290. break;
  52291. case 148: // 'group'
  52292. shift(148); // 'group'
  52293. break;
  52294. case 150: // 'gt'
  52295. shift(150); // 'gt'
  52296. break;
  52297. case 151: // 'idiv'
  52298. shift(151); // 'idiv'
  52299. break;
  52300. case 160: // 'instance'
  52301. shift(160); // 'instance'
  52302. break;
  52303. case 162: // 'intersect'
  52304. shift(162); // 'intersect'
  52305. break;
  52306. case 163: // 'into'
  52307. shift(163); // 'into'
  52308. break;
  52309. case 164: // 'is'
  52310. shift(164); // 'is'
  52311. break;
  52312. case 172: // 'le'
  52313. shift(172); // 'le'
  52314. break;
  52315. case 174: // 'let'
  52316. shift(174); // 'let'
  52317. break;
  52318. case 178: // 'lt'
  52319. shift(178); // 'lt'
  52320. break;
  52321. case 180: // 'mod'
  52322. shift(180); // 'mod'
  52323. break;
  52324. case 181: // 'modify'
  52325. shift(181); // 'modify'
  52326. break;
  52327. case 186: // 'ne'
  52328. shift(186); // 'ne'
  52329. break;
  52330. case 198: // 'only'
  52331. shift(198); // 'only'
  52332. break;
  52333. case 200: // 'or'
  52334. shift(200); // 'or'
  52335. break;
  52336. case 201: // 'order'
  52337. shift(201); // 'order'
  52338. break;
  52339. case 220: // 'return'
  52340. shift(220); // 'return'
  52341. break;
  52342. case 224: // 'satisfies'
  52343. shift(224); // 'satisfies'
  52344. break;
  52345. case 236: // 'stable'
  52346. shift(236); // 'stable'
  52347. break;
  52348. case 237: // 'start'
  52349. shift(237); // 'start'
  52350. break;
  52351. case 248: // 'to'
  52352. shift(248); // 'to'
  52353. break;
  52354. case 249: // 'treat'
  52355. shift(249); // 'treat'
  52356. break;
  52357. case 254: // 'union'
  52358. shift(254); // 'union'
  52359. break;
  52360. case 266: // 'where'
  52361. shift(266); // 'where'
  52362. break;
  52363. case 270: // 'with'
  52364. shift(270); // 'with'
  52365. break;
  52366. case 73: // 'ancestor'
  52367. shift(73); // 'ancestor'
  52368. break;
  52369. case 74: // 'ancestor-or-self'
  52370. shift(74); // 'ancestor-or-self'
  52371. break;
  52372. case 82: // 'attribute'
  52373. shift(82); // 'attribute'
  52374. break;
  52375. case 93: // 'child'
  52376. shift(93); // 'child'
  52377. break;
  52378. case 96: // 'comment'
  52379. shift(96); // 'comment'
  52380. break;
  52381. case 103: // 'copy'
  52382. shift(103); // 'copy'
  52383. break;
  52384. case 108: // 'declare'
  52385. shift(108); // 'declare'
  52386. break;
  52387. case 110: // 'delete'
  52388. shift(110); // 'delete'
  52389. break;
  52390. case 111: // 'descendant'
  52391. shift(111); // 'descendant'
  52392. break;
  52393. case 112: // 'descendant-or-self'
  52394. shift(112); // 'descendant-or-self'
  52395. break;
  52396. case 119: // 'document'
  52397. shift(119); // 'document'
  52398. break;
  52399. case 120: // 'document-node'
  52400. shift(120); // 'document-node'
  52401. break;
  52402. case 121: // 'element'
  52403. shift(121); // 'element'
  52404. break;
  52405. case 124: // 'empty-sequence'
  52406. shift(124); // 'empty-sequence'
  52407. break;
  52408. case 129: // 'every'
  52409. shift(129); // 'every'
  52410. break;
  52411. case 134: // 'first'
  52412. shift(134); // 'first'
  52413. break;
  52414. case 135: // 'following'
  52415. shift(135); // 'following'
  52416. break;
  52417. case 136: // 'following-sibling'
  52418. shift(136); // 'following-sibling'
  52419. break;
  52420. case 145: // 'function'
  52421. shift(145); // 'function'
  52422. break;
  52423. case 152: // 'if'
  52424. shift(152); // 'if'
  52425. break;
  52426. case 153: // 'import'
  52427. shift(153); // 'import'
  52428. break;
  52429. case 159: // 'insert'
  52430. shift(159); // 'insert'
  52431. break;
  52432. case 165: // 'item'
  52433. shift(165); // 'item'
  52434. break;
  52435. case 170: // 'last'
  52436. shift(170); // 'last'
  52437. break;
  52438. case 182: // 'module'
  52439. shift(182); // 'module'
  52440. break;
  52441. case 184: // 'namespace'
  52442. shift(184); // 'namespace'
  52443. break;
  52444. case 185: // 'namespace-node'
  52445. shift(185); // 'namespace-node'
  52446. break;
  52447. case 191: // 'node'
  52448. shift(191); // 'node'
  52449. break;
  52450. case 202: // 'ordered'
  52451. shift(202); // 'ordered'
  52452. break;
  52453. case 206: // 'parent'
  52454. shift(206); // 'parent'
  52455. break;
  52456. case 212: // 'preceding'
  52457. shift(212); // 'preceding'
  52458. break;
  52459. case 213: // 'preceding-sibling'
  52460. shift(213); // 'preceding-sibling'
  52461. break;
  52462. case 216: // 'processing-instruction'
  52463. shift(216); // 'processing-instruction'
  52464. break;
  52465. case 218: // 'rename'
  52466. shift(218); // 'rename'
  52467. break;
  52468. case 219: // 'replace'
  52469. shift(219); // 'replace'
  52470. break;
  52471. case 226: // 'schema-attribute'
  52472. shift(226); // 'schema-attribute'
  52473. break;
  52474. case 227: // 'schema-element'
  52475. shift(227); // 'schema-element'
  52476. break;
  52477. case 229: // 'self'
  52478. shift(229); // 'self'
  52479. break;
  52480. case 235: // 'some'
  52481. shift(235); // 'some'
  52482. break;
  52483. case 243: // 'switch'
  52484. shift(243); // 'switch'
  52485. break;
  52486. case 244: // 'text'
  52487. shift(244); // 'text'
  52488. break;
  52489. case 250: // 'try'
  52490. shift(250); // 'try'
  52491. break;
  52492. case 253: // 'typeswitch'
  52493. shift(253); // 'typeswitch'
  52494. break;
  52495. case 256: // 'unordered'
  52496. shift(256); // 'unordered'
  52497. break;
  52498. case 260: // 'validate'
  52499. shift(260); // 'validate'
  52500. break;
  52501. case 262: // 'variable'
  52502. shift(262); // 'variable'
  52503. break;
  52504. case 274: // 'xquery'
  52505. shift(274); // 'xquery'
  52506. break;
  52507. case 72: // 'allowing'
  52508. shift(72); // 'allowing'
  52509. break;
  52510. case 81: // 'at'
  52511. shift(81); // 'at'
  52512. break;
  52513. case 83: // 'base-uri'
  52514. shift(83); // 'base-uri'
  52515. break;
  52516. case 85: // 'boundary-space'
  52517. shift(85); // 'boundary-space'
  52518. break;
  52519. case 86: // 'break'
  52520. shift(86); // 'break'
  52521. break;
  52522. case 91: // 'catch'
  52523. shift(91); // 'catch'
  52524. break;
  52525. case 98: // 'construction'
  52526. shift(98); // 'construction'
  52527. break;
  52528. case 101: // 'context'
  52529. shift(101); // 'context'
  52530. break;
  52531. case 102: // 'continue'
  52532. shift(102); // 'continue'
  52533. break;
  52534. case 104: // 'copy-namespaces'
  52535. shift(104); // 'copy-namespaces'
  52536. break;
  52537. case 106: // 'decimal-format'
  52538. shift(106); // 'decimal-format'
  52539. break;
  52540. case 125: // 'encoding'
  52541. shift(125); // 'encoding'
  52542. break;
  52543. case 132: // 'exit'
  52544. shift(132); // 'exit'
  52545. break;
  52546. case 133: // 'external'
  52547. shift(133); // 'external'
  52548. break;
  52549. case 141: // 'ft-option'
  52550. shift(141); // 'ft-option'
  52551. break;
  52552. case 154: // 'in'
  52553. shift(154); // 'in'
  52554. break;
  52555. case 155: // 'index'
  52556. shift(155); // 'index'
  52557. break;
  52558. case 161: // 'integrity'
  52559. shift(161); // 'integrity'
  52560. break;
  52561. case 171: // 'lax'
  52562. shift(171); // 'lax'
  52563. break;
  52564. case 192: // 'nodes'
  52565. shift(192); // 'nodes'
  52566. break;
  52567. case 199: // 'option'
  52568. shift(199); // 'option'
  52569. break;
  52570. case 203: // 'ordering'
  52571. shift(203); // 'ordering'
  52572. break;
  52573. case 222: // 'revalidation'
  52574. shift(222); // 'revalidation'
  52575. break;
  52576. case 225: // 'schema'
  52577. shift(225); // 'schema'
  52578. break;
  52579. case 228: // 'score'
  52580. shift(228); // 'score'
  52581. break;
  52582. case 234: // 'sliding'
  52583. shift(234); // 'sliding'
  52584. break;
  52585. case 240: // 'strict'
  52586. shift(240); // 'strict'
  52587. break;
  52588. case 251: // 'tumbling'
  52589. shift(251); // 'tumbling'
  52590. break;
  52591. case 252: // 'type'
  52592. shift(252); // 'type'
  52593. break;
  52594. case 257: // 'updating'
  52595. shift(257); // 'updating'
  52596. break;
  52597. case 261: // 'value'
  52598. shift(261); // 'value'
  52599. break;
  52600. case 263: // 'version'
  52601. shift(263); // 'version'
  52602. break;
  52603. case 267: // 'while'
  52604. shift(267); // 'while'
  52605. break;
  52606. case 97: // 'constraint'
  52607. shift(97); // 'constraint'
  52608. break;
  52609. case 176: // 'loop'
  52610. shift(176); // 'loop'
  52611. break;
  52612. case 221: // 'returning'
  52613. shift(221); // 'returning'
  52614. break;
  52615. case 77: // 'append'
  52616. shift(77); // 'append'
  52617. break;
  52618. case 166: // 'json'
  52619. shift(166); // 'json'
  52620. break;
  52621. default:
  52622. shift(194); // 'object'
  52623. }
  52624. eventHandler.endNonterminal("NCName", e0);
  52625. }
  52626. function try_NCName()
  52627. {
  52628. switch (l1)
  52629. {
  52630. case 19: // NCName^Token
  52631. shiftT(19); // NCName^Token
  52632. break;
  52633. case 70: // 'after'
  52634. shiftT(70); // 'after'
  52635. break;
  52636. case 75: // 'and'
  52637. shiftT(75); // 'and'
  52638. break;
  52639. case 79: // 'as'
  52640. shiftT(79); // 'as'
  52641. break;
  52642. case 80: // 'ascending'
  52643. shiftT(80); // 'ascending'
  52644. break;
  52645. case 84: // 'before'
  52646. shiftT(84); // 'before'
  52647. break;
  52648. case 88: // 'case'
  52649. shiftT(88); // 'case'
  52650. break;
  52651. case 89: // 'cast'
  52652. shiftT(89); // 'cast'
  52653. break;
  52654. case 90: // 'castable'
  52655. shiftT(90); // 'castable'
  52656. break;
  52657. case 94: // 'collation'
  52658. shiftT(94); // 'collation'
  52659. break;
  52660. case 105: // 'count'
  52661. shiftT(105); // 'count'
  52662. break;
  52663. case 109: // 'default'
  52664. shiftT(109); // 'default'
  52665. break;
  52666. case 113: // 'descending'
  52667. shiftT(113); // 'descending'
  52668. break;
  52669. case 118: // 'div'
  52670. shiftT(118); // 'div'
  52671. break;
  52672. case 122: // 'else'
  52673. shiftT(122); // 'else'
  52674. break;
  52675. case 123: // 'empty'
  52676. shiftT(123); // 'empty'
  52677. break;
  52678. case 126: // 'end'
  52679. shiftT(126); // 'end'
  52680. break;
  52681. case 128: // 'eq'
  52682. shiftT(128); // 'eq'
  52683. break;
  52684. case 131: // 'except'
  52685. shiftT(131); // 'except'
  52686. break;
  52687. case 137: // 'for'
  52688. shiftT(137); // 'for'
  52689. break;
  52690. case 146: // 'ge'
  52691. shiftT(146); // 'ge'
  52692. break;
  52693. case 148: // 'group'
  52694. shiftT(148); // 'group'
  52695. break;
  52696. case 150: // 'gt'
  52697. shiftT(150); // 'gt'
  52698. break;
  52699. case 151: // 'idiv'
  52700. shiftT(151); // 'idiv'
  52701. break;
  52702. case 160: // 'instance'
  52703. shiftT(160); // 'instance'
  52704. break;
  52705. case 162: // 'intersect'
  52706. shiftT(162); // 'intersect'
  52707. break;
  52708. case 163: // 'into'
  52709. shiftT(163); // 'into'
  52710. break;
  52711. case 164: // 'is'
  52712. shiftT(164); // 'is'
  52713. break;
  52714. case 172: // 'le'
  52715. shiftT(172); // 'le'
  52716. break;
  52717. case 174: // 'let'
  52718. shiftT(174); // 'let'
  52719. break;
  52720. case 178: // 'lt'
  52721. shiftT(178); // 'lt'
  52722. break;
  52723. case 180: // 'mod'
  52724. shiftT(180); // 'mod'
  52725. break;
  52726. case 181: // 'modify'
  52727. shiftT(181); // 'modify'
  52728. break;
  52729. case 186: // 'ne'
  52730. shiftT(186); // 'ne'
  52731. break;
  52732. case 198: // 'only'
  52733. shiftT(198); // 'only'
  52734. break;
  52735. case 200: // 'or'
  52736. shiftT(200); // 'or'
  52737. break;
  52738. case 201: // 'order'
  52739. shiftT(201); // 'order'
  52740. break;
  52741. case 220: // 'return'
  52742. shiftT(220); // 'return'
  52743. break;
  52744. case 224: // 'satisfies'
  52745. shiftT(224); // 'satisfies'
  52746. break;
  52747. case 236: // 'stable'
  52748. shiftT(236); // 'stable'
  52749. break;
  52750. case 237: // 'start'
  52751. shiftT(237); // 'start'
  52752. break;
  52753. case 248: // 'to'
  52754. shiftT(248); // 'to'
  52755. break;
  52756. case 249: // 'treat'
  52757. shiftT(249); // 'treat'
  52758. break;
  52759. case 254: // 'union'
  52760. shiftT(254); // 'union'
  52761. break;
  52762. case 266: // 'where'
  52763. shiftT(266); // 'where'
  52764. break;
  52765. case 270: // 'with'
  52766. shiftT(270); // 'with'
  52767. break;
  52768. case 73: // 'ancestor'
  52769. shiftT(73); // 'ancestor'
  52770. break;
  52771. case 74: // 'ancestor-or-self'
  52772. shiftT(74); // 'ancestor-or-self'
  52773. break;
  52774. case 82: // 'attribute'
  52775. shiftT(82); // 'attribute'
  52776. break;
  52777. case 93: // 'child'
  52778. shiftT(93); // 'child'
  52779. break;
  52780. case 96: // 'comment'
  52781. shiftT(96); // 'comment'
  52782. break;
  52783. case 103: // 'copy'
  52784. shiftT(103); // 'copy'
  52785. break;
  52786. case 108: // 'declare'
  52787. shiftT(108); // 'declare'
  52788. break;
  52789. case 110: // 'delete'
  52790. shiftT(110); // 'delete'
  52791. break;
  52792. case 111: // 'descendant'
  52793. shiftT(111); // 'descendant'
  52794. break;
  52795. case 112: // 'descendant-or-self'
  52796. shiftT(112); // 'descendant-or-self'
  52797. break;
  52798. case 119: // 'document'
  52799. shiftT(119); // 'document'
  52800. break;
  52801. case 120: // 'document-node'
  52802. shiftT(120); // 'document-node'
  52803. break;
  52804. case 121: // 'element'
  52805. shiftT(121); // 'element'
  52806. break;
  52807. case 124: // 'empty-sequence'
  52808. shiftT(124); // 'empty-sequence'
  52809. break;
  52810. case 129: // 'every'
  52811. shiftT(129); // 'every'
  52812. break;
  52813. case 134: // 'first'
  52814. shiftT(134); // 'first'
  52815. break;
  52816. case 135: // 'following'
  52817. shiftT(135); // 'following'
  52818. break;
  52819. case 136: // 'following-sibling'
  52820. shiftT(136); // 'following-sibling'
  52821. break;
  52822. case 145: // 'function'
  52823. shiftT(145); // 'function'
  52824. break;
  52825. case 152: // 'if'
  52826. shiftT(152); // 'if'
  52827. break;
  52828. case 153: // 'import'
  52829. shiftT(153); // 'import'
  52830. break;
  52831. case 159: // 'insert'
  52832. shiftT(159); // 'insert'
  52833. break;
  52834. case 165: // 'item'
  52835. shiftT(165); // 'item'
  52836. break;
  52837. case 170: // 'last'
  52838. shiftT(170); // 'last'
  52839. break;
  52840. case 182: // 'module'
  52841. shiftT(182); // 'module'
  52842. break;
  52843. case 184: // 'namespace'
  52844. shiftT(184); // 'namespace'
  52845. break;
  52846. case 185: // 'namespace-node'
  52847. shiftT(185); // 'namespace-node'
  52848. break;
  52849. case 191: // 'node'
  52850. shiftT(191); // 'node'
  52851. break;
  52852. case 202: // 'ordered'
  52853. shiftT(202); // 'ordered'
  52854. break;
  52855. case 206: // 'parent'
  52856. shiftT(206); // 'parent'
  52857. break;
  52858. case 212: // 'preceding'
  52859. shiftT(212); // 'preceding'
  52860. break;
  52861. case 213: // 'preceding-sibling'
  52862. shiftT(213); // 'preceding-sibling'
  52863. break;
  52864. case 216: // 'processing-instruction'
  52865. shiftT(216); // 'processing-instruction'
  52866. break;
  52867. case 218: // 'rename'
  52868. shiftT(218); // 'rename'
  52869. break;
  52870. case 219: // 'replace'
  52871. shiftT(219); // 'replace'
  52872. break;
  52873. case 226: // 'schema-attribute'
  52874. shiftT(226); // 'schema-attribute'
  52875. break;
  52876. case 227: // 'schema-element'
  52877. shiftT(227); // 'schema-element'
  52878. break;
  52879. case 229: // 'self'
  52880. shiftT(229); // 'self'
  52881. break;
  52882. case 235: // 'some'
  52883. shiftT(235); // 'some'
  52884. break;
  52885. case 243: // 'switch'
  52886. shiftT(243); // 'switch'
  52887. break;
  52888. case 244: // 'text'
  52889. shiftT(244); // 'text'
  52890. break;
  52891. case 250: // 'try'
  52892. shiftT(250); // 'try'
  52893. break;
  52894. case 253: // 'typeswitch'
  52895. shiftT(253); // 'typeswitch'
  52896. break;
  52897. case 256: // 'unordered'
  52898. shiftT(256); // 'unordered'
  52899. break;
  52900. case 260: // 'validate'
  52901. shiftT(260); // 'validate'
  52902. break;
  52903. case 262: // 'variable'
  52904. shiftT(262); // 'variable'
  52905. break;
  52906. case 274: // 'xquery'
  52907. shiftT(274); // 'xquery'
  52908. break;
  52909. case 72: // 'allowing'
  52910. shiftT(72); // 'allowing'
  52911. break;
  52912. case 81: // 'at'
  52913. shiftT(81); // 'at'
  52914. break;
  52915. case 83: // 'base-uri'
  52916. shiftT(83); // 'base-uri'
  52917. break;
  52918. case 85: // 'boundary-space'
  52919. shiftT(85); // 'boundary-space'
  52920. break;
  52921. case 86: // 'break'
  52922. shiftT(86); // 'break'
  52923. break;
  52924. case 91: // 'catch'
  52925. shiftT(91); // 'catch'
  52926. break;
  52927. case 98: // 'construction'
  52928. shiftT(98); // 'construction'
  52929. break;
  52930. case 101: // 'context'
  52931. shiftT(101); // 'context'
  52932. break;
  52933. case 102: // 'continue'
  52934. shiftT(102); // 'continue'
  52935. break;
  52936. case 104: // 'copy-namespaces'
  52937. shiftT(104); // 'copy-namespaces'
  52938. break;
  52939. case 106: // 'decimal-format'
  52940. shiftT(106); // 'decimal-format'
  52941. break;
  52942. case 125: // 'encoding'
  52943. shiftT(125); // 'encoding'
  52944. break;
  52945. case 132: // 'exit'
  52946. shiftT(132); // 'exit'
  52947. break;
  52948. case 133: // 'external'
  52949. shiftT(133); // 'external'
  52950. break;
  52951. case 141: // 'ft-option'
  52952. shiftT(141); // 'ft-option'
  52953. break;
  52954. case 154: // 'in'
  52955. shiftT(154); // 'in'
  52956. break;
  52957. case 155: // 'index'
  52958. shiftT(155); // 'index'
  52959. break;
  52960. case 161: // 'integrity'
  52961. shiftT(161); // 'integrity'
  52962. break;
  52963. case 171: // 'lax'
  52964. shiftT(171); // 'lax'
  52965. break;
  52966. case 192: // 'nodes'
  52967. shiftT(192); // 'nodes'
  52968. break;
  52969. case 199: // 'option'
  52970. shiftT(199); // 'option'
  52971. break;
  52972. case 203: // 'ordering'
  52973. shiftT(203); // 'ordering'
  52974. break;
  52975. case 222: // 'revalidation'
  52976. shiftT(222); // 'revalidation'
  52977. break;
  52978. case 225: // 'schema'
  52979. shiftT(225); // 'schema'
  52980. break;
  52981. case 228: // 'score'
  52982. shiftT(228); // 'score'
  52983. break;
  52984. case 234: // 'sliding'
  52985. shiftT(234); // 'sliding'
  52986. break;
  52987. case 240: // 'strict'
  52988. shiftT(240); // 'strict'
  52989. break;
  52990. case 251: // 'tumbling'
  52991. shiftT(251); // 'tumbling'
  52992. break;
  52993. case 252: // 'type'
  52994. shiftT(252); // 'type'
  52995. break;
  52996. case 257: // 'updating'
  52997. shiftT(257); // 'updating'
  52998. break;
  52999. case 261: // 'value'
  53000. shiftT(261); // 'value'
  53001. break;
  53002. case 263: // 'version'
  53003. shiftT(263); // 'version'
  53004. break;
  53005. case 267: // 'while'
  53006. shiftT(267); // 'while'
  53007. break;
  53008. case 97: // 'constraint'
  53009. shiftT(97); // 'constraint'
  53010. break;
  53011. case 176: // 'loop'
  53012. shiftT(176); // 'loop'
  53013. break;
  53014. case 221: // 'returning'
  53015. shiftT(221); // 'returning'
  53016. break;
  53017. case 77: // 'append'
  53018. shiftT(77); // 'append'
  53019. break;
  53020. case 166: // 'json'
  53021. shiftT(166); // 'json'
  53022. break;
  53023. default:
  53024. shiftT(194); // 'object'
  53025. }
  53026. }
  53027. function parse_MainModule()
  53028. {
  53029. eventHandler.startNonterminal("MainModule", e0);
  53030. parse_Prolog();
  53031. whitespace();
  53032. parse_Program();
  53033. eventHandler.endNonterminal("MainModule", e0);
  53034. }
  53035. function parse_Program()
  53036. {
  53037. eventHandler.startNonterminal("Program", e0);
  53038. parse_StatementsAndOptionalExpr();
  53039. eventHandler.endNonterminal("Program", e0);
  53040. }
  53041. function parse_Statements()
  53042. {
  53043. eventHandler.startNonterminal("Statements", e0);
  53044. for (;;)
  53045. {
  53046. lookahead1W(277); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53047. switch (l1)
  53048. {
  53049. case 34: // '('
  53050. lookahead2W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53051. break;
  53052. case 35: // '(#'
  53053. lookahead2(251); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  53054. break;
  53055. case 46: // '/'
  53056. lookahead2W(283); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53057. break;
  53058. case 47: // '//'
  53059. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53060. break;
  53061. case 54: // '<'
  53062. lookahead2(4); // QName
  53063. break;
  53064. case 55: // '<!--'
  53065. lookahead2(1); // DirCommentContents
  53066. break;
  53067. case 59: // '<?'
  53068. lookahead2(3); // PITarget
  53069. break;
  53070. case 66: // '@'
  53071. lookahead2W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  53072. break;
  53073. case 68: // '['
  53074. lookahead2W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53075. break;
  53076. case 77: // 'append'
  53077. lookahead2W(199); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53078. break;
  53079. case 82: // 'attribute'
  53080. lookahead2W(280); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  53081. break;
  53082. case 121: // 'element'
  53083. lookahead2W(279); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  53084. break;
  53085. case 132: // 'exit'
  53086. lookahead2W(202); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53087. break;
  53088. case 137: // 'for'
  53089. lookahead2W(207); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  53090. break;
  53091. case 174: // 'let'
  53092. lookahead2W(204); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  53093. break;
  53094. case 218: // 'rename'
  53095. lookahead2W(205); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53096. break;
  53097. case 219: // 'replace'
  53098. lookahead2W(206); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53099. break;
  53100. case 260: // 'validate'
  53101. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53102. break;
  53103. case 276: // '{'
  53104. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53105. break;
  53106. case 278: // '{|'
  53107. lookahead2W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53108. break;
  53109. case 5: // Wildcard
  53110. case 45: // '..'
  53111. lookahead2W(185); // S^WS | EOF | '!' | '!=' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' | '<' |
  53112. break;
  53113. case 31: // '$'
  53114. case 32: // '%'
  53115. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  53116. break;
  53117. case 40: // '+'
  53118. case 42: // '-'
  53119. lookahead2W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  53120. break;
  53121. case 86: // 'break'
  53122. case 102: // 'continue'
  53123. lookahead2W(200); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53124. break;
  53125. case 110: // 'delete'
  53126. case 159: // 'insert'
  53127. lookahead2W(208); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53128. break;
  53129. case 184: // 'namespace'
  53130. case 216: // 'processing-instruction'
  53131. lookahead2W(267); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  53132. break;
  53133. case 103: // 'copy'
  53134. case 129: // 'every'
  53135. case 235: // 'some'
  53136. case 262: // 'variable'
  53137. lookahead2W(196); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  53138. break;
  53139. case 8: // IntegerLiteral
  53140. case 9: // DecimalLiteral
  53141. case 10: // DoubleLiteral
  53142. case 11: // StringLiteral
  53143. case 44: // '.'
  53144. lookahead2W(191); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  53145. break;
  53146. case 78: // 'array'
  53147. case 124: // 'empty-sequence'
  53148. case 165: // 'item'
  53149. case 167: // 'json-item'
  53150. case 242: // 'structured-item'
  53151. lookahead2W(190); // S^WS | EOF | '!' | '!=' | '#' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  53152. break;
  53153. case 96: // 'comment'
  53154. case 119: // 'document'
  53155. case 202: // 'ordered'
  53156. case 244: // 'text'
  53157. case 250: // 'try'
  53158. case 256: // 'unordered'
  53159. lookahead2W(203); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53160. break;
  53161. case 73: // 'ancestor'
  53162. case 74: // 'ancestor-or-self'
  53163. case 93: // 'child'
  53164. case 111: // 'descendant'
  53165. case 112: // 'descendant-or-self'
  53166. case 135: // 'following'
  53167. case 136: // 'following-sibling'
  53168. case 206: // 'parent'
  53169. case 212: // 'preceding'
  53170. case 213: // 'preceding-sibling'
  53171. case 229: // 'self'
  53172. lookahead2W(197); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53173. break;
  53174. case 6: // EQName^Token
  53175. case 70: // 'after'
  53176. case 72: // 'allowing'
  53177. case 75: // 'and'
  53178. case 79: // 'as'
  53179. case 80: // 'ascending'
  53180. case 81: // 'at'
  53181. case 83: // 'base-uri'
  53182. case 84: // 'before'
  53183. case 85: // 'boundary-space'
  53184. case 88: // 'case'
  53185. case 89: // 'cast'
  53186. case 90: // 'castable'
  53187. case 91: // 'catch'
  53188. case 94: // 'collation'
  53189. case 97: // 'constraint'
  53190. case 98: // 'construction'
  53191. case 101: // 'context'
  53192. case 104: // 'copy-namespaces'
  53193. case 105: // 'count'
  53194. case 106: // 'decimal-format'
  53195. case 108: // 'declare'
  53196. case 109: // 'default'
  53197. case 113: // 'descending'
  53198. case 118: // 'div'
  53199. case 120: // 'document-node'
  53200. case 122: // 'else'
  53201. case 123: // 'empty'
  53202. case 125: // 'encoding'
  53203. case 126: // 'end'
  53204. case 128: // 'eq'
  53205. case 131: // 'except'
  53206. case 133: // 'external'
  53207. case 134: // 'first'
  53208. case 141: // 'ft-option'
  53209. case 145: // 'function'
  53210. case 146: // 'ge'
  53211. case 148: // 'group'
  53212. case 150: // 'gt'
  53213. case 151: // 'idiv'
  53214. case 152: // 'if'
  53215. case 153: // 'import'
  53216. case 154: // 'in'
  53217. case 155: // 'index'
  53218. case 160: // 'instance'
  53219. case 161: // 'integrity'
  53220. case 162: // 'intersect'
  53221. case 163: // 'into'
  53222. case 164: // 'is'
  53223. case 166: // 'json'
  53224. case 170: // 'last'
  53225. case 171: // 'lax'
  53226. case 172: // 'le'
  53227. case 176: // 'loop'
  53228. case 178: // 'lt'
  53229. case 180: // 'mod'
  53230. case 181: // 'modify'
  53231. case 182: // 'module'
  53232. case 185: // 'namespace-node'
  53233. case 186: // 'ne'
  53234. case 191: // 'node'
  53235. case 192: // 'nodes'
  53236. case 194: // 'object'
  53237. case 198: // 'only'
  53238. case 199: // 'option'
  53239. case 200: // 'or'
  53240. case 201: // 'order'
  53241. case 203: // 'ordering'
  53242. case 220: // 'return'
  53243. case 221: // 'returning'
  53244. case 222: // 'revalidation'
  53245. case 224: // 'satisfies'
  53246. case 225: // 'schema'
  53247. case 226: // 'schema-attribute'
  53248. case 227: // 'schema-element'
  53249. case 228: // 'score'
  53250. case 234: // 'sliding'
  53251. case 236: // 'stable'
  53252. case 237: // 'start'
  53253. case 240: // 'strict'
  53254. case 243: // 'switch'
  53255. case 248: // 'to'
  53256. case 249: // 'treat'
  53257. case 251: // 'tumbling'
  53258. case 252: // 'type'
  53259. case 253: // 'typeswitch'
  53260. case 254: // 'union'
  53261. case 257: // 'updating'
  53262. case 261: // 'value'
  53263. case 263: // 'version'
  53264. case 266: // 'where'
  53265. case 267: // 'while'
  53266. case 270: // 'with'
  53267. case 274: // 'xquery'
  53268. lookahead2W(194); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  53269. break;
  53270. default:
  53271. lk = l1;
  53272. }
  53273. if (lk != 25 // EOF
  53274. && lk != 53 // ';'
  53275. && lk != 282 // '}'
  53276. && lk != 12805 // Wildcard EOF
  53277. && lk != 12806 // EQName^Token EOF
  53278. && lk != 12808 // IntegerLiteral EOF
  53279. && lk != 12809 // DecimalLiteral EOF
  53280. && lk != 12810 // DoubleLiteral EOF
  53281. && lk != 12811 // StringLiteral EOF
  53282. && lk != 12844 // '.' EOF
  53283. && lk != 12845 // '..' EOF
  53284. && lk != 12846 // '/' EOF
  53285. && lk != 12870 // 'after' EOF
  53286. && lk != 12872 // 'allowing' EOF
  53287. && lk != 12873 // 'ancestor' EOF
  53288. && lk != 12874 // 'ancestor-or-self' EOF
  53289. && lk != 12875 // 'and' EOF
  53290. && lk != 12877 // 'append' EOF
  53291. && lk != 12878 // 'array' EOF
  53292. && lk != 12879 // 'as' EOF
  53293. && lk != 12880 // 'ascending' EOF
  53294. && lk != 12881 // 'at' EOF
  53295. && lk != 12882 // 'attribute' EOF
  53296. && lk != 12883 // 'base-uri' EOF
  53297. && lk != 12884 // 'before' EOF
  53298. && lk != 12885 // 'boundary-space' EOF
  53299. && lk != 12886 // 'break' EOF
  53300. && lk != 12888 // 'case' EOF
  53301. && lk != 12889 // 'cast' EOF
  53302. && lk != 12890 // 'castable' EOF
  53303. && lk != 12891 // 'catch' EOF
  53304. && lk != 12893 // 'child' EOF
  53305. && lk != 12894 // 'collation' EOF
  53306. && lk != 12896 // 'comment' EOF
  53307. && lk != 12897 // 'constraint' EOF
  53308. && lk != 12898 // 'construction' EOF
  53309. && lk != 12901 // 'context' EOF
  53310. && lk != 12902 // 'continue' EOF
  53311. && lk != 12903 // 'copy' EOF
  53312. && lk != 12904 // 'copy-namespaces' EOF
  53313. && lk != 12905 // 'count' EOF
  53314. && lk != 12906 // 'decimal-format' EOF
  53315. && lk != 12908 // 'declare' EOF
  53316. && lk != 12909 // 'default' EOF
  53317. && lk != 12910 // 'delete' EOF
  53318. && lk != 12911 // 'descendant' EOF
  53319. && lk != 12912 // 'descendant-or-self' EOF
  53320. && lk != 12913 // 'descending' EOF
  53321. && lk != 12918 // 'div' EOF
  53322. && lk != 12919 // 'document' EOF
  53323. && lk != 12920 // 'document-node' EOF
  53324. && lk != 12921 // 'element' EOF
  53325. && lk != 12922 // 'else' EOF
  53326. && lk != 12923 // 'empty' EOF
  53327. && lk != 12924 // 'empty-sequence' EOF
  53328. && lk != 12925 // 'encoding' EOF
  53329. && lk != 12926 // 'end' EOF
  53330. && lk != 12928 // 'eq' EOF
  53331. && lk != 12929 // 'every' EOF
  53332. && lk != 12931 // 'except' EOF
  53333. && lk != 12932 // 'exit' EOF
  53334. && lk != 12933 // 'external' EOF
  53335. && lk != 12934 // 'first' EOF
  53336. && lk != 12935 // 'following' EOF
  53337. && lk != 12936 // 'following-sibling' EOF
  53338. && lk != 12937 // 'for' EOF
  53339. && lk != 12941 // 'ft-option' EOF
  53340. && lk != 12945 // 'function' EOF
  53341. && lk != 12946 // 'ge' EOF
  53342. && lk != 12948 // 'group' EOF
  53343. && lk != 12950 // 'gt' EOF
  53344. && lk != 12951 // 'idiv' EOF
  53345. && lk != 12952 // 'if' EOF
  53346. && lk != 12953 // 'import' EOF
  53347. && lk != 12954 // 'in' EOF
  53348. && lk != 12955 // 'index' EOF
  53349. && lk != 12959 // 'insert' EOF
  53350. && lk != 12960 // 'instance' EOF
  53351. && lk != 12961 // 'integrity' EOF
  53352. && lk != 12962 // 'intersect' EOF
  53353. && lk != 12963 // 'into' EOF
  53354. && lk != 12964 // 'is' EOF
  53355. && lk != 12965 // 'item' EOF
  53356. && lk != 12966 // 'json' EOF
  53357. && lk != 12967 // 'json-item' EOF
  53358. && lk != 12970 // 'last' EOF
  53359. && lk != 12971 // 'lax' EOF
  53360. && lk != 12972 // 'le' EOF
  53361. && lk != 12974 // 'let' EOF
  53362. && lk != 12976 // 'loop' EOF
  53363. && lk != 12978 // 'lt' EOF
  53364. && lk != 12980 // 'mod' EOF
  53365. && lk != 12981 // 'modify' EOF
  53366. && lk != 12982 // 'module' EOF
  53367. && lk != 12984 // 'namespace' EOF
  53368. && lk != 12985 // 'namespace-node' EOF
  53369. && lk != 12986 // 'ne' EOF
  53370. && lk != 12991 // 'node' EOF
  53371. && lk != 12992 // 'nodes' EOF
  53372. && lk != 12994 // 'object' EOF
  53373. && lk != 12998 // 'only' EOF
  53374. && lk != 12999 // 'option' EOF
  53375. && lk != 13000 // 'or' EOF
  53376. && lk != 13001 // 'order' EOF
  53377. && lk != 13002 // 'ordered' EOF
  53378. && lk != 13003 // 'ordering' EOF
  53379. && lk != 13006 // 'parent' EOF
  53380. && lk != 13012 // 'preceding' EOF
  53381. && lk != 13013 // 'preceding-sibling' EOF
  53382. && lk != 13016 // 'processing-instruction' EOF
  53383. && lk != 13018 // 'rename' EOF
  53384. && lk != 13019 // 'replace' EOF
  53385. && lk != 13020 // 'return' EOF
  53386. && lk != 13021 // 'returning' EOF
  53387. && lk != 13022 // 'revalidation' EOF
  53388. && lk != 13024 // 'satisfies' EOF
  53389. && lk != 13025 // 'schema' EOF
  53390. && lk != 13026 // 'schema-attribute' EOF
  53391. && lk != 13027 // 'schema-element' EOF
  53392. && lk != 13028 // 'score' EOF
  53393. && lk != 13029 // 'self' EOF
  53394. && lk != 13034 // 'sliding' EOF
  53395. && lk != 13035 // 'some' EOF
  53396. && lk != 13036 // 'stable' EOF
  53397. && lk != 13037 // 'start' EOF
  53398. && lk != 13040 // 'strict' EOF
  53399. && lk != 13042 // 'structured-item' EOF
  53400. && lk != 13043 // 'switch' EOF
  53401. && lk != 13044 // 'text' EOF
  53402. && lk != 13048 // 'to' EOF
  53403. && lk != 13049 // 'treat' EOF
  53404. && lk != 13050 // 'try' EOF
  53405. && lk != 13051 // 'tumbling' EOF
  53406. && lk != 13052 // 'type' EOF
  53407. && lk != 13053 // 'typeswitch' EOF
  53408. && lk != 13054 // 'union' EOF
  53409. && lk != 13056 // 'unordered' EOF
  53410. && lk != 13057 // 'updating' EOF
  53411. && lk != 13060 // 'validate' EOF
  53412. && lk != 13061 // 'value' EOF
  53413. && lk != 13062 // 'variable' EOF
  53414. && lk != 13063 // 'version' EOF
  53415. && lk != 13066 // 'where' EOF
  53416. && lk != 13067 // 'while' EOF
  53417. && lk != 13070 // 'with' EOF
  53418. && lk != 13074 // 'xquery' EOF
  53419. && lk != 16134 // 'variable' '$'
  53420. && lk != 20997 // Wildcard ','
  53421. && lk != 20998 // EQName^Token ','
  53422. && lk != 21000 // IntegerLiteral ','
  53423. && lk != 21001 // DecimalLiteral ','
  53424. && lk != 21002 // DoubleLiteral ','
  53425. && lk != 21003 // StringLiteral ','
  53426. && lk != 21036 // '.' ','
  53427. && lk != 21037 // '..' ','
  53428. && lk != 21038 // '/' ','
  53429. && lk != 21062 // 'after' ','
  53430. && lk != 21064 // 'allowing' ','
  53431. && lk != 21065 // 'ancestor' ','
  53432. && lk != 21066 // 'ancestor-or-self' ','
  53433. && lk != 21067 // 'and' ','
  53434. && lk != 21069 // 'append' ','
  53435. && lk != 21070 // 'array' ','
  53436. && lk != 21071 // 'as' ','
  53437. && lk != 21072 // 'ascending' ','
  53438. && lk != 21073 // 'at' ','
  53439. && lk != 21074 // 'attribute' ','
  53440. && lk != 21075 // 'base-uri' ','
  53441. && lk != 21076 // 'before' ','
  53442. && lk != 21077 // 'boundary-space' ','
  53443. && lk != 21078 // 'break' ','
  53444. && lk != 21080 // 'case' ','
  53445. && lk != 21081 // 'cast' ','
  53446. && lk != 21082 // 'castable' ','
  53447. && lk != 21083 // 'catch' ','
  53448. && lk != 21085 // 'child' ','
  53449. && lk != 21086 // 'collation' ','
  53450. && lk != 21088 // 'comment' ','
  53451. && lk != 21089 // 'constraint' ','
  53452. && lk != 21090 // 'construction' ','
  53453. && lk != 21093 // 'context' ','
  53454. && lk != 21094 // 'continue' ','
  53455. && lk != 21095 // 'copy' ','
  53456. && lk != 21096 // 'copy-namespaces' ','
  53457. && lk != 21097 // 'count' ','
  53458. && lk != 21098 // 'decimal-format' ','
  53459. && lk != 21100 // 'declare' ','
  53460. && lk != 21101 // 'default' ','
  53461. && lk != 21102 // 'delete' ','
  53462. && lk != 21103 // 'descendant' ','
  53463. && lk != 21104 // 'descendant-or-self' ','
  53464. && lk != 21105 // 'descending' ','
  53465. && lk != 21110 // 'div' ','
  53466. && lk != 21111 // 'document' ','
  53467. && lk != 21112 // 'document-node' ','
  53468. && lk != 21113 // 'element' ','
  53469. && lk != 21114 // 'else' ','
  53470. && lk != 21115 // 'empty' ','
  53471. && lk != 21116 // 'empty-sequence' ','
  53472. && lk != 21117 // 'encoding' ','
  53473. && lk != 21118 // 'end' ','
  53474. && lk != 21120 // 'eq' ','
  53475. && lk != 21121 // 'every' ','
  53476. && lk != 21123 // 'except' ','
  53477. && lk != 21124 // 'exit' ','
  53478. && lk != 21125 // 'external' ','
  53479. && lk != 21126 // 'first' ','
  53480. && lk != 21127 // 'following' ','
  53481. && lk != 21128 // 'following-sibling' ','
  53482. && lk != 21129 // 'for' ','
  53483. && lk != 21133 // 'ft-option' ','
  53484. && lk != 21137 // 'function' ','
  53485. && lk != 21138 // 'ge' ','
  53486. && lk != 21140 // 'group' ','
  53487. && lk != 21142 // 'gt' ','
  53488. && lk != 21143 // 'idiv' ','
  53489. && lk != 21144 // 'if' ','
  53490. && lk != 21145 // 'import' ','
  53491. && lk != 21146 // 'in' ','
  53492. && lk != 21147 // 'index' ','
  53493. && lk != 21151 // 'insert' ','
  53494. && lk != 21152 // 'instance' ','
  53495. && lk != 21153 // 'integrity' ','
  53496. && lk != 21154 // 'intersect' ','
  53497. && lk != 21155 // 'into' ','
  53498. && lk != 21156 // 'is' ','
  53499. && lk != 21157 // 'item' ','
  53500. && lk != 21158 // 'json' ','
  53501. && lk != 21159 // 'json-item' ','
  53502. && lk != 21162 // 'last' ','
  53503. && lk != 21163 // 'lax' ','
  53504. && lk != 21164 // 'le' ','
  53505. && lk != 21166 // 'let' ','
  53506. && lk != 21168 // 'loop' ','
  53507. && lk != 21170 // 'lt' ','
  53508. && lk != 21172 // 'mod' ','
  53509. && lk != 21173 // 'modify' ','
  53510. && lk != 21174 // 'module' ','
  53511. && lk != 21176 // 'namespace' ','
  53512. && lk != 21177 // 'namespace-node' ','
  53513. && lk != 21178 // 'ne' ','
  53514. && lk != 21183 // 'node' ','
  53515. && lk != 21184 // 'nodes' ','
  53516. && lk != 21186 // 'object' ','
  53517. && lk != 21190 // 'only' ','
  53518. && lk != 21191 // 'option' ','
  53519. && lk != 21192 // 'or' ','
  53520. && lk != 21193 // 'order' ','
  53521. && lk != 21194 // 'ordered' ','
  53522. && lk != 21195 // 'ordering' ','
  53523. && lk != 21198 // 'parent' ','
  53524. && lk != 21204 // 'preceding' ','
  53525. && lk != 21205 // 'preceding-sibling' ','
  53526. && lk != 21208 // 'processing-instruction' ','
  53527. && lk != 21210 // 'rename' ','
  53528. && lk != 21211 // 'replace' ','
  53529. && lk != 21212 // 'return' ','
  53530. && lk != 21213 // 'returning' ','
  53531. && lk != 21214 // 'revalidation' ','
  53532. && lk != 21216 // 'satisfies' ','
  53533. && lk != 21217 // 'schema' ','
  53534. && lk != 21218 // 'schema-attribute' ','
  53535. && lk != 21219 // 'schema-element' ','
  53536. && lk != 21220 // 'score' ','
  53537. && lk != 21221 // 'self' ','
  53538. && lk != 21226 // 'sliding' ','
  53539. && lk != 21227 // 'some' ','
  53540. && lk != 21228 // 'stable' ','
  53541. && lk != 21229 // 'start' ','
  53542. && lk != 21232 // 'strict' ','
  53543. && lk != 21234 // 'structured-item' ','
  53544. && lk != 21235 // 'switch' ','
  53545. && lk != 21236 // 'text' ','
  53546. && lk != 21240 // 'to' ','
  53547. && lk != 21241 // 'treat' ','
  53548. && lk != 21242 // 'try' ','
  53549. && lk != 21243 // 'tumbling' ','
  53550. && lk != 21244 // 'type' ','
  53551. && lk != 21245 // 'typeswitch' ','
  53552. && lk != 21246 // 'union' ','
  53553. && lk != 21248 // 'unordered' ','
  53554. && lk != 21249 // 'updating' ','
  53555. && lk != 21252 // 'validate' ','
  53556. && lk != 21253 // 'value' ','
  53557. && lk != 21254 // 'variable' ','
  53558. && lk != 21255 // 'version' ','
  53559. && lk != 21258 // 'where' ','
  53560. && lk != 21259 // 'while' ','
  53561. && lk != 21262 // 'with' ','
  53562. && lk != 21266 // 'xquery' ','
  53563. && lk != 27141 // Wildcard ';'
  53564. && lk != 27142 // EQName^Token ';'
  53565. && lk != 27144 // IntegerLiteral ';'
  53566. && lk != 27145 // DecimalLiteral ';'
  53567. && lk != 27146 // DoubleLiteral ';'
  53568. && lk != 27147 // StringLiteral ';'
  53569. && lk != 27180 // '.' ';'
  53570. && lk != 27181 // '..' ';'
  53571. && lk != 27182 // '/' ';'
  53572. && lk != 27206 // 'after' ';'
  53573. && lk != 27208 // 'allowing' ';'
  53574. && lk != 27209 // 'ancestor' ';'
  53575. && lk != 27210 // 'ancestor-or-self' ';'
  53576. && lk != 27211 // 'and' ';'
  53577. && lk != 27213 // 'append' ';'
  53578. && lk != 27214 // 'array' ';'
  53579. && lk != 27215 // 'as' ';'
  53580. && lk != 27216 // 'ascending' ';'
  53581. && lk != 27217 // 'at' ';'
  53582. && lk != 27218 // 'attribute' ';'
  53583. && lk != 27219 // 'base-uri' ';'
  53584. && lk != 27220 // 'before' ';'
  53585. && lk != 27221 // 'boundary-space' ';'
  53586. && lk != 27222 // 'break' ';'
  53587. && lk != 27224 // 'case' ';'
  53588. && lk != 27225 // 'cast' ';'
  53589. && lk != 27226 // 'castable' ';'
  53590. && lk != 27227 // 'catch' ';'
  53591. && lk != 27229 // 'child' ';'
  53592. && lk != 27230 // 'collation' ';'
  53593. && lk != 27232 // 'comment' ';'
  53594. && lk != 27233 // 'constraint' ';'
  53595. && lk != 27234 // 'construction' ';'
  53596. && lk != 27237 // 'context' ';'
  53597. && lk != 27238 // 'continue' ';'
  53598. && lk != 27239 // 'copy' ';'
  53599. && lk != 27240 // 'copy-namespaces' ';'
  53600. && lk != 27241 // 'count' ';'
  53601. && lk != 27242 // 'decimal-format' ';'
  53602. && lk != 27244 // 'declare' ';'
  53603. && lk != 27245 // 'default' ';'
  53604. && lk != 27246 // 'delete' ';'
  53605. && lk != 27247 // 'descendant' ';'
  53606. && lk != 27248 // 'descendant-or-self' ';'
  53607. && lk != 27249 // 'descending' ';'
  53608. && lk != 27254 // 'div' ';'
  53609. && lk != 27255 // 'document' ';'
  53610. && lk != 27256 // 'document-node' ';'
  53611. && lk != 27257 // 'element' ';'
  53612. && lk != 27258 // 'else' ';'
  53613. && lk != 27259 // 'empty' ';'
  53614. && lk != 27260 // 'empty-sequence' ';'
  53615. && lk != 27261 // 'encoding' ';'
  53616. && lk != 27262 // 'end' ';'
  53617. && lk != 27264 // 'eq' ';'
  53618. && lk != 27265 // 'every' ';'
  53619. && lk != 27267 // 'except' ';'
  53620. && lk != 27268 // 'exit' ';'
  53621. && lk != 27269 // 'external' ';'
  53622. && lk != 27270 // 'first' ';'
  53623. && lk != 27271 // 'following' ';'
  53624. && lk != 27272 // 'following-sibling' ';'
  53625. && lk != 27273 // 'for' ';'
  53626. && lk != 27277 // 'ft-option' ';'
  53627. && lk != 27281 // 'function' ';'
  53628. && lk != 27282 // 'ge' ';'
  53629. && lk != 27284 // 'group' ';'
  53630. && lk != 27286 // 'gt' ';'
  53631. && lk != 27287 // 'idiv' ';'
  53632. && lk != 27288 // 'if' ';'
  53633. && lk != 27289 // 'import' ';'
  53634. && lk != 27290 // 'in' ';'
  53635. && lk != 27291 // 'index' ';'
  53636. && lk != 27295 // 'insert' ';'
  53637. && lk != 27296 // 'instance' ';'
  53638. && lk != 27297 // 'integrity' ';'
  53639. && lk != 27298 // 'intersect' ';'
  53640. && lk != 27299 // 'into' ';'
  53641. && lk != 27300 // 'is' ';'
  53642. && lk != 27301 // 'item' ';'
  53643. && lk != 27302 // 'json' ';'
  53644. && lk != 27303 // 'json-item' ';'
  53645. && lk != 27306 // 'last' ';'
  53646. && lk != 27307 // 'lax' ';'
  53647. && lk != 27308 // 'le' ';'
  53648. && lk != 27310 // 'let' ';'
  53649. && lk != 27312 // 'loop' ';'
  53650. && lk != 27314 // 'lt' ';'
  53651. && lk != 27316 // 'mod' ';'
  53652. && lk != 27317 // 'modify' ';'
  53653. && lk != 27318 // 'module' ';'
  53654. && lk != 27320 // 'namespace' ';'
  53655. && lk != 27321 // 'namespace-node' ';'
  53656. && lk != 27322 // 'ne' ';'
  53657. && lk != 27327 // 'node' ';'
  53658. && lk != 27328 // 'nodes' ';'
  53659. && lk != 27330 // 'object' ';'
  53660. && lk != 27334 // 'only' ';'
  53661. && lk != 27335 // 'option' ';'
  53662. && lk != 27336 // 'or' ';'
  53663. && lk != 27337 // 'order' ';'
  53664. && lk != 27338 // 'ordered' ';'
  53665. && lk != 27339 // 'ordering' ';'
  53666. && lk != 27342 // 'parent' ';'
  53667. && lk != 27348 // 'preceding' ';'
  53668. && lk != 27349 // 'preceding-sibling' ';'
  53669. && lk != 27352 // 'processing-instruction' ';'
  53670. && lk != 27354 // 'rename' ';'
  53671. && lk != 27355 // 'replace' ';'
  53672. && lk != 27356 // 'return' ';'
  53673. && lk != 27357 // 'returning' ';'
  53674. && lk != 27358 // 'revalidation' ';'
  53675. && lk != 27360 // 'satisfies' ';'
  53676. && lk != 27361 // 'schema' ';'
  53677. && lk != 27362 // 'schema-attribute' ';'
  53678. && lk != 27363 // 'schema-element' ';'
  53679. && lk != 27364 // 'score' ';'
  53680. && lk != 27365 // 'self' ';'
  53681. && lk != 27370 // 'sliding' ';'
  53682. && lk != 27371 // 'some' ';'
  53683. && lk != 27372 // 'stable' ';'
  53684. && lk != 27373 // 'start' ';'
  53685. && lk != 27376 // 'strict' ';'
  53686. && lk != 27378 // 'structured-item' ';'
  53687. && lk != 27379 // 'switch' ';'
  53688. && lk != 27380 // 'text' ';'
  53689. && lk != 27384 // 'to' ';'
  53690. && lk != 27385 // 'treat' ';'
  53691. && lk != 27386 // 'try' ';'
  53692. && lk != 27387 // 'tumbling' ';'
  53693. && lk != 27388 // 'type' ';'
  53694. && lk != 27389 // 'typeswitch' ';'
  53695. && lk != 27390 // 'union' ';'
  53696. && lk != 27392 // 'unordered' ';'
  53697. && lk != 27393 // 'updating' ';'
  53698. && lk != 27396 // 'validate' ';'
  53699. && lk != 27397 // 'value' ';'
  53700. && lk != 27398 // 'variable' ';'
  53701. && lk != 27399 // 'version' ';'
  53702. && lk != 27402 // 'where' ';'
  53703. && lk != 27403 // 'while' ';'
  53704. && lk != 27406 // 'with' ';'
  53705. && lk != 27410 // 'xquery' ';'
  53706. && lk != 90198 // 'break' 'loop'
  53707. && lk != 90214 // 'continue' 'loop'
  53708. && lk != 113284 // 'exit' 'returning'
  53709. && lk != 144389 // Wildcard '}'
  53710. && lk != 144390 // EQName^Token '}'
  53711. && lk != 144392 // IntegerLiteral '}'
  53712. && lk != 144393 // DecimalLiteral '}'
  53713. && lk != 144394 // DoubleLiteral '}'
  53714. && lk != 144395 // StringLiteral '}'
  53715. && lk != 144428 // '.' '}'
  53716. && lk != 144429 // '..' '}'
  53717. && lk != 144430 // '/' '}'
  53718. && lk != 144454 // 'after' '}'
  53719. && lk != 144456 // 'allowing' '}'
  53720. && lk != 144457 // 'ancestor' '}'
  53721. && lk != 144458 // 'ancestor-or-self' '}'
  53722. && lk != 144459 // 'and' '}'
  53723. && lk != 144461 // 'append' '}'
  53724. && lk != 144462 // 'array' '}'
  53725. && lk != 144463 // 'as' '}'
  53726. && lk != 144464 // 'ascending' '}'
  53727. && lk != 144465 // 'at' '}'
  53728. && lk != 144466 // 'attribute' '}'
  53729. && lk != 144467 // 'base-uri' '}'
  53730. && lk != 144468 // 'before' '}'
  53731. && lk != 144469 // 'boundary-space' '}'
  53732. && lk != 144470 // 'break' '}'
  53733. && lk != 144472 // 'case' '}'
  53734. && lk != 144473 // 'cast' '}'
  53735. && lk != 144474 // 'castable' '}'
  53736. && lk != 144475 // 'catch' '}'
  53737. && lk != 144477 // 'child' '}'
  53738. && lk != 144478 // 'collation' '}'
  53739. && lk != 144480 // 'comment' '}'
  53740. && lk != 144481 // 'constraint' '}'
  53741. && lk != 144482 // 'construction' '}'
  53742. && lk != 144485 // 'context' '}'
  53743. && lk != 144486 // 'continue' '}'
  53744. && lk != 144487 // 'copy' '}'
  53745. && lk != 144488 // 'copy-namespaces' '}'
  53746. && lk != 144489 // 'count' '}'
  53747. && lk != 144490 // 'decimal-format' '}'
  53748. && lk != 144492 // 'declare' '}'
  53749. && lk != 144493 // 'default' '}'
  53750. && lk != 144494 // 'delete' '}'
  53751. && lk != 144495 // 'descendant' '}'
  53752. && lk != 144496 // 'descendant-or-self' '}'
  53753. && lk != 144497 // 'descending' '}'
  53754. && lk != 144502 // 'div' '}'
  53755. && lk != 144503 // 'document' '}'
  53756. && lk != 144504 // 'document-node' '}'
  53757. && lk != 144505 // 'element' '}'
  53758. && lk != 144506 // 'else' '}'
  53759. && lk != 144507 // 'empty' '}'
  53760. && lk != 144508 // 'empty-sequence' '}'
  53761. && lk != 144509 // 'encoding' '}'
  53762. && lk != 144510 // 'end' '}'
  53763. && lk != 144512 // 'eq' '}'
  53764. && lk != 144513 // 'every' '}'
  53765. && lk != 144515 // 'except' '}'
  53766. && lk != 144516 // 'exit' '}'
  53767. && lk != 144517 // 'external' '}'
  53768. && lk != 144518 // 'first' '}'
  53769. && lk != 144519 // 'following' '}'
  53770. && lk != 144520 // 'following-sibling' '}'
  53771. && lk != 144521 // 'for' '}'
  53772. && lk != 144525 // 'ft-option' '}'
  53773. && lk != 144529 // 'function' '}'
  53774. && lk != 144530 // 'ge' '}'
  53775. && lk != 144532 // 'group' '}'
  53776. && lk != 144534 // 'gt' '}'
  53777. && lk != 144535 // 'idiv' '}'
  53778. && lk != 144536 // 'if' '}'
  53779. && lk != 144537 // 'import' '}'
  53780. && lk != 144538 // 'in' '}'
  53781. && lk != 144539 // 'index' '}'
  53782. && lk != 144543 // 'insert' '}'
  53783. && lk != 144544 // 'instance' '}'
  53784. && lk != 144545 // 'integrity' '}'
  53785. && lk != 144546 // 'intersect' '}'
  53786. && lk != 144547 // 'into' '}'
  53787. && lk != 144548 // 'is' '}'
  53788. && lk != 144549 // 'item' '}'
  53789. && lk != 144550 // 'json' '}'
  53790. && lk != 144551 // 'json-item' '}'
  53791. && lk != 144554 // 'last' '}'
  53792. && lk != 144555 // 'lax' '}'
  53793. && lk != 144556 // 'le' '}'
  53794. && lk != 144558 // 'let' '}'
  53795. && lk != 144560 // 'loop' '}'
  53796. && lk != 144562 // 'lt' '}'
  53797. && lk != 144564 // 'mod' '}'
  53798. && lk != 144565 // 'modify' '}'
  53799. && lk != 144566 // 'module' '}'
  53800. && lk != 144568 // 'namespace' '}'
  53801. && lk != 144569 // 'namespace-node' '}'
  53802. && lk != 144570 // 'ne' '}'
  53803. && lk != 144575 // 'node' '}'
  53804. && lk != 144576 // 'nodes' '}'
  53805. && lk != 144578 // 'object' '}'
  53806. && lk != 144582 // 'only' '}'
  53807. && lk != 144583 // 'option' '}'
  53808. && lk != 144584 // 'or' '}'
  53809. && lk != 144585 // 'order' '}'
  53810. && lk != 144586 // 'ordered' '}'
  53811. && lk != 144587 // 'ordering' '}'
  53812. && lk != 144590 // 'parent' '}'
  53813. && lk != 144596 // 'preceding' '}'
  53814. && lk != 144597 // 'preceding-sibling' '}'
  53815. && lk != 144600 // 'processing-instruction' '}'
  53816. && lk != 144602 // 'rename' '}'
  53817. && lk != 144603 // 'replace' '}'
  53818. && lk != 144604 // 'return' '}'
  53819. && lk != 144605 // 'returning' '}'
  53820. && lk != 144606 // 'revalidation' '}'
  53821. && lk != 144608 // 'satisfies' '}'
  53822. && lk != 144609 // 'schema' '}'
  53823. && lk != 144610 // 'schema-attribute' '}'
  53824. && lk != 144611 // 'schema-element' '}'
  53825. && lk != 144612 // 'score' '}'
  53826. && lk != 144613 // 'self' '}'
  53827. && lk != 144618 // 'sliding' '}'
  53828. && lk != 144619 // 'some' '}'
  53829. && lk != 144620 // 'stable' '}'
  53830. && lk != 144621 // 'start' '}'
  53831. && lk != 144624 // 'strict' '}'
  53832. && lk != 144626 // 'structured-item' '}'
  53833. && lk != 144627 // 'switch' '}'
  53834. && lk != 144628 // 'text' '}'
  53835. && lk != 144632 // 'to' '}'
  53836. && lk != 144633 // 'treat' '}'
  53837. && lk != 144634 // 'try' '}'
  53838. && lk != 144635 // 'tumbling' '}'
  53839. && lk != 144636 // 'type' '}'
  53840. && lk != 144637 // 'typeswitch' '}'
  53841. && lk != 144638 // 'union' '}'
  53842. && lk != 144640 // 'unordered' '}'
  53843. && lk != 144641 // 'updating' '}'
  53844. && lk != 144644 // 'validate' '}'
  53845. && lk != 144645 // 'value' '}'
  53846. && lk != 144646 // 'variable' '}'
  53847. && lk != 144647 // 'version' '}'
  53848. && lk != 144650 // 'where' '}'
  53849. && lk != 144651 // 'while' '}'
  53850. && lk != 144654 // 'with' '}'
  53851. && lk != 144658) // 'xquery' '}'
  53852. {
  53853. lk = memoized(6, e0);
  53854. if (lk == 0)
  53855. {
  53856. var b0A = b0; var e0A = e0; var l1A = l1;
  53857. var b1A = b1; var e1A = e1; var l2A = l2;
  53858. var b2A = b2; var e2A = e2;
  53859. try
  53860. {
  53861. try_Statement();
  53862. lk = -1;
  53863. }
  53864. catch (p1A)
  53865. {
  53866. lk = -2;
  53867. }
  53868. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  53869. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  53870. b2 = b2A; e2 = e2A; end = e2A; }}
  53871. memoize(6, e0, lk);
  53872. }
  53873. }
  53874. if (lk != -1
  53875. && lk != 53 // ';'
  53876. && lk != 16134 // 'variable' '$'
  53877. && lk != 27141 // Wildcard ';'
  53878. && lk != 27142 // EQName^Token ';'
  53879. && lk != 27144 // IntegerLiteral ';'
  53880. && lk != 27145 // DecimalLiteral ';'
  53881. && lk != 27146 // DoubleLiteral ';'
  53882. && lk != 27147 // StringLiteral ';'
  53883. && lk != 27180 // '.' ';'
  53884. && lk != 27181 // '..' ';'
  53885. && lk != 27182 // '/' ';'
  53886. && lk != 27206 // 'after' ';'
  53887. && lk != 27208 // 'allowing' ';'
  53888. && lk != 27209 // 'ancestor' ';'
  53889. && lk != 27210 // 'ancestor-or-self' ';'
  53890. && lk != 27211 // 'and' ';'
  53891. && lk != 27213 // 'append' ';'
  53892. && lk != 27214 // 'array' ';'
  53893. && lk != 27215 // 'as' ';'
  53894. && lk != 27216 // 'ascending' ';'
  53895. && lk != 27217 // 'at' ';'
  53896. && lk != 27218 // 'attribute' ';'
  53897. && lk != 27219 // 'base-uri' ';'
  53898. && lk != 27220 // 'before' ';'
  53899. && lk != 27221 // 'boundary-space' ';'
  53900. && lk != 27222 // 'break' ';'
  53901. && lk != 27224 // 'case' ';'
  53902. && lk != 27225 // 'cast' ';'
  53903. && lk != 27226 // 'castable' ';'
  53904. && lk != 27227 // 'catch' ';'
  53905. && lk != 27229 // 'child' ';'
  53906. && lk != 27230 // 'collation' ';'
  53907. && lk != 27232 // 'comment' ';'
  53908. && lk != 27233 // 'constraint' ';'
  53909. && lk != 27234 // 'construction' ';'
  53910. && lk != 27237 // 'context' ';'
  53911. && lk != 27238 // 'continue' ';'
  53912. && lk != 27239 // 'copy' ';'
  53913. && lk != 27240 // 'copy-namespaces' ';'
  53914. && lk != 27241 // 'count' ';'
  53915. && lk != 27242 // 'decimal-format' ';'
  53916. && lk != 27244 // 'declare' ';'
  53917. && lk != 27245 // 'default' ';'
  53918. && lk != 27246 // 'delete' ';'
  53919. && lk != 27247 // 'descendant' ';'
  53920. && lk != 27248 // 'descendant-or-self' ';'
  53921. && lk != 27249 // 'descending' ';'
  53922. && lk != 27254 // 'div' ';'
  53923. && lk != 27255 // 'document' ';'
  53924. && lk != 27256 // 'document-node' ';'
  53925. && lk != 27257 // 'element' ';'
  53926. && lk != 27258 // 'else' ';'
  53927. && lk != 27259 // 'empty' ';'
  53928. && lk != 27260 // 'empty-sequence' ';'
  53929. && lk != 27261 // 'encoding' ';'
  53930. && lk != 27262 // 'end' ';'
  53931. && lk != 27264 // 'eq' ';'
  53932. && lk != 27265 // 'every' ';'
  53933. && lk != 27267 // 'except' ';'
  53934. && lk != 27268 // 'exit' ';'
  53935. && lk != 27269 // 'external' ';'
  53936. && lk != 27270 // 'first' ';'
  53937. && lk != 27271 // 'following' ';'
  53938. && lk != 27272 // 'following-sibling' ';'
  53939. && lk != 27273 // 'for' ';'
  53940. && lk != 27277 // 'ft-option' ';'
  53941. && lk != 27281 // 'function' ';'
  53942. && lk != 27282 // 'ge' ';'
  53943. && lk != 27284 // 'group' ';'
  53944. && lk != 27286 // 'gt' ';'
  53945. && lk != 27287 // 'idiv' ';'
  53946. && lk != 27288 // 'if' ';'
  53947. && lk != 27289 // 'import' ';'
  53948. && lk != 27290 // 'in' ';'
  53949. && lk != 27291 // 'index' ';'
  53950. && lk != 27295 // 'insert' ';'
  53951. && lk != 27296 // 'instance' ';'
  53952. && lk != 27297 // 'integrity' ';'
  53953. && lk != 27298 // 'intersect' ';'
  53954. && lk != 27299 // 'into' ';'
  53955. && lk != 27300 // 'is' ';'
  53956. && lk != 27301 // 'item' ';'
  53957. && lk != 27302 // 'json' ';'
  53958. && lk != 27303 // 'json-item' ';'
  53959. && lk != 27306 // 'last' ';'
  53960. && lk != 27307 // 'lax' ';'
  53961. && lk != 27308 // 'le' ';'
  53962. && lk != 27310 // 'let' ';'
  53963. && lk != 27312 // 'loop' ';'
  53964. && lk != 27314 // 'lt' ';'
  53965. && lk != 27316 // 'mod' ';'
  53966. && lk != 27317 // 'modify' ';'
  53967. && lk != 27318 // 'module' ';'
  53968. && lk != 27320 // 'namespace' ';'
  53969. && lk != 27321 // 'namespace-node' ';'
  53970. && lk != 27322 // 'ne' ';'
  53971. && lk != 27327 // 'node' ';'
  53972. && lk != 27328 // 'nodes' ';'
  53973. && lk != 27330 // 'object' ';'
  53974. && lk != 27334 // 'only' ';'
  53975. && lk != 27335 // 'option' ';'
  53976. && lk != 27336 // 'or' ';'
  53977. && lk != 27337 // 'order' ';'
  53978. && lk != 27338 // 'ordered' ';'
  53979. && lk != 27339 // 'ordering' ';'
  53980. && lk != 27342 // 'parent' ';'
  53981. && lk != 27348 // 'preceding' ';'
  53982. && lk != 27349 // 'preceding-sibling' ';'
  53983. && lk != 27352 // 'processing-instruction' ';'
  53984. && lk != 27354 // 'rename' ';'
  53985. && lk != 27355 // 'replace' ';'
  53986. && lk != 27356 // 'return' ';'
  53987. && lk != 27357 // 'returning' ';'
  53988. && lk != 27358 // 'revalidation' ';'
  53989. && lk != 27360 // 'satisfies' ';'
  53990. && lk != 27361 // 'schema' ';'
  53991. && lk != 27362 // 'schema-attribute' ';'
  53992. && lk != 27363 // 'schema-element' ';'
  53993. && lk != 27364 // 'score' ';'
  53994. && lk != 27365 // 'self' ';'
  53995. && lk != 27370 // 'sliding' ';'
  53996. && lk != 27371 // 'some' ';'
  53997. && lk != 27372 // 'stable' ';'
  53998. && lk != 27373 // 'start' ';'
  53999. && lk != 27376 // 'strict' ';'
  54000. && lk != 27378 // 'structured-item' ';'
  54001. && lk != 27379 // 'switch' ';'
  54002. && lk != 27380 // 'text' ';'
  54003. && lk != 27384 // 'to' ';'
  54004. && lk != 27385 // 'treat' ';'
  54005. && lk != 27386 // 'try' ';'
  54006. && lk != 27387 // 'tumbling' ';'
  54007. && lk != 27388 // 'type' ';'
  54008. && lk != 27389 // 'typeswitch' ';'
  54009. && lk != 27390 // 'union' ';'
  54010. && lk != 27392 // 'unordered' ';'
  54011. && lk != 27393 // 'updating' ';'
  54012. && lk != 27396 // 'validate' ';'
  54013. && lk != 27397 // 'value' ';'
  54014. && lk != 27398 // 'variable' ';'
  54015. && lk != 27399 // 'version' ';'
  54016. && lk != 27402 // 'where' ';'
  54017. && lk != 27403 // 'while' ';'
  54018. && lk != 27406 // 'with' ';'
  54019. && lk != 27410 // 'xquery' ';'
  54020. && lk != 90198 // 'break' 'loop'
  54021. && lk != 90214 // 'continue' 'loop'
  54022. && lk != 113284) // 'exit' 'returning'
  54023. {
  54024. break;
  54025. }
  54026. whitespace();
  54027. parse_Statement();
  54028. }
  54029. eventHandler.endNonterminal("Statements", e0);
  54030. }
  54031. function try_Statements()
  54032. {
  54033. for (;;)
  54034. {
  54035. lookahead1W(277); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54036. switch (l1)
  54037. {
  54038. case 34: // '('
  54039. lookahead2W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54040. break;
  54041. case 35: // '(#'
  54042. lookahead2(251); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  54043. break;
  54044. case 46: // '/'
  54045. lookahead2W(283); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54046. break;
  54047. case 47: // '//'
  54048. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54049. break;
  54050. case 54: // '<'
  54051. lookahead2(4); // QName
  54052. break;
  54053. case 55: // '<!--'
  54054. lookahead2(1); // DirCommentContents
  54055. break;
  54056. case 59: // '<?'
  54057. lookahead2(3); // PITarget
  54058. break;
  54059. case 66: // '@'
  54060. lookahead2W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  54061. break;
  54062. case 68: // '['
  54063. lookahead2W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54064. break;
  54065. case 77: // 'append'
  54066. lookahead2W(199); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54067. break;
  54068. case 82: // 'attribute'
  54069. lookahead2W(280); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  54070. break;
  54071. case 121: // 'element'
  54072. lookahead2W(279); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  54073. break;
  54074. case 132: // 'exit'
  54075. lookahead2W(202); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54076. break;
  54077. case 137: // 'for'
  54078. lookahead2W(207); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  54079. break;
  54080. case 174: // 'let'
  54081. lookahead2W(204); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  54082. break;
  54083. case 218: // 'rename'
  54084. lookahead2W(205); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54085. break;
  54086. case 219: // 'replace'
  54087. lookahead2W(206); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54088. break;
  54089. case 260: // 'validate'
  54090. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54091. break;
  54092. case 276: // '{'
  54093. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54094. break;
  54095. case 278: // '{|'
  54096. lookahead2W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54097. break;
  54098. case 5: // Wildcard
  54099. case 45: // '..'
  54100. lookahead2W(185); // S^WS | EOF | '!' | '!=' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' | '<' |
  54101. break;
  54102. case 31: // '$'
  54103. case 32: // '%'
  54104. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  54105. break;
  54106. case 40: // '+'
  54107. case 42: // '-'
  54108. lookahead2W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  54109. break;
  54110. case 86: // 'break'
  54111. case 102: // 'continue'
  54112. lookahead2W(200); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54113. break;
  54114. case 110: // 'delete'
  54115. case 159: // 'insert'
  54116. lookahead2W(208); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54117. break;
  54118. case 184: // 'namespace'
  54119. case 216: // 'processing-instruction'
  54120. lookahead2W(267); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  54121. break;
  54122. case 103: // 'copy'
  54123. case 129: // 'every'
  54124. case 235: // 'some'
  54125. case 262: // 'variable'
  54126. lookahead2W(196); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  54127. break;
  54128. case 8: // IntegerLiteral
  54129. case 9: // DecimalLiteral
  54130. case 10: // DoubleLiteral
  54131. case 11: // StringLiteral
  54132. case 44: // '.'
  54133. lookahead2W(191); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  54134. break;
  54135. case 78: // 'array'
  54136. case 124: // 'empty-sequence'
  54137. case 165: // 'item'
  54138. case 167: // 'json-item'
  54139. case 242: // 'structured-item'
  54140. lookahead2W(190); // S^WS | EOF | '!' | '!=' | '#' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  54141. break;
  54142. case 96: // 'comment'
  54143. case 119: // 'document'
  54144. case 202: // 'ordered'
  54145. case 244: // 'text'
  54146. case 250: // 'try'
  54147. case 256: // 'unordered'
  54148. lookahead2W(203); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54149. break;
  54150. case 73: // 'ancestor'
  54151. case 74: // 'ancestor-or-self'
  54152. case 93: // 'child'
  54153. case 111: // 'descendant'
  54154. case 112: // 'descendant-or-self'
  54155. case 135: // 'following'
  54156. case 136: // 'following-sibling'
  54157. case 206: // 'parent'
  54158. case 212: // 'preceding'
  54159. case 213: // 'preceding-sibling'
  54160. case 229: // 'self'
  54161. lookahead2W(197); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54162. break;
  54163. case 6: // EQName^Token
  54164. case 70: // 'after'
  54165. case 72: // 'allowing'
  54166. case 75: // 'and'
  54167. case 79: // 'as'
  54168. case 80: // 'ascending'
  54169. case 81: // 'at'
  54170. case 83: // 'base-uri'
  54171. case 84: // 'before'
  54172. case 85: // 'boundary-space'
  54173. case 88: // 'case'
  54174. case 89: // 'cast'
  54175. case 90: // 'castable'
  54176. case 91: // 'catch'
  54177. case 94: // 'collation'
  54178. case 97: // 'constraint'
  54179. case 98: // 'construction'
  54180. case 101: // 'context'
  54181. case 104: // 'copy-namespaces'
  54182. case 105: // 'count'
  54183. case 106: // 'decimal-format'
  54184. case 108: // 'declare'
  54185. case 109: // 'default'
  54186. case 113: // 'descending'
  54187. case 118: // 'div'
  54188. case 120: // 'document-node'
  54189. case 122: // 'else'
  54190. case 123: // 'empty'
  54191. case 125: // 'encoding'
  54192. case 126: // 'end'
  54193. case 128: // 'eq'
  54194. case 131: // 'except'
  54195. case 133: // 'external'
  54196. case 134: // 'first'
  54197. case 141: // 'ft-option'
  54198. case 145: // 'function'
  54199. case 146: // 'ge'
  54200. case 148: // 'group'
  54201. case 150: // 'gt'
  54202. case 151: // 'idiv'
  54203. case 152: // 'if'
  54204. case 153: // 'import'
  54205. case 154: // 'in'
  54206. case 155: // 'index'
  54207. case 160: // 'instance'
  54208. case 161: // 'integrity'
  54209. case 162: // 'intersect'
  54210. case 163: // 'into'
  54211. case 164: // 'is'
  54212. case 166: // 'json'
  54213. case 170: // 'last'
  54214. case 171: // 'lax'
  54215. case 172: // 'le'
  54216. case 176: // 'loop'
  54217. case 178: // 'lt'
  54218. case 180: // 'mod'
  54219. case 181: // 'modify'
  54220. case 182: // 'module'
  54221. case 185: // 'namespace-node'
  54222. case 186: // 'ne'
  54223. case 191: // 'node'
  54224. case 192: // 'nodes'
  54225. case 194: // 'object'
  54226. case 198: // 'only'
  54227. case 199: // 'option'
  54228. case 200: // 'or'
  54229. case 201: // 'order'
  54230. case 203: // 'ordering'
  54231. case 220: // 'return'
  54232. case 221: // 'returning'
  54233. case 222: // 'revalidation'
  54234. case 224: // 'satisfies'
  54235. case 225: // 'schema'
  54236. case 226: // 'schema-attribute'
  54237. case 227: // 'schema-element'
  54238. case 228: // 'score'
  54239. case 234: // 'sliding'
  54240. case 236: // 'stable'
  54241. case 237: // 'start'
  54242. case 240: // 'strict'
  54243. case 243: // 'switch'
  54244. case 248: // 'to'
  54245. case 249: // 'treat'
  54246. case 251: // 'tumbling'
  54247. case 252: // 'type'
  54248. case 253: // 'typeswitch'
  54249. case 254: // 'union'
  54250. case 257: // 'updating'
  54251. case 261: // 'value'
  54252. case 263: // 'version'
  54253. case 266: // 'where'
  54254. case 267: // 'while'
  54255. case 270: // 'with'
  54256. case 274: // 'xquery'
  54257. lookahead2W(194); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  54258. break;
  54259. default:
  54260. lk = l1;
  54261. }
  54262. if (lk != 25 // EOF
  54263. && lk != 53 // ';'
  54264. && lk != 282 // '}'
  54265. && lk != 12805 // Wildcard EOF
  54266. && lk != 12806 // EQName^Token EOF
  54267. && lk != 12808 // IntegerLiteral EOF
  54268. && lk != 12809 // DecimalLiteral EOF
  54269. && lk != 12810 // DoubleLiteral EOF
  54270. && lk != 12811 // StringLiteral EOF
  54271. && lk != 12844 // '.' EOF
  54272. && lk != 12845 // '..' EOF
  54273. && lk != 12846 // '/' EOF
  54274. && lk != 12870 // 'after' EOF
  54275. && lk != 12872 // 'allowing' EOF
  54276. && lk != 12873 // 'ancestor' EOF
  54277. && lk != 12874 // 'ancestor-or-self' EOF
  54278. && lk != 12875 // 'and' EOF
  54279. && lk != 12877 // 'append' EOF
  54280. && lk != 12878 // 'array' EOF
  54281. && lk != 12879 // 'as' EOF
  54282. && lk != 12880 // 'ascending' EOF
  54283. && lk != 12881 // 'at' EOF
  54284. && lk != 12882 // 'attribute' EOF
  54285. && lk != 12883 // 'base-uri' EOF
  54286. && lk != 12884 // 'before' EOF
  54287. && lk != 12885 // 'boundary-space' EOF
  54288. && lk != 12886 // 'break' EOF
  54289. && lk != 12888 // 'case' EOF
  54290. && lk != 12889 // 'cast' EOF
  54291. && lk != 12890 // 'castable' EOF
  54292. && lk != 12891 // 'catch' EOF
  54293. && lk != 12893 // 'child' EOF
  54294. && lk != 12894 // 'collation' EOF
  54295. && lk != 12896 // 'comment' EOF
  54296. && lk != 12897 // 'constraint' EOF
  54297. && lk != 12898 // 'construction' EOF
  54298. && lk != 12901 // 'context' EOF
  54299. && lk != 12902 // 'continue' EOF
  54300. && lk != 12903 // 'copy' EOF
  54301. && lk != 12904 // 'copy-namespaces' EOF
  54302. && lk != 12905 // 'count' EOF
  54303. && lk != 12906 // 'decimal-format' EOF
  54304. && lk != 12908 // 'declare' EOF
  54305. && lk != 12909 // 'default' EOF
  54306. && lk != 12910 // 'delete' EOF
  54307. && lk != 12911 // 'descendant' EOF
  54308. && lk != 12912 // 'descendant-or-self' EOF
  54309. && lk != 12913 // 'descending' EOF
  54310. && lk != 12918 // 'div' EOF
  54311. && lk != 12919 // 'document' EOF
  54312. && lk != 12920 // 'document-node' EOF
  54313. && lk != 12921 // 'element' EOF
  54314. && lk != 12922 // 'else' EOF
  54315. && lk != 12923 // 'empty' EOF
  54316. && lk != 12924 // 'empty-sequence' EOF
  54317. && lk != 12925 // 'encoding' EOF
  54318. && lk != 12926 // 'end' EOF
  54319. && lk != 12928 // 'eq' EOF
  54320. && lk != 12929 // 'every' EOF
  54321. && lk != 12931 // 'except' EOF
  54322. && lk != 12932 // 'exit' EOF
  54323. && lk != 12933 // 'external' EOF
  54324. && lk != 12934 // 'first' EOF
  54325. && lk != 12935 // 'following' EOF
  54326. && lk != 12936 // 'following-sibling' EOF
  54327. && lk != 12937 // 'for' EOF
  54328. && lk != 12941 // 'ft-option' EOF
  54329. && lk != 12945 // 'function' EOF
  54330. && lk != 12946 // 'ge' EOF
  54331. && lk != 12948 // 'group' EOF
  54332. && lk != 12950 // 'gt' EOF
  54333. && lk != 12951 // 'idiv' EOF
  54334. && lk != 12952 // 'if' EOF
  54335. && lk != 12953 // 'import' EOF
  54336. && lk != 12954 // 'in' EOF
  54337. && lk != 12955 // 'index' EOF
  54338. && lk != 12959 // 'insert' EOF
  54339. && lk != 12960 // 'instance' EOF
  54340. && lk != 12961 // 'integrity' EOF
  54341. && lk != 12962 // 'intersect' EOF
  54342. && lk != 12963 // 'into' EOF
  54343. && lk != 12964 // 'is' EOF
  54344. && lk != 12965 // 'item' EOF
  54345. && lk != 12966 // 'json' EOF
  54346. && lk != 12967 // 'json-item' EOF
  54347. && lk != 12970 // 'last' EOF
  54348. && lk != 12971 // 'lax' EOF
  54349. && lk != 12972 // 'le' EOF
  54350. && lk != 12974 // 'let' EOF
  54351. && lk != 12976 // 'loop' EOF
  54352. && lk != 12978 // 'lt' EOF
  54353. && lk != 12980 // 'mod' EOF
  54354. && lk != 12981 // 'modify' EOF
  54355. && lk != 12982 // 'module' EOF
  54356. && lk != 12984 // 'namespace' EOF
  54357. && lk != 12985 // 'namespace-node' EOF
  54358. && lk != 12986 // 'ne' EOF
  54359. && lk != 12991 // 'node' EOF
  54360. && lk != 12992 // 'nodes' EOF
  54361. && lk != 12994 // 'object' EOF
  54362. && lk != 12998 // 'only' EOF
  54363. && lk != 12999 // 'option' EOF
  54364. && lk != 13000 // 'or' EOF
  54365. && lk != 13001 // 'order' EOF
  54366. && lk != 13002 // 'ordered' EOF
  54367. && lk != 13003 // 'ordering' EOF
  54368. && lk != 13006 // 'parent' EOF
  54369. && lk != 13012 // 'preceding' EOF
  54370. && lk != 13013 // 'preceding-sibling' EOF
  54371. && lk != 13016 // 'processing-instruction' EOF
  54372. && lk != 13018 // 'rename' EOF
  54373. && lk != 13019 // 'replace' EOF
  54374. && lk != 13020 // 'return' EOF
  54375. && lk != 13021 // 'returning' EOF
  54376. && lk != 13022 // 'revalidation' EOF
  54377. && lk != 13024 // 'satisfies' EOF
  54378. && lk != 13025 // 'schema' EOF
  54379. && lk != 13026 // 'schema-attribute' EOF
  54380. && lk != 13027 // 'schema-element' EOF
  54381. && lk != 13028 // 'score' EOF
  54382. && lk != 13029 // 'self' EOF
  54383. && lk != 13034 // 'sliding' EOF
  54384. && lk != 13035 // 'some' EOF
  54385. && lk != 13036 // 'stable' EOF
  54386. && lk != 13037 // 'start' EOF
  54387. && lk != 13040 // 'strict' EOF
  54388. && lk != 13042 // 'structured-item' EOF
  54389. && lk != 13043 // 'switch' EOF
  54390. && lk != 13044 // 'text' EOF
  54391. && lk != 13048 // 'to' EOF
  54392. && lk != 13049 // 'treat' EOF
  54393. && lk != 13050 // 'try' EOF
  54394. && lk != 13051 // 'tumbling' EOF
  54395. && lk != 13052 // 'type' EOF
  54396. && lk != 13053 // 'typeswitch' EOF
  54397. && lk != 13054 // 'union' EOF
  54398. && lk != 13056 // 'unordered' EOF
  54399. && lk != 13057 // 'updating' EOF
  54400. && lk != 13060 // 'validate' EOF
  54401. && lk != 13061 // 'value' EOF
  54402. && lk != 13062 // 'variable' EOF
  54403. && lk != 13063 // 'version' EOF
  54404. && lk != 13066 // 'where' EOF
  54405. && lk != 13067 // 'while' EOF
  54406. && lk != 13070 // 'with' EOF
  54407. && lk != 13074 // 'xquery' EOF
  54408. && lk != 16134 // 'variable' '$'
  54409. && lk != 20997 // Wildcard ','
  54410. && lk != 20998 // EQName^Token ','
  54411. && lk != 21000 // IntegerLiteral ','
  54412. && lk != 21001 // DecimalLiteral ','
  54413. && lk != 21002 // DoubleLiteral ','
  54414. && lk != 21003 // StringLiteral ','
  54415. && lk != 21036 // '.' ','
  54416. && lk != 21037 // '..' ','
  54417. && lk != 21038 // '/' ','
  54418. && lk != 21062 // 'after' ','
  54419. && lk != 21064 // 'allowing' ','
  54420. && lk != 21065 // 'ancestor' ','
  54421. && lk != 21066 // 'ancestor-or-self' ','
  54422. && lk != 21067 // 'and' ','
  54423. && lk != 21069 // 'append' ','
  54424. && lk != 21070 // 'array' ','
  54425. && lk != 21071 // 'as' ','
  54426. && lk != 21072 // 'ascending' ','
  54427. && lk != 21073 // 'at' ','
  54428. && lk != 21074 // 'attribute' ','
  54429. && lk != 21075 // 'base-uri' ','
  54430. && lk != 21076 // 'before' ','
  54431. && lk != 21077 // 'boundary-space' ','
  54432. && lk != 21078 // 'break' ','
  54433. && lk != 21080 // 'case' ','
  54434. && lk != 21081 // 'cast' ','
  54435. && lk != 21082 // 'castable' ','
  54436. && lk != 21083 // 'catch' ','
  54437. && lk != 21085 // 'child' ','
  54438. && lk != 21086 // 'collation' ','
  54439. && lk != 21088 // 'comment' ','
  54440. && lk != 21089 // 'constraint' ','
  54441. && lk != 21090 // 'construction' ','
  54442. && lk != 21093 // 'context' ','
  54443. && lk != 21094 // 'continue' ','
  54444. && lk != 21095 // 'copy' ','
  54445. && lk != 21096 // 'copy-namespaces' ','
  54446. && lk != 21097 // 'count' ','
  54447. && lk != 21098 // 'decimal-format' ','
  54448. && lk != 21100 // 'declare' ','
  54449. && lk != 21101 // 'default' ','
  54450. && lk != 21102 // 'delete' ','
  54451. && lk != 21103 // 'descendant' ','
  54452. && lk != 21104 // 'descendant-or-self' ','
  54453. && lk != 21105 // 'descending' ','
  54454. && lk != 21110 // 'div' ','
  54455. && lk != 21111 // 'document' ','
  54456. && lk != 21112 // 'document-node' ','
  54457. && lk != 21113 // 'element' ','
  54458. && lk != 21114 // 'else' ','
  54459. && lk != 21115 // 'empty' ','
  54460. && lk != 21116 // 'empty-sequence' ','
  54461. && lk != 21117 // 'encoding' ','
  54462. && lk != 21118 // 'end' ','
  54463. && lk != 21120 // 'eq' ','
  54464. && lk != 21121 // 'every' ','
  54465. && lk != 21123 // 'except' ','
  54466. && lk != 21124 // 'exit' ','
  54467. && lk != 21125 // 'external' ','
  54468. && lk != 21126 // 'first' ','
  54469. && lk != 21127 // 'following' ','
  54470. && lk != 21128 // 'following-sibling' ','
  54471. && lk != 21129 // 'for' ','
  54472. && lk != 21133 // 'ft-option' ','
  54473. && lk != 21137 // 'function' ','
  54474. && lk != 21138 // 'ge' ','
  54475. && lk != 21140 // 'group' ','
  54476. && lk != 21142 // 'gt' ','
  54477. && lk != 21143 // 'idiv' ','
  54478. && lk != 21144 // 'if' ','
  54479. && lk != 21145 // 'import' ','
  54480. && lk != 21146 // 'in' ','
  54481. && lk != 21147 // 'index' ','
  54482. && lk != 21151 // 'insert' ','
  54483. && lk != 21152 // 'instance' ','
  54484. && lk != 21153 // 'integrity' ','
  54485. && lk != 21154 // 'intersect' ','
  54486. && lk != 21155 // 'into' ','
  54487. && lk != 21156 // 'is' ','
  54488. && lk != 21157 // 'item' ','
  54489. && lk != 21158 // 'json' ','
  54490. && lk != 21159 // 'json-item' ','
  54491. && lk != 21162 // 'last' ','
  54492. && lk != 21163 // 'lax' ','
  54493. && lk != 21164 // 'le' ','
  54494. && lk != 21166 // 'let' ','
  54495. && lk != 21168 // 'loop' ','
  54496. && lk != 21170 // 'lt' ','
  54497. && lk != 21172 // 'mod' ','
  54498. && lk != 21173 // 'modify' ','
  54499. && lk != 21174 // 'module' ','
  54500. && lk != 21176 // 'namespace' ','
  54501. && lk != 21177 // 'namespace-node' ','
  54502. && lk != 21178 // 'ne' ','
  54503. && lk != 21183 // 'node' ','
  54504. && lk != 21184 // 'nodes' ','
  54505. && lk != 21186 // 'object' ','
  54506. && lk != 21190 // 'only' ','
  54507. && lk != 21191 // 'option' ','
  54508. && lk != 21192 // 'or' ','
  54509. && lk != 21193 // 'order' ','
  54510. && lk != 21194 // 'ordered' ','
  54511. && lk != 21195 // 'ordering' ','
  54512. && lk != 21198 // 'parent' ','
  54513. && lk != 21204 // 'preceding' ','
  54514. && lk != 21205 // 'preceding-sibling' ','
  54515. && lk != 21208 // 'processing-instruction' ','
  54516. && lk != 21210 // 'rename' ','
  54517. && lk != 21211 // 'replace' ','
  54518. && lk != 21212 // 'return' ','
  54519. && lk != 21213 // 'returning' ','
  54520. && lk != 21214 // 'revalidation' ','
  54521. && lk != 21216 // 'satisfies' ','
  54522. && lk != 21217 // 'schema' ','
  54523. && lk != 21218 // 'schema-attribute' ','
  54524. && lk != 21219 // 'schema-element' ','
  54525. && lk != 21220 // 'score' ','
  54526. && lk != 21221 // 'self' ','
  54527. && lk != 21226 // 'sliding' ','
  54528. && lk != 21227 // 'some' ','
  54529. && lk != 21228 // 'stable' ','
  54530. && lk != 21229 // 'start' ','
  54531. && lk != 21232 // 'strict' ','
  54532. && lk != 21234 // 'structured-item' ','
  54533. && lk != 21235 // 'switch' ','
  54534. && lk != 21236 // 'text' ','
  54535. && lk != 21240 // 'to' ','
  54536. && lk != 21241 // 'treat' ','
  54537. && lk != 21242 // 'try' ','
  54538. && lk != 21243 // 'tumbling' ','
  54539. && lk != 21244 // 'type' ','
  54540. && lk != 21245 // 'typeswitch' ','
  54541. && lk != 21246 // 'union' ','
  54542. && lk != 21248 // 'unordered' ','
  54543. && lk != 21249 // 'updating' ','
  54544. && lk != 21252 // 'validate' ','
  54545. && lk != 21253 // 'value' ','
  54546. && lk != 21254 // 'variable' ','
  54547. && lk != 21255 // 'version' ','
  54548. && lk != 21258 // 'where' ','
  54549. && lk != 21259 // 'while' ','
  54550. && lk != 21262 // 'with' ','
  54551. && lk != 21266 // 'xquery' ','
  54552. && lk != 27141 // Wildcard ';'
  54553. && lk != 27142 // EQName^Token ';'
  54554. && lk != 27144 // IntegerLiteral ';'
  54555. && lk != 27145 // DecimalLiteral ';'
  54556. && lk != 27146 // DoubleLiteral ';'
  54557. && lk != 27147 // StringLiteral ';'
  54558. && lk != 27180 // '.' ';'
  54559. && lk != 27181 // '..' ';'
  54560. && lk != 27182 // '/' ';'
  54561. && lk != 27206 // 'after' ';'
  54562. && lk != 27208 // 'allowing' ';'
  54563. && lk != 27209 // 'ancestor' ';'
  54564. && lk != 27210 // 'ancestor-or-self' ';'
  54565. && lk != 27211 // 'and' ';'
  54566. && lk != 27213 // 'append' ';'
  54567. && lk != 27214 // 'array' ';'
  54568. && lk != 27215 // 'as' ';'
  54569. && lk != 27216 // 'ascending' ';'
  54570. && lk != 27217 // 'at' ';'
  54571. && lk != 27218 // 'attribute' ';'
  54572. && lk != 27219 // 'base-uri' ';'
  54573. && lk != 27220 // 'before' ';'
  54574. && lk != 27221 // 'boundary-space' ';'
  54575. && lk != 27222 // 'break' ';'
  54576. && lk != 27224 // 'case' ';'
  54577. && lk != 27225 // 'cast' ';'
  54578. && lk != 27226 // 'castable' ';'
  54579. && lk != 27227 // 'catch' ';'
  54580. && lk != 27229 // 'child' ';'
  54581. && lk != 27230 // 'collation' ';'
  54582. && lk != 27232 // 'comment' ';'
  54583. && lk != 27233 // 'constraint' ';'
  54584. && lk != 27234 // 'construction' ';'
  54585. && lk != 27237 // 'context' ';'
  54586. && lk != 27238 // 'continue' ';'
  54587. && lk != 27239 // 'copy' ';'
  54588. && lk != 27240 // 'copy-namespaces' ';'
  54589. && lk != 27241 // 'count' ';'
  54590. && lk != 27242 // 'decimal-format' ';'
  54591. && lk != 27244 // 'declare' ';'
  54592. && lk != 27245 // 'default' ';'
  54593. && lk != 27246 // 'delete' ';'
  54594. && lk != 27247 // 'descendant' ';'
  54595. && lk != 27248 // 'descendant-or-self' ';'
  54596. && lk != 27249 // 'descending' ';'
  54597. && lk != 27254 // 'div' ';'
  54598. && lk != 27255 // 'document' ';'
  54599. && lk != 27256 // 'document-node' ';'
  54600. && lk != 27257 // 'element' ';'
  54601. && lk != 27258 // 'else' ';'
  54602. && lk != 27259 // 'empty' ';'
  54603. && lk != 27260 // 'empty-sequence' ';'
  54604. && lk != 27261 // 'encoding' ';'
  54605. && lk != 27262 // 'end' ';'
  54606. && lk != 27264 // 'eq' ';'
  54607. && lk != 27265 // 'every' ';'
  54608. && lk != 27267 // 'except' ';'
  54609. && lk != 27268 // 'exit' ';'
  54610. && lk != 27269 // 'external' ';'
  54611. && lk != 27270 // 'first' ';'
  54612. && lk != 27271 // 'following' ';'
  54613. && lk != 27272 // 'following-sibling' ';'
  54614. && lk != 27273 // 'for' ';'
  54615. && lk != 27277 // 'ft-option' ';'
  54616. && lk != 27281 // 'function' ';'
  54617. && lk != 27282 // 'ge' ';'
  54618. && lk != 27284 // 'group' ';'
  54619. && lk != 27286 // 'gt' ';'
  54620. && lk != 27287 // 'idiv' ';'
  54621. && lk != 27288 // 'if' ';'
  54622. && lk != 27289 // 'import' ';'
  54623. && lk != 27290 // 'in' ';'
  54624. && lk != 27291 // 'index' ';'
  54625. && lk != 27295 // 'insert' ';'
  54626. && lk != 27296 // 'instance' ';'
  54627. && lk != 27297 // 'integrity' ';'
  54628. && lk != 27298 // 'intersect' ';'
  54629. && lk != 27299 // 'into' ';'
  54630. && lk != 27300 // 'is' ';'
  54631. && lk != 27301 // 'item' ';'
  54632. && lk != 27302 // 'json' ';'
  54633. && lk != 27303 // 'json-item' ';'
  54634. && lk != 27306 // 'last' ';'
  54635. && lk != 27307 // 'lax' ';'
  54636. && lk != 27308 // 'le' ';'
  54637. && lk != 27310 // 'let' ';'
  54638. && lk != 27312 // 'loop' ';'
  54639. && lk != 27314 // 'lt' ';'
  54640. && lk != 27316 // 'mod' ';'
  54641. && lk != 27317 // 'modify' ';'
  54642. && lk != 27318 // 'module' ';'
  54643. && lk != 27320 // 'namespace' ';'
  54644. && lk != 27321 // 'namespace-node' ';'
  54645. && lk != 27322 // 'ne' ';'
  54646. && lk != 27327 // 'node' ';'
  54647. && lk != 27328 // 'nodes' ';'
  54648. && lk != 27330 // 'object' ';'
  54649. && lk != 27334 // 'only' ';'
  54650. && lk != 27335 // 'option' ';'
  54651. && lk != 27336 // 'or' ';'
  54652. && lk != 27337 // 'order' ';'
  54653. && lk != 27338 // 'ordered' ';'
  54654. && lk != 27339 // 'ordering' ';'
  54655. && lk != 27342 // 'parent' ';'
  54656. && lk != 27348 // 'preceding' ';'
  54657. && lk != 27349 // 'preceding-sibling' ';'
  54658. && lk != 27352 // 'processing-instruction' ';'
  54659. && lk != 27354 // 'rename' ';'
  54660. && lk != 27355 // 'replace' ';'
  54661. && lk != 27356 // 'return' ';'
  54662. && lk != 27357 // 'returning' ';'
  54663. && lk != 27358 // 'revalidation' ';'
  54664. && lk != 27360 // 'satisfies' ';'
  54665. && lk != 27361 // 'schema' ';'
  54666. && lk != 27362 // 'schema-attribute' ';'
  54667. && lk != 27363 // 'schema-element' ';'
  54668. && lk != 27364 // 'score' ';'
  54669. && lk != 27365 // 'self' ';'
  54670. && lk != 27370 // 'sliding' ';'
  54671. && lk != 27371 // 'some' ';'
  54672. && lk != 27372 // 'stable' ';'
  54673. && lk != 27373 // 'start' ';'
  54674. && lk != 27376 // 'strict' ';'
  54675. && lk != 27378 // 'structured-item' ';'
  54676. && lk != 27379 // 'switch' ';'
  54677. && lk != 27380 // 'text' ';'
  54678. && lk != 27384 // 'to' ';'
  54679. && lk != 27385 // 'treat' ';'
  54680. && lk != 27386 // 'try' ';'
  54681. && lk != 27387 // 'tumbling' ';'
  54682. && lk != 27388 // 'type' ';'
  54683. && lk != 27389 // 'typeswitch' ';'
  54684. && lk != 27390 // 'union' ';'
  54685. && lk != 27392 // 'unordered' ';'
  54686. && lk != 27393 // 'updating' ';'
  54687. && lk != 27396 // 'validate' ';'
  54688. && lk != 27397 // 'value' ';'
  54689. && lk != 27398 // 'variable' ';'
  54690. && lk != 27399 // 'version' ';'
  54691. && lk != 27402 // 'where' ';'
  54692. && lk != 27403 // 'while' ';'
  54693. && lk != 27406 // 'with' ';'
  54694. && lk != 27410 // 'xquery' ';'
  54695. && lk != 90198 // 'break' 'loop'
  54696. && lk != 90214 // 'continue' 'loop'
  54697. && lk != 113284 // 'exit' 'returning'
  54698. && lk != 144389 // Wildcard '}'
  54699. && lk != 144390 // EQName^Token '}'
  54700. && lk != 144392 // IntegerLiteral '}'
  54701. && lk != 144393 // DecimalLiteral '}'
  54702. && lk != 144394 // DoubleLiteral '}'
  54703. && lk != 144395 // StringLiteral '}'
  54704. && lk != 144428 // '.' '}'
  54705. && lk != 144429 // '..' '}'
  54706. && lk != 144430 // '/' '}'
  54707. && lk != 144454 // 'after' '}'
  54708. && lk != 144456 // 'allowing' '}'
  54709. && lk != 144457 // 'ancestor' '}'
  54710. && lk != 144458 // 'ancestor-or-self' '}'
  54711. && lk != 144459 // 'and' '}'
  54712. && lk != 144461 // 'append' '}'
  54713. && lk != 144462 // 'array' '}'
  54714. && lk != 144463 // 'as' '}'
  54715. && lk != 144464 // 'ascending' '}'
  54716. && lk != 144465 // 'at' '}'
  54717. && lk != 144466 // 'attribute' '}'
  54718. && lk != 144467 // 'base-uri' '}'
  54719. && lk != 144468 // 'before' '}'
  54720. && lk != 144469 // 'boundary-space' '}'
  54721. && lk != 144470 // 'break' '}'
  54722. && lk != 144472 // 'case' '}'
  54723. && lk != 144473 // 'cast' '}'
  54724. && lk != 144474 // 'castable' '}'
  54725. && lk != 144475 // 'catch' '}'
  54726. && lk != 144477 // 'child' '}'
  54727. && lk != 144478 // 'collation' '}'
  54728. && lk != 144480 // 'comment' '}'
  54729. && lk != 144481 // 'constraint' '}'
  54730. && lk != 144482 // 'construction' '}'
  54731. && lk != 144485 // 'context' '}'
  54732. && lk != 144486 // 'continue' '}'
  54733. && lk != 144487 // 'copy' '}'
  54734. && lk != 144488 // 'copy-namespaces' '}'
  54735. && lk != 144489 // 'count' '}'
  54736. && lk != 144490 // 'decimal-format' '}'
  54737. && lk != 144492 // 'declare' '}'
  54738. && lk != 144493 // 'default' '}'
  54739. && lk != 144494 // 'delete' '}'
  54740. && lk != 144495 // 'descendant' '}'
  54741. && lk != 144496 // 'descendant-or-self' '}'
  54742. && lk != 144497 // 'descending' '}'
  54743. && lk != 144502 // 'div' '}'
  54744. && lk != 144503 // 'document' '}'
  54745. && lk != 144504 // 'document-node' '}'
  54746. && lk != 144505 // 'element' '}'
  54747. && lk != 144506 // 'else' '}'
  54748. && lk != 144507 // 'empty' '}'
  54749. && lk != 144508 // 'empty-sequence' '}'
  54750. && lk != 144509 // 'encoding' '}'
  54751. && lk != 144510 // 'end' '}'
  54752. && lk != 144512 // 'eq' '}'
  54753. && lk != 144513 // 'every' '}'
  54754. && lk != 144515 // 'except' '}'
  54755. && lk != 144516 // 'exit' '}'
  54756. && lk != 144517 // 'external' '}'
  54757. && lk != 144518 // 'first' '}'
  54758. && lk != 144519 // 'following' '}'
  54759. && lk != 144520 // 'following-sibling' '}'
  54760. && lk != 144521 // 'for' '}'
  54761. && lk != 144525 // 'ft-option' '}'
  54762. && lk != 144529 // 'function' '}'
  54763. && lk != 144530 // 'ge' '}'
  54764. && lk != 144532 // 'group' '}'
  54765. && lk != 144534 // 'gt' '}'
  54766. && lk != 144535 // 'idiv' '}'
  54767. && lk != 144536 // 'if' '}'
  54768. && lk != 144537 // 'import' '}'
  54769. && lk != 144538 // 'in' '}'
  54770. && lk != 144539 // 'index' '}'
  54771. && lk != 144543 // 'insert' '}'
  54772. && lk != 144544 // 'instance' '}'
  54773. && lk != 144545 // 'integrity' '}'
  54774. && lk != 144546 // 'intersect' '}'
  54775. && lk != 144547 // 'into' '}'
  54776. && lk != 144548 // 'is' '}'
  54777. && lk != 144549 // 'item' '}'
  54778. && lk != 144550 // 'json' '}'
  54779. && lk != 144551 // 'json-item' '}'
  54780. && lk != 144554 // 'last' '}'
  54781. && lk != 144555 // 'lax' '}'
  54782. && lk != 144556 // 'le' '}'
  54783. && lk != 144558 // 'let' '}'
  54784. && lk != 144560 // 'loop' '}'
  54785. && lk != 144562 // 'lt' '}'
  54786. && lk != 144564 // 'mod' '}'
  54787. && lk != 144565 // 'modify' '}'
  54788. && lk != 144566 // 'module' '}'
  54789. && lk != 144568 // 'namespace' '}'
  54790. && lk != 144569 // 'namespace-node' '}'
  54791. && lk != 144570 // 'ne' '}'
  54792. && lk != 144575 // 'node' '}'
  54793. && lk != 144576 // 'nodes' '}'
  54794. && lk != 144578 // 'object' '}'
  54795. && lk != 144582 // 'only' '}'
  54796. && lk != 144583 // 'option' '}'
  54797. && lk != 144584 // 'or' '}'
  54798. && lk != 144585 // 'order' '}'
  54799. && lk != 144586 // 'ordered' '}'
  54800. && lk != 144587 // 'ordering' '}'
  54801. && lk != 144590 // 'parent' '}'
  54802. && lk != 144596 // 'preceding' '}'
  54803. && lk != 144597 // 'preceding-sibling' '}'
  54804. && lk != 144600 // 'processing-instruction' '}'
  54805. && lk != 144602 // 'rename' '}'
  54806. && lk != 144603 // 'replace' '}'
  54807. && lk != 144604 // 'return' '}'
  54808. && lk != 144605 // 'returning' '}'
  54809. && lk != 144606 // 'revalidation' '}'
  54810. && lk != 144608 // 'satisfies' '}'
  54811. && lk != 144609 // 'schema' '}'
  54812. && lk != 144610 // 'schema-attribute' '}'
  54813. && lk != 144611 // 'schema-element' '}'
  54814. && lk != 144612 // 'score' '}'
  54815. && lk != 144613 // 'self' '}'
  54816. && lk != 144618 // 'sliding' '}'
  54817. && lk != 144619 // 'some' '}'
  54818. && lk != 144620 // 'stable' '}'
  54819. && lk != 144621 // 'start' '}'
  54820. && lk != 144624 // 'strict' '}'
  54821. && lk != 144626 // 'structured-item' '}'
  54822. && lk != 144627 // 'switch' '}'
  54823. && lk != 144628 // 'text' '}'
  54824. && lk != 144632 // 'to' '}'
  54825. && lk != 144633 // 'treat' '}'
  54826. && lk != 144634 // 'try' '}'
  54827. && lk != 144635 // 'tumbling' '}'
  54828. && lk != 144636 // 'type' '}'
  54829. && lk != 144637 // 'typeswitch' '}'
  54830. && lk != 144638 // 'union' '}'
  54831. && lk != 144640 // 'unordered' '}'
  54832. && lk != 144641 // 'updating' '}'
  54833. && lk != 144644 // 'validate' '}'
  54834. && lk != 144645 // 'value' '}'
  54835. && lk != 144646 // 'variable' '}'
  54836. && lk != 144647 // 'version' '}'
  54837. && lk != 144650 // 'where' '}'
  54838. && lk != 144651 // 'while' '}'
  54839. && lk != 144654 // 'with' '}'
  54840. && lk != 144658) // 'xquery' '}'
  54841. {
  54842. lk = memoized(6, e0);
  54843. if (lk == 0)
  54844. {
  54845. var b0A = b0; var e0A = e0; var l1A = l1;
  54846. var b1A = b1; var e1A = e1; var l2A = l2;
  54847. var b2A = b2; var e2A = e2;
  54848. try
  54849. {
  54850. try_Statement();
  54851. memoize(6, e0A, -1);
  54852. continue;
  54853. }
  54854. catch (p1A)
  54855. {
  54856. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  54857. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  54858. b2 = b2A; e2 = e2A; end = e2A; }}
  54859. memoize(6, e0A, -2);
  54860. break;
  54861. }
  54862. }
  54863. }
  54864. if (lk != -1
  54865. && lk != 53 // ';'
  54866. && lk != 16134 // 'variable' '$'
  54867. && lk != 27141 // Wildcard ';'
  54868. && lk != 27142 // EQName^Token ';'
  54869. && lk != 27144 // IntegerLiteral ';'
  54870. && lk != 27145 // DecimalLiteral ';'
  54871. && lk != 27146 // DoubleLiteral ';'
  54872. && lk != 27147 // StringLiteral ';'
  54873. && lk != 27180 // '.' ';'
  54874. && lk != 27181 // '..' ';'
  54875. && lk != 27182 // '/' ';'
  54876. && lk != 27206 // 'after' ';'
  54877. && lk != 27208 // 'allowing' ';'
  54878. && lk != 27209 // 'ancestor' ';'
  54879. && lk != 27210 // 'ancestor-or-self' ';'
  54880. && lk != 27211 // 'and' ';'
  54881. && lk != 27213 // 'append' ';'
  54882. && lk != 27214 // 'array' ';'
  54883. && lk != 27215 // 'as' ';'
  54884. && lk != 27216 // 'ascending' ';'
  54885. && lk != 27217 // 'at' ';'
  54886. && lk != 27218 // 'attribute' ';'
  54887. && lk != 27219 // 'base-uri' ';'
  54888. && lk != 27220 // 'before' ';'
  54889. && lk != 27221 // 'boundary-space' ';'
  54890. && lk != 27222 // 'break' ';'
  54891. && lk != 27224 // 'case' ';'
  54892. && lk != 27225 // 'cast' ';'
  54893. && lk != 27226 // 'castable' ';'
  54894. && lk != 27227 // 'catch' ';'
  54895. && lk != 27229 // 'child' ';'
  54896. && lk != 27230 // 'collation' ';'
  54897. && lk != 27232 // 'comment' ';'
  54898. && lk != 27233 // 'constraint' ';'
  54899. && lk != 27234 // 'construction' ';'
  54900. && lk != 27237 // 'context' ';'
  54901. && lk != 27238 // 'continue' ';'
  54902. && lk != 27239 // 'copy' ';'
  54903. && lk != 27240 // 'copy-namespaces' ';'
  54904. && lk != 27241 // 'count' ';'
  54905. && lk != 27242 // 'decimal-format' ';'
  54906. && lk != 27244 // 'declare' ';'
  54907. && lk != 27245 // 'default' ';'
  54908. && lk != 27246 // 'delete' ';'
  54909. && lk != 27247 // 'descendant' ';'
  54910. && lk != 27248 // 'descendant-or-self' ';'
  54911. && lk != 27249 // 'descending' ';'
  54912. && lk != 27254 // 'div' ';'
  54913. && lk != 27255 // 'document' ';'
  54914. && lk != 27256 // 'document-node' ';'
  54915. && lk != 27257 // 'element' ';'
  54916. && lk != 27258 // 'else' ';'
  54917. && lk != 27259 // 'empty' ';'
  54918. && lk != 27260 // 'empty-sequence' ';'
  54919. && lk != 27261 // 'encoding' ';'
  54920. && lk != 27262 // 'end' ';'
  54921. && lk != 27264 // 'eq' ';'
  54922. && lk != 27265 // 'every' ';'
  54923. && lk != 27267 // 'except' ';'
  54924. && lk != 27268 // 'exit' ';'
  54925. && lk != 27269 // 'external' ';'
  54926. && lk != 27270 // 'first' ';'
  54927. && lk != 27271 // 'following' ';'
  54928. && lk != 27272 // 'following-sibling' ';'
  54929. && lk != 27273 // 'for' ';'
  54930. && lk != 27277 // 'ft-option' ';'
  54931. && lk != 27281 // 'function' ';'
  54932. && lk != 27282 // 'ge' ';'
  54933. && lk != 27284 // 'group' ';'
  54934. && lk != 27286 // 'gt' ';'
  54935. && lk != 27287 // 'idiv' ';'
  54936. && lk != 27288 // 'if' ';'
  54937. && lk != 27289 // 'import' ';'
  54938. && lk != 27290 // 'in' ';'
  54939. && lk != 27291 // 'index' ';'
  54940. && lk != 27295 // 'insert' ';'
  54941. && lk != 27296 // 'instance' ';'
  54942. && lk != 27297 // 'integrity' ';'
  54943. && lk != 27298 // 'intersect' ';'
  54944. && lk != 27299 // 'into' ';'
  54945. && lk != 27300 // 'is' ';'
  54946. && lk != 27301 // 'item' ';'
  54947. && lk != 27302 // 'json' ';'
  54948. && lk != 27303 // 'json-item' ';'
  54949. && lk != 27306 // 'last' ';'
  54950. && lk != 27307 // 'lax' ';'
  54951. && lk != 27308 // 'le' ';'
  54952. && lk != 27310 // 'let' ';'
  54953. && lk != 27312 // 'loop' ';'
  54954. && lk != 27314 // 'lt' ';'
  54955. && lk != 27316 // 'mod' ';'
  54956. && lk != 27317 // 'modify' ';'
  54957. && lk != 27318 // 'module' ';'
  54958. && lk != 27320 // 'namespace' ';'
  54959. && lk != 27321 // 'namespace-node' ';'
  54960. && lk != 27322 // 'ne' ';'
  54961. && lk != 27327 // 'node' ';'
  54962. && lk != 27328 // 'nodes' ';'
  54963. && lk != 27330 // 'object' ';'
  54964. && lk != 27334 // 'only' ';'
  54965. && lk != 27335 // 'option' ';'
  54966. && lk != 27336 // 'or' ';'
  54967. && lk != 27337 // 'order' ';'
  54968. && lk != 27338 // 'ordered' ';'
  54969. && lk != 27339 // 'ordering' ';'
  54970. && lk != 27342 // 'parent' ';'
  54971. && lk != 27348 // 'preceding' ';'
  54972. && lk != 27349 // 'preceding-sibling' ';'
  54973. && lk != 27352 // 'processing-instruction' ';'
  54974. && lk != 27354 // 'rename' ';'
  54975. && lk != 27355 // 'replace' ';'
  54976. && lk != 27356 // 'return' ';'
  54977. && lk != 27357 // 'returning' ';'
  54978. && lk != 27358 // 'revalidation' ';'
  54979. && lk != 27360 // 'satisfies' ';'
  54980. && lk != 27361 // 'schema' ';'
  54981. && lk != 27362 // 'schema-attribute' ';'
  54982. && lk != 27363 // 'schema-element' ';'
  54983. && lk != 27364 // 'score' ';'
  54984. && lk != 27365 // 'self' ';'
  54985. && lk != 27370 // 'sliding' ';'
  54986. && lk != 27371 // 'some' ';'
  54987. && lk != 27372 // 'stable' ';'
  54988. && lk != 27373 // 'start' ';'
  54989. && lk != 27376 // 'strict' ';'
  54990. && lk != 27378 // 'structured-item' ';'
  54991. && lk != 27379 // 'switch' ';'
  54992. && lk != 27380 // 'text' ';'
  54993. && lk != 27384 // 'to' ';'
  54994. && lk != 27385 // 'treat' ';'
  54995. && lk != 27386 // 'try' ';'
  54996. && lk != 27387 // 'tumbling' ';'
  54997. && lk != 27388 // 'type' ';'
  54998. && lk != 27389 // 'typeswitch' ';'
  54999. && lk != 27390 // 'union' ';'
  55000. && lk != 27392 // 'unordered' ';'
  55001. && lk != 27393 // 'updating' ';'
  55002. && lk != 27396 // 'validate' ';'
  55003. && lk != 27397 // 'value' ';'
  55004. && lk != 27398 // 'variable' ';'
  55005. && lk != 27399 // 'version' ';'
  55006. && lk != 27402 // 'where' ';'
  55007. && lk != 27403 // 'while' ';'
  55008. && lk != 27406 // 'with' ';'
  55009. && lk != 27410 // 'xquery' ';'
  55010. && lk != 90198 // 'break' 'loop'
  55011. && lk != 90214 // 'continue' 'loop'
  55012. && lk != 113284) // 'exit' 'returning'
  55013. {
  55014. break;
  55015. }
  55016. try_Statement();
  55017. }
  55018. }
  55019. function parse_StatementsAndExpr()
  55020. {
  55021. eventHandler.startNonterminal("StatementsAndExpr", e0);
  55022. parse_Statements();
  55023. whitespace();
  55024. parse_Expr();
  55025. eventHandler.endNonterminal("StatementsAndExpr", e0);
  55026. }
  55027. function try_StatementsAndExpr()
  55028. {
  55029. try_Statements();
  55030. try_Expr();
  55031. }
  55032. function parse_StatementsAndOptionalExpr()
  55033. {
  55034. eventHandler.startNonterminal("StatementsAndOptionalExpr", e0);
  55035. parse_Statements();
  55036. if (l1 != 25 // EOF
  55037. && l1 != 282) // '}'
  55038. {
  55039. whitespace();
  55040. parse_Expr();
  55041. }
  55042. eventHandler.endNonterminal("StatementsAndOptionalExpr", e0);
  55043. }
  55044. function try_StatementsAndOptionalExpr()
  55045. {
  55046. try_Statements();
  55047. if (l1 != 25 // EOF
  55048. && l1 != 282) // '}'
  55049. {
  55050. try_Expr();
  55051. }
  55052. }
  55053. function parse_Statement()
  55054. {
  55055. eventHandler.startNonterminal("Statement", e0);
  55056. switch (l1)
  55057. {
  55058. case 132: // 'exit'
  55059. lookahead2W(188); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55060. break;
  55061. case 137: // 'for'
  55062. lookahead2W(195); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55063. break;
  55064. case 174: // 'let'
  55065. lookahead2W(192); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55066. break;
  55067. case 250: // 'try'
  55068. lookahead2W(189); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55069. break;
  55070. case 262: // 'variable'
  55071. lookahead2W(186); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55072. break;
  55073. case 276: // '{'
  55074. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  55075. break;
  55076. case 31: // '$'
  55077. case 32: // '%'
  55078. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  55079. break;
  55080. case 86: // 'break'
  55081. case 102: // 'continue'
  55082. lookahead2W(187); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55083. break;
  55084. case 152: // 'if'
  55085. case 243: // 'switch'
  55086. case 253: // 'typeswitch'
  55087. case 267: // 'while'
  55088. lookahead2W(184); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55089. break;
  55090. default:
  55091. lk = l1;
  55092. }
  55093. if (lk == 2836 // '{' Wildcard
  55094. || lk == 3103 // '$' EQName^Token
  55095. || lk == 3104 // '%' EQName^Token
  55096. || lk == 3348 // '{' EQName^Token
  55097. || lk == 4372 // '{' IntegerLiteral
  55098. || lk == 4884 // '{' DecimalLiteral
  55099. || lk == 5396 // '{' DoubleLiteral
  55100. || lk == 5908 // '{' StringLiteral
  55101. || lk == 16148 // '{' '$'
  55102. || lk == 16660 // '{' '%'
  55103. || lk == 17675 // 'while' '('
  55104. || lk == 17684 // '{' '('
  55105. || lk == 18196 // '{' '(#'
  55106. || lk == 20756 // '{' '+'
  55107. || lk == 21780 // '{' '-'
  55108. || lk == 22804 // '{' '.'
  55109. || lk == 23316 // '{' '..'
  55110. || lk == 23828 // '{' '/'
  55111. || lk == 24340 // '{' '//'
  55112. || lk == 27412 // '{' ';'
  55113. || lk == 27924 // '{' '<'
  55114. || lk == 28436 // '{' '<!--'
  55115. || lk == 30484 // '{' '<?'
  55116. || lk == 34068 // '{' '@'
  55117. || lk == 35092 // '{' '['
  55118. || lk == 35871 // '$' 'after'
  55119. || lk == 35872 // '%' 'after'
  55120. || lk == 36116 // '{' 'after'
  55121. || lk == 36895 // '$' 'allowing'
  55122. || lk == 36896 // '%' 'allowing'
  55123. || lk == 37140 // '{' 'allowing'
  55124. || lk == 37407 // '$' 'ancestor'
  55125. || lk == 37408 // '%' 'ancestor'
  55126. || lk == 37652 // '{' 'ancestor'
  55127. || lk == 37919 // '$' 'ancestor-or-self'
  55128. || lk == 37920 // '%' 'ancestor-or-self'
  55129. || lk == 38164 // '{' 'ancestor-or-self'
  55130. || lk == 38431 // '$' 'and'
  55131. || lk == 38432 // '%' 'and'
  55132. || lk == 38676 // '{' 'and'
  55133. || lk == 39455 // '$' 'append'
  55134. || lk == 39456 // '%' 'append'
  55135. || lk == 39700 // '{' 'append'
  55136. || lk == 39967 // '$' 'array'
  55137. || lk == 39968 // '%' 'array'
  55138. || lk == 40212 // '{' 'array'
  55139. || lk == 40479 // '$' 'as'
  55140. || lk == 40480 // '%' 'as'
  55141. || lk == 40724 // '{' 'as'
  55142. || lk == 40991 // '$' 'ascending'
  55143. || lk == 40992 // '%' 'ascending'
  55144. || lk == 41236 // '{' 'ascending'
  55145. || lk == 41503 // '$' 'at'
  55146. || lk == 41504 // '%' 'at'
  55147. || lk == 41748 // '{' 'at'
  55148. || lk == 42015 // '$' 'attribute'
  55149. || lk == 42016 // '%' 'attribute'
  55150. || lk == 42260 // '{' 'attribute'
  55151. || lk == 42527 // '$' 'base-uri'
  55152. || lk == 42528 // '%' 'base-uri'
  55153. || lk == 42772 // '{' 'base-uri'
  55154. || lk == 43039 // '$' 'before'
  55155. || lk == 43040 // '%' 'before'
  55156. || lk == 43284 // '{' 'before'
  55157. || lk == 43551 // '$' 'boundary-space'
  55158. || lk == 43552 // '%' 'boundary-space'
  55159. || lk == 43796 // '{' 'boundary-space'
  55160. || lk == 44063 // '$' 'break'
  55161. || lk == 44064 // '%' 'break'
  55162. || lk == 44308 // '{' 'break'
  55163. || lk == 45087 // '$' 'case'
  55164. || lk == 45088 // '%' 'case'
  55165. || lk == 45332 // '{' 'case'
  55166. || lk == 45599 // '$' 'cast'
  55167. || lk == 45600 // '%' 'cast'
  55168. || lk == 45844 // '{' 'cast'
  55169. || lk == 46111 // '$' 'castable'
  55170. || lk == 46112 // '%' 'castable'
  55171. || lk == 46356 // '{' 'castable'
  55172. || lk == 46623 // '$' 'catch'
  55173. || lk == 46624 // '%' 'catch'
  55174. || lk == 46868 // '{' 'catch'
  55175. || lk == 47647 // '$' 'child'
  55176. || lk == 47648 // '%' 'child'
  55177. || lk == 47892 // '{' 'child'
  55178. || lk == 48159 // '$' 'collation'
  55179. || lk == 48160 // '%' 'collation'
  55180. || lk == 48404 // '{' 'collation'
  55181. || lk == 49183 // '$' 'comment'
  55182. || lk == 49184 // '%' 'comment'
  55183. || lk == 49428 // '{' 'comment'
  55184. || lk == 49695 // '$' 'constraint'
  55185. || lk == 49696 // '%' 'constraint'
  55186. || lk == 49940 // '{' 'constraint'
  55187. || lk == 50207 // '$' 'construction'
  55188. || lk == 50208 // '%' 'construction'
  55189. || lk == 50452 // '{' 'construction'
  55190. || lk == 51743 // '$' 'context'
  55191. || lk == 51744 // '%' 'context'
  55192. || lk == 51988 // '{' 'context'
  55193. || lk == 52255 // '$' 'continue'
  55194. || lk == 52256 // '%' 'continue'
  55195. || lk == 52500 // '{' 'continue'
  55196. || lk == 52767 // '$' 'copy'
  55197. || lk == 52768 // '%' 'copy'
  55198. || lk == 53012 // '{' 'copy'
  55199. || lk == 53279 // '$' 'copy-namespaces'
  55200. || lk == 53280 // '%' 'copy-namespaces'
  55201. || lk == 53524 // '{' 'copy-namespaces'
  55202. || lk == 53791 // '$' 'count'
  55203. || lk == 53792 // '%' 'count'
  55204. || lk == 54036 // '{' 'count'
  55205. || lk == 54303 // '$' 'decimal-format'
  55206. || lk == 54304 // '%' 'decimal-format'
  55207. || lk == 54548 // '{' 'decimal-format'
  55208. || lk == 55327 // '$' 'declare'
  55209. || lk == 55328 // '%' 'declare'
  55210. || lk == 55572 // '{' 'declare'
  55211. || lk == 55839 // '$' 'default'
  55212. || lk == 55840 // '%' 'default'
  55213. || lk == 56084 // '{' 'default'
  55214. || lk == 56351 // '$' 'delete'
  55215. || lk == 56352 // '%' 'delete'
  55216. || lk == 56596 // '{' 'delete'
  55217. || lk == 56863 // '$' 'descendant'
  55218. || lk == 56864 // '%' 'descendant'
  55219. || lk == 57108 // '{' 'descendant'
  55220. || lk == 57375 // '$' 'descendant-or-self'
  55221. || lk == 57376 // '%' 'descendant-or-self'
  55222. || lk == 57620 // '{' 'descendant-or-self'
  55223. || lk == 57887 // '$' 'descending'
  55224. || lk == 57888 // '%' 'descending'
  55225. || lk == 58132 // '{' 'descending'
  55226. || lk == 60447 // '$' 'div'
  55227. || lk == 60448 // '%' 'div'
  55228. || lk == 60692 // '{' 'div'
  55229. || lk == 60959 // '$' 'document'
  55230. || lk == 60960 // '%' 'document'
  55231. || lk == 61204 // '{' 'document'
  55232. || lk == 61471 // '$' 'document-node'
  55233. || lk == 61472 // '%' 'document-node'
  55234. || lk == 61716 // '{' 'document-node'
  55235. || lk == 61983 // '$' 'element'
  55236. || lk == 61984 // '%' 'element'
  55237. || lk == 62228 // '{' 'element'
  55238. || lk == 62495 // '$' 'else'
  55239. || lk == 62496 // '%' 'else'
  55240. || lk == 62740 // '{' 'else'
  55241. || lk == 63007 // '$' 'empty'
  55242. || lk == 63008 // '%' 'empty'
  55243. || lk == 63252 // '{' 'empty'
  55244. || lk == 63519 // '$' 'empty-sequence'
  55245. || lk == 63520 // '%' 'empty-sequence'
  55246. || lk == 63764 // '{' 'empty-sequence'
  55247. || lk == 64031 // '$' 'encoding'
  55248. || lk == 64032 // '%' 'encoding'
  55249. || lk == 64276 // '{' 'encoding'
  55250. || lk == 64543 // '$' 'end'
  55251. || lk == 64544 // '%' 'end'
  55252. || lk == 64788 // '{' 'end'
  55253. || lk == 65567 // '$' 'eq'
  55254. || lk == 65568 // '%' 'eq'
  55255. || lk == 65812 // '{' 'eq'
  55256. || lk == 66079 // '$' 'every'
  55257. || lk == 66080 // '%' 'every'
  55258. || lk == 66324 // '{' 'every'
  55259. || lk == 67103 // '$' 'except'
  55260. || lk == 67104 // '%' 'except'
  55261. || lk == 67348 // '{' 'except'
  55262. || lk == 67615 // '$' 'exit'
  55263. || lk == 67616 // '%' 'exit'
  55264. || lk == 67860 // '{' 'exit'
  55265. || lk == 68127 // '$' 'external'
  55266. || lk == 68128 // '%' 'external'
  55267. || lk == 68372 // '{' 'external'
  55268. || lk == 68639 // '$' 'first'
  55269. || lk == 68640 // '%' 'first'
  55270. || lk == 68884 // '{' 'first'
  55271. || lk == 69151 // '$' 'following'
  55272. || lk == 69152 // '%' 'following'
  55273. || lk == 69396 // '{' 'following'
  55274. || lk == 69663 // '$' 'following-sibling'
  55275. || lk == 69664 // '%' 'following-sibling'
  55276. || lk == 69908 // '{' 'following-sibling'
  55277. || lk == 70175 // '$' 'for'
  55278. || lk == 70176 // '%' 'for'
  55279. || lk == 70420 // '{' 'for'
  55280. || lk == 72223 // '$' 'ft-option'
  55281. || lk == 72224 // '%' 'ft-option'
  55282. || lk == 72468 // '{' 'ft-option'
  55283. || lk == 74271 // '$' 'function'
  55284. || lk == 74272 // '%' 'function'
  55285. || lk == 74516 // '{' 'function'
  55286. || lk == 74783 // '$' 'ge'
  55287. || lk == 74784 // '%' 'ge'
  55288. || lk == 75028 // '{' 'ge'
  55289. || lk == 75807 // '$' 'group'
  55290. || lk == 75808 // '%' 'group'
  55291. || lk == 76052 // '{' 'group'
  55292. || lk == 76831 // '$' 'gt'
  55293. || lk == 76832 // '%' 'gt'
  55294. || lk == 77076 // '{' 'gt'
  55295. || lk == 77343 // '$' 'idiv'
  55296. || lk == 77344 // '%' 'idiv'
  55297. || lk == 77588 // '{' 'idiv'
  55298. || lk == 77855 // '$' 'if'
  55299. || lk == 77856 // '%' 'if'
  55300. || lk == 78100 // '{' 'if'
  55301. || lk == 78367 // '$' 'import'
  55302. || lk == 78368 // '%' 'import'
  55303. || lk == 78612 // '{' 'import'
  55304. || lk == 78879 // '$' 'in'
  55305. || lk == 78880 // '%' 'in'
  55306. || lk == 79124 // '{' 'in'
  55307. || lk == 79391 // '$' 'index'
  55308. || lk == 79392 // '%' 'index'
  55309. || lk == 79636 // '{' 'index'
  55310. || lk == 81439 // '$' 'insert'
  55311. || lk == 81440 // '%' 'insert'
  55312. || lk == 81684 // '{' 'insert'
  55313. || lk == 81951 // '$' 'instance'
  55314. || lk == 81952 // '%' 'instance'
  55315. || lk == 82196 // '{' 'instance'
  55316. || lk == 82463 // '$' 'integrity'
  55317. || lk == 82464 // '%' 'integrity'
  55318. || lk == 82708 // '{' 'integrity'
  55319. || lk == 82975 // '$' 'intersect'
  55320. || lk == 82976 // '%' 'intersect'
  55321. || lk == 83220 // '{' 'intersect'
  55322. || lk == 83487 // '$' 'into'
  55323. || lk == 83488 // '%' 'into'
  55324. || lk == 83732 // '{' 'into'
  55325. || lk == 83999 // '$' 'is'
  55326. || lk == 84000 // '%' 'is'
  55327. || lk == 84244 // '{' 'is'
  55328. || lk == 84511 // '$' 'item'
  55329. || lk == 84512 // '%' 'item'
  55330. || lk == 84756 // '{' 'item'
  55331. || lk == 85023 // '$' 'json'
  55332. || lk == 85024 // '%' 'json'
  55333. || lk == 85268 // '{' 'json'
  55334. || lk == 85535 // '$' 'json-item'
  55335. || lk == 85536 // '%' 'json-item'
  55336. || lk == 85780 // '{' 'json-item'
  55337. || lk == 87071 // '$' 'last'
  55338. || lk == 87072 // '%' 'last'
  55339. || lk == 87316 // '{' 'last'
  55340. || lk == 87583 // '$' 'lax'
  55341. || lk == 87584 // '%' 'lax'
  55342. || lk == 87828 // '{' 'lax'
  55343. || lk == 88095 // '$' 'le'
  55344. || lk == 88096 // '%' 'le'
  55345. || lk == 88340 // '{' 'le'
  55346. || lk == 89119 // '$' 'let'
  55347. || lk == 89120 // '%' 'let'
  55348. || lk == 89364 // '{' 'let'
  55349. || lk == 90143 // '$' 'loop'
  55350. || lk == 90144 // '%' 'loop'
  55351. || lk == 90388 // '{' 'loop'
  55352. || lk == 91167 // '$' 'lt'
  55353. || lk == 91168 // '%' 'lt'
  55354. || lk == 91412 // '{' 'lt'
  55355. || lk == 92191 // '$' 'mod'
  55356. || lk == 92192 // '%' 'mod'
  55357. || lk == 92436 // '{' 'mod'
  55358. || lk == 92703 // '$' 'modify'
  55359. || lk == 92704 // '%' 'modify'
  55360. || lk == 92948 // '{' 'modify'
  55361. || lk == 93215 // '$' 'module'
  55362. || lk == 93216 // '%' 'module'
  55363. || lk == 93460 // '{' 'module'
  55364. || lk == 94239 // '$' 'namespace'
  55365. || lk == 94240 // '%' 'namespace'
  55366. || lk == 94484 // '{' 'namespace'
  55367. || lk == 94751 // '$' 'namespace-node'
  55368. || lk == 94752 // '%' 'namespace-node'
  55369. || lk == 94996 // '{' 'namespace-node'
  55370. || lk == 95263 // '$' 'ne'
  55371. || lk == 95264 // '%' 'ne'
  55372. || lk == 95508 // '{' 'ne'
  55373. || lk == 97823 // '$' 'node'
  55374. || lk == 97824 // '%' 'node'
  55375. || lk == 98068 // '{' 'node'
  55376. || lk == 98335 // '$' 'nodes'
  55377. || lk == 98336 // '%' 'nodes'
  55378. || lk == 98580 // '{' 'nodes'
  55379. || lk == 99359 // '$' 'object'
  55380. || lk == 99360 // '%' 'object'
  55381. || lk == 99604 // '{' 'object'
  55382. || lk == 101407 // '$' 'only'
  55383. || lk == 101408 // '%' 'only'
  55384. || lk == 101652 // '{' 'only'
  55385. || lk == 101919 // '$' 'option'
  55386. || lk == 101920 // '%' 'option'
  55387. || lk == 102164 // '{' 'option'
  55388. || lk == 102431 // '$' 'or'
  55389. || lk == 102432 // '%' 'or'
  55390. || lk == 102676 // '{' 'or'
  55391. || lk == 102943 // '$' 'order'
  55392. || lk == 102944 // '%' 'order'
  55393. || lk == 103188 // '{' 'order'
  55394. || lk == 103455 // '$' 'ordered'
  55395. || lk == 103456 // '%' 'ordered'
  55396. || lk == 103700 // '{' 'ordered'
  55397. || lk == 103967 // '$' 'ordering'
  55398. || lk == 103968 // '%' 'ordering'
  55399. || lk == 104212 // '{' 'ordering'
  55400. || lk == 105503 // '$' 'parent'
  55401. || lk == 105504 // '%' 'parent'
  55402. || lk == 105748 // '{' 'parent'
  55403. || lk == 108575 // '$' 'preceding'
  55404. || lk == 108576 // '%' 'preceding'
  55405. || lk == 108820 // '{' 'preceding'
  55406. || lk == 109087 // '$' 'preceding-sibling'
  55407. || lk == 109088 // '%' 'preceding-sibling'
  55408. || lk == 109332 // '{' 'preceding-sibling'
  55409. || lk == 110623 // '$' 'processing-instruction'
  55410. || lk == 110624 // '%' 'processing-instruction'
  55411. || lk == 110868 // '{' 'processing-instruction'
  55412. || lk == 111647 // '$' 'rename'
  55413. || lk == 111648 // '%' 'rename'
  55414. || lk == 111892 // '{' 'rename'
  55415. || lk == 112159 // '$' 'replace'
  55416. || lk == 112160 // '%' 'replace'
  55417. || lk == 112404 // '{' 'replace'
  55418. || lk == 112671 // '$' 'return'
  55419. || lk == 112672 // '%' 'return'
  55420. || lk == 112916 // '{' 'return'
  55421. || lk == 113183 // '$' 'returning'
  55422. || lk == 113184 // '%' 'returning'
  55423. || lk == 113428 // '{' 'returning'
  55424. || lk == 113695 // '$' 'revalidation'
  55425. || lk == 113696 // '%' 'revalidation'
  55426. || lk == 113940 // '{' 'revalidation'
  55427. || lk == 114719 // '$' 'satisfies'
  55428. || lk == 114720 // '%' 'satisfies'
  55429. || lk == 114964 // '{' 'satisfies'
  55430. || lk == 115231 // '$' 'schema'
  55431. || lk == 115232 // '%' 'schema'
  55432. || lk == 115476 // '{' 'schema'
  55433. || lk == 115743 // '$' 'schema-attribute'
  55434. || lk == 115744 // '%' 'schema-attribute'
  55435. || lk == 115988 // '{' 'schema-attribute'
  55436. || lk == 116255 // '$' 'schema-element'
  55437. || lk == 116256 // '%' 'schema-element'
  55438. || lk == 116500 // '{' 'schema-element'
  55439. || lk == 116767 // '$' 'score'
  55440. || lk == 116768 // '%' 'score'
  55441. || lk == 117012 // '{' 'score'
  55442. || lk == 117279 // '$' 'self'
  55443. || lk == 117280 // '%' 'self'
  55444. || lk == 117524 // '{' 'self'
  55445. || lk == 119839 // '$' 'sliding'
  55446. || lk == 119840 // '%' 'sliding'
  55447. || lk == 120084 // '{' 'sliding'
  55448. || lk == 120351 // '$' 'some'
  55449. || lk == 120352 // '%' 'some'
  55450. || lk == 120596 // '{' 'some'
  55451. || lk == 120863 // '$' 'stable'
  55452. || lk == 120864 // '%' 'stable'
  55453. || lk == 121108 // '{' 'stable'
  55454. || lk == 121375 // '$' 'start'
  55455. || lk == 121376 // '%' 'start'
  55456. || lk == 121620 // '{' 'start'
  55457. || lk == 122911 // '$' 'strict'
  55458. || lk == 122912 // '%' 'strict'
  55459. || lk == 123156 // '{' 'strict'
  55460. || lk == 123935 // '$' 'structured-item'
  55461. || lk == 123936 // '%' 'structured-item'
  55462. || lk == 124180 // '{' 'structured-item'
  55463. || lk == 124447 // '$' 'switch'
  55464. || lk == 124448 // '%' 'switch'
  55465. || lk == 124692 // '{' 'switch'
  55466. || lk == 124959 // '$' 'text'
  55467. || lk == 124960 // '%' 'text'
  55468. || lk == 125204 // '{' 'text'
  55469. || lk == 127007 // '$' 'to'
  55470. || lk == 127008 // '%' 'to'
  55471. || lk == 127252 // '{' 'to'
  55472. || lk == 127519 // '$' 'treat'
  55473. || lk == 127520 // '%' 'treat'
  55474. || lk == 127764 // '{' 'treat'
  55475. || lk == 128031 // '$' 'try'
  55476. || lk == 128032 // '%' 'try'
  55477. || lk == 128276 // '{' 'try'
  55478. || lk == 128543 // '$' 'tumbling'
  55479. || lk == 128544 // '%' 'tumbling'
  55480. || lk == 128788 // '{' 'tumbling'
  55481. || lk == 129055 // '$' 'type'
  55482. || lk == 129056 // '%' 'type'
  55483. || lk == 129300 // '{' 'type'
  55484. || lk == 129567 // '$' 'typeswitch'
  55485. || lk == 129568 // '%' 'typeswitch'
  55486. || lk == 129812 // '{' 'typeswitch'
  55487. || lk == 130079 // '$' 'union'
  55488. || lk == 130080 // '%' 'union'
  55489. || lk == 130324 // '{' 'union'
  55490. || lk == 131103 // '$' 'unordered'
  55491. || lk == 131104 // '%' 'unordered'
  55492. || lk == 131348 // '{' 'unordered'
  55493. || lk == 131615 // '$' 'updating'
  55494. || lk == 131616 // '%' 'updating'
  55495. || lk == 131860 // '{' 'updating'
  55496. || lk == 133151 // '$' 'validate'
  55497. || lk == 133152 // '%' 'validate'
  55498. || lk == 133396 // '{' 'validate'
  55499. || lk == 133663 // '$' 'value'
  55500. || lk == 133664 // '%' 'value'
  55501. || lk == 133908 // '{' 'value'
  55502. || lk == 134175 // '$' 'variable'
  55503. || lk == 134176 // '%' 'variable'
  55504. || lk == 134420 // '{' 'variable'
  55505. || lk == 134687 // '$' 'version'
  55506. || lk == 134688 // '%' 'version'
  55507. || lk == 134932 // '{' 'version'
  55508. || lk == 136223 // '$' 'where'
  55509. || lk == 136224 // '%' 'where'
  55510. || lk == 136468 // '{' 'where'
  55511. || lk == 136735 // '$' 'while'
  55512. || lk == 136736 // '%' 'while'
  55513. || lk == 136980 // '{' 'while'
  55514. || lk == 138271 // '$' 'with'
  55515. || lk == 138272 // '%' 'with'
  55516. || lk == 138516 // '{' 'with'
  55517. || lk == 140319 // '$' 'xquery'
  55518. || lk == 140320 // '%' 'xquery'
  55519. || lk == 140564 // '{' 'xquery'
  55520. || lk == 141588 // '{' '{'
  55521. || lk == 142612 // '{' '{|'
  55522. || lk == 144660) // '{' '}'
  55523. {
  55524. lk = memoized(7, e0);
  55525. if (lk == 0)
  55526. {
  55527. var b0A = b0; var e0A = e0; var l1A = l1;
  55528. var b1A = b1; var e1A = e1; var l2A = l2;
  55529. var b2A = b2; var e2A = e2;
  55530. try
  55531. {
  55532. try_ApplyStatement();
  55533. lk = -1;
  55534. }
  55535. catch (p1A)
  55536. {
  55537. try
  55538. {
  55539. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  55540. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  55541. b2 = b2A; e2 = e2A; end = e2A; }}
  55542. try_AssignStatement();
  55543. lk = -2;
  55544. }
  55545. catch (p2A)
  55546. {
  55547. try
  55548. {
  55549. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  55550. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  55551. b2 = b2A; e2 = e2A; end = e2A; }}
  55552. try_BlockStatement();
  55553. lk = -3;
  55554. }
  55555. catch (p3A)
  55556. {
  55557. try
  55558. {
  55559. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  55560. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  55561. b2 = b2A; e2 = e2A; end = e2A; }}
  55562. try_VarDeclStatement();
  55563. lk = -12;
  55564. }
  55565. catch (p12A)
  55566. {
  55567. lk = -13;
  55568. }
  55569. }
  55570. }
  55571. }
  55572. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  55573. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  55574. b2 = b2A; e2 = e2A; end = e2A; }}
  55575. memoize(7, e0, lk);
  55576. }
  55577. }
  55578. switch (lk)
  55579. {
  55580. case -2:
  55581. parse_AssignStatement();
  55582. break;
  55583. case -3:
  55584. parse_BlockStatement();
  55585. break;
  55586. case 90198: // 'break' 'loop'
  55587. parse_BreakStatement();
  55588. break;
  55589. case 90214: // 'continue' 'loop'
  55590. parse_ContinueStatement();
  55591. break;
  55592. case 113284: // 'exit' 'returning'
  55593. parse_ExitStatement();
  55594. break;
  55595. case 16009: // 'for' '$'
  55596. case 16046: // 'let' '$'
  55597. case 116910: // 'let' 'score'
  55598. case 119945: // 'for' 'sliding'
  55599. case 128649: // 'for' 'tumbling'
  55600. parse_FLWORStatement();
  55601. break;
  55602. case 17560: // 'if' '('
  55603. parse_IfStatement();
  55604. break;
  55605. case 17651: // 'switch' '('
  55606. parse_SwitchStatement();
  55607. break;
  55608. case 141562: // 'try' '{'
  55609. parse_TryCatchStatement();
  55610. break;
  55611. case 17661: // 'typeswitch' '('
  55612. parse_TypeswitchStatement();
  55613. break;
  55614. case -12:
  55615. case 16134: // 'variable' '$'
  55616. parse_VarDeclStatement();
  55617. break;
  55618. case -13:
  55619. parse_WhileStatement();
  55620. break;
  55621. case 53: // ';'
  55622. parse_VoidStatement();
  55623. break;
  55624. default:
  55625. parse_ApplyStatement();
  55626. }
  55627. eventHandler.endNonterminal("Statement", e0);
  55628. }
  55629. function try_Statement()
  55630. {
  55631. switch (l1)
  55632. {
  55633. case 132: // 'exit'
  55634. lookahead2W(188); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55635. break;
  55636. case 137: // 'for'
  55637. lookahead2W(195); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55638. break;
  55639. case 174: // 'let'
  55640. lookahead2W(192); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55641. break;
  55642. case 250: // 'try'
  55643. lookahead2W(189); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55644. break;
  55645. case 262: // 'variable'
  55646. lookahead2W(186); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  55647. break;
  55648. case 276: // '{'
  55649. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  55650. break;
  55651. case 31: // '$'
  55652. case 32: // '%'
  55653. lookahead2W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  55654. break;
  55655. case 86: // 'break'
  55656. case 102: // 'continue'
  55657. lookahead2W(187); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55658. break;
  55659. case 152: // 'if'
  55660. case 243: // 'switch'
  55661. case 253: // 'typeswitch'
  55662. case 267: // 'while'
  55663. lookahead2W(184); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  55664. break;
  55665. default:
  55666. lk = l1;
  55667. }
  55668. if (lk == 2836 // '{' Wildcard
  55669. || lk == 3103 // '$' EQName^Token
  55670. || lk == 3104 // '%' EQName^Token
  55671. || lk == 3348 // '{' EQName^Token
  55672. || lk == 4372 // '{' IntegerLiteral
  55673. || lk == 4884 // '{' DecimalLiteral
  55674. || lk == 5396 // '{' DoubleLiteral
  55675. || lk == 5908 // '{' StringLiteral
  55676. || lk == 16148 // '{' '$'
  55677. || lk == 16660 // '{' '%'
  55678. || lk == 17675 // 'while' '('
  55679. || lk == 17684 // '{' '('
  55680. || lk == 18196 // '{' '(#'
  55681. || lk == 20756 // '{' '+'
  55682. || lk == 21780 // '{' '-'
  55683. || lk == 22804 // '{' '.'
  55684. || lk == 23316 // '{' '..'
  55685. || lk == 23828 // '{' '/'
  55686. || lk == 24340 // '{' '//'
  55687. || lk == 27412 // '{' ';'
  55688. || lk == 27924 // '{' '<'
  55689. || lk == 28436 // '{' '<!--'
  55690. || lk == 30484 // '{' '<?'
  55691. || lk == 34068 // '{' '@'
  55692. || lk == 35092 // '{' '['
  55693. || lk == 35871 // '$' 'after'
  55694. || lk == 35872 // '%' 'after'
  55695. || lk == 36116 // '{' 'after'
  55696. || lk == 36895 // '$' 'allowing'
  55697. || lk == 36896 // '%' 'allowing'
  55698. || lk == 37140 // '{' 'allowing'
  55699. || lk == 37407 // '$' 'ancestor'
  55700. || lk == 37408 // '%' 'ancestor'
  55701. || lk == 37652 // '{' 'ancestor'
  55702. || lk == 37919 // '$' 'ancestor-or-self'
  55703. || lk == 37920 // '%' 'ancestor-or-self'
  55704. || lk == 38164 // '{' 'ancestor-or-self'
  55705. || lk == 38431 // '$' 'and'
  55706. || lk == 38432 // '%' 'and'
  55707. || lk == 38676 // '{' 'and'
  55708. || lk == 39455 // '$' 'append'
  55709. || lk == 39456 // '%' 'append'
  55710. || lk == 39700 // '{' 'append'
  55711. || lk == 39967 // '$' 'array'
  55712. || lk == 39968 // '%' 'array'
  55713. || lk == 40212 // '{' 'array'
  55714. || lk == 40479 // '$' 'as'
  55715. || lk == 40480 // '%' 'as'
  55716. || lk == 40724 // '{' 'as'
  55717. || lk == 40991 // '$' 'ascending'
  55718. || lk == 40992 // '%' 'ascending'
  55719. || lk == 41236 // '{' 'ascending'
  55720. || lk == 41503 // '$' 'at'
  55721. || lk == 41504 // '%' 'at'
  55722. || lk == 41748 // '{' 'at'
  55723. || lk == 42015 // '$' 'attribute'
  55724. || lk == 42016 // '%' 'attribute'
  55725. || lk == 42260 // '{' 'attribute'
  55726. || lk == 42527 // '$' 'base-uri'
  55727. || lk == 42528 // '%' 'base-uri'
  55728. || lk == 42772 // '{' 'base-uri'
  55729. || lk == 43039 // '$' 'before'
  55730. || lk == 43040 // '%' 'before'
  55731. || lk == 43284 // '{' 'before'
  55732. || lk == 43551 // '$' 'boundary-space'
  55733. || lk == 43552 // '%' 'boundary-space'
  55734. || lk == 43796 // '{' 'boundary-space'
  55735. || lk == 44063 // '$' 'break'
  55736. || lk == 44064 // '%' 'break'
  55737. || lk == 44308 // '{' 'break'
  55738. || lk == 45087 // '$' 'case'
  55739. || lk == 45088 // '%' 'case'
  55740. || lk == 45332 // '{' 'case'
  55741. || lk == 45599 // '$' 'cast'
  55742. || lk == 45600 // '%' 'cast'
  55743. || lk == 45844 // '{' 'cast'
  55744. || lk == 46111 // '$' 'castable'
  55745. || lk == 46112 // '%' 'castable'
  55746. || lk == 46356 // '{' 'castable'
  55747. || lk == 46623 // '$' 'catch'
  55748. || lk == 46624 // '%' 'catch'
  55749. || lk == 46868 // '{' 'catch'
  55750. || lk == 47647 // '$' 'child'
  55751. || lk == 47648 // '%' 'child'
  55752. || lk == 47892 // '{' 'child'
  55753. || lk == 48159 // '$' 'collation'
  55754. || lk == 48160 // '%' 'collation'
  55755. || lk == 48404 // '{' 'collation'
  55756. || lk == 49183 // '$' 'comment'
  55757. || lk == 49184 // '%' 'comment'
  55758. || lk == 49428 // '{' 'comment'
  55759. || lk == 49695 // '$' 'constraint'
  55760. || lk == 49696 // '%' 'constraint'
  55761. || lk == 49940 // '{' 'constraint'
  55762. || lk == 50207 // '$' 'construction'
  55763. || lk == 50208 // '%' 'construction'
  55764. || lk == 50452 // '{' 'construction'
  55765. || lk == 51743 // '$' 'context'
  55766. || lk == 51744 // '%' 'context'
  55767. || lk == 51988 // '{' 'context'
  55768. || lk == 52255 // '$' 'continue'
  55769. || lk == 52256 // '%' 'continue'
  55770. || lk == 52500 // '{' 'continue'
  55771. || lk == 52767 // '$' 'copy'
  55772. || lk == 52768 // '%' 'copy'
  55773. || lk == 53012 // '{' 'copy'
  55774. || lk == 53279 // '$' 'copy-namespaces'
  55775. || lk == 53280 // '%' 'copy-namespaces'
  55776. || lk == 53524 // '{' 'copy-namespaces'
  55777. || lk == 53791 // '$' 'count'
  55778. || lk == 53792 // '%' 'count'
  55779. || lk == 54036 // '{' 'count'
  55780. || lk == 54303 // '$' 'decimal-format'
  55781. || lk == 54304 // '%' 'decimal-format'
  55782. || lk == 54548 // '{' 'decimal-format'
  55783. || lk == 55327 // '$' 'declare'
  55784. || lk == 55328 // '%' 'declare'
  55785. || lk == 55572 // '{' 'declare'
  55786. || lk == 55839 // '$' 'default'
  55787. || lk == 55840 // '%' 'default'
  55788. || lk == 56084 // '{' 'default'
  55789. || lk == 56351 // '$' 'delete'
  55790. || lk == 56352 // '%' 'delete'
  55791. || lk == 56596 // '{' 'delete'
  55792. || lk == 56863 // '$' 'descendant'
  55793. || lk == 56864 // '%' 'descendant'
  55794. || lk == 57108 // '{' 'descendant'
  55795. || lk == 57375 // '$' 'descendant-or-self'
  55796. || lk == 57376 // '%' 'descendant-or-self'
  55797. || lk == 57620 // '{' 'descendant-or-self'
  55798. || lk == 57887 // '$' 'descending'
  55799. || lk == 57888 // '%' 'descending'
  55800. || lk == 58132 // '{' 'descending'
  55801. || lk == 60447 // '$' 'div'
  55802. || lk == 60448 // '%' 'div'
  55803. || lk == 60692 // '{' 'div'
  55804. || lk == 60959 // '$' 'document'
  55805. || lk == 60960 // '%' 'document'
  55806. || lk == 61204 // '{' 'document'
  55807. || lk == 61471 // '$' 'document-node'
  55808. || lk == 61472 // '%' 'document-node'
  55809. || lk == 61716 // '{' 'document-node'
  55810. || lk == 61983 // '$' 'element'
  55811. || lk == 61984 // '%' 'element'
  55812. || lk == 62228 // '{' 'element'
  55813. || lk == 62495 // '$' 'else'
  55814. || lk == 62496 // '%' 'else'
  55815. || lk == 62740 // '{' 'else'
  55816. || lk == 63007 // '$' 'empty'
  55817. || lk == 63008 // '%' 'empty'
  55818. || lk == 63252 // '{' 'empty'
  55819. || lk == 63519 // '$' 'empty-sequence'
  55820. || lk == 63520 // '%' 'empty-sequence'
  55821. || lk == 63764 // '{' 'empty-sequence'
  55822. || lk == 64031 // '$' 'encoding'
  55823. || lk == 64032 // '%' 'encoding'
  55824. || lk == 64276 // '{' 'encoding'
  55825. || lk == 64543 // '$' 'end'
  55826. || lk == 64544 // '%' 'end'
  55827. || lk == 64788 // '{' 'end'
  55828. || lk == 65567 // '$' 'eq'
  55829. || lk == 65568 // '%' 'eq'
  55830. || lk == 65812 // '{' 'eq'
  55831. || lk == 66079 // '$' 'every'
  55832. || lk == 66080 // '%' 'every'
  55833. || lk == 66324 // '{' 'every'
  55834. || lk == 67103 // '$' 'except'
  55835. || lk == 67104 // '%' 'except'
  55836. || lk == 67348 // '{' 'except'
  55837. || lk == 67615 // '$' 'exit'
  55838. || lk == 67616 // '%' 'exit'
  55839. || lk == 67860 // '{' 'exit'
  55840. || lk == 68127 // '$' 'external'
  55841. || lk == 68128 // '%' 'external'
  55842. || lk == 68372 // '{' 'external'
  55843. || lk == 68639 // '$' 'first'
  55844. || lk == 68640 // '%' 'first'
  55845. || lk == 68884 // '{' 'first'
  55846. || lk == 69151 // '$' 'following'
  55847. || lk == 69152 // '%' 'following'
  55848. || lk == 69396 // '{' 'following'
  55849. || lk == 69663 // '$' 'following-sibling'
  55850. || lk == 69664 // '%' 'following-sibling'
  55851. || lk == 69908 // '{' 'following-sibling'
  55852. || lk == 70175 // '$' 'for'
  55853. || lk == 70176 // '%' 'for'
  55854. || lk == 70420 // '{' 'for'
  55855. || lk == 72223 // '$' 'ft-option'
  55856. || lk == 72224 // '%' 'ft-option'
  55857. || lk == 72468 // '{' 'ft-option'
  55858. || lk == 74271 // '$' 'function'
  55859. || lk == 74272 // '%' 'function'
  55860. || lk == 74516 // '{' 'function'
  55861. || lk == 74783 // '$' 'ge'
  55862. || lk == 74784 // '%' 'ge'
  55863. || lk == 75028 // '{' 'ge'
  55864. || lk == 75807 // '$' 'group'
  55865. || lk == 75808 // '%' 'group'
  55866. || lk == 76052 // '{' 'group'
  55867. || lk == 76831 // '$' 'gt'
  55868. || lk == 76832 // '%' 'gt'
  55869. || lk == 77076 // '{' 'gt'
  55870. || lk == 77343 // '$' 'idiv'
  55871. || lk == 77344 // '%' 'idiv'
  55872. || lk == 77588 // '{' 'idiv'
  55873. || lk == 77855 // '$' 'if'
  55874. || lk == 77856 // '%' 'if'
  55875. || lk == 78100 // '{' 'if'
  55876. || lk == 78367 // '$' 'import'
  55877. || lk == 78368 // '%' 'import'
  55878. || lk == 78612 // '{' 'import'
  55879. || lk == 78879 // '$' 'in'
  55880. || lk == 78880 // '%' 'in'
  55881. || lk == 79124 // '{' 'in'
  55882. || lk == 79391 // '$' 'index'
  55883. || lk == 79392 // '%' 'index'
  55884. || lk == 79636 // '{' 'index'
  55885. || lk == 81439 // '$' 'insert'
  55886. || lk == 81440 // '%' 'insert'
  55887. || lk == 81684 // '{' 'insert'
  55888. || lk == 81951 // '$' 'instance'
  55889. || lk == 81952 // '%' 'instance'
  55890. || lk == 82196 // '{' 'instance'
  55891. || lk == 82463 // '$' 'integrity'
  55892. || lk == 82464 // '%' 'integrity'
  55893. || lk == 82708 // '{' 'integrity'
  55894. || lk == 82975 // '$' 'intersect'
  55895. || lk == 82976 // '%' 'intersect'
  55896. || lk == 83220 // '{' 'intersect'
  55897. || lk == 83487 // '$' 'into'
  55898. || lk == 83488 // '%' 'into'
  55899. || lk == 83732 // '{' 'into'
  55900. || lk == 83999 // '$' 'is'
  55901. || lk == 84000 // '%' 'is'
  55902. || lk == 84244 // '{' 'is'
  55903. || lk == 84511 // '$' 'item'
  55904. || lk == 84512 // '%' 'item'
  55905. || lk == 84756 // '{' 'item'
  55906. || lk == 85023 // '$' 'json'
  55907. || lk == 85024 // '%' 'json'
  55908. || lk == 85268 // '{' 'json'
  55909. || lk == 85535 // '$' 'json-item'
  55910. || lk == 85536 // '%' 'json-item'
  55911. || lk == 85780 // '{' 'json-item'
  55912. || lk == 87071 // '$' 'last'
  55913. || lk == 87072 // '%' 'last'
  55914. || lk == 87316 // '{' 'last'
  55915. || lk == 87583 // '$' 'lax'
  55916. || lk == 87584 // '%' 'lax'
  55917. || lk == 87828 // '{' 'lax'
  55918. || lk == 88095 // '$' 'le'
  55919. || lk == 88096 // '%' 'le'
  55920. || lk == 88340 // '{' 'le'
  55921. || lk == 89119 // '$' 'let'
  55922. || lk == 89120 // '%' 'let'
  55923. || lk == 89364 // '{' 'let'
  55924. || lk == 90143 // '$' 'loop'
  55925. || lk == 90144 // '%' 'loop'
  55926. || lk == 90388 // '{' 'loop'
  55927. || lk == 91167 // '$' 'lt'
  55928. || lk == 91168 // '%' 'lt'
  55929. || lk == 91412 // '{' 'lt'
  55930. || lk == 92191 // '$' 'mod'
  55931. || lk == 92192 // '%' 'mod'
  55932. || lk == 92436 // '{' 'mod'
  55933. || lk == 92703 // '$' 'modify'
  55934. || lk == 92704 // '%' 'modify'
  55935. || lk == 92948 // '{' 'modify'
  55936. || lk == 93215 // '$' 'module'
  55937. || lk == 93216 // '%' 'module'
  55938. || lk == 93460 // '{' 'module'
  55939. || lk == 94239 // '$' 'namespace'
  55940. || lk == 94240 // '%' 'namespace'
  55941. || lk == 94484 // '{' 'namespace'
  55942. || lk == 94751 // '$' 'namespace-node'
  55943. || lk == 94752 // '%' 'namespace-node'
  55944. || lk == 94996 // '{' 'namespace-node'
  55945. || lk == 95263 // '$' 'ne'
  55946. || lk == 95264 // '%' 'ne'
  55947. || lk == 95508 // '{' 'ne'
  55948. || lk == 97823 // '$' 'node'
  55949. || lk == 97824 // '%' 'node'
  55950. || lk == 98068 // '{' 'node'
  55951. || lk == 98335 // '$' 'nodes'
  55952. || lk == 98336 // '%' 'nodes'
  55953. || lk == 98580 // '{' 'nodes'
  55954. || lk == 99359 // '$' 'object'
  55955. || lk == 99360 // '%' 'object'
  55956. || lk == 99604 // '{' 'object'
  55957. || lk == 101407 // '$' 'only'
  55958. || lk == 101408 // '%' 'only'
  55959. || lk == 101652 // '{' 'only'
  55960. || lk == 101919 // '$' 'option'
  55961. || lk == 101920 // '%' 'option'
  55962. || lk == 102164 // '{' 'option'
  55963. || lk == 102431 // '$' 'or'
  55964. || lk == 102432 // '%' 'or'
  55965. || lk == 102676 // '{' 'or'
  55966. || lk == 102943 // '$' 'order'
  55967. || lk == 102944 // '%' 'order'
  55968. || lk == 103188 // '{' 'order'
  55969. || lk == 103455 // '$' 'ordered'
  55970. || lk == 103456 // '%' 'ordered'
  55971. || lk == 103700 // '{' 'ordered'
  55972. || lk == 103967 // '$' 'ordering'
  55973. || lk == 103968 // '%' 'ordering'
  55974. || lk == 104212 // '{' 'ordering'
  55975. || lk == 105503 // '$' 'parent'
  55976. || lk == 105504 // '%' 'parent'
  55977. || lk == 105748 // '{' 'parent'
  55978. || lk == 108575 // '$' 'preceding'
  55979. || lk == 108576 // '%' 'preceding'
  55980. || lk == 108820 // '{' 'preceding'
  55981. || lk == 109087 // '$' 'preceding-sibling'
  55982. || lk == 109088 // '%' 'preceding-sibling'
  55983. || lk == 109332 // '{' 'preceding-sibling'
  55984. || lk == 110623 // '$' 'processing-instruction'
  55985. || lk == 110624 // '%' 'processing-instruction'
  55986. || lk == 110868 // '{' 'processing-instruction'
  55987. || lk == 111647 // '$' 'rename'
  55988. || lk == 111648 // '%' 'rename'
  55989. || lk == 111892 // '{' 'rename'
  55990. || lk == 112159 // '$' 'replace'
  55991. || lk == 112160 // '%' 'replace'
  55992. || lk == 112404 // '{' 'replace'
  55993. || lk == 112671 // '$' 'return'
  55994. || lk == 112672 // '%' 'return'
  55995. || lk == 112916 // '{' 'return'
  55996. || lk == 113183 // '$' 'returning'
  55997. || lk == 113184 // '%' 'returning'
  55998. || lk == 113428 // '{' 'returning'
  55999. || lk == 113695 // '$' 'revalidation'
  56000. || lk == 113696 // '%' 'revalidation'
  56001. || lk == 113940 // '{' 'revalidation'
  56002. || lk == 114719 // '$' 'satisfies'
  56003. || lk == 114720 // '%' 'satisfies'
  56004. || lk == 114964 // '{' 'satisfies'
  56005. || lk == 115231 // '$' 'schema'
  56006. || lk == 115232 // '%' 'schema'
  56007. || lk == 115476 // '{' 'schema'
  56008. || lk == 115743 // '$' 'schema-attribute'
  56009. || lk == 115744 // '%' 'schema-attribute'
  56010. || lk == 115988 // '{' 'schema-attribute'
  56011. || lk == 116255 // '$' 'schema-element'
  56012. || lk == 116256 // '%' 'schema-element'
  56013. || lk == 116500 // '{' 'schema-element'
  56014. || lk == 116767 // '$' 'score'
  56015. || lk == 116768 // '%' 'score'
  56016. || lk == 117012 // '{' 'score'
  56017. || lk == 117279 // '$' 'self'
  56018. || lk == 117280 // '%' 'self'
  56019. || lk == 117524 // '{' 'self'
  56020. || lk == 119839 // '$' 'sliding'
  56021. || lk == 119840 // '%' 'sliding'
  56022. || lk == 120084 // '{' 'sliding'
  56023. || lk == 120351 // '$' 'some'
  56024. || lk == 120352 // '%' 'some'
  56025. || lk == 120596 // '{' 'some'
  56026. || lk == 120863 // '$' 'stable'
  56027. || lk == 120864 // '%' 'stable'
  56028. || lk == 121108 // '{' 'stable'
  56029. || lk == 121375 // '$' 'start'
  56030. || lk == 121376 // '%' 'start'
  56031. || lk == 121620 // '{' 'start'
  56032. || lk == 122911 // '$' 'strict'
  56033. || lk == 122912 // '%' 'strict'
  56034. || lk == 123156 // '{' 'strict'
  56035. || lk == 123935 // '$' 'structured-item'
  56036. || lk == 123936 // '%' 'structured-item'
  56037. || lk == 124180 // '{' 'structured-item'
  56038. || lk == 124447 // '$' 'switch'
  56039. || lk == 124448 // '%' 'switch'
  56040. || lk == 124692 // '{' 'switch'
  56041. || lk == 124959 // '$' 'text'
  56042. || lk == 124960 // '%' 'text'
  56043. || lk == 125204 // '{' 'text'
  56044. || lk == 127007 // '$' 'to'
  56045. || lk == 127008 // '%' 'to'
  56046. || lk == 127252 // '{' 'to'
  56047. || lk == 127519 // '$' 'treat'
  56048. || lk == 127520 // '%' 'treat'
  56049. || lk == 127764 // '{' 'treat'
  56050. || lk == 128031 // '$' 'try'
  56051. || lk == 128032 // '%' 'try'
  56052. || lk == 128276 // '{' 'try'
  56053. || lk == 128543 // '$' 'tumbling'
  56054. || lk == 128544 // '%' 'tumbling'
  56055. || lk == 128788 // '{' 'tumbling'
  56056. || lk == 129055 // '$' 'type'
  56057. || lk == 129056 // '%' 'type'
  56058. || lk == 129300 // '{' 'type'
  56059. || lk == 129567 // '$' 'typeswitch'
  56060. || lk == 129568 // '%' 'typeswitch'
  56061. || lk == 129812 // '{' 'typeswitch'
  56062. || lk == 130079 // '$' 'union'
  56063. || lk == 130080 // '%' 'union'
  56064. || lk == 130324 // '{' 'union'
  56065. || lk == 131103 // '$' 'unordered'
  56066. || lk == 131104 // '%' 'unordered'
  56067. || lk == 131348 // '{' 'unordered'
  56068. || lk == 131615 // '$' 'updating'
  56069. || lk == 131616 // '%' 'updating'
  56070. || lk == 131860 // '{' 'updating'
  56071. || lk == 133151 // '$' 'validate'
  56072. || lk == 133152 // '%' 'validate'
  56073. || lk == 133396 // '{' 'validate'
  56074. || lk == 133663 // '$' 'value'
  56075. || lk == 133664 // '%' 'value'
  56076. || lk == 133908 // '{' 'value'
  56077. || lk == 134175 // '$' 'variable'
  56078. || lk == 134176 // '%' 'variable'
  56079. || lk == 134420 // '{' 'variable'
  56080. || lk == 134687 // '$' 'version'
  56081. || lk == 134688 // '%' 'version'
  56082. || lk == 134932 // '{' 'version'
  56083. || lk == 136223 // '$' 'where'
  56084. || lk == 136224 // '%' 'where'
  56085. || lk == 136468 // '{' 'where'
  56086. || lk == 136735 // '$' 'while'
  56087. || lk == 136736 // '%' 'while'
  56088. || lk == 136980 // '{' 'while'
  56089. || lk == 138271 // '$' 'with'
  56090. || lk == 138272 // '%' 'with'
  56091. || lk == 138516 // '{' 'with'
  56092. || lk == 140319 // '$' 'xquery'
  56093. || lk == 140320 // '%' 'xquery'
  56094. || lk == 140564 // '{' 'xquery'
  56095. || lk == 141588 // '{' '{'
  56096. || lk == 142612 // '{' '{|'
  56097. || lk == 144660) // '{' '}'
  56098. {
  56099. lk = memoized(7, e0);
  56100. if (lk == 0)
  56101. {
  56102. var b0A = b0; var e0A = e0; var l1A = l1;
  56103. var b1A = b1; var e1A = e1; var l2A = l2;
  56104. var b2A = b2; var e2A = e2;
  56105. try
  56106. {
  56107. try_ApplyStatement();
  56108. memoize(7, e0A, -1);
  56109. lk = -15;
  56110. }
  56111. catch (p1A)
  56112. {
  56113. try
  56114. {
  56115. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56116. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56117. b2 = b2A; e2 = e2A; end = e2A; }}
  56118. try_AssignStatement();
  56119. memoize(7, e0A, -2);
  56120. lk = -15;
  56121. }
  56122. catch (p2A)
  56123. {
  56124. try
  56125. {
  56126. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56127. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56128. b2 = b2A; e2 = e2A; end = e2A; }}
  56129. try_BlockStatement();
  56130. memoize(7, e0A, -3);
  56131. lk = -15;
  56132. }
  56133. catch (p3A)
  56134. {
  56135. try
  56136. {
  56137. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56138. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56139. b2 = b2A; e2 = e2A; end = e2A; }}
  56140. try_VarDeclStatement();
  56141. memoize(7, e0A, -12);
  56142. lk = -15;
  56143. }
  56144. catch (p12A)
  56145. {
  56146. lk = -13;
  56147. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56148. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56149. b2 = b2A; e2 = e2A; end = e2A; }}
  56150. memoize(7, e0A, -13);
  56151. }
  56152. }
  56153. }
  56154. }
  56155. }
  56156. }
  56157. switch (lk)
  56158. {
  56159. case -2:
  56160. try_AssignStatement();
  56161. break;
  56162. case -3:
  56163. try_BlockStatement();
  56164. break;
  56165. case 90198: // 'break' 'loop'
  56166. try_BreakStatement();
  56167. break;
  56168. case 90214: // 'continue' 'loop'
  56169. try_ContinueStatement();
  56170. break;
  56171. case 113284: // 'exit' 'returning'
  56172. try_ExitStatement();
  56173. break;
  56174. case 16009: // 'for' '$'
  56175. case 16046: // 'let' '$'
  56176. case 116910: // 'let' 'score'
  56177. case 119945: // 'for' 'sliding'
  56178. case 128649: // 'for' 'tumbling'
  56179. try_FLWORStatement();
  56180. break;
  56181. case 17560: // 'if' '('
  56182. try_IfStatement();
  56183. break;
  56184. case 17651: // 'switch' '('
  56185. try_SwitchStatement();
  56186. break;
  56187. case 141562: // 'try' '{'
  56188. try_TryCatchStatement();
  56189. break;
  56190. case 17661: // 'typeswitch' '('
  56191. try_TypeswitchStatement();
  56192. break;
  56193. case -12:
  56194. case 16134: // 'variable' '$'
  56195. try_VarDeclStatement();
  56196. break;
  56197. case -13:
  56198. try_WhileStatement();
  56199. break;
  56200. case 53: // ';'
  56201. try_VoidStatement();
  56202. break;
  56203. case -15:
  56204. break;
  56205. default:
  56206. try_ApplyStatement();
  56207. }
  56208. }
  56209. function parse_ApplyStatement()
  56210. {
  56211. eventHandler.startNonterminal("ApplyStatement", e0);
  56212. parse_ExprSimple();
  56213. shift(53); // ';'
  56214. eventHandler.endNonterminal("ApplyStatement", e0);
  56215. }
  56216. function try_ApplyStatement()
  56217. {
  56218. try_ExprSimple();
  56219. shiftT(53); // ';'
  56220. }
  56221. function parse_AssignStatement()
  56222. {
  56223. eventHandler.startNonterminal("AssignStatement", e0);
  56224. shift(31); // '$'
  56225. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56226. whitespace();
  56227. parse_VarName();
  56228. lookahead1W(27); // S^WS | '(:' | ':='
  56229. shift(52); // ':='
  56230. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56231. whitespace();
  56232. parse_ExprSingle();
  56233. shift(53); // ';'
  56234. eventHandler.endNonterminal("AssignStatement", e0);
  56235. }
  56236. function try_AssignStatement()
  56237. {
  56238. shiftT(31); // '$'
  56239. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56240. try_VarName();
  56241. lookahead1W(27); // S^WS | '(:' | ':='
  56242. shiftT(52); // ':='
  56243. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56244. try_ExprSingle();
  56245. shiftT(53); // ';'
  56246. }
  56247. function parse_BlockStatement()
  56248. {
  56249. eventHandler.startNonterminal("BlockStatement", e0);
  56250. shift(276); // '{'
  56251. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56252. whitespace();
  56253. parse_Statements();
  56254. shift(282); // '}'
  56255. eventHandler.endNonterminal("BlockStatement", e0);
  56256. }
  56257. function try_BlockStatement()
  56258. {
  56259. shiftT(276); // '{'
  56260. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56261. try_Statements();
  56262. shiftT(282); // '}'
  56263. }
  56264. function parse_BreakStatement()
  56265. {
  56266. eventHandler.startNonterminal("BreakStatement", e0);
  56267. shift(86); // 'break'
  56268. lookahead1W(59); // S^WS | '(:' | 'loop'
  56269. shift(176); // 'loop'
  56270. lookahead1W(28); // S^WS | '(:' | ';'
  56271. shift(53); // ';'
  56272. eventHandler.endNonterminal("BreakStatement", e0);
  56273. }
  56274. function try_BreakStatement()
  56275. {
  56276. shiftT(86); // 'break'
  56277. lookahead1W(59); // S^WS | '(:' | 'loop'
  56278. shiftT(176); // 'loop'
  56279. lookahead1W(28); // S^WS | '(:' | ';'
  56280. shiftT(53); // ';'
  56281. }
  56282. function parse_ContinueStatement()
  56283. {
  56284. eventHandler.startNonterminal("ContinueStatement", e0);
  56285. shift(102); // 'continue'
  56286. lookahead1W(59); // S^WS | '(:' | 'loop'
  56287. shift(176); // 'loop'
  56288. lookahead1W(28); // S^WS | '(:' | ';'
  56289. shift(53); // ';'
  56290. eventHandler.endNonterminal("ContinueStatement", e0);
  56291. }
  56292. function try_ContinueStatement()
  56293. {
  56294. shiftT(102); // 'continue'
  56295. lookahead1W(59); // S^WS | '(:' | 'loop'
  56296. shiftT(176); // 'loop'
  56297. lookahead1W(28); // S^WS | '(:' | ';'
  56298. shiftT(53); // ';'
  56299. }
  56300. function parse_ExitStatement()
  56301. {
  56302. eventHandler.startNonterminal("ExitStatement", e0);
  56303. shift(132); // 'exit'
  56304. lookahead1W(71); // S^WS | '(:' | 'returning'
  56305. shift(221); // 'returning'
  56306. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56307. whitespace();
  56308. parse_ExprSingle();
  56309. shift(53); // ';'
  56310. eventHandler.endNonterminal("ExitStatement", e0);
  56311. }
  56312. function try_ExitStatement()
  56313. {
  56314. shiftT(132); // 'exit'
  56315. lookahead1W(71); // S^WS | '(:' | 'returning'
  56316. shiftT(221); // 'returning'
  56317. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56318. try_ExprSingle();
  56319. shiftT(53); // ';'
  56320. }
  56321. function parse_FLWORStatement()
  56322. {
  56323. eventHandler.startNonterminal("FLWORStatement", e0);
  56324. parse_InitialClause();
  56325. for (;;)
  56326. {
  56327. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  56328. if (l1 == 220) // 'return'
  56329. {
  56330. break;
  56331. }
  56332. whitespace();
  56333. parse_IntermediateClause();
  56334. }
  56335. whitespace();
  56336. parse_ReturnStatement();
  56337. eventHandler.endNonterminal("FLWORStatement", e0);
  56338. }
  56339. function try_FLWORStatement()
  56340. {
  56341. try_InitialClause();
  56342. for (;;)
  56343. {
  56344. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  56345. if (l1 == 220) // 'return'
  56346. {
  56347. break;
  56348. }
  56349. try_IntermediateClause();
  56350. }
  56351. try_ReturnStatement();
  56352. }
  56353. function parse_ReturnStatement()
  56354. {
  56355. eventHandler.startNonterminal("ReturnStatement", e0);
  56356. shift(220); // 'return'
  56357. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56358. whitespace();
  56359. parse_Statement();
  56360. eventHandler.endNonterminal("ReturnStatement", e0);
  56361. }
  56362. function try_ReturnStatement()
  56363. {
  56364. shiftT(220); // 'return'
  56365. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56366. try_Statement();
  56367. }
  56368. function parse_IfStatement()
  56369. {
  56370. eventHandler.startNonterminal("IfStatement", e0);
  56371. shift(152); // 'if'
  56372. lookahead1W(22); // S^WS | '(' | '(:'
  56373. shift(34); // '('
  56374. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56375. whitespace();
  56376. parse_Expr();
  56377. shift(37); // ')'
  56378. lookahead1W(77); // S^WS | '(:' | 'then'
  56379. shift(245); // 'then'
  56380. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56381. whitespace();
  56382. parse_Statement();
  56383. lookahead1W(48); // S^WS | '(:' | 'else'
  56384. shift(122); // 'else'
  56385. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56386. whitespace();
  56387. parse_Statement();
  56388. eventHandler.endNonterminal("IfStatement", e0);
  56389. }
  56390. function try_IfStatement()
  56391. {
  56392. shiftT(152); // 'if'
  56393. lookahead1W(22); // S^WS | '(' | '(:'
  56394. shiftT(34); // '('
  56395. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56396. try_Expr();
  56397. shiftT(37); // ')'
  56398. lookahead1W(77); // S^WS | '(:' | 'then'
  56399. shiftT(245); // 'then'
  56400. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56401. try_Statement();
  56402. lookahead1W(48); // S^WS | '(:' | 'else'
  56403. shiftT(122); // 'else'
  56404. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56405. try_Statement();
  56406. }
  56407. function parse_SwitchStatement()
  56408. {
  56409. eventHandler.startNonterminal("SwitchStatement", e0);
  56410. shift(243); // 'switch'
  56411. lookahead1W(22); // S^WS | '(' | '(:'
  56412. shift(34); // '('
  56413. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56414. whitespace();
  56415. parse_Expr();
  56416. shift(37); // ')'
  56417. for (;;)
  56418. {
  56419. lookahead1W(35); // S^WS | '(:' | 'case'
  56420. whitespace();
  56421. parse_SwitchCaseStatement();
  56422. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  56423. if (l1 != 88) // 'case'
  56424. {
  56425. break;
  56426. }
  56427. }
  56428. shift(109); // 'default'
  56429. lookahead1W(70); // S^WS | '(:' | 'return'
  56430. shift(220); // 'return'
  56431. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56432. whitespace();
  56433. parse_Statement();
  56434. eventHandler.endNonterminal("SwitchStatement", e0);
  56435. }
  56436. function try_SwitchStatement()
  56437. {
  56438. shiftT(243); // 'switch'
  56439. lookahead1W(22); // S^WS | '(' | '(:'
  56440. shiftT(34); // '('
  56441. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56442. try_Expr();
  56443. shiftT(37); // ')'
  56444. for (;;)
  56445. {
  56446. lookahead1W(35); // S^WS | '(:' | 'case'
  56447. try_SwitchCaseStatement();
  56448. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  56449. if (l1 != 88) // 'case'
  56450. {
  56451. break;
  56452. }
  56453. }
  56454. shiftT(109); // 'default'
  56455. lookahead1W(70); // S^WS | '(:' | 'return'
  56456. shiftT(220); // 'return'
  56457. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56458. try_Statement();
  56459. }
  56460. function parse_SwitchCaseStatement()
  56461. {
  56462. eventHandler.startNonterminal("SwitchCaseStatement", e0);
  56463. for (;;)
  56464. {
  56465. shift(88); // 'case'
  56466. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56467. whitespace();
  56468. parse_SwitchCaseOperand();
  56469. if (l1 != 88) // 'case'
  56470. {
  56471. break;
  56472. }
  56473. }
  56474. shift(220); // 'return'
  56475. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56476. whitespace();
  56477. parse_Statement();
  56478. eventHandler.endNonterminal("SwitchCaseStatement", e0);
  56479. }
  56480. function try_SwitchCaseStatement()
  56481. {
  56482. for (;;)
  56483. {
  56484. shiftT(88); // 'case'
  56485. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56486. try_SwitchCaseOperand();
  56487. if (l1 != 88) // 'case'
  56488. {
  56489. break;
  56490. }
  56491. }
  56492. shiftT(220); // 'return'
  56493. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56494. try_Statement();
  56495. }
  56496. function parse_TryCatchStatement()
  56497. {
  56498. eventHandler.startNonterminal("TryCatchStatement", e0);
  56499. shift(250); // 'try'
  56500. lookahead1W(87); // S^WS | '(:' | '{'
  56501. whitespace();
  56502. parse_BlockStatement();
  56503. for (;;)
  56504. {
  56505. lookahead1W(36); // S^WS | '(:' | 'catch'
  56506. shift(91); // 'catch'
  56507. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56508. whitespace();
  56509. parse_CatchErrorList();
  56510. whitespace();
  56511. parse_BlockStatement();
  56512. lookahead1W(277); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56513. switch (l1)
  56514. {
  56515. case 91: // 'catch'
  56516. lookahead2W(278); // Wildcard | EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' |
  56517. break;
  56518. default:
  56519. lk = l1;
  56520. }
  56521. if (lk == 38491 // 'catch' 'and'
  56522. || lk == 45659 // 'catch' 'cast'
  56523. || lk == 46171 // 'catch' 'castable'
  56524. || lk == 60507 // 'catch' 'div'
  56525. || lk == 65627 // 'catch' 'eq'
  56526. || lk == 67163 // 'catch' 'except'
  56527. || lk == 74843 // 'catch' 'ge'
  56528. || lk == 76891 // 'catch' 'gt'
  56529. || lk == 77403 // 'catch' 'idiv'
  56530. || lk == 82011 // 'catch' 'instance'
  56531. || lk == 83035 // 'catch' 'intersect'
  56532. || lk == 84059 // 'catch' 'is'
  56533. || lk == 88155 // 'catch' 'le'
  56534. || lk == 91227 // 'catch' 'lt'
  56535. || lk == 92251 // 'catch' 'mod'
  56536. || lk == 95323 // 'catch' 'ne'
  56537. || lk == 102491 // 'catch' 'or'
  56538. || lk == 127067 // 'catch' 'to'
  56539. || lk == 127579 // 'catch' 'treat'
  56540. || lk == 130139) // 'catch' 'union'
  56541. {
  56542. lk = memoized(8, e0);
  56543. if (lk == 0)
  56544. {
  56545. var b0A = b0; var e0A = e0; var l1A = l1;
  56546. var b1A = b1; var e1A = e1; var l2A = l2;
  56547. var b2A = b2; var e2A = e2;
  56548. try
  56549. {
  56550. lookahead1W(36); // S^WS | '(:' | 'catch'
  56551. shiftT(91); // 'catch'
  56552. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56553. try_CatchErrorList();
  56554. try_BlockStatement();
  56555. lk = -1;
  56556. }
  56557. catch (p1A)
  56558. {
  56559. lk = -2;
  56560. }
  56561. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56562. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56563. b2 = b2A; e2 = e2A; end = e2A; }}
  56564. memoize(8, e0, lk);
  56565. }
  56566. }
  56567. if (lk != -1
  56568. && lk != 2651 // 'catch' Wildcard
  56569. && lk != 3163 // 'catch' EQName^Token
  56570. && lk != 35931 // 'catch' 'after'
  56571. && lk != 36955 // 'catch' 'allowing'
  56572. && lk != 37467 // 'catch' 'ancestor'
  56573. && lk != 37979 // 'catch' 'ancestor-or-self'
  56574. && lk != 39515 // 'catch' 'append'
  56575. && lk != 40027 // 'catch' 'array'
  56576. && lk != 40539 // 'catch' 'as'
  56577. && lk != 41051 // 'catch' 'ascending'
  56578. && lk != 41563 // 'catch' 'at'
  56579. && lk != 42075 // 'catch' 'attribute'
  56580. && lk != 42587 // 'catch' 'base-uri'
  56581. && lk != 43099 // 'catch' 'before'
  56582. && lk != 43611 // 'catch' 'boundary-space'
  56583. && lk != 44123 // 'catch' 'break'
  56584. && lk != 45147 // 'catch' 'case'
  56585. && lk != 46683 // 'catch' 'catch'
  56586. && lk != 47707 // 'catch' 'child'
  56587. && lk != 48219 // 'catch' 'collation'
  56588. && lk != 49243 // 'catch' 'comment'
  56589. && lk != 49755 // 'catch' 'constraint'
  56590. && lk != 50267 // 'catch' 'construction'
  56591. && lk != 51803 // 'catch' 'context'
  56592. && lk != 52315 // 'catch' 'continue'
  56593. && lk != 52827 // 'catch' 'copy'
  56594. && lk != 53339 // 'catch' 'copy-namespaces'
  56595. && lk != 53851 // 'catch' 'count'
  56596. && lk != 54363 // 'catch' 'decimal-format'
  56597. && lk != 55387 // 'catch' 'declare'
  56598. && lk != 55899 // 'catch' 'default'
  56599. && lk != 56411 // 'catch' 'delete'
  56600. && lk != 56923 // 'catch' 'descendant'
  56601. && lk != 57435 // 'catch' 'descendant-or-self'
  56602. && lk != 57947 // 'catch' 'descending'
  56603. && lk != 61019 // 'catch' 'document'
  56604. && lk != 61531 // 'catch' 'document-node'
  56605. && lk != 62043 // 'catch' 'element'
  56606. && lk != 62555 // 'catch' 'else'
  56607. && lk != 63067 // 'catch' 'empty'
  56608. && lk != 63579 // 'catch' 'empty-sequence'
  56609. && lk != 64091 // 'catch' 'encoding'
  56610. && lk != 64603 // 'catch' 'end'
  56611. && lk != 66139 // 'catch' 'every'
  56612. && lk != 67675 // 'catch' 'exit'
  56613. && lk != 68187 // 'catch' 'external'
  56614. && lk != 68699 // 'catch' 'first'
  56615. && lk != 69211 // 'catch' 'following'
  56616. && lk != 69723 // 'catch' 'following-sibling'
  56617. && lk != 70235 // 'catch' 'for'
  56618. && lk != 72283 // 'catch' 'ft-option'
  56619. && lk != 74331 // 'catch' 'function'
  56620. && lk != 75867 // 'catch' 'group'
  56621. && lk != 77915 // 'catch' 'if'
  56622. && lk != 78427 // 'catch' 'import'
  56623. && lk != 78939 // 'catch' 'in'
  56624. && lk != 79451 // 'catch' 'index'
  56625. && lk != 81499 // 'catch' 'insert'
  56626. && lk != 82523 // 'catch' 'integrity'
  56627. && lk != 83547 // 'catch' 'into'
  56628. && lk != 84571 // 'catch' 'item'
  56629. && lk != 85083 // 'catch' 'json'
  56630. && lk != 85595 // 'catch' 'json-item'
  56631. && lk != 87131 // 'catch' 'last'
  56632. && lk != 87643 // 'catch' 'lax'
  56633. && lk != 89179 // 'catch' 'let'
  56634. && lk != 90203 // 'catch' 'loop'
  56635. && lk != 92763 // 'catch' 'modify'
  56636. && lk != 93275 // 'catch' 'module'
  56637. && lk != 94299 // 'catch' 'namespace'
  56638. && lk != 94811 // 'catch' 'namespace-node'
  56639. && lk != 97883 // 'catch' 'node'
  56640. && lk != 98395 // 'catch' 'nodes'
  56641. && lk != 99419 // 'catch' 'object'
  56642. && lk != 101467 // 'catch' 'only'
  56643. && lk != 101979 // 'catch' 'option'
  56644. && lk != 103003 // 'catch' 'order'
  56645. && lk != 103515 // 'catch' 'ordered'
  56646. && lk != 104027 // 'catch' 'ordering'
  56647. && lk != 105563 // 'catch' 'parent'
  56648. && lk != 108635 // 'catch' 'preceding'
  56649. && lk != 109147 // 'catch' 'preceding-sibling'
  56650. && lk != 110683 // 'catch' 'processing-instruction'
  56651. && lk != 111707 // 'catch' 'rename'
  56652. && lk != 112219 // 'catch' 'replace'
  56653. && lk != 112731 // 'catch' 'return'
  56654. && lk != 113243 // 'catch' 'returning'
  56655. && lk != 113755 // 'catch' 'revalidation'
  56656. && lk != 114779 // 'catch' 'satisfies'
  56657. && lk != 115291 // 'catch' 'schema'
  56658. && lk != 115803 // 'catch' 'schema-attribute'
  56659. && lk != 116315 // 'catch' 'schema-element'
  56660. && lk != 116827 // 'catch' 'score'
  56661. && lk != 117339 // 'catch' 'self'
  56662. && lk != 119899 // 'catch' 'sliding'
  56663. && lk != 120411 // 'catch' 'some'
  56664. && lk != 120923 // 'catch' 'stable'
  56665. && lk != 121435 // 'catch' 'start'
  56666. && lk != 122971 // 'catch' 'strict'
  56667. && lk != 123995 // 'catch' 'structured-item'
  56668. && lk != 124507 // 'catch' 'switch'
  56669. && lk != 125019 // 'catch' 'text'
  56670. && lk != 128091 // 'catch' 'try'
  56671. && lk != 128603 // 'catch' 'tumbling'
  56672. && lk != 129115 // 'catch' 'type'
  56673. && lk != 129627 // 'catch' 'typeswitch'
  56674. && lk != 131163 // 'catch' 'unordered'
  56675. && lk != 131675 // 'catch' 'updating'
  56676. && lk != 133211 // 'catch' 'validate'
  56677. && lk != 133723 // 'catch' 'value'
  56678. && lk != 134235 // 'catch' 'variable'
  56679. && lk != 134747 // 'catch' 'version'
  56680. && lk != 136283 // 'catch' 'where'
  56681. && lk != 136795 // 'catch' 'while'
  56682. && lk != 138331 // 'catch' 'with'
  56683. && lk != 140379) // 'catch' 'xquery'
  56684. {
  56685. break;
  56686. }
  56687. }
  56688. eventHandler.endNonterminal("TryCatchStatement", e0);
  56689. }
  56690. function try_TryCatchStatement()
  56691. {
  56692. shiftT(250); // 'try'
  56693. lookahead1W(87); // S^WS | '(:' | '{'
  56694. try_BlockStatement();
  56695. lookahead1W(36); // S^WS | '(:' | 'catch'
  56696. shiftT(91); // 'catch'
  56697. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56698. try_CatchErrorList();
  56699. try_BlockStatement();
  56700. for (;;)
  56701. {
  56702. lookahead1W(277); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56703. switch (l1)
  56704. {
  56705. case 91: // 'catch'
  56706. lookahead2W(278); // Wildcard | EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' |
  56707. break;
  56708. default:
  56709. lk = l1;
  56710. }
  56711. if (lk == 38491 // 'catch' 'and'
  56712. || lk == 45659 // 'catch' 'cast'
  56713. || lk == 46171 // 'catch' 'castable'
  56714. || lk == 60507 // 'catch' 'div'
  56715. || lk == 65627 // 'catch' 'eq'
  56716. || lk == 67163 // 'catch' 'except'
  56717. || lk == 74843 // 'catch' 'ge'
  56718. || lk == 76891 // 'catch' 'gt'
  56719. || lk == 77403 // 'catch' 'idiv'
  56720. || lk == 82011 // 'catch' 'instance'
  56721. || lk == 83035 // 'catch' 'intersect'
  56722. || lk == 84059 // 'catch' 'is'
  56723. || lk == 88155 // 'catch' 'le'
  56724. || lk == 91227 // 'catch' 'lt'
  56725. || lk == 92251 // 'catch' 'mod'
  56726. || lk == 95323 // 'catch' 'ne'
  56727. || lk == 102491 // 'catch' 'or'
  56728. || lk == 127067 // 'catch' 'to'
  56729. || lk == 127579 // 'catch' 'treat'
  56730. || lk == 130139) // 'catch' 'union'
  56731. {
  56732. lk = memoized(8, e0);
  56733. if (lk == 0)
  56734. {
  56735. var b0A = b0; var e0A = e0; var l1A = l1;
  56736. var b1A = b1; var e1A = e1; var l2A = l2;
  56737. var b2A = b2; var e2A = e2;
  56738. try
  56739. {
  56740. lookahead1W(36); // S^WS | '(:' | 'catch'
  56741. shiftT(91); // 'catch'
  56742. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56743. try_CatchErrorList();
  56744. try_BlockStatement();
  56745. memoize(8, e0A, -1);
  56746. continue;
  56747. }
  56748. catch (p1A)
  56749. {
  56750. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  56751. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  56752. b2 = b2A; e2 = e2A; end = e2A; }}
  56753. memoize(8, e0A, -2);
  56754. break;
  56755. }
  56756. }
  56757. }
  56758. if (lk != -1
  56759. && lk != 2651 // 'catch' Wildcard
  56760. && lk != 3163 // 'catch' EQName^Token
  56761. && lk != 35931 // 'catch' 'after'
  56762. && lk != 36955 // 'catch' 'allowing'
  56763. && lk != 37467 // 'catch' 'ancestor'
  56764. && lk != 37979 // 'catch' 'ancestor-or-self'
  56765. && lk != 39515 // 'catch' 'append'
  56766. && lk != 40027 // 'catch' 'array'
  56767. && lk != 40539 // 'catch' 'as'
  56768. && lk != 41051 // 'catch' 'ascending'
  56769. && lk != 41563 // 'catch' 'at'
  56770. && lk != 42075 // 'catch' 'attribute'
  56771. && lk != 42587 // 'catch' 'base-uri'
  56772. && lk != 43099 // 'catch' 'before'
  56773. && lk != 43611 // 'catch' 'boundary-space'
  56774. && lk != 44123 // 'catch' 'break'
  56775. && lk != 45147 // 'catch' 'case'
  56776. && lk != 46683 // 'catch' 'catch'
  56777. && lk != 47707 // 'catch' 'child'
  56778. && lk != 48219 // 'catch' 'collation'
  56779. && lk != 49243 // 'catch' 'comment'
  56780. && lk != 49755 // 'catch' 'constraint'
  56781. && lk != 50267 // 'catch' 'construction'
  56782. && lk != 51803 // 'catch' 'context'
  56783. && lk != 52315 // 'catch' 'continue'
  56784. && lk != 52827 // 'catch' 'copy'
  56785. && lk != 53339 // 'catch' 'copy-namespaces'
  56786. && lk != 53851 // 'catch' 'count'
  56787. && lk != 54363 // 'catch' 'decimal-format'
  56788. && lk != 55387 // 'catch' 'declare'
  56789. && lk != 55899 // 'catch' 'default'
  56790. && lk != 56411 // 'catch' 'delete'
  56791. && lk != 56923 // 'catch' 'descendant'
  56792. && lk != 57435 // 'catch' 'descendant-or-self'
  56793. && lk != 57947 // 'catch' 'descending'
  56794. && lk != 61019 // 'catch' 'document'
  56795. && lk != 61531 // 'catch' 'document-node'
  56796. && lk != 62043 // 'catch' 'element'
  56797. && lk != 62555 // 'catch' 'else'
  56798. && lk != 63067 // 'catch' 'empty'
  56799. && lk != 63579 // 'catch' 'empty-sequence'
  56800. && lk != 64091 // 'catch' 'encoding'
  56801. && lk != 64603 // 'catch' 'end'
  56802. && lk != 66139 // 'catch' 'every'
  56803. && lk != 67675 // 'catch' 'exit'
  56804. && lk != 68187 // 'catch' 'external'
  56805. && lk != 68699 // 'catch' 'first'
  56806. && lk != 69211 // 'catch' 'following'
  56807. && lk != 69723 // 'catch' 'following-sibling'
  56808. && lk != 70235 // 'catch' 'for'
  56809. && lk != 72283 // 'catch' 'ft-option'
  56810. && lk != 74331 // 'catch' 'function'
  56811. && lk != 75867 // 'catch' 'group'
  56812. && lk != 77915 // 'catch' 'if'
  56813. && lk != 78427 // 'catch' 'import'
  56814. && lk != 78939 // 'catch' 'in'
  56815. && lk != 79451 // 'catch' 'index'
  56816. && lk != 81499 // 'catch' 'insert'
  56817. && lk != 82523 // 'catch' 'integrity'
  56818. && lk != 83547 // 'catch' 'into'
  56819. && lk != 84571 // 'catch' 'item'
  56820. && lk != 85083 // 'catch' 'json'
  56821. && lk != 85595 // 'catch' 'json-item'
  56822. && lk != 87131 // 'catch' 'last'
  56823. && lk != 87643 // 'catch' 'lax'
  56824. && lk != 89179 // 'catch' 'let'
  56825. && lk != 90203 // 'catch' 'loop'
  56826. && lk != 92763 // 'catch' 'modify'
  56827. && lk != 93275 // 'catch' 'module'
  56828. && lk != 94299 // 'catch' 'namespace'
  56829. && lk != 94811 // 'catch' 'namespace-node'
  56830. && lk != 97883 // 'catch' 'node'
  56831. && lk != 98395 // 'catch' 'nodes'
  56832. && lk != 99419 // 'catch' 'object'
  56833. && lk != 101467 // 'catch' 'only'
  56834. && lk != 101979 // 'catch' 'option'
  56835. && lk != 103003 // 'catch' 'order'
  56836. && lk != 103515 // 'catch' 'ordered'
  56837. && lk != 104027 // 'catch' 'ordering'
  56838. && lk != 105563 // 'catch' 'parent'
  56839. && lk != 108635 // 'catch' 'preceding'
  56840. && lk != 109147 // 'catch' 'preceding-sibling'
  56841. && lk != 110683 // 'catch' 'processing-instruction'
  56842. && lk != 111707 // 'catch' 'rename'
  56843. && lk != 112219 // 'catch' 'replace'
  56844. && lk != 112731 // 'catch' 'return'
  56845. && lk != 113243 // 'catch' 'returning'
  56846. && lk != 113755 // 'catch' 'revalidation'
  56847. && lk != 114779 // 'catch' 'satisfies'
  56848. && lk != 115291 // 'catch' 'schema'
  56849. && lk != 115803 // 'catch' 'schema-attribute'
  56850. && lk != 116315 // 'catch' 'schema-element'
  56851. && lk != 116827 // 'catch' 'score'
  56852. && lk != 117339 // 'catch' 'self'
  56853. && lk != 119899 // 'catch' 'sliding'
  56854. && lk != 120411 // 'catch' 'some'
  56855. && lk != 120923 // 'catch' 'stable'
  56856. && lk != 121435 // 'catch' 'start'
  56857. && lk != 122971 // 'catch' 'strict'
  56858. && lk != 123995 // 'catch' 'structured-item'
  56859. && lk != 124507 // 'catch' 'switch'
  56860. && lk != 125019 // 'catch' 'text'
  56861. && lk != 128091 // 'catch' 'try'
  56862. && lk != 128603 // 'catch' 'tumbling'
  56863. && lk != 129115 // 'catch' 'type'
  56864. && lk != 129627 // 'catch' 'typeswitch'
  56865. && lk != 131163 // 'catch' 'unordered'
  56866. && lk != 131675 // 'catch' 'updating'
  56867. && lk != 133211 // 'catch' 'validate'
  56868. && lk != 133723 // 'catch' 'value'
  56869. && lk != 134235 // 'catch' 'variable'
  56870. && lk != 134747 // 'catch' 'version'
  56871. && lk != 136283 // 'catch' 'where'
  56872. && lk != 136795 // 'catch' 'while'
  56873. && lk != 138331 // 'catch' 'with'
  56874. && lk != 140379) // 'catch' 'xquery'
  56875. {
  56876. break;
  56877. }
  56878. lookahead1W(36); // S^WS | '(:' | 'catch'
  56879. shiftT(91); // 'catch'
  56880. lookahead1W(256); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56881. try_CatchErrorList();
  56882. try_BlockStatement();
  56883. }
  56884. }
  56885. function parse_TypeswitchStatement()
  56886. {
  56887. eventHandler.startNonterminal("TypeswitchStatement", e0);
  56888. shift(253); // 'typeswitch'
  56889. lookahead1W(22); // S^WS | '(' | '(:'
  56890. shift(34); // '('
  56891. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56892. whitespace();
  56893. parse_Expr();
  56894. shift(37); // ')'
  56895. for (;;)
  56896. {
  56897. lookahead1W(35); // S^WS | '(:' | 'case'
  56898. whitespace();
  56899. parse_CaseStatement();
  56900. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  56901. if (l1 != 88) // 'case'
  56902. {
  56903. break;
  56904. }
  56905. }
  56906. shift(109); // 'default'
  56907. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  56908. if (l1 == 31) // '$'
  56909. {
  56910. shift(31); // '$'
  56911. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56912. whitespace();
  56913. parse_VarName();
  56914. }
  56915. lookahead1W(70); // S^WS | '(:' | 'return'
  56916. shift(220); // 'return'
  56917. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56918. whitespace();
  56919. parse_Statement();
  56920. eventHandler.endNonterminal("TypeswitchStatement", e0);
  56921. }
  56922. function try_TypeswitchStatement()
  56923. {
  56924. shiftT(253); // 'typeswitch'
  56925. lookahead1W(22); // S^WS | '(' | '(:'
  56926. shiftT(34); // '('
  56927. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56928. try_Expr();
  56929. shiftT(37); // ')'
  56930. for (;;)
  56931. {
  56932. lookahead1W(35); // S^WS | '(:' | 'case'
  56933. try_CaseStatement();
  56934. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  56935. if (l1 != 88) // 'case'
  56936. {
  56937. break;
  56938. }
  56939. }
  56940. shiftT(109); // 'default'
  56941. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  56942. if (l1 == 31) // '$'
  56943. {
  56944. shiftT(31); // '$'
  56945. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56946. try_VarName();
  56947. }
  56948. lookahead1W(70); // S^WS | '(:' | 'return'
  56949. shiftT(220); // 'return'
  56950. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56951. try_Statement();
  56952. }
  56953. function parse_CaseStatement()
  56954. {
  56955. eventHandler.startNonterminal("CaseStatement", e0);
  56956. shift(88); // 'case'
  56957. lookahead1W(261); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  56958. if (l1 == 31) // '$'
  56959. {
  56960. shift(31); // '$'
  56961. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56962. whitespace();
  56963. parse_VarName();
  56964. lookahead1W(30); // S^WS | '(:' | 'as'
  56965. shift(79); // 'as'
  56966. }
  56967. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  56968. whitespace();
  56969. parse_SequenceType();
  56970. lookahead1W(70); // S^WS | '(:' | 'return'
  56971. shift(220); // 'return'
  56972. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56973. whitespace();
  56974. parse_Statement();
  56975. eventHandler.endNonterminal("CaseStatement", e0);
  56976. }
  56977. function try_CaseStatement()
  56978. {
  56979. shiftT(88); // 'case'
  56980. lookahead1W(261); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  56981. if (l1 == 31) // '$'
  56982. {
  56983. shiftT(31); // '$'
  56984. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  56985. try_VarName();
  56986. lookahead1W(30); // S^WS | '(:' | 'as'
  56987. shiftT(79); // 'as'
  56988. }
  56989. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  56990. try_SequenceType();
  56991. lookahead1W(70); // S^WS | '(:' | 'return'
  56992. shiftT(220); // 'return'
  56993. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  56994. try_Statement();
  56995. }
  56996. function parse_VarDeclStatement()
  56997. {
  56998. eventHandler.startNonterminal("VarDeclStatement", e0);
  56999. for (;;)
  57000. {
  57001. lookahead1W(98); // S^WS | '%' | '(:' | 'variable'
  57002. if (l1 != 32) // '%'
  57003. {
  57004. break;
  57005. }
  57006. whitespace();
  57007. parse_Annotation();
  57008. }
  57009. shift(262); // 'variable'
  57010. lookahead1W(21); // S^WS | '$' | '(:'
  57011. shift(31); // '$'
  57012. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57013. whitespace();
  57014. parse_VarName();
  57015. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  57016. if (l1 == 79) // 'as'
  57017. {
  57018. whitespace();
  57019. parse_TypeDeclaration();
  57020. }
  57021. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  57022. if (l1 == 52) // ':='
  57023. {
  57024. shift(52); // ':='
  57025. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57026. whitespace();
  57027. parse_ExprSingle();
  57028. }
  57029. for (;;)
  57030. {
  57031. if (l1 != 41) // ','
  57032. {
  57033. break;
  57034. }
  57035. shift(41); // ','
  57036. lookahead1W(21); // S^WS | '$' | '(:'
  57037. shift(31); // '$'
  57038. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57039. whitespace();
  57040. parse_VarName();
  57041. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  57042. if (l1 == 79) // 'as'
  57043. {
  57044. whitespace();
  57045. parse_TypeDeclaration();
  57046. }
  57047. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  57048. if (l1 == 52) // ':='
  57049. {
  57050. shift(52); // ':='
  57051. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57052. whitespace();
  57053. parse_ExprSingle();
  57054. }
  57055. }
  57056. shift(53); // ';'
  57057. eventHandler.endNonterminal("VarDeclStatement", e0);
  57058. }
  57059. function try_VarDeclStatement()
  57060. {
  57061. for (;;)
  57062. {
  57063. lookahead1W(98); // S^WS | '%' | '(:' | 'variable'
  57064. if (l1 != 32) // '%'
  57065. {
  57066. break;
  57067. }
  57068. try_Annotation();
  57069. }
  57070. shiftT(262); // 'variable'
  57071. lookahead1W(21); // S^WS | '$' | '(:'
  57072. shiftT(31); // '$'
  57073. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57074. try_VarName();
  57075. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  57076. if (l1 == 79) // 'as'
  57077. {
  57078. try_TypeDeclaration();
  57079. }
  57080. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  57081. if (l1 == 52) // ':='
  57082. {
  57083. shiftT(52); // ':='
  57084. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57085. try_ExprSingle();
  57086. }
  57087. for (;;)
  57088. {
  57089. if (l1 != 41) // ','
  57090. {
  57091. break;
  57092. }
  57093. shiftT(41); // ','
  57094. lookahead1W(21); // S^WS | '$' | '(:'
  57095. shiftT(31); // '$'
  57096. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57097. try_VarName();
  57098. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  57099. if (l1 == 79) // 'as'
  57100. {
  57101. try_TypeDeclaration();
  57102. }
  57103. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  57104. if (l1 == 52) // ':='
  57105. {
  57106. shiftT(52); // ':='
  57107. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57108. try_ExprSingle();
  57109. }
  57110. }
  57111. shiftT(53); // ';'
  57112. }
  57113. function parse_WhileStatement()
  57114. {
  57115. eventHandler.startNonterminal("WhileStatement", e0);
  57116. shift(267); // 'while'
  57117. lookahead1W(22); // S^WS | '(' | '(:'
  57118. shift(34); // '('
  57119. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57120. whitespace();
  57121. parse_Expr();
  57122. shift(37); // ')'
  57123. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57124. whitespace();
  57125. parse_Statement();
  57126. eventHandler.endNonterminal("WhileStatement", e0);
  57127. }
  57128. function try_WhileStatement()
  57129. {
  57130. shiftT(267); // 'while'
  57131. lookahead1W(22); // S^WS | '(' | '(:'
  57132. shiftT(34); // '('
  57133. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57134. try_Expr();
  57135. shiftT(37); // ')'
  57136. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57137. try_Statement();
  57138. }
  57139. function parse_VoidStatement()
  57140. {
  57141. eventHandler.startNonterminal("VoidStatement", e0);
  57142. shift(53); // ';'
  57143. eventHandler.endNonterminal("VoidStatement", e0);
  57144. }
  57145. function try_VoidStatement()
  57146. {
  57147. shiftT(53); // ';'
  57148. }
  57149. function parse_ExprSingle()
  57150. {
  57151. eventHandler.startNonterminal("ExprSingle", e0);
  57152. switch (l1)
  57153. {
  57154. case 137: // 'for'
  57155. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57156. break;
  57157. case 174: // 'let'
  57158. lookahead2W(232); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57159. break;
  57160. case 250: // 'try'
  57161. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57162. break;
  57163. case 152: // 'if'
  57164. case 243: // 'switch'
  57165. case 253: // 'typeswitch'
  57166. lookahead2W(228); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57167. break;
  57168. default:
  57169. lk = l1;
  57170. }
  57171. switch (lk)
  57172. {
  57173. case 16009: // 'for' '$'
  57174. case 16046: // 'let' '$'
  57175. case 116910: // 'let' 'score'
  57176. case 119945: // 'for' 'sliding'
  57177. case 128649: // 'for' 'tumbling'
  57178. parse_FLWORExpr();
  57179. break;
  57180. case 17560: // 'if' '('
  57181. parse_IfExpr();
  57182. break;
  57183. case 17651: // 'switch' '('
  57184. parse_SwitchExpr();
  57185. break;
  57186. case 141562: // 'try' '{'
  57187. parse_TryCatchExpr();
  57188. break;
  57189. case 17661: // 'typeswitch' '('
  57190. parse_TypeswitchExpr();
  57191. break;
  57192. default:
  57193. parse_ExprSimple();
  57194. }
  57195. eventHandler.endNonterminal("ExprSingle", e0);
  57196. }
  57197. function try_ExprSingle()
  57198. {
  57199. switch (l1)
  57200. {
  57201. case 137: // 'for'
  57202. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57203. break;
  57204. case 174: // 'let'
  57205. lookahead2W(232); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57206. break;
  57207. case 250: // 'try'
  57208. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57209. break;
  57210. case 152: // 'if'
  57211. case 243: // 'switch'
  57212. case 253: // 'typeswitch'
  57213. lookahead2W(228); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57214. break;
  57215. default:
  57216. lk = l1;
  57217. }
  57218. switch (lk)
  57219. {
  57220. case 16009: // 'for' '$'
  57221. case 16046: // 'let' '$'
  57222. case 116910: // 'let' 'score'
  57223. case 119945: // 'for' 'sliding'
  57224. case 128649: // 'for' 'tumbling'
  57225. try_FLWORExpr();
  57226. break;
  57227. case 17560: // 'if' '('
  57228. try_IfExpr();
  57229. break;
  57230. case 17651: // 'switch' '('
  57231. try_SwitchExpr();
  57232. break;
  57233. case 141562: // 'try' '{'
  57234. try_TryCatchExpr();
  57235. break;
  57236. case 17661: // 'typeswitch' '('
  57237. try_TypeswitchExpr();
  57238. break;
  57239. default:
  57240. try_ExprSimple();
  57241. }
  57242. }
  57243. function parse_ExprSimple()
  57244. {
  57245. eventHandler.startNonterminal("ExprSimple", e0);
  57246. switch (l1)
  57247. {
  57248. case 77: // 'append'
  57249. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57250. break;
  57251. case 218: // 'rename'
  57252. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57253. break;
  57254. case 219: // 'replace'
  57255. lookahead2W(234); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57256. break;
  57257. case 110: // 'delete'
  57258. case 159: // 'insert'
  57259. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57260. break;
  57261. case 103: // 'copy'
  57262. case 129: // 'every'
  57263. case 235: // 'some'
  57264. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57265. break;
  57266. default:
  57267. lk = l1;
  57268. }
  57269. if (lk == 133851) // 'replace' 'value'
  57270. {
  57271. lk = memoized(9, e0);
  57272. if (lk == 0)
  57273. {
  57274. var b0A = b0; var e0A = e0; var l1A = l1;
  57275. var b1A = b1; var e1A = e1; var l2A = l2;
  57276. var b2A = b2; var e2A = e2;
  57277. try
  57278. {
  57279. try_ReplaceExpr();
  57280. lk = -6;
  57281. }
  57282. catch (p6A)
  57283. {
  57284. lk = -11;
  57285. }
  57286. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  57287. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  57288. b2 = b2A; e2 = e2A; end = e2A; }}
  57289. memoize(9, e0, lk);
  57290. }
  57291. }
  57292. switch (lk)
  57293. {
  57294. case 16001: // 'every' '$'
  57295. case 16107: // 'some' '$'
  57296. parse_QuantifiedExpr();
  57297. break;
  57298. case 97951: // 'insert' 'node'
  57299. case 98463: // 'insert' 'nodes'
  57300. parse_InsertExpr();
  57301. break;
  57302. case 97902: // 'delete' 'node'
  57303. case 98414: // 'delete' 'nodes'
  57304. parse_DeleteExpr();
  57305. break;
  57306. case 98010: // 'rename' 'node'
  57307. parse_RenameExpr();
  57308. break;
  57309. case -6:
  57310. case 98011: // 'replace' 'node'
  57311. parse_ReplaceExpr();
  57312. break;
  57313. case 15975: // 'copy' '$'
  57314. parse_TransformExpr();
  57315. break;
  57316. case 85102: // 'delete' 'json'
  57317. parse_JSONDeleteExpr();
  57318. break;
  57319. case 85151: // 'insert' 'json'
  57320. parse_JSONInsertExpr();
  57321. break;
  57322. case 85210: // 'rename' 'json'
  57323. parse_JSONRenameExpr();
  57324. break;
  57325. case -11:
  57326. parse_JSONReplaceExpr();
  57327. break;
  57328. case 85069: // 'append' 'json'
  57329. parse_JSONAppendExpr();
  57330. break;
  57331. default:
  57332. parse_OrExpr();
  57333. }
  57334. eventHandler.endNonterminal("ExprSimple", e0);
  57335. }
  57336. function try_ExprSimple()
  57337. {
  57338. switch (l1)
  57339. {
  57340. case 77: // 'append'
  57341. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57342. break;
  57343. case 218: // 'rename'
  57344. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57345. break;
  57346. case 219: // 'replace'
  57347. lookahead2W(234); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57348. break;
  57349. case 110: // 'delete'
  57350. case 159: // 'insert'
  57351. lookahead2W(236); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  57352. break;
  57353. case 103: // 'copy'
  57354. case 129: // 'every'
  57355. case 235: // 'some'
  57356. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  57357. break;
  57358. default:
  57359. lk = l1;
  57360. }
  57361. if (lk == 133851) // 'replace' 'value'
  57362. {
  57363. lk = memoized(9, e0);
  57364. if (lk == 0)
  57365. {
  57366. var b0A = b0; var e0A = e0; var l1A = l1;
  57367. var b1A = b1; var e1A = e1; var l2A = l2;
  57368. var b2A = b2; var e2A = e2;
  57369. try
  57370. {
  57371. try_ReplaceExpr();
  57372. memoize(9, e0A, -6);
  57373. lk = -13;
  57374. }
  57375. catch (p6A)
  57376. {
  57377. lk = -11;
  57378. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  57379. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  57380. b2 = b2A; e2 = e2A; end = e2A; }}
  57381. memoize(9, e0A, -11);
  57382. }
  57383. }
  57384. }
  57385. switch (lk)
  57386. {
  57387. case 16001: // 'every' '$'
  57388. case 16107: // 'some' '$'
  57389. try_QuantifiedExpr();
  57390. break;
  57391. case 97951: // 'insert' 'node'
  57392. case 98463: // 'insert' 'nodes'
  57393. try_InsertExpr();
  57394. break;
  57395. case 97902: // 'delete' 'node'
  57396. case 98414: // 'delete' 'nodes'
  57397. try_DeleteExpr();
  57398. break;
  57399. case 98010: // 'rename' 'node'
  57400. try_RenameExpr();
  57401. break;
  57402. case -6:
  57403. case 98011: // 'replace' 'node'
  57404. try_ReplaceExpr();
  57405. break;
  57406. case 15975: // 'copy' '$'
  57407. try_TransformExpr();
  57408. break;
  57409. case 85102: // 'delete' 'json'
  57410. try_JSONDeleteExpr();
  57411. break;
  57412. case 85151: // 'insert' 'json'
  57413. try_JSONInsertExpr();
  57414. break;
  57415. case 85210: // 'rename' 'json'
  57416. try_JSONRenameExpr();
  57417. break;
  57418. case -11:
  57419. try_JSONReplaceExpr();
  57420. break;
  57421. case 85069: // 'append' 'json'
  57422. try_JSONAppendExpr();
  57423. break;
  57424. case -13:
  57425. break;
  57426. default:
  57427. try_OrExpr();
  57428. }
  57429. }
  57430. function parse_JSONDeleteExpr()
  57431. {
  57432. eventHandler.startNonterminal("JSONDeleteExpr", e0);
  57433. shift(110); // 'delete'
  57434. lookahead1W(56); // S^WS | '(:' | 'json'
  57435. shift(166); // 'json'
  57436. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57437. whitespace();
  57438. parse_PostfixExpr();
  57439. eventHandler.endNonterminal("JSONDeleteExpr", e0);
  57440. }
  57441. function try_JSONDeleteExpr()
  57442. {
  57443. shiftT(110); // 'delete'
  57444. lookahead1W(56); // S^WS | '(:' | 'json'
  57445. shiftT(166); // 'json'
  57446. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57447. try_PostfixExpr();
  57448. }
  57449. function parse_JSONInsertExpr()
  57450. {
  57451. eventHandler.startNonterminal("JSONInsertExpr", e0);
  57452. switch (l1)
  57453. {
  57454. case 159: // 'insert'
  57455. lookahead2W(56); // S^WS | '(:' | 'json'
  57456. break;
  57457. default:
  57458. lk = l1;
  57459. }
  57460. lk = memoized(10, e0);
  57461. if (lk == 0)
  57462. {
  57463. var b0A = b0; var e0A = e0; var l1A = l1;
  57464. var b1A = b1; var e1A = e1; var l2A = l2;
  57465. var b2A = b2; var e2A = e2;
  57466. try
  57467. {
  57468. shiftT(159); // 'insert'
  57469. lookahead1W(56); // S^WS | '(:' | 'json'
  57470. shiftT(166); // 'json'
  57471. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57472. try_ExprSingle();
  57473. shiftT(163); // 'into'
  57474. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57475. try_ExprSingle();
  57476. switch (l1)
  57477. {
  57478. case 81: // 'at'
  57479. lookahead2W(69); // S^WS | '(:' | 'position'
  57480. break;
  57481. default:
  57482. lk = l1;
  57483. }
  57484. if (lk == 108113) // 'at' 'position'
  57485. {
  57486. lk = memoized(11, e0);
  57487. if (lk == 0)
  57488. {
  57489. var b0B = b0; var e0B = e0; var l1B = l1;
  57490. var b1B = b1; var e1B = e1; var l2B = l2;
  57491. var b2B = b2; var e2B = e2;
  57492. try
  57493. {
  57494. shiftT(81); // 'at'
  57495. lookahead1W(69); // S^WS | '(:' | 'position'
  57496. shiftT(211); // 'position'
  57497. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57498. try_ExprSingle();
  57499. memoize(11, e0B, -1);
  57500. }
  57501. catch (p1B)
  57502. {
  57503. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  57504. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  57505. b2 = b2B; e2 = e2B; end = e2B; }}
  57506. memoize(11, e0B, -2);
  57507. }
  57508. lk = -2;
  57509. }
  57510. }
  57511. if (lk == -1)
  57512. {
  57513. shiftT(81); // 'at'
  57514. lookahead1W(69); // S^WS | '(:' | 'position'
  57515. shiftT(211); // 'position'
  57516. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57517. try_ExprSingle();
  57518. }
  57519. lk = -1;
  57520. }
  57521. catch (p1A)
  57522. {
  57523. lk = -2;
  57524. }
  57525. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  57526. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  57527. b2 = b2A; e2 = e2A; end = e2A; }}
  57528. memoize(10, e0, lk);
  57529. }
  57530. switch (lk)
  57531. {
  57532. case -1:
  57533. shift(159); // 'insert'
  57534. lookahead1W(56); // S^WS | '(:' | 'json'
  57535. shift(166); // 'json'
  57536. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57537. whitespace();
  57538. parse_ExprSingle();
  57539. shift(163); // 'into'
  57540. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57541. whitespace();
  57542. parse_ExprSingle();
  57543. switch (l1)
  57544. {
  57545. case 81: // 'at'
  57546. lookahead2W(69); // S^WS | '(:' | 'position'
  57547. break;
  57548. default:
  57549. lk = l1;
  57550. }
  57551. if (lk == 108113) // 'at' 'position'
  57552. {
  57553. lk = memoized(11, e0);
  57554. if (lk == 0)
  57555. {
  57556. var b0B = b0; var e0B = e0; var l1B = l1;
  57557. var b1B = b1; var e1B = e1; var l2B = l2;
  57558. var b2B = b2; var e2B = e2;
  57559. try
  57560. {
  57561. shiftT(81); // 'at'
  57562. lookahead1W(69); // S^WS | '(:' | 'position'
  57563. shiftT(211); // 'position'
  57564. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57565. try_ExprSingle();
  57566. lk = -1;
  57567. }
  57568. catch (p1B)
  57569. {
  57570. lk = -2;
  57571. }
  57572. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  57573. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  57574. b2 = b2B; e2 = e2B; end = e2B; }}
  57575. memoize(11, e0, lk);
  57576. }
  57577. }
  57578. if (lk == -1)
  57579. {
  57580. shift(81); // 'at'
  57581. lookahead1W(69); // S^WS | '(:' | 'position'
  57582. shift(211); // 'position'
  57583. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57584. whitespace();
  57585. parse_ExprSingle();
  57586. }
  57587. break;
  57588. default:
  57589. shift(159); // 'insert'
  57590. lookahead1W(56); // S^WS | '(:' | 'json'
  57591. shift(166); // 'json'
  57592. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57593. whitespace();
  57594. parse_PairConstructorList();
  57595. shift(163); // 'into'
  57596. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57597. whitespace();
  57598. parse_ExprSingle();
  57599. }
  57600. eventHandler.endNonterminal("JSONInsertExpr", e0);
  57601. }
  57602. function try_JSONInsertExpr()
  57603. {
  57604. switch (l1)
  57605. {
  57606. case 159: // 'insert'
  57607. lookahead2W(56); // S^WS | '(:' | 'json'
  57608. break;
  57609. default:
  57610. lk = l1;
  57611. }
  57612. lk = memoized(10, e0);
  57613. if (lk == 0)
  57614. {
  57615. var b0A = b0; var e0A = e0; var l1A = l1;
  57616. var b1A = b1; var e1A = e1; var l2A = l2;
  57617. var b2A = b2; var e2A = e2;
  57618. try
  57619. {
  57620. shiftT(159); // 'insert'
  57621. lookahead1W(56); // S^WS | '(:' | 'json'
  57622. shiftT(166); // 'json'
  57623. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57624. try_ExprSingle();
  57625. shiftT(163); // 'into'
  57626. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57627. try_ExprSingle();
  57628. switch (l1)
  57629. {
  57630. case 81: // 'at'
  57631. lookahead2W(69); // S^WS | '(:' | 'position'
  57632. break;
  57633. default:
  57634. lk = l1;
  57635. }
  57636. if (lk == 108113) // 'at' 'position'
  57637. {
  57638. lk = memoized(11, e0);
  57639. if (lk == 0)
  57640. {
  57641. var b0B = b0; var e0B = e0; var l1B = l1;
  57642. var b1B = b1; var e1B = e1; var l2B = l2;
  57643. var b2B = b2; var e2B = e2;
  57644. try
  57645. {
  57646. shiftT(81); // 'at'
  57647. lookahead1W(69); // S^WS | '(:' | 'position'
  57648. shiftT(211); // 'position'
  57649. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57650. try_ExprSingle();
  57651. memoize(11, e0B, -1);
  57652. }
  57653. catch (p1B)
  57654. {
  57655. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  57656. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  57657. b2 = b2B; e2 = e2B; end = e2B; }}
  57658. memoize(11, e0B, -2);
  57659. }
  57660. lk = -2;
  57661. }
  57662. }
  57663. if (lk == -1)
  57664. {
  57665. shiftT(81); // 'at'
  57666. lookahead1W(69); // S^WS | '(:' | 'position'
  57667. shiftT(211); // 'position'
  57668. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57669. try_ExprSingle();
  57670. }
  57671. memoize(10, e0A, -1);
  57672. lk = -3;
  57673. }
  57674. catch (p1A)
  57675. {
  57676. lk = -2;
  57677. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  57678. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  57679. b2 = b2A; e2 = e2A; end = e2A; }}
  57680. memoize(10, e0A, -2);
  57681. }
  57682. }
  57683. switch (lk)
  57684. {
  57685. case -1:
  57686. shiftT(159); // 'insert'
  57687. lookahead1W(56); // S^WS | '(:' | 'json'
  57688. shiftT(166); // 'json'
  57689. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57690. try_ExprSingle();
  57691. shiftT(163); // 'into'
  57692. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57693. try_ExprSingle();
  57694. switch (l1)
  57695. {
  57696. case 81: // 'at'
  57697. lookahead2W(69); // S^WS | '(:' | 'position'
  57698. break;
  57699. default:
  57700. lk = l1;
  57701. }
  57702. if (lk == 108113) // 'at' 'position'
  57703. {
  57704. lk = memoized(11, e0);
  57705. if (lk == 0)
  57706. {
  57707. var b0B = b0; var e0B = e0; var l1B = l1;
  57708. var b1B = b1; var e1B = e1; var l2B = l2;
  57709. var b2B = b2; var e2B = e2;
  57710. try
  57711. {
  57712. shiftT(81); // 'at'
  57713. lookahead1W(69); // S^WS | '(:' | 'position'
  57714. shiftT(211); // 'position'
  57715. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57716. try_ExprSingle();
  57717. memoize(11, e0B, -1);
  57718. }
  57719. catch (p1B)
  57720. {
  57721. b0 = b0B; e0 = e0B; l1 = l1B; if (l1 == 0) {end = e0B;} else {
  57722. b1 = b1B; e1 = e1B; l2 = l2B; if (l2 == 0) {end = e1B;} else {
  57723. b2 = b2B; e2 = e2B; end = e2B; }}
  57724. memoize(11, e0B, -2);
  57725. }
  57726. lk = -2;
  57727. }
  57728. }
  57729. if (lk == -1)
  57730. {
  57731. shiftT(81); // 'at'
  57732. lookahead1W(69); // S^WS | '(:' | 'position'
  57733. shiftT(211); // 'position'
  57734. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57735. try_ExprSingle();
  57736. }
  57737. break;
  57738. case -3:
  57739. break;
  57740. default:
  57741. shiftT(159); // 'insert'
  57742. lookahead1W(56); // S^WS | '(:' | 'json'
  57743. shiftT(166); // 'json'
  57744. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57745. try_PairConstructorList();
  57746. shiftT(163); // 'into'
  57747. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57748. try_ExprSingle();
  57749. }
  57750. }
  57751. function parse_JSONRenameExpr()
  57752. {
  57753. eventHandler.startNonterminal("JSONRenameExpr", e0);
  57754. shift(218); // 'rename'
  57755. lookahead1W(56); // S^WS | '(:' | 'json'
  57756. shift(166); // 'json'
  57757. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57758. whitespace();
  57759. parse_PostfixExpr();
  57760. shift(79); // 'as'
  57761. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57762. whitespace();
  57763. parse_ExprSingle();
  57764. eventHandler.endNonterminal("JSONRenameExpr", e0);
  57765. }
  57766. function try_JSONRenameExpr()
  57767. {
  57768. shiftT(218); // 'rename'
  57769. lookahead1W(56); // S^WS | '(:' | 'json'
  57770. shiftT(166); // 'json'
  57771. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57772. try_PostfixExpr();
  57773. shiftT(79); // 'as'
  57774. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57775. try_ExprSingle();
  57776. }
  57777. function parse_JSONReplaceExpr()
  57778. {
  57779. eventHandler.startNonterminal("JSONReplaceExpr", e0);
  57780. shift(219); // 'replace'
  57781. lookahead1W(82); // S^WS | '(:' | 'value'
  57782. shift(261); // 'value'
  57783. lookahead1W(64); // S^WS | '(:' | 'of'
  57784. shift(196); // 'of'
  57785. lookahead1W(56); // S^WS | '(:' | 'json'
  57786. shift(166); // 'json'
  57787. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57788. whitespace();
  57789. parse_PostfixExpr();
  57790. shift(270); // 'with'
  57791. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57792. whitespace();
  57793. parse_ExprSingle();
  57794. eventHandler.endNonterminal("JSONReplaceExpr", e0);
  57795. }
  57796. function try_JSONReplaceExpr()
  57797. {
  57798. shiftT(219); // 'replace'
  57799. lookahead1W(82); // S^WS | '(:' | 'value'
  57800. shiftT(261); // 'value'
  57801. lookahead1W(64); // S^WS | '(:' | 'of'
  57802. shiftT(196); // 'of'
  57803. lookahead1W(56); // S^WS | '(:' | 'json'
  57804. shiftT(166); // 'json'
  57805. lookahead1W(263); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  57806. try_PostfixExpr();
  57807. shiftT(270); // 'with'
  57808. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57809. try_ExprSingle();
  57810. }
  57811. function parse_JSONAppendExpr()
  57812. {
  57813. eventHandler.startNonterminal("JSONAppendExpr", e0);
  57814. shift(77); // 'append'
  57815. lookahead1W(56); // S^WS | '(:' | 'json'
  57816. shift(166); // 'json'
  57817. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57818. whitespace();
  57819. parse_ExprSingle();
  57820. shift(163); // 'into'
  57821. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57822. whitespace();
  57823. parse_ExprSingle();
  57824. eventHandler.endNonterminal("JSONAppendExpr", e0);
  57825. }
  57826. function try_JSONAppendExpr()
  57827. {
  57828. shiftT(77); // 'append'
  57829. lookahead1W(56); // S^WS | '(:' | 'json'
  57830. shiftT(166); // 'json'
  57831. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57832. try_ExprSingle();
  57833. shiftT(163); // 'into'
  57834. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57835. try_ExprSingle();
  57836. }
  57837. function parse_CommonContent()
  57838. {
  57839. eventHandler.startNonterminal("CommonContent", e0);
  57840. switch (l1)
  57841. {
  57842. case 12: // PredefinedEntityRef
  57843. shift(12); // PredefinedEntityRef
  57844. break;
  57845. case 23: // CharRef
  57846. shift(23); // CharRef
  57847. break;
  57848. case 277: // '{{'
  57849. shift(277); // '{{'
  57850. break;
  57851. case 283: // '}}'
  57852. shift(283); // '}}'
  57853. break;
  57854. default:
  57855. parse_BlockExpr();
  57856. }
  57857. eventHandler.endNonterminal("CommonContent", e0);
  57858. }
  57859. function try_CommonContent()
  57860. {
  57861. switch (l1)
  57862. {
  57863. case 12: // PredefinedEntityRef
  57864. shiftT(12); // PredefinedEntityRef
  57865. break;
  57866. case 23: // CharRef
  57867. shiftT(23); // CharRef
  57868. break;
  57869. case 277: // '{{'
  57870. shiftT(277); // '{{'
  57871. break;
  57872. case 283: // '}}'
  57873. shiftT(283); // '}}'
  57874. break;
  57875. default:
  57876. try_BlockExpr();
  57877. }
  57878. }
  57879. function parse_ContentExpr()
  57880. {
  57881. eventHandler.startNonterminal("ContentExpr", e0);
  57882. parse_StatementsAndExpr();
  57883. eventHandler.endNonterminal("ContentExpr", e0);
  57884. }
  57885. function try_ContentExpr()
  57886. {
  57887. try_StatementsAndExpr();
  57888. }
  57889. function parse_CompDocConstructor()
  57890. {
  57891. eventHandler.startNonterminal("CompDocConstructor", e0);
  57892. shift(119); // 'document'
  57893. lookahead1W(87); // S^WS | '(:' | '{'
  57894. whitespace();
  57895. parse_BlockExpr();
  57896. eventHandler.endNonterminal("CompDocConstructor", e0);
  57897. }
  57898. function try_CompDocConstructor()
  57899. {
  57900. shiftT(119); // 'document'
  57901. lookahead1W(87); // S^WS | '(:' | '{'
  57902. try_BlockExpr();
  57903. }
  57904. function parse_CompAttrConstructor()
  57905. {
  57906. eventHandler.startNonterminal("CompAttrConstructor", e0);
  57907. shift(82); // 'attribute'
  57908. lookahead1W(257); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57909. switch (l1)
  57910. {
  57911. case 276: // '{'
  57912. shift(276); // '{'
  57913. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57914. whitespace();
  57915. parse_Expr();
  57916. shift(282); // '}'
  57917. break;
  57918. default:
  57919. whitespace();
  57920. parse_EQName();
  57921. }
  57922. lookahead1W(87); // S^WS | '(:' | '{'
  57923. switch (l1)
  57924. {
  57925. case 276: // '{'
  57926. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57927. break;
  57928. default:
  57929. lk = l1;
  57930. }
  57931. if (lk == 144660) // '{' '}'
  57932. {
  57933. lk = memoized(12, e0);
  57934. if (lk == 0)
  57935. {
  57936. var b0A = b0; var e0A = e0; var l1A = l1;
  57937. var b1A = b1; var e1A = e1; var l2A = l2;
  57938. var b2A = b2; var e2A = e2;
  57939. try
  57940. {
  57941. shiftT(276); // '{'
  57942. lookahead1W(88); // S^WS | '(:' | '}'
  57943. shiftT(282); // '}'
  57944. lk = -1;
  57945. }
  57946. catch (p1A)
  57947. {
  57948. lk = -2;
  57949. }
  57950. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  57951. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  57952. b2 = b2A; e2 = e2A; end = e2A; }}
  57953. memoize(12, e0, lk);
  57954. }
  57955. }
  57956. switch (lk)
  57957. {
  57958. case -1:
  57959. shift(276); // '{'
  57960. lookahead1W(88); // S^WS | '(:' | '}'
  57961. shift(282); // '}'
  57962. break;
  57963. default:
  57964. whitespace();
  57965. parse_BlockExpr();
  57966. }
  57967. eventHandler.endNonterminal("CompAttrConstructor", e0);
  57968. }
  57969. function try_CompAttrConstructor()
  57970. {
  57971. shiftT(82); // 'attribute'
  57972. lookahead1W(257); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  57973. switch (l1)
  57974. {
  57975. case 276: // '{'
  57976. shiftT(276); // '{'
  57977. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57978. try_Expr();
  57979. shiftT(282); // '}'
  57980. break;
  57981. default:
  57982. try_EQName();
  57983. }
  57984. lookahead1W(87); // S^WS | '(:' | '{'
  57985. switch (l1)
  57986. {
  57987. case 276: // '{'
  57988. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  57989. break;
  57990. default:
  57991. lk = l1;
  57992. }
  57993. if (lk == 144660) // '{' '}'
  57994. {
  57995. lk = memoized(12, e0);
  57996. if (lk == 0)
  57997. {
  57998. var b0A = b0; var e0A = e0; var l1A = l1;
  57999. var b1A = b1; var e1A = e1; var l2A = l2;
  58000. var b2A = b2; var e2A = e2;
  58001. try
  58002. {
  58003. shiftT(276); // '{'
  58004. lookahead1W(88); // S^WS | '(:' | '}'
  58005. shiftT(282); // '}'
  58006. memoize(12, e0A, -1);
  58007. lk = -3;
  58008. }
  58009. catch (p1A)
  58010. {
  58011. lk = -2;
  58012. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  58013. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  58014. b2 = b2A; e2 = e2A; end = e2A; }}
  58015. memoize(12, e0A, -2);
  58016. }
  58017. }
  58018. }
  58019. switch (lk)
  58020. {
  58021. case -1:
  58022. shiftT(276); // '{'
  58023. lookahead1W(88); // S^WS | '(:' | '}'
  58024. shiftT(282); // '}'
  58025. break;
  58026. case -3:
  58027. break;
  58028. default:
  58029. try_BlockExpr();
  58030. }
  58031. }
  58032. function parse_CompPIConstructor()
  58033. {
  58034. eventHandler.startNonterminal("CompPIConstructor", e0);
  58035. shift(216); // 'processing-instruction'
  58036. lookahead1W(250); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  58037. switch (l1)
  58038. {
  58039. case 276: // '{'
  58040. shift(276); // '{'
  58041. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58042. whitespace();
  58043. parse_Expr();
  58044. shift(282); // '}'
  58045. break;
  58046. default:
  58047. whitespace();
  58048. parse_NCName();
  58049. }
  58050. lookahead1W(87); // S^WS | '(:' | '{'
  58051. switch (l1)
  58052. {
  58053. case 276: // '{'
  58054. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58055. break;
  58056. default:
  58057. lk = l1;
  58058. }
  58059. if (lk == 144660) // '{' '}'
  58060. {
  58061. lk = memoized(13, e0);
  58062. if (lk == 0)
  58063. {
  58064. var b0A = b0; var e0A = e0; var l1A = l1;
  58065. var b1A = b1; var e1A = e1; var l2A = l2;
  58066. var b2A = b2; var e2A = e2;
  58067. try
  58068. {
  58069. shiftT(276); // '{'
  58070. lookahead1W(88); // S^WS | '(:' | '}'
  58071. shiftT(282); // '}'
  58072. lk = -1;
  58073. }
  58074. catch (p1A)
  58075. {
  58076. lk = -2;
  58077. }
  58078. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  58079. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  58080. b2 = b2A; e2 = e2A; end = e2A; }}
  58081. memoize(13, e0, lk);
  58082. }
  58083. }
  58084. switch (lk)
  58085. {
  58086. case -1:
  58087. shift(276); // '{'
  58088. lookahead1W(88); // S^WS | '(:' | '}'
  58089. shift(282); // '}'
  58090. break;
  58091. default:
  58092. whitespace();
  58093. parse_BlockExpr();
  58094. }
  58095. eventHandler.endNonterminal("CompPIConstructor", e0);
  58096. }
  58097. function try_CompPIConstructor()
  58098. {
  58099. shiftT(216); // 'processing-instruction'
  58100. lookahead1W(250); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  58101. switch (l1)
  58102. {
  58103. case 276: // '{'
  58104. shiftT(276); // '{'
  58105. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58106. try_Expr();
  58107. shiftT(282); // '}'
  58108. break;
  58109. default:
  58110. try_NCName();
  58111. }
  58112. lookahead1W(87); // S^WS | '(:' | '{'
  58113. switch (l1)
  58114. {
  58115. case 276: // '{'
  58116. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58117. break;
  58118. default:
  58119. lk = l1;
  58120. }
  58121. if (lk == 144660) // '{' '}'
  58122. {
  58123. lk = memoized(13, e0);
  58124. if (lk == 0)
  58125. {
  58126. var b0A = b0; var e0A = e0; var l1A = l1;
  58127. var b1A = b1; var e1A = e1; var l2A = l2;
  58128. var b2A = b2; var e2A = e2;
  58129. try
  58130. {
  58131. shiftT(276); // '{'
  58132. lookahead1W(88); // S^WS | '(:' | '}'
  58133. shiftT(282); // '}'
  58134. memoize(13, e0A, -1);
  58135. lk = -3;
  58136. }
  58137. catch (p1A)
  58138. {
  58139. lk = -2;
  58140. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  58141. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  58142. b2 = b2A; e2 = e2A; end = e2A; }}
  58143. memoize(13, e0A, -2);
  58144. }
  58145. }
  58146. }
  58147. switch (lk)
  58148. {
  58149. case -1:
  58150. shiftT(276); // '{'
  58151. lookahead1W(88); // S^WS | '(:' | '}'
  58152. shiftT(282); // '}'
  58153. break;
  58154. case -3:
  58155. break;
  58156. default:
  58157. try_BlockExpr();
  58158. }
  58159. }
  58160. function parse_CompCommentConstructor()
  58161. {
  58162. eventHandler.startNonterminal("CompCommentConstructor", e0);
  58163. shift(96); // 'comment'
  58164. lookahead1W(87); // S^WS | '(:' | '{'
  58165. whitespace();
  58166. parse_BlockExpr();
  58167. eventHandler.endNonterminal("CompCommentConstructor", e0);
  58168. }
  58169. function try_CompCommentConstructor()
  58170. {
  58171. shiftT(96); // 'comment'
  58172. lookahead1W(87); // S^WS | '(:' | '{'
  58173. try_BlockExpr();
  58174. }
  58175. function parse_CompTextConstructor()
  58176. {
  58177. eventHandler.startNonterminal("CompTextConstructor", e0);
  58178. shift(244); // 'text'
  58179. lookahead1W(87); // S^WS | '(:' | '{'
  58180. whitespace();
  58181. parse_BlockExpr();
  58182. eventHandler.endNonterminal("CompTextConstructor", e0);
  58183. }
  58184. function try_CompTextConstructor()
  58185. {
  58186. shiftT(244); // 'text'
  58187. lookahead1W(87); // S^WS | '(:' | '{'
  58188. try_BlockExpr();
  58189. }
  58190. function parse_PrimaryExpr()
  58191. {
  58192. eventHandler.startNonterminal("PrimaryExpr", e0);
  58193. switch (l1)
  58194. {
  58195. case 184: // 'namespace'
  58196. lookahead2W(255); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58197. break;
  58198. case 216: // 'processing-instruction'
  58199. lookahead2W(253); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58200. break;
  58201. case 276: // '{'
  58202. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58203. break;
  58204. case 82: // 'attribute'
  58205. case 121: // 'element'
  58206. lookahead2W(258); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58207. break;
  58208. case 96: // 'comment'
  58209. case 244: // 'text'
  58210. lookahead2W(93); // S^WS | '#' | '(:' | '{'
  58211. break;
  58212. case 119: // 'document'
  58213. case 202: // 'ordered'
  58214. case 256: // 'unordered'
  58215. lookahead2W(139); // S^WS | '#' | '(' | '(:' | '{'
  58216. break;
  58217. case 6: // EQName^Token
  58218. case 70: // 'after'
  58219. case 72: // 'allowing'
  58220. case 73: // 'ancestor'
  58221. case 74: // 'ancestor-or-self'
  58222. case 75: // 'and'
  58223. case 77: // 'append'
  58224. case 79: // 'as'
  58225. case 80: // 'ascending'
  58226. case 81: // 'at'
  58227. case 83: // 'base-uri'
  58228. case 84: // 'before'
  58229. case 85: // 'boundary-space'
  58230. case 86: // 'break'
  58231. case 88: // 'case'
  58232. case 89: // 'cast'
  58233. case 90: // 'castable'
  58234. case 91: // 'catch'
  58235. case 93: // 'child'
  58236. case 94: // 'collation'
  58237. case 97: // 'constraint'
  58238. case 98: // 'construction'
  58239. case 101: // 'context'
  58240. case 102: // 'continue'
  58241. case 103: // 'copy'
  58242. case 104: // 'copy-namespaces'
  58243. case 105: // 'count'
  58244. case 106: // 'decimal-format'
  58245. case 108: // 'declare'
  58246. case 109: // 'default'
  58247. case 110: // 'delete'
  58248. case 111: // 'descendant'
  58249. case 112: // 'descendant-or-self'
  58250. case 113: // 'descending'
  58251. case 118: // 'div'
  58252. case 122: // 'else'
  58253. case 123: // 'empty'
  58254. case 125: // 'encoding'
  58255. case 126: // 'end'
  58256. case 128: // 'eq'
  58257. case 129: // 'every'
  58258. case 131: // 'except'
  58259. case 132: // 'exit'
  58260. case 133: // 'external'
  58261. case 134: // 'first'
  58262. case 135: // 'following'
  58263. case 136: // 'following-sibling'
  58264. case 137: // 'for'
  58265. case 141: // 'ft-option'
  58266. case 146: // 'ge'
  58267. case 148: // 'group'
  58268. case 150: // 'gt'
  58269. case 151: // 'idiv'
  58270. case 153: // 'import'
  58271. case 154: // 'in'
  58272. case 155: // 'index'
  58273. case 159: // 'insert'
  58274. case 160: // 'instance'
  58275. case 161: // 'integrity'
  58276. case 162: // 'intersect'
  58277. case 163: // 'into'
  58278. case 164: // 'is'
  58279. case 166: // 'json'
  58280. case 170: // 'last'
  58281. case 171: // 'lax'
  58282. case 172: // 'le'
  58283. case 174: // 'let'
  58284. case 176: // 'loop'
  58285. case 178: // 'lt'
  58286. case 180: // 'mod'
  58287. case 181: // 'modify'
  58288. case 182: // 'module'
  58289. case 186: // 'ne'
  58290. case 192: // 'nodes'
  58291. case 194: // 'object'
  58292. case 198: // 'only'
  58293. case 199: // 'option'
  58294. case 200: // 'or'
  58295. case 201: // 'order'
  58296. case 203: // 'ordering'
  58297. case 206: // 'parent'
  58298. case 212: // 'preceding'
  58299. case 213: // 'preceding-sibling'
  58300. case 218: // 'rename'
  58301. case 219: // 'replace'
  58302. case 220: // 'return'
  58303. case 221: // 'returning'
  58304. case 222: // 'revalidation'
  58305. case 224: // 'satisfies'
  58306. case 225: // 'schema'
  58307. case 228: // 'score'
  58308. case 229: // 'self'
  58309. case 234: // 'sliding'
  58310. case 235: // 'some'
  58311. case 236: // 'stable'
  58312. case 237: // 'start'
  58313. case 240: // 'strict'
  58314. case 248: // 'to'
  58315. case 249: // 'treat'
  58316. case 250: // 'try'
  58317. case 251: // 'tumbling'
  58318. case 252: // 'type'
  58319. case 254: // 'union'
  58320. case 257: // 'updating'
  58321. case 260: // 'validate'
  58322. case 261: // 'value'
  58323. case 262: // 'variable'
  58324. case 263: // 'version'
  58325. case 266: // 'where'
  58326. case 267: // 'while'
  58327. case 270: // 'with'
  58328. case 274: // 'xquery'
  58329. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  58330. break;
  58331. default:
  58332. lk = l1;
  58333. }
  58334. if (lk == 2836 // '{' Wildcard
  58335. || lk == 3348 // '{' EQName^Token
  58336. || lk == 4372 // '{' IntegerLiteral
  58337. || lk == 4884 // '{' DecimalLiteral
  58338. || lk == 5396 // '{' DoubleLiteral
  58339. || lk == 5908 // '{' StringLiteral
  58340. || lk == 16148 // '{' '$'
  58341. || lk == 16660 // '{' '%'
  58342. || lk == 17684 // '{' '('
  58343. || lk == 18196 // '{' '(#'
  58344. || lk == 20756 // '{' '+'
  58345. || lk == 21780 // '{' '-'
  58346. || lk == 22804 // '{' '.'
  58347. || lk == 23316 // '{' '..'
  58348. || lk == 23828 // '{' '/'
  58349. || lk == 24340 // '{' '//'
  58350. || lk == 27924 // '{' '<'
  58351. || lk == 28436 // '{' '<!--'
  58352. || lk == 30484 // '{' '<?'
  58353. || lk == 34068 // '{' '@'
  58354. || lk == 35092 // '{' '['
  58355. || lk == 36116 // '{' 'after'
  58356. || lk == 37140 // '{' 'allowing'
  58357. || lk == 37652 // '{' 'ancestor'
  58358. || lk == 38164 // '{' 'ancestor-or-self'
  58359. || lk == 38676 // '{' 'and'
  58360. || lk == 39700 // '{' 'append'
  58361. || lk == 40212 // '{' 'array'
  58362. || lk == 40724 // '{' 'as'
  58363. || lk == 41236 // '{' 'ascending'
  58364. || lk == 41748 // '{' 'at'
  58365. || lk == 42260 // '{' 'attribute'
  58366. || lk == 42772 // '{' 'base-uri'
  58367. || lk == 43284 // '{' 'before'
  58368. || lk == 43796 // '{' 'boundary-space'
  58369. || lk == 44308 // '{' 'break'
  58370. || lk == 45332 // '{' 'case'
  58371. || lk == 45844 // '{' 'cast'
  58372. || lk == 46356 // '{' 'castable'
  58373. || lk == 46868 // '{' 'catch'
  58374. || lk == 47892 // '{' 'child'
  58375. || lk == 48404 // '{' 'collation'
  58376. || lk == 49428 // '{' 'comment'
  58377. || lk == 49940 // '{' 'constraint'
  58378. || lk == 50452 // '{' 'construction'
  58379. || lk == 51988 // '{' 'context'
  58380. || lk == 52500 // '{' 'continue'
  58381. || lk == 53012 // '{' 'copy'
  58382. || lk == 53524 // '{' 'copy-namespaces'
  58383. || lk == 54036 // '{' 'count'
  58384. || lk == 54548 // '{' 'decimal-format'
  58385. || lk == 55572 // '{' 'declare'
  58386. || lk == 56084 // '{' 'default'
  58387. || lk == 56596 // '{' 'delete'
  58388. || lk == 57108 // '{' 'descendant'
  58389. || lk == 57620 // '{' 'descendant-or-self'
  58390. || lk == 58132 // '{' 'descending'
  58391. || lk == 60692 // '{' 'div'
  58392. || lk == 61204 // '{' 'document'
  58393. || lk == 61716 // '{' 'document-node'
  58394. || lk == 62228 // '{' 'element'
  58395. || lk == 62740 // '{' 'else'
  58396. || lk == 63252 // '{' 'empty'
  58397. || lk == 63764 // '{' 'empty-sequence'
  58398. || lk == 64276 // '{' 'encoding'
  58399. || lk == 64788 // '{' 'end'
  58400. || lk == 65812 // '{' 'eq'
  58401. || lk == 66324 // '{' 'every'
  58402. || lk == 67348 // '{' 'except'
  58403. || lk == 67860 // '{' 'exit'
  58404. || lk == 68372 // '{' 'external'
  58405. || lk == 68884 // '{' 'first'
  58406. || lk == 69396 // '{' 'following'
  58407. || lk == 69908 // '{' 'following-sibling'
  58408. || lk == 70420 // '{' 'for'
  58409. || lk == 72468 // '{' 'ft-option'
  58410. || lk == 74516 // '{' 'function'
  58411. || lk == 75028 // '{' 'ge'
  58412. || lk == 76052 // '{' 'group'
  58413. || lk == 77076 // '{' 'gt'
  58414. || lk == 77588 // '{' 'idiv'
  58415. || lk == 78100 // '{' 'if'
  58416. || lk == 78612 // '{' 'import'
  58417. || lk == 79124 // '{' 'in'
  58418. || lk == 79636 // '{' 'index'
  58419. || lk == 81684 // '{' 'insert'
  58420. || lk == 82196 // '{' 'instance'
  58421. || lk == 82708 // '{' 'integrity'
  58422. || lk == 83220 // '{' 'intersect'
  58423. || lk == 83732 // '{' 'into'
  58424. || lk == 84244 // '{' 'is'
  58425. || lk == 84756 // '{' 'item'
  58426. || lk == 85268 // '{' 'json'
  58427. || lk == 85780 // '{' 'json-item'
  58428. || lk == 87316 // '{' 'last'
  58429. || lk == 87828 // '{' 'lax'
  58430. || lk == 88340 // '{' 'le'
  58431. || lk == 89364 // '{' 'let'
  58432. || lk == 90388 // '{' 'loop'
  58433. || lk == 91412 // '{' 'lt'
  58434. || lk == 92436 // '{' 'mod'
  58435. || lk == 92948 // '{' 'modify'
  58436. || lk == 93460 // '{' 'module'
  58437. || lk == 94484 // '{' 'namespace'
  58438. || lk == 94996 // '{' 'namespace-node'
  58439. || lk == 95508 // '{' 'ne'
  58440. || lk == 98068 // '{' 'node'
  58441. || lk == 98580 // '{' 'nodes'
  58442. || lk == 99604 // '{' 'object'
  58443. || lk == 101652 // '{' 'only'
  58444. || lk == 102164 // '{' 'option'
  58445. || lk == 102676 // '{' 'or'
  58446. || lk == 103188 // '{' 'order'
  58447. || lk == 103700 // '{' 'ordered'
  58448. || lk == 104212 // '{' 'ordering'
  58449. || lk == 105748 // '{' 'parent'
  58450. || lk == 108820 // '{' 'preceding'
  58451. || lk == 109332 // '{' 'preceding-sibling'
  58452. || lk == 110868 // '{' 'processing-instruction'
  58453. || lk == 111892 // '{' 'rename'
  58454. || lk == 112404 // '{' 'replace'
  58455. || lk == 112916 // '{' 'return'
  58456. || lk == 113428 // '{' 'returning'
  58457. || lk == 113940 // '{' 'revalidation'
  58458. || lk == 114964 // '{' 'satisfies'
  58459. || lk == 115476 // '{' 'schema'
  58460. || lk == 115988 // '{' 'schema-attribute'
  58461. || lk == 116500 // '{' 'schema-element'
  58462. || lk == 117012 // '{' 'score'
  58463. || lk == 117524 // '{' 'self'
  58464. || lk == 120084 // '{' 'sliding'
  58465. || lk == 120596 // '{' 'some'
  58466. || lk == 121108 // '{' 'stable'
  58467. || lk == 121620 // '{' 'start'
  58468. || lk == 123156 // '{' 'strict'
  58469. || lk == 124180 // '{' 'structured-item'
  58470. || lk == 124692 // '{' 'switch'
  58471. || lk == 125204 // '{' 'text'
  58472. || lk == 127252 // '{' 'to'
  58473. || lk == 127764 // '{' 'treat'
  58474. || lk == 128276 // '{' 'try'
  58475. || lk == 128788 // '{' 'tumbling'
  58476. || lk == 129300 // '{' 'type'
  58477. || lk == 129812 // '{' 'typeswitch'
  58478. || lk == 130324 // '{' 'union'
  58479. || lk == 131348 // '{' 'unordered'
  58480. || lk == 131860 // '{' 'updating'
  58481. || lk == 133396 // '{' 'validate'
  58482. || lk == 133908 // '{' 'value'
  58483. || lk == 134420 // '{' 'variable'
  58484. || lk == 134932 // '{' 'version'
  58485. || lk == 136468 // '{' 'where'
  58486. || lk == 136980 // '{' 'while'
  58487. || lk == 138516 // '{' 'with'
  58488. || lk == 140564 // '{' 'xquery'
  58489. || lk == 141588 // '{' '{'
  58490. || lk == 142612 // '{' '{|'
  58491. || lk == 144660) // '{' '}'
  58492. {
  58493. lk = memoized(14, e0);
  58494. if (lk == 0)
  58495. {
  58496. var b0A = b0; var e0A = e0; var l1A = l1;
  58497. var b1A = b1; var e1A = e1; var l2A = l2;
  58498. var b2A = b2; var e2A = e2;
  58499. try
  58500. {
  58501. try_BlockExpr();
  58502. lk = -10;
  58503. }
  58504. catch (p10A)
  58505. {
  58506. lk = -11;
  58507. }
  58508. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  58509. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  58510. b2 = b2A; e2 = e2A; end = e2A; }}
  58511. memoize(14, e0, lk);
  58512. }
  58513. }
  58514. switch (lk)
  58515. {
  58516. case 8: // IntegerLiteral
  58517. case 9: // DecimalLiteral
  58518. case 10: // DoubleLiteral
  58519. case 11: // StringLiteral
  58520. parse_Literal();
  58521. break;
  58522. case 31: // '$'
  58523. parse_VarRef();
  58524. break;
  58525. case 34: // '('
  58526. parse_ParenthesizedExpr();
  58527. break;
  58528. case 44: // '.'
  58529. parse_ContextItemExpr();
  58530. break;
  58531. case 17414: // EQName^Token '('
  58532. case 17478: // 'after' '('
  58533. case 17480: // 'allowing' '('
  58534. case 17481: // 'ancestor' '('
  58535. case 17482: // 'ancestor-or-self' '('
  58536. case 17483: // 'and' '('
  58537. case 17485: // 'append' '('
  58538. case 17487: // 'as' '('
  58539. case 17488: // 'ascending' '('
  58540. case 17489: // 'at' '('
  58541. case 17491: // 'base-uri' '('
  58542. case 17492: // 'before' '('
  58543. case 17493: // 'boundary-space' '('
  58544. case 17494: // 'break' '('
  58545. case 17496: // 'case' '('
  58546. case 17497: // 'cast' '('
  58547. case 17498: // 'castable' '('
  58548. case 17499: // 'catch' '('
  58549. case 17501: // 'child' '('
  58550. case 17502: // 'collation' '('
  58551. case 17505: // 'constraint' '('
  58552. case 17506: // 'construction' '('
  58553. case 17509: // 'context' '('
  58554. case 17510: // 'continue' '('
  58555. case 17511: // 'copy' '('
  58556. case 17512: // 'copy-namespaces' '('
  58557. case 17513: // 'count' '('
  58558. case 17514: // 'decimal-format' '('
  58559. case 17516: // 'declare' '('
  58560. case 17517: // 'default' '('
  58561. case 17518: // 'delete' '('
  58562. case 17519: // 'descendant' '('
  58563. case 17520: // 'descendant-or-self' '('
  58564. case 17521: // 'descending' '('
  58565. case 17526: // 'div' '('
  58566. case 17527: // 'document' '('
  58567. case 17530: // 'else' '('
  58568. case 17531: // 'empty' '('
  58569. case 17533: // 'encoding' '('
  58570. case 17534: // 'end' '('
  58571. case 17536: // 'eq' '('
  58572. case 17537: // 'every' '('
  58573. case 17539: // 'except' '('
  58574. case 17540: // 'exit' '('
  58575. case 17541: // 'external' '('
  58576. case 17542: // 'first' '('
  58577. case 17543: // 'following' '('
  58578. case 17544: // 'following-sibling' '('
  58579. case 17545: // 'for' '('
  58580. case 17549: // 'ft-option' '('
  58581. case 17554: // 'ge' '('
  58582. case 17556: // 'group' '('
  58583. case 17558: // 'gt' '('
  58584. case 17559: // 'idiv' '('
  58585. case 17561: // 'import' '('
  58586. case 17562: // 'in' '('
  58587. case 17563: // 'index' '('
  58588. case 17567: // 'insert' '('
  58589. case 17568: // 'instance' '('
  58590. case 17569: // 'integrity' '('
  58591. case 17570: // 'intersect' '('
  58592. case 17571: // 'into' '('
  58593. case 17572: // 'is' '('
  58594. case 17574: // 'json' '('
  58595. case 17578: // 'last' '('
  58596. case 17579: // 'lax' '('
  58597. case 17580: // 'le' '('
  58598. case 17582: // 'let' '('
  58599. case 17584: // 'loop' '('
  58600. case 17586: // 'lt' '('
  58601. case 17588: // 'mod' '('
  58602. case 17589: // 'modify' '('
  58603. case 17590: // 'module' '('
  58604. case 17592: // 'namespace' '('
  58605. case 17594: // 'ne' '('
  58606. case 17600: // 'nodes' '('
  58607. case 17602: // 'object' '('
  58608. case 17606: // 'only' '('
  58609. case 17607: // 'option' '('
  58610. case 17608: // 'or' '('
  58611. case 17609: // 'order' '('
  58612. case 17610: // 'ordered' '('
  58613. case 17611: // 'ordering' '('
  58614. case 17614: // 'parent' '('
  58615. case 17620: // 'preceding' '('
  58616. case 17621: // 'preceding-sibling' '('
  58617. case 17626: // 'rename' '('
  58618. case 17627: // 'replace' '('
  58619. case 17628: // 'return' '('
  58620. case 17629: // 'returning' '('
  58621. case 17630: // 'revalidation' '('
  58622. case 17632: // 'satisfies' '('
  58623. case 17633: // 'schema' '('
  58624. case 17636: // 'score' '('
  58625. case 17637: // 'self' '('
  58626. case 17642: // 'sliding' '('
  58627. case 17643: // 'some' '('
  58628. case 17644: // 'stable' '('
  58629. case 17645: // 'start' '('
  58630. case 17648: // 'strict' '('
  58631. case 17656: // 'to' '('
  58632. case 17657: // 'treat' '('
  58633. case 17658: // 'try' '('
  58634. case 17659: // 'tumbling' '('
  58635. case 17660: // 'type' '('
  58636. case 17662: // 'union' '('
  58637. case 17664: // 'unordered' '('
  58638. case 17665: // 'updating' '('
  58639. case 17668: // 'validate' '('
  58640. case 17669: // 'value' '('
  58641. case 17670: // 'variable' '('
  58642. case 17671: // 'version' '('
  58643. case 17674: // 'where' '('
  58644. case 17675: // 'while' '('
  58645. case 17678: // 'with' '('
  58646. case 17682: // 'xquery' '('
  58647. parse_FunctionCall();
  58648. break;
  58649. case 141514: // 'ordered' '{'
  58650. parse_OrderedExpr();
  58651. break;
  58652. case 141568: // 'unordered' '{'
  58653. parse_UnorderedExpr();
  58654. break;
  58655. case 32: // '%'
  58656. case 78: // 'array'
  58657. case 120: // 'document-node'
  58658. case 124: // 'empty-sequence'
  58659. case 145: // 'function'
  58660. case 152: // 'if'
  58661. case 165: // 'item'
  58662. case 167: // 'json-item'
  58663. case 185: // 'namespace-node'
  58664. case 191: // 'node'
  58665. case 226: // 'schema-attribute'
  58666. case 227: // 'schema-element'
  58667. case 242: // 'structured-item'
  58668. case 243: // 'switch'
  58669. case 253: // 'typeswitch'
  58670. case 14854: // EQName^Token '#'
  58671. case 14918: // 'after' '#'
  58672. case 14920: // 'allowing' '#'
  58673. case 14921: // 'ancestor' '#'
  58674. case 14922: // 'ancestor-or-self' '#'
  58675. case 14923: // 'and' '#'
  58676. case 14925: // 'append' '#'
  58677. case 14927: // 'as' '#'
  58678. case 14928: // 'ascending' '#'
  58679. case 14929: // 'at' '#'
  58680. case 14930: // 'attribute' '#'
  58681. case 14931: // 'base-uri' '#'
  58682. case 14932: // 'before' '#'
  58683. case 14933: // 'boundary-space' '#'
  58684. case 14934: // 'break' '#'
  58685. case 14936: // 'case' '#'
  58686. case 14937: // 'cast' '#'
  58687. case 14938: // 'castable' '#'
  58688. case 14939: // 'catch' '#'
  58689. case 14941: // 'child' '#'
  58690. case 14942: // 'collation' '#'
  58691. case 14944: // 'comment' '#'
  58692. case 14945: // 'constraint' '#'
  58693. case 14946: // 'construction' '#'
  58694. case 14949: // 'context' '#'
  58695. case 14950: // 'continue' '#'
  58696. case 14951: // 'copy' '#'
  58697. case 14952: // 'copy-namespaces' '#'
  58698. case 14953: // 'count' '#'
  58699. case 14954: // 'decimal-format' '#'
  58700. case 14956: // 'declare' '#'
  58701. case 14957: // 'default' '#'
  58702. case 14958: // 'delete' '#'
  58703. case 14959: // 'descendant' '#'
  58704. case 14960: // 'descendant-or-self' '#'
  58705. case 14961: // 'descending' '#'
  58706. case 14966: // 'div' '#'
  58707. case 14967: // 'document' '#'
  58708. case 14969: // 'element' '#'
  58709. case 14970: // 'else' '#'
  58710. case 14971: // 'empty' '#'
  58711. case 14973: // 'encoding' '#'
  58712. case 14974: // 'end' '#'
  58713. case 14976: // 'eq' '#'
  58714. case 14977: // 'every' '#'
  58715. case 14979: // 'except' '#'
  58716. case 14980: // 'exit' '#'
  58717. case 14981: // 'external' '#'
  58718. case 14982: // 'first' '#'
  58719. case 14983: // 'following' '#'
  58720. case 14984: // 'following-sibling' '#'
  58721. case 14985: // 'for' '#'
  58722. case 14989: // 'ft-option' '#'
  58723. case 14994: // 'ge' '#'
  58724. case 14996: // 'group' '#'
  58725. case 14998: // 'gt' '#'
  58726. case 14999: // 'idiv' '#'
  58727. case 15001: // 'import' '#'
  58728. case 15002: // 'in' '#'
  58729. case 15003: // 'index' '#'
  58730. case 15007: // 'insert' '#'
  58731. case 15008: // 'instance' '#'
  58732. case 15009: // 'integrity' '#'
  58733. case 15010: // 'intersect' '#'
  58734. case 15011: // 'into' '#'
  58735. case 15012: // 'is' '#'
  58736. case 15014: // 'json' '#'
  58737. case 15018: // 'last' '#'
  58738. case 15019: // 'lax' '#'
  58739. case 15020: // 'le' '#'
  58740. case 15022: // 'let' '#'
  58741. case 15024: // 'loop' '#'
  58742. case 15026: // 'lt' '#'
  58743. case 15028: // 'mod' '#'
  58744. case 15029: // 'modify' '#'
  58745. case 15030: // 'module' '#'
  58746. case 15032: // 'namespace' '#'
  58747. case 15034: // 'ne' '#'
  58748. case 15040: // 'nodes' '#'
  58749. case 15042: // 'object' '#'
  58750. case 15046: // 'only' '#'
  58751. case 15047: // 'option' '#'
  58752. case 15048: // 'or' '#'
  58753. case 15049: // 'order' '#'
  58754. case 15050: // 'ordered' '#'
  58755. case 15051: // 'ordering' '#'
  58756. case 15054: // 'parent' '#'
  58757. case 15060: // 'preceding' '#'
  58758. case 15061: // 'preceding-sibling' '#'
  58759. case 15064: // 'processing-instruction' '#'
  58760. case 15066: // 'rename' '#'
  58761. case 15067: // 'replace' '#'
  58762. case 15068: // 'return' '#'
  58763. case 15069: // 'returning' '#'
  58764. case 15070: // 'revalidation' '#'
  58765. case 15072: // 'satisfies' '#'
  58766. case 15073: // 'schema' '#'
  58767. case 15076: // 'score' '#'
  58768. case 15077: // 'self' '#'
  58769. case 15082: // 'sliding' '#'
  58770. case 15083: // 'some' '#'
  58771. case 15084: // 'stable' '#'
  58772. case 15085: // 'start' '#'
  58773. case 15088: // 'strict' '#'
  58774. case 15092: // 'text' '#'
  58775. case 15096: // 'to' '#'
  58776. case 15097: // 'treat' '#'
  58777. case 15098: // 'try' '#'
  58778. case 15099: // 'tumbling' '#'
  58779. case 15100: // 'type' '#'
  58780. case 15102: // 'union' '#'
  58781. case 15104: // 'unordered' '#'
  58782. case 15105: // 'updating' '#'
  58783. case 15108: // 'validate' '#'
  58784. case 15109: // 'value' '#'
  58785. case 15110: // 'variable' '#'
  58786. case 15111: // 'version' '#'
  58787. case 15114: // 'where' '#'
  58788. case 15115: // 'while' '#'
  58789. case 15118: // 'with' '#'
  58790. case 15122: // 'xquery' '#'
  58791. parse_FunctionItemExpr();
  58792. break;
  58793. case -10:
  58794. case 27412: // '{' ';'
  58795. parse_BlockExpr();
  58796. break;
  58797. case -11:
  58798. parse_ObjectConstructor();
  58799. break;
  58800. case 68: // '['
  58801. parse_ArrayConstructor();
  58802. break;
  58803. case 278: // '{|'
  58804. parse_JSONSimpleObjectUnion();
  58805. break;
  58806. default:
  58807. parse_Constructor();
  58808. }
  58809. eventHandler.endNonterminal("PrimaryExpr", e0);
  58810. }
  58811. function try_PrimaryExpr()
  58812. {
  58813. switch (l1)
  58814. {
  58815. case 184: // 'namespace'
  58816. lookahead2W(255); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58817. break;
  58818. case 216: // 'processing-instruction'
  58819. lookahead2W(253); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58820. break;
  58821. case 276: // '{'
  58822. lookahead2W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  58823. break;
  58824. case 82: // 'attribute'
  58825. case 121: // 'element'
  58826. lookahead2W(258); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  58827. break;
  58828. case 96: // 'comment'
  58829. case 244: // 'text'
  58830. lookahead2W(93); // S^WS | '#' | '(:' | '{'
  58831. break;
  58832. case 119: // 'document'
  58833. case 202: // 'ordered'
  58834. case 256: // 'unordered'
  58835. lookahead2W(139); // S^WS | '#' | '(' | '(:' | '{'
  58836. break;
  58837. case 6: // EQName^Token
  58838. case 70: // 'after'
  58839. case 72: // 'allowing'
  58840. case 73: // 'ancestor'
  58841. case 74: // 'ancestor-or-self'
  58842. case 75: // 'and'
  58843. case 77: // 'append'
  58844. case 79: // 'as'
  58845. case 80: // 'ascending'
  58846. case 81: // 'at'
  58847. case 83: // 'base-uri'
  58848. case 84: // 'before'
  58849. case 85: // 'boundary-space'
  58850. case 86: // 'break'
  58851. case 88: // 'case'
  58852. case 89: // 'cast'
  58853. case 90: // 'castable'
  58854. case 91: // 'catch'
  58855. case 93: // 'child'
  58856. case 94: // 'collation'
  58857. case 97: // 'constraint'
  58858. case 98: // 'construction'
  58859. case 101: // 'context'
  58860. case 102: // 'continue'
  58861. case 103: // 'copy'
  58862. case 104: // 'copy-namespaces'
  58863. case 105: // 'count'
  58864. case 106: // 'decimal-format'
  58865. case 108: // 'declare'
  58866. case 109: // 'default'
  58867. case 110: // 'delete'
  58868. case 111: // 'descendant'
  58869. case 112: // 'descendant-or-self'
  58870. case 113: // 'descending'
  58871. case 118: // 'div'
  58872. case 122: // 'else'
  58873. case 123: // 'empty'
  58874. case 125: // 'encoding'
  58875. case 126: // 'end'
  58876. case 128: // 'eq'
  58877. case 129: // 'every'
  58878. case 131: // 'except'
  58879. case 132: // 'exit'
  58880. case 133: // 'external'
  58881. case 134: // 'first'
  58882. case 135: // 'following'
  58883. case 136: // 'following-sibling'
  58884. case 137: // 'for'
  58885. case 141: // 'ft-option'
  58886. case 146: // 'ge'
  58887. case 148: // 'group'
  58888. case 150: // 'gt'
  58889. case 151: // 'idiv'
  58890. case 153: // 'import'
  58891. case 154: // 'in'
  58892. case 155: // 'index'
  58893. case 159: // 'insert'
  58894. case 160: // 'instance'
  58895. case 161: // 'integrity'
  58896. case 162: // 'intersect'
  58897. case 163: // 'into'
  58898. case 164: // 'is'
  58899. case 166: // 'json'
  58900. case 170: // 'last'
  58901. case 171: // 'lax'
  58902. case 172: // 'le'
  58903. case 174: // 'let'
  58904. case 176: // 'loop'
  58905. case 178: // 'lt'
  58906. case 180: // 'mod'
  58907. case 181: // 'modify'
  58908. case 182: // 'module'
  58909. case 186: // 'ne'
  58910. case 192: // 'nodes'
  58911. case 194: // 'object'
  58912. case 198: // 'only'
  58913. case 199: // 'option'
  58914. case 200: // 'or'
  58915. case 201: // 'order'
  58916. case 203: // 'ordering'
  58917. case 206: // 'parent'
  58918. case 212: // 'preceding'
  58919. case 213: // 'preceding-sibling'
  58920. case 218: // 'rename'
  58921. case 219: // 'replace'
  58922. case 220: // 'return'
  58923. case 221: // 'returning'
  58924. case 222: // 'revalidation'
  58925. case 224: // 'satisfies'
  58926. case 225: // 'schema'
  58927. case 228: // 'score'
  58928. case 229: // 'self'
  58929. case 234: // 'sliding'
  58930. case 235: // 'some'
  58931. case 236: // 'stable'
  58932. case 237: // 'start'
  58933. case 240: // 'strict'
  58934. case 248: // 'to'
  58935. case 249: // 'treat'
  58936. case 250: // 'try'
  58937. case 251: // 'tumbling'
  58938. case 252: // 'type'
  58939. case 254: // 'union'
  58940. case 257: // 'updating'
  58941. case 260: // 'validate'
  58942. case 261: // 'value'
  58943. case 262: // 'variable'
  58944. case 263: // 'version'
  58945. case 266: // 'where'
  58946. case 267: // 'while'
  58947. case 270: // 'with'
  58948. case 274: // 'xquery'
  58949. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  58950. break;
  58951. default:
  58952. lk = l1;
  58953. }
  58954. if (lk == 2836 // '{' Wildcard
  58955. || lk == 3348 // '{' EQName^Token
  58956. || lk == 4372 // '{' IntegerLiteral
  58957. || lk == 4884 // '{' DecimalLiteral
  58958. || lk == 5396 // '{' DoubleLiteral
  58959. || lk == 5908 // '{' StringLiteral
  58960. || lk == 16148 // '{' '$'
  58961. || lk == 16660 // '{' '%'
  58962. || lk == 17684 // '{' '('
  58963. || lk == 18196 // '{' '(#'
  58964. || lk == 20756 // '{' '+'
  58965. || lk == 21780 // '{' '-'
  58966. || lk == 22804 // '{' '.'
  58967. || lk == 23316 // '{' '..'
  58968. || lk == 23828 // '{' '/'
  58969. || lk == 24340 // '{' '//'
  58970. || lk == 27924 // '{' '<'
  58971. || lk == 28436 // '{' '<!--'
  58972. || lk == 30484 // '{' '<?'
  58973. || lk == 34068 // '{' '@'
  58974. || lk == 35092 // '{' '['
  58975. || lk == 36116 // '{' 'after'
  58976. || lk == 37140 // '{' 'allowing'
  58977. || lk == 37652 // '{' 'ancestor'
  58978. || lk == 38164 // '{' 'ancestor-or-self'
  58979. || lk == 38676 // '{' 'and'
  58980. || lk == 39700 // '{' 'append'
  58981. || lk == 40212 // '{' 'array'
  58982. || lk == 40724 // '{' 'as'
  58983. || lk == 41236 // '{' 'ascending'
  58984. || lk == 41748 // '{' 'at'
  58985. || lk == 42260 // '{' 'attribute'
  58986. || lk == 42772 // '{' 'base-uri'
  58987. || lk == 43284 // '{' 'before'
  58988. || lk == 43796 // '{' 'boundary-space'
  58989. || lk == 44308 // '{' 'break'
  58990. || lk == 45332 // '{' 'case'
  58991. || lk == 45844 // '{' 'cast'
  58992. || lk == 46356 // '{' 'castable'
  58993. || lk == 46868 // '{' 'catch'
  58994. || lk == 47892 // '{' 'child'
  58995. || lk == 48404 // '{' 'collation'
  58996. || lk == 49428 // '{' 'comment'
  58997. || lk == 49940 // '{' 'constraint'
  58998. || lk == 50452 // '{' 'construction'
  58999. || lk == 51988 // '{' 'context'
  59000. || lk == 52500 // '{' 'continue'
  59001. || lk == 53012 // '{' 'copy'
  59002. || lk == 53524 // '{' 'copy-namespaces'
  59003. || lk == 54036 // '{' 'count'
  59004. || lk == 54548 // '{' 'decimal-format'
  59005. || lk == 55572 // '{' 'declare'
  59006. || lk == 56084 // '{' 'default'
  59007. || lk == 56596 // '{' 'delete'
  59008. || lk == 57108 // '{' 'descendant'
  59009. || lk == 57620 // '{' 'descendant-or-self'
  59010. || lk == 58132 // '{' 'descending'
  59011. || lk == 60692 // '{' 'div'
  59012. || lk == 61204 // '{' 'document'
  59013. || lk == 61716 // '{' 'document-node'
  59014. || lk == 62228 // '{' 'element'
  59015. || lk == 62740 // '{' 'else'
  59016. || lk == 63252 // '{' 'empty'
  59017. || lk == 63764 // '{' 'empty-sequence'
  59018. || lk == 64276 // '{' 'encoding'
  59019. || lk == 64788 // '{' 'end'
  59020. || lk == 65812 // '{' 'eq'
  59021. || lk == 66324 // '{' 'every'
  59022. || lk == 67348 // '{' 'except'
  59023. || lk == 67860 // '{' 'exit'
  59024. || lk == 68372 // '{' 'external'
  59025. || lk == 68884 // '{' 'first'
  59026. || lk == 69396 // '{' 'following'
  59027. || lk == 69908 // '{' 'following-sibling'
  59028. || lk == 70420 // '{' 'for'
  59029. || lk == 72468 // '{' 'ft-option'
  59030. || lk == 74516 // '{' 'function'
  59031. || lk == 75028 // '{' 'ge'
  59032. || lk == 76052 // '{' 'group'
  59033. || lk == 77076 // '{' 'gt'
  59034. || lk == 77588 // '{' 'idiv'
  59035. || lk == 78100 // '{' 'if'
  59036. || lk == 78612 // '{' 'import'
  59037. || lk == 79124 // '{' 'in'
  59038. || lk == 79636 // '{' 'index'
  59039. || lk == 81684 // '{' 'insert'
  59040. || lk == 82196 // '{' 'instance'
  59041. || lk == 82708 // '{' 'integrity'
  59042. || lk == 83220 // '{' 'intersect'
  59043. || lk == 83732 // '{' 'into'
  59044. || lk == 84244 // '{' 'is'
  59045. || lk == 84756 // '{' 'item'
  59046. || lk == 85268 // '{' 'json'
  59047. || lk == 85780 // '{' 'json-item'
  59048. || lk == 87316 // '{' 'last'
  59049. || lk == 87828 // '{' 'lax'
  59050. || lk == 88340 // '{' 'le'
  59051. || lk == 89364 // '{' 'let'
  59052. || lk == 90388 // '{' 'loop'
  59053. || lk == 91412 // '{' 'lt'
  59054. || lk == 92436 // '{' 'mod'
  59055. || lk == 92948 // '{' 'modify'
  59056. || lk == 93460 // '{' 'module'
  59057. || lk == 94484 // '{' 'namespace'
  59058. || lk == 94996 // '{' 'namespace-node'
  59059. || lk == 95508 // '{' 'ne'
  59060. || lk == 98068 // '{' 'node'
  59061. || lk == 98580 // '{' 'nodes'
  59062. || lk == 99604 // '{' 'object'
  59063. || lk == 101652 // '{' 'only'
  59064. || lk == 102164 // '{' 'option'
  59065. || lk == 102676 // '{' 'or'
  59066. || lk == 103188 // '{' 'order'
  59067. || lk == 103700 // '{' 'ordered'
  59068. || lk == 104212 // '{' 'ordering'
  59069. || lk == 105748 // '{' 'parent'
  59070. || lk == 108820 // '{' 'preceding'
  59071. || lk == 109332 // '{' 'preceding-sibling'
  59072. || lk == 110868 // '{' 'processing-instruction'
  59073. || lk == 111892 // '{' 'rename'
  59074. || lk == 112404 // '{' 'replace'
  59075. || lk == 112916 // '{' 'return'
  59076. || lk == 113428 // '{' 'returning'
  59077. || lk == 113940 // '{' 'revalidation'
  59078. || lk == 114964 // '{' 'satisfies'
  59079. || lk == 115476 // '{' 'schema'
  59080. || lk == 115988 // '{' 'schema-attribute'
  59081. || lk == 116500 // '{' 'schema-element'
  59082. || lk == 117012 // '{' 'score'
  59083. || lk == 117524 // '{' 'self'
  59084. || lk == 120084 // '{' 'sliding'
  59085. || lk == 120596 // '{' 'some'
  59086. || lk == 121108 // '{' 'stable'
  59087. || lk == 121620 // '{' 'start'
  59088. || lk == 123156 // '{' 'strict'
  59089. || lk == 124180 // '{' 'structured-item'
  59090. || lk == 124692 // '{' 'switch'
  59091. || lk == 125204 // '{' 'text'
  59092. || lk == 127252 // '{' 'to'
  59093. || lk == 127764 // '{' 'treat'
  59094. || lk == 128276 // '{' 'try'
  59095. || lk == 128788 // '{' 'tumbling'
  59096. || lk == 129300 // '{' 'type'
  59097. || lk == 129812 // '{' 'typeswitch'
  59098. || lk == 130324 // '{' 'union'
  59099. || lk == 131348 // '{' 'unordered'
  59100. || lk == 131860 // '{' 'updating'
  59101. || lk == 133396 // '{' 'validate'
  59102. || lk == 133908 // '{' 'value'
  59103. || lk == 134420 // '{' 'variable'
  59104. || lk == 134932 // '{' 'version'
  59105. || lk == 136468 // '{' 'where'
  59106. || lk == 136980 // '{' 'while'
  59107. || lk == 138516 // '{' 'with'
  59108. || lk == 140564 // '{' 'xquery'
  59109. || lk == 141588 // '{' '{'
  59110. || lk == 142612 // '{' '{|'
  59111. || lk == 144660) // '{' '}'
  59112. {
  59113. lk = memoized(14, e0);
  59114. if (lk == 0)
  59115. {
  59116. var b0A = b0; var e0A = e0; var l1A = l1;
  59117. var b1A = b1; var e1A = e1; var l2A = l2;
  59118. var b2A = b2; var e2A = e2;
  59119. try
  59120. {
  59121. try_BlockExpr();
  59122. memoize(14, e0A, -10);
  59123. lk = -14;
  59124. }
  59125. catch (p10A)
  59126. {
  59127. lk = -11;
  59128. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  59129. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  59130. b2 = b2A; e2 = e2A; end = e2A; }}
  59131. memoize(14, e0A, -11);
  59132. }
  59133. }
  59134. }
  59135. switch (lk)
  59136. {
  59137. case 8: // IntegerLiteral
  59138. case 9: // DecimalLiteral
  59139. case 10: // DoubleLiteral
  59140. case 11: // StringLiteral
  59141. try_Literal();
  59142. break;
  59143. case 31: // '$'
  59144. try_VarRef();
  59145. break;
  59146. case 34: // '('
  59147. try_ParenthesizedExpr();
  59148. break;
  59149. case 44: // '.'
  59150. try_ContextItemExpr();
  59151. break;
  59152. case 17414: // EQName^Token '('
  59153. case 17478: // 'after' '('
  59154. case 17480: // 'allowing' '('
  59155. case 17481: // 'ancestor' '('
  59156. case 17482: // 'ancestor-or-self' '('
  59157. case 17483: // 'and' '('
  59158. case 17485: // 'append' '('
  59159. case 17487: // 'as' '('
  59160. case 17488: // 'ascending' '('
  59161. case 17489: // 'at' '('
  59162. case 17491: // 'base-uri' '('
  59163. case 17492: // 'before' '('
  59164. case 17493: // 'boundary-space' '('
  59165. case 17494: // 'break' '('
  59166. case 17496: // 'case' '('
  59167. case 17497: // 'cast' '('
  59168. case 17498: // 'castable' '('
  59169. case 17499: // 'catch' '('
  59170. case 17501: // 'child' '('
  59171. case 17502: // 'collation' '('
  59172. case 17505: // 'constraint' '('
  59173. case 17506: // 'construction' '('
  59174. case 17509: // 'context' '('
  59175. case 17510: // 'continue' '('
  59176. case 17511: // 'copy' '('
  59177. case 17512: // 'copy-namespaces' '('
  59178. case 17513: // 'count' '('
  59179. case 17514: // 'decimal-format' '('
  59180. case 17516: // 'declare' '('
  59181. case 17517: // 'default' '('
  59182. case 17518: // 'delete' '('
  59183. case 17519: // 'descendant' '('
  59184. case 17520: // 'descendant-or-self' '('
  59185. case 17521: // 'descending' '('
  59186. case 17526: // 'div' '('
  59187. case 17527: // 'document' '('
  59188. case 17530: // 'else' '('
  59189. case 17531: // 'empty' '('
  59190. case 17533: // 'encoding' '('
  59191. case 17534: // 'end' '('
  59192. case 17536: // 'eq' '('
  59193. case 17537: // 'every' '('
  59194. case 17539: // 'except' '('
  59195. case 17540: // 'exit' '('
  59196. case 17541: // 'external' '('
  59197. case 17542: // 'first' '('
  59198. case 17543: // 'following' '('
  59199. case 17544: // 'following-sibling' '('
  59200. case 17545: // 'for' '('
  59201. case 17549: // 'ft-option' '('
  59202. case 17554: // 'ge' '('
  59203. case 17556: // 'group' '('
  59204. case 17558: // 'gt' '('
  59205. case 17559: // 'idiv' '('
  59206. case 17561: // 'import' '('
  59207. case 17562: // 'in' '('
  59208. case 17563: // 'index' '('
  59209. case 17567: // 'insert' '('
  59210. case 17568: // 'instance' '('
  59211. case 17569: // 'integrity' '('
  59212. case 17570: // 'intersect' '('
  59213. case 17571: // 'into' '('
  59214. case 17572: // 'is' '('
  59215. case 17574: // 'json' '('
  59216. case 17578: // 'last' '('
  59217. case 17579: // 'lax' '('
  59218. case 17580: // 'le' '('
  59219. case 17582: // 'let' '('
  59220. case 17584: // 'loop' '('
  59221. case 17586: // 'lt' '('
  59222. case 17588: // 'mod' '('
  59223. case 17589: // 'modify' '('
  59224. case 17590: // 'module' '('
  59225. case 17592: // 'namespace' '('
  59226. case 17594: // 'ne' '('
  59227. case 17600: // 'nodes' '('
  59228. case 17602: // 'object' '('
  59229. case 17606: // 'only' '('
  59230. case 17607: // 'option' '('
  59231. case 17608: // 'or' '('
  59232. case 17609: // 'order' '('
  59233. case 17610: // 'ordered' '('
  59234. case 17611: // 'ordering' '('
  59235. case 17614: // 'parent' '('
  59236. case 17620: // 'preceding' '('
  59237. case 17621: // 'preceding-sibling' '('
  59238. case 17626: // 'rename' '('
  59239. case 17627: // 'replace' '('
  59240. case 17628: // 'return' '('
  59241. case 17629: // 'returning' '('
  59242. case 17630: // 'revalidation' '('
  59243. case 17632: // 'satisfies' '('
  59244. case 17633: // 'schema' '('
  59245. case 17636: // 'score' '('
  59246. case 17637: // 'self' '('
  59247. case 17642: // 'sliding' '('
  59248. case 17643: // 'some' '('
  59249. case 17644: // 'stable' '('
  59250. case 17645: // 'start' '('
  59251. case 17648: // 'strict' '('
  59252. case 17656: // 'to' '('
  59253. case 17657: // 'treat' '('
  59254. case 17658: // 'try' '('
  59255. case 17659: // 'tumbling' '('
  59256. case 17660: // 'type' '('
  59257. case 17662: // 'union' '('
  59258. case 17664: // 'unordered' '('
  59259. case 17665: // 'updating' '('
  59260. case 17668: // 'validate' '('
  59261. case 17669: // 'value' '('
  59262. case 17670: // 'variable' '('
  59263. case 17671: // 'version' '('
  59264. case 17674: // 'where' '('
  59265. case 17675: // 'while' '('
  59266. case 17678: // 'with' '('
  59267. case 17682: // 'xquery' '('
  59268. try_FunctionCall();
  59269. break;
  59270. case 141514: // 'ordered' '{'
  59271. try_OrderedExpr();
  59272. break;
  59273. case 141568: // 'unordered' '{'
  59274. try_UnorderedExpr();
  59275. break;
  59276. case 32: // '%'
  59277. case 78: // 'array'
  59278. case 120: // 'document-node'
  59279. case 124: // 'empty-sequence'
  59280. case 145: // 'function'
  59281. case 152: // 'if'
  59282. case 165: // 'item'
  59283. case 167: // 'json-item'
  59284. case 185: // 'namespace-node'
  59285. case 191: // 'node'
  59286. case 226: // 'schema-attribute'
  59287. case 227: // 'schema-element'
  59288. case 242: // 'structured-item'
  59289. case 243: // 'switch'
  59290. case 253: // 'typeswitch'
  59291. case 14854: // EQName^Token '#'
  59292. case 14918: // 'after' '#'
  59293. case 14920: // 'allowing' '#'
  59294. case 14921: // 'ancestor' '#'
  59295. case 14922: // 'ancestor-or-self' '#'
  59296. case 14923: // 'and' '#'
  59297. case 14925: // 'append' '#'
  59298. case 14927: // 'as' '#'
  59299. case 14928: // 'ascending' '#'
  59300. case 14929: // 'at' '#'
  59301. case 14930: // 'attribute' '#'
  59302. case 14931: // 'base-uri' '#'
  59303. case 14932: // 'before' '#'
  59304. case 14933: // 'boundary-space' '#'
  59305. case 14934: // 'break' '#'
  59306. case 14936: // 'case' '#'
  59307. case 14937: // 'cast' '#'
  59308. case 14938: // 'castable' '#'
  59309. case 14939: // 'catch' '#'
  59310. case 14941: // 'child' '#'
  59311. case 14942: // 'collation' '#'
  59312. case 14944: // 'comment' '#'
  59313. case 14945: // 'constraint' '#'
  59314. case 14946: // 'construction' '#'
  59315. case 14949: // 'context' '#'
  59316. case 14950: // 'continue' '#'
  59317. case 14951: // 'copy' '#'
  59318. case 14952: // 'copy-namespaces' '#'
  59319. case 14953: // 'count' '#'
  59320. case 14954: // 'decimal-format' '#'
  59321. case 14956: // 'declare' '#'
  59322. case 14957: // 'default' '#'
  59323. case 14958: // 'delete' '#'
  59324. case 14959: // 'descendant' '#'
  59325. case 14960: // 'descendant-or-self' '#'
  59326. case 14961: // 'descending' '#'
  59327. case 14966: // 'div' '#'
  59328. case 14967: // 'document' '#'
  59329. case 14969: // 'element' '#'
  59330. case 14970: // 'else' '#'
  59331. case 14971: // 'empty' '#'
  59332. case 14973: // 'encoding' '#'
  59333. case 14974: // 'end' '#'
  59334. case 14976: // 'eq' '#'
  59335. case 14977: // 'every' '#'
  59336. case 14979: // 'except' '#'
  59337. case 14980: // 'exit' '#'
  59338. case 14981: // 'external' '#'
  59339. case 14982: // 'first' '#'
  59340. case 14983: // 'following' '#'
  59341. case 14984: // 'following-sibling' '#'
  59342. case 14985: // 'for' '#'
  59343. case 14989: // 'ft-option' '#'
  59344. case 14994: // 'ge' '#'
  59345. case 14996: // 'group' '#'
  59346. case 14998: // 'gt' '#'
  59347. case 14999: // 'idiv' '#'
  59348. case 15001: // 'import' '#'
  59349. case 15002: // 'in' '#'
  59350. case 15003: // 'index' '#'
  59351. case 15007: // 'insert' '#'
  59352. case 15008: // 'instance' '#'
  59353. case 15009: // 'integrity' '#'
  59354. case 15010: // 'intersect' '#'
  59355. case 15011: // 'into' '#'
  59356. case 15012: // 'is' '#'
  59357. case 15014: // 'json' '#'
  59358. case 15018: // 'last' '#'
  59359. case 15019: // 'lax' '#'
  59360. case 15020: // 'le' '#'
  59361. case 15022: // 'let' '#'
  59362. case 15024: // 'loop' '#'
  59363. case 15026: // 'lt' '#'
  59364. case 15028: // 'mod' '#'
  59365. case 15029: // 'modify' '#'
  59366. case 15030: // 'module' '#'
  59367. case 15032: // 'namespace' '#'
  59368. case 15034: // 'ne' '#'
  59369. case 15040: // 'nodes' '#'
  59370. case 15042: // 'object' '#'
  59371. case 15046: // 'only' '#'
  59372. case 15047: // 'option' '#'
  59373. case 15048: // 'or' '#'
  59374. case 15049: // 'order' '#'
  59375. case 15050: // 'ordered' '#'
  59376. case 15051: // 'ordering' '#'
  59377. case 15054: // 'parent' '#'
  59378. case 15060: // 'preceding' '#'
  59379. case 15061: // 'preceding-sibling' '#'
  59380. case 15064: // 'processing-instruction' '#'
  59381. case 15066: // 'rename' '#'
  59382. case 15067: // 'replace' '#'
  59383. case 15068: // 'return' '#'
  59384. case 15069: // 'returning' '#'
  59385. case 15070: // 'revalidation' '#'
  59386. case 15072: // 'satisfies' '#'
  59387. case 15073: // 'schema' '#'
  59388. case 15076: // 'score' '#'
  59389. case 15077: // 'self' '#'
  59390. case 15082: // 'sliding' '#'
  59391. case 15083: // 'some' '#'
  59392. case 15084: // 'stable' '#'
  59393. case 15085: // 'start' '#'
  59394. case 15088: // 'strict' '#'
  59395. case 15092: // 'text' '#'
  59396. case 15096: // 'to' '#'
  59397. case 15097: // 'treat' '#'
  59398. case 15098: // 'try' '#'
  59399. case 15099: // 'tumbling' '#'
  59400. case 15100: // 'type' '#'
  59401. case 15102: // 'union' '#'
  59402. case 15104: // 'unordered' '#'
  59403. case 15105: // 'updating' '#'
  59404. case 15108: // 'validate' '#'
  59405. case 15109: // 'value' '#'
  59406. case 15110: // 'variable' '#'
  59407. case 15111: // 'version' '#'
  59408. case 15114: // 'where' '#'
  59409. case 15115: // 'while' '#'
  59410. case 15118: // 'with' '#'
  59411. case 15122: // 'xquery' '#'
  59412. try_FunctionItemExpr();
  59413. break;
  59414. case -10:
  59415. case 27412: // '{' ';'
  59416. try_BlockExpr();
  59417. break;
  59418. case -11:
  59419. try_ObjectConstructor();
  59420. break;
  59421. case 68: // '['
  59422. try_ArrayConstructor();
  59423. break;
  59424. case 278: // '{|'
  59425. try_JSONSimpleObjectUnion();
  59426. break;
  59427. case -14:
  59428. break;
  59429. default:
  59430. try_Constructor();
  59431. }
  59432. }
  59433. function parse_JSONSimpleObjectUnion()
  59434. {
  59435. eventHandler.startNonterminal("JSONSimpleObjectUnion", e0);
  59436. shift(278); // '{|'
  59437. lookahead1W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59438. if (l1 != 281) // '|}'
  59439. {
  59440. whitespace();
  59441. parse_Expr();
  59442. }
  59443. shift(281); // '|}'
  59444. eventHandler.endNonterminal("JSONSimpleObjectUnion", e0);
  59445. }
  59446. function try_JSONSimpleObjectUnion()
  59447. {
  59448. shiftT(278); // '{|'
  59449. lookahead1W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59450. if (l1 != 281) // '|}'
  59451. {
  59452. try_Expr();
  59453. }
  59454. shiftT(281); // '|}'
  59455. }
  59456. function parse_ObjectConstructor()
  59457. {
  59458. eventHandler.startNonterminal("ObjectConstructor", e0);
  59459. shift(276); // '{'
  59460. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59461. if (l1 != 282) // '}'
  59462. {
  59463. whitespace();
  59464. parse_PairConstructorList();
  59465. }
  59466. shift(282); // '}'
  59467. eventHandler.endNonterminal("ObjectConstructor", e0);
  59468. }
  59469. function try_ObjectConstructor()
  59470. {
  59471. shiftT(276); // '{'
  59472. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59473. if (l1 != 282) // '}'
  59474. {
  59475. try_PairConstructorList();
  59476. }
  59477. shiftT(282); // '}'
  59478. }
  59479. function parse_PairConstructorList()
  59480. {
  59481. eventHandler.startNonterminal("PairConstructorList", e0);
  59482. parse_PairConstructor();
  59483. for (;;)
  59484. {
  59485. if (l1 != 41) // ','
  59486. {
  59487. break;
  59488. }
  59489. shift(41); // ','
  59490. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59491. whitespace();
  59492. parse_PairConstructor();
  59493. }
  59494. eventHandler.endNonterminal("PairConstructorList", e0);
  59495. }
  59496. function try_PairConstructorList()
  59497. {
  59498. try_PairConstructor();
  59499. for (;;)
  59500. {
  59501. if (l1 != 41) // ','
  59502. {
  59503. break;
  59504. }
  59505. shiftT(41); // ','
  59506. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59507. try_PairConstructor();
  59508. }
  59509. }
  59510. function parse_PairConstructor()
  59511. {
  59512. eventHandler.startNonterminal("PairConstructor", e0);
  59513. parse_ExprSingle();
  59514. shift(49); // ':'
  59515. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59516. whitespace();
  59517. parse_ExprSingle();
  59518. eventHandler.endNonterminal("PairConstructor", e0);
  59519. }
  59520. function try_PairConstructor()
  59521. {
  59522. try_ExprSingle();
  59523. shiftT(49); // ':'
  59524. lookahead1W(266); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59525. try_ExprSingle();
  59526. }
  59527. function parse_ArrayConstructor()
  59528. {
  59529. eventHandler.startNonterminal("ArrayConstructor", e0);
  59530. shift(68); // '['
  59531. lookahead1W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59532. if (l1 != 69) // ']'
  59533. {
  59534. whitespace();
  59535. parse_Expr();
  59536. }
  59537. shift(69); // ']'
  59538. eventHandler.endNonterminal("ArrayConstructor", e0);
  59539. }
  59540. function try_ArrayConstructor()
  59541. {
  59542. shiftT(68); // '['
  59543. lookahead1W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59544. if (l1 != 69) // ']'
  59545. {
  59546. try_Expr();
  59547. }
  59548. shiftT(69); // ']'
  59549. }
  59550. function parse_BlockExpr()
  59551. {
  59552. eventHandler.startNonterminal("BlockExpr", e0);
  59553. shift(276); // '{'
  59554. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59555. whitespace();
  59556. parse_StatementsAndOptionalExpr();
  59557. shift(282); // '}'
  59558. eventHandler.endNonterminal("BlockExpr", e0);
  59559. }
  59560. function try_BlockExpr()
  59561. {
  59562. shiftT(276); // '{'
  59563. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59564. try_StatementsAndOptionalExpr();
  59565. shiftT(282); // '}'
  59566. }
  59567. function parse_FunctionDecl()
  59568. {
  59569. eventHandler.startNonterminal("FunctionDecl", e0);
  59570. shift(145); // 'function'
  59571. lookahead1W(254); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  59572. whitespace();
  59573. parse_EQName();
  59574. lookahead1W(22); // S^WS | '(' | '(:'
  59575. shift(34); // '('
  59576. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  59577. if (l1 == 31) // '$'
  59578. {
  59579. whitespace();
  59580. parse_ParamList();
  59581. }
  59582. shift(37); // ')'
  59583. lookahead1W(148); // S^WS | '(:' | 'as' | 'external' | '{'
  59584. if (l1 == 79) // 'as'
  59585. {
  59586. whitespace();
  59587. parse_ReturnType();
  59588. }
  59589. lookahead1W(118); // S^WS | '(:' | 'external' | '{'
  59590. switch (l1)
  59591. {
  59592. case 276: // '{'
  59593. shift(276); // '{'
  59594. lookahead1W(276); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  59595. whitespace();
  59596. parse_StatementsAndOptionalExpr();
  59597. shift(282); // '}'
  59598. break;
  59599. default:
  59600. shift(133); // 'external'
  59601. }
  59602. eventHandler.endNonterminal("FunctionDecl", e0);
  59603. }
  59604. function parse_ReturnType()
  59605. {
  59606. eventHandler.startNonterminal("ReturnType", e0);
  59607. shift(79); // 'as'
  59608. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  59609. whitespace();
  59610. parse_SequenceType();
  59611. eventHandler.endNonterminal("ReturnType", e0);
  59612. }
  59613. function shift(t)
  59614. {
  59615. if (l1 == t)
  59616. {
  59617. whitespace();
  59618. eventHandler.terminal(XQueryParser.TOKEN[l1], b1, e1 > size ? size : e1);
  59619. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  59620. b1 = b2; e1 = e2; l2 = 0; }
  59621. }
  59622. else
  59623. {
  59624. error(b1, e1, 0, l1, t);
  59625. }
  59626. }
  59627. function shiftT(t)
  59628. {
  59629. if (l1 == t)
  59630. {
  59631. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  59632. b1 = b2; e1 = e2; l2 = 0; }
  59633. }
  59634. else
  59635. {
  59636. error(b1, e1, 0, l1, t);
  59637. }
  59638. }
  59639. function skip(code)
  59640. {
  59641. var b0W = b0; var e0W = e0; var l1W = l1;
  59642. var b1W = b1; var e1W = e1;
  59643. l1 = code; b1 = begin; e1 = end;
  59644. l2 = 0;
  59645. try_Whitespace();
  59646. b0 = b0W; e0 = e0W; l1 = l1W; if (l1 != 0) {
  59647. b1 = b1W; e1 = e1W; }
  59648. }
  59649. function whitespace()
  59650. {
  59651. if (e0 != b1)
  59652. {
  59653. eventHandler.whitespace(e0, b1);
  59654. e0 = b1;
  59655. }
  59656. }
  59657. function matchW(set)
  59658. {
  59659. var code;
  59660. for (;;)
  59661. {
  59662. code = match(set);
  59663. if (code != 22) // S^WS
  59664. {
  59665. if (code != 36) // '(:'
  59666. {
  59667. break;
  59668. }
  59669. skip(code);
  59670. }
  59671. }
  59672. return code;
  59673. }
  59674. function lookahead1W(set)
  59675. {
  59676. if (l1 == 0)
  59677. {
  59678. l1 = matchW(set);
  59679. b1 = begin;
  59680. e1 = end;
  59681. }
  59682. }
  59683. function lookahead2W(set)
  59684. {
  59685. if (l2 == 0)
  59686. {
  59687. l2 = matchW(set);
  59688. b2 = begin;
  59689. e2 = end;
  59690. }
  59691. lk = (l2 << 9) | l1;
  59692. }
  59693. function lookahead1(set)
  59694. {
  59695. if (l1 == 0)
  59696. {
  59697. l1 = match(set);
  59698. b1 = begin;
  59699. e1 = end;
  59700. }
  59701. }
  59702. function lookahead2(set)
  59703. {
  59704. if (l2 == 0)
  59705. {
  59706. l2 = match(set);
  59707. b2 = begin;
  59708. e2 = end;
  59709. }
  59710. lk = (l2 << 9) | l1;
  59711. }
  59712. function error(b, e, s, l, t)
  59713. {
  59714. if (e >= ex)
  59715. {
  59716. bx = b;
  59717. ex = e;
  59718. sx = s;
  59719. lx = l;
  59720. tx = t;
  59721. }
  59722. throw new self.ParseException(bx, ex, sx, lx, tx);
  59723. }
  59724. var lk, b0, e0;
  59725. var l1, b1, e1;
  59726. var l2, b2, e2;
  59727. var bx, ex, sx, lx, tx;
  59728. var eventHandler;
  59729. var memo;
  59730. function memoize(i, e, v)
  59731. {
  59732. memo[(e << 4) + i] = v;
  59733. }
  59734. function memoized(i, e)
  59735. {
  59736. var v = memo[(e << 4) + i];
  59737. return typeof v != "undefined" ? v : 0;
  59738. }
  59739. var input;
  59740. var size;
  59741. var begin;
  59742. var end;
  59743. function match(tokenSetId)
  59744. {
  59745. var nonbmp = false;
  59746. begin = end;
  59747. var current = end;
  59748. var result = XQueryParser.INITIAL[tokenSetId];
  59749. var state = 0;
  59750. for (var code = result & 4095; code != 0; )
  59751. {
  59752. var charclass;
  59753. var c0 = current < size ? input.charCodeAt(current) : 0;
  59754. ++current;
  59755. if (c0 < 0x80)
  59756. {
  59757. charclass = XQueryParser.MAP0[c0];
  59758. }
  59759. else if (c0 < 0xd800)
  59760. {
  59761. var c1 = c0 >> 4;
  59762. charclass = XQueryParser.MAP1[(c0 & 15) + XQueryParser.MAP1[(c1 & 31) + XQueryParser.MAP1[c1 >> 5]]];
  59763. }
  59764. else
  59765. {
  59766. if (c0 < 0xdc00)
  59767. {
  59768. var c1 = current < size ? input.charCodeAt(current) : 0;
  59769. if (c1 >= 0xdc00 && c1 < 0xe000)
  59770. {
  59771. ++current;
  59772. c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
  59773. nonbmp = true;
  59774. }
  59775. }
  59776. var lo = 0, hi = 5;
  59777. for (var m = 3; ; m = (hi + lo) >> 1)
  59778. {
  59779. if (XQueryParser.MAP2[m] > c0) hi = m - 1;
  59780. else if (XQueryParser.MAP2[6 + m] < c0) lo = m + 1;
  59781. else {charclass = XQueryParser.MAP2[12 + m]; break;}
  59782. if (lo > hi) {charclass = 0; break;}
  59783. }
  59784. }
  59785. state = code;
  59786. var i0 = (charclass << 12) + code - 1;
  59787. code = XQueryParser.TRANSITION[(i0 & 15) + XQueryParser.TRANSITION[i0 >> 4]];
  59788. if (code > 4095)
  59789. {
  59790. result = code;
  59791. code &= 4095;
  59792. end = current;
  59793. }
  59794. }
  59795. result >>= 12;
  59796. if (result == 0)
  59797. {
  59798. end = current - 1;
  59799. var c1 = end < size ? input.charCodeAt(end) : 0;
  59800. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  59801. return error(begin, end, state, -1, -1);
  59802. }
  59803. if (nonbmp)
  59804. {
  59805. for (var i = result >> 9; i > 0; --i)
  59806. {
  59807. --end;
  59808. var c1 = end < size ? input.charCodeAt(end) : 0;
  59809. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  59810. }
  59811. }
  59812. else
  59813. {
  59814. end -= result >> 9;
  59815. }
  59816. return (result & 511) - 1;
  59817. }
  59818. }
  59819. XQueryParser.getTokenSet = function(tokenSetId)
  59820. {
  59821. var set = [];
  59822. var s = tokenSetId < 0 ? - tokenSetId : XQueryParser.INITIAL[tokenSetId] & 4095;
  59823. for (var i = 0; i < 284; i += 32)
  59824. {
  59825. var j = i;
  59826. var i0 = (i >> 5) * 3612 + s - 1;
  59827. var i1 = i0 >> 2;
  59828. var i2 = i1 >> 2;
  59829. var f = XQueryParser.EXPECTED[(i0 & 3) + XQueryParser.EXPECTED[(i1 & 3) + XQueryParser.EXPECTED[(i2 & 15) + XQueryParser.EXPECTED[i2 >> 4]]]];
  59830. for ( ; f != 0; f >>>= 1, ++j)
  59831. {
  59832. if ((f & 1) != 0)
  59833. {
  59834. set.push(XQueryParser.TOKEN[j]);
  59835. }
  59836. }
  59837. }
  59838. return set;
  59839. };
  59840. XQueryParser.MAP0 =
  59841. [
  59842. 70, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4,
  59843. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 20, 21, 22, 23,
  59844. 24, 25, 26, 27, 28, 29, 26, 30, 30, 30, 30, 30, 31, 32, 33, 30, 30, 34, 30, 30, 35, 30, 30, 30, 36, 30, 30,
  59845. 37, 38, 39, 38, 30, 38, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
  59846. 61, 62, 63, 64, 65, 66, 67, 68, 38, 38
  59847. ];
  59848. XQueryParser.MAP1 =
  59849. [
  59850. 108, 124, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 156, 181, 181, 181, 181,
  59851. 181, 214, 215, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  59852. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  59853. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  59854. 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  59855. 214, 214, 214, 247, 261, 277, 293, 309, 355, 371, 387, 423, 423, 423, 415, 339, 331, 339, 331, 339, 339,
  59856. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 440, 440, 440, 440, 440, 440, 440,
  59857. 324, 339, 339, 339, 339, 339, 339, 339, 339, 401, 423, 423, 424, 422, 423, 423, 339, 339, 339, 339, 339,
  59858. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 423, 423, 423, 423, 423, 423, 423, 423,
  59859. 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423,
  59860. 423, 423, 423, 338, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339,
  59861. 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 423, 70, 0, 0, 0, 0, 0, 0, 0, 0,
  59862. 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
  59863. 14, 15, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 26, 30,
  59864. 30, 30, 30, 30, 31, 32, 33, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 38, 30, 30, 30, 30, 30,
  59865. 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 34, 30, 30, 35, 30, 30, 30, 36, 30, 30, 37, 38, 39, 38, 30,
  59866. 38, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
  59867. 66, 67, 68, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 30, 30, 38, 38, 38, 38, 38, 38, 38, 69, 38, 38,
  59868. 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69,
  59869. 69, 69, 69, 69
  59870. ];
  59871. XQueryParser.MAP2 =
  59872. [
  59873. 57344, 63744, 64976, 65008, 65536, 983040, 63743, 64975, 65007, 65533, 983039, 1114111, 38, 30, 38, 30, 30,
  59874. 38
  59875. ];
  59876. XQueryParser.INITIAL =
  59877. [
  59878. 1, 12290, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
  59879. 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
  59880. 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
  59881. 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
  59882. 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
  59883. 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
  59884. 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
  59885. 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
  59886. 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
  59887. 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
  59888. 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
  59889. 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
  59890. 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286
  59891. ];
  59892. XQueryParser.TRANSITION =
  59893. [
  59894. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59895. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59896. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59897. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59898. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59899. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59900. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59901. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59902. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59903. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59904. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59905. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59906. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59907. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59908. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59909. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59910. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59911. 38672, 25307, 18176, 18180, 18180, 18180, 18210, 18180, 18180, 18180, 18180, 18222, 18180, 18180, 18180,
  59912. 18180, 18198, 18180, 18182, 18238, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672,
  59913. 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641,
  59914. 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503,
  59915. 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609,
  59916. 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835,
  59917. 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672,
  59918. 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248,
  59919. 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393,
  59920. 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647,
  59921. 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983,
  59922. 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132,
  59923. 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374,
  59924. 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608,
  59925. 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755,
  59926. 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59927. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59928. 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672, 38672, 38672, 42922, 38623, 20771,
  59929. 20784, 20796, 20808, 43870, 38625, 20832, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 28718, 38672,
  59930. 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19553, 19028, 45351, 38672, 18269, 42564,
  59931. 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434,
  59932. 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574,
  59933. 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830,
  59934. 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258,
  59935. 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222,
  59936. 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377,
  59937. 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039,
  59938. 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994,
  59939. 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116,
  59940. 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408,
  59941. 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171,
  59942. 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939,
  59943. 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59944. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59945. 38672, 38672, 38672, 22954, 20869, 38672, 38672, 38672, 37958, 38672, 38672, 36976, 20909, 20888, 38672,
  59946. 38672, 38672, 38672, 39926, 20282, 20925, 20958, 38672, 38672, 38672, 43215, 38672, 38672, 25928, 38672,
  59947. 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 20997, 38672, 18269,
  59948. 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406,
  59949. 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672,
  59950. 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810,
  59951. 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894,
  59952. 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185,
  59953. 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187,
  59954. 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624,
  59955. 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976,
  59956. 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160,
  59957. 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386,
  59958. 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589,
  59959. 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448,
  59960. 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59961. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59962. 38672, 38672, 38672, 38672, 21013, 21118, 38672, 38672, 38672, 24651, 38672, 38672, 44696, 38672, 42922,
  59963. 38824, 21095, 21058, 21048, 21080, 21111, 48022, 20832, 38672, 38672, 38672, 43215, 21139, 38672, 25530,
  59964. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 21157, 38672,
  59965. 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670,
  59966. 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672,
  59967. 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 18776, 18792, 20360,
  59968. 18810, 18830, 18835, 19257, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871,
  59969. 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154,
  59970. 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342,
  59971. 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898,
  59972. 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446,
  59973. 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105,
  59974. 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368,
  59975. 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592,
  59976. 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969,
  59977. 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59978. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59979. 38672, 38672, 38672, 38672, 38672, 20939, 38666, 38672, 38672, 38672, 21880, 38671, 38672, 36460, 38672,
  59980. 21173, 38661, 21224, 38672, 21231, 38672, 42738, 42750, 20832, 38672, 38672, 38672, 43215, 38672, 38672,
  59981. 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 45351,
  59982. 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462,
  59983. 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591,
  59984. 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792,
  59985. 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855,
  59986. 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934,
  59987. 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712,
  59988. 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931,
  59989. 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921,
  59990. 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679,
  59991. 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402,
  59992. 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548,
  59993. 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711,
  59994. 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59995. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  59996. 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 21247, 38672, 38672,
  59997. 38672, 28875, 38672, 38672, 21266, 38672, 38672, 21288, 21300, 20832, 38672, 38672, 38672, 43215, 38672,
  59998. 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990,
  59999. 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422,
  60000. 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930,
  60001. 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849,
  60002. 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943,
  60003. 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726,
  60004. 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315,
  60005. 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601,
  60006. 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875,
  60007. 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039,
  60008. 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380,
  60009. 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532,
  60010. 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695,
  60011. 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60012. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60013. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672,
  60014. 38672, 38672, 31059, 38672, 38672, 38672, 38672, 38672, 38672, 24860, 21316, 38672, 38672, 38672, 43215,
  60015. 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418,
  60016. 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403,
  60017. 18422, 18462, 20670, 18988, 50434, 18503, 18525, 21353, 19412, 50440, 18509, 36003, 19232, 20563, 38672,
  60018. 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406,
  60019. 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554,
  60020. 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129,
  60021. 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299,
  60022. 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046,
  60023. 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859,
  60024. 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979,
  60025. 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337,
  60026. 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516,
  60027. 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954,
  60028. 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60029. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60030. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 24749, 21390, 38672, 38672, 38672, 23220, 38672,
  60031. 38672, 49687, 45814, 21411, 38672, 38672, 38672, 38672, 41859, 18366, 21448, 21478, 38672, 38672, 38672,
  60032. 43215, 38672, 38672, 50505, 21515, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998,
  60033. 19418, 35990, 46185, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387,
  60034. 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563,
  60035. 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769,
  60036. 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955,
  60037. 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103,
  60038. 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964,
  60039. 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631,
  60040. 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113,
  60041. 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515,
  60042. 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298,
  60043. 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500,
  60044. 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437,
  60045. 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672,
  60046. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60047. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 21462, 21573, 21537, 21537, 21537, 21580,
  60048. 21532, 21537, 21542, 21615, 21558, 21644, 21596, 21609, 21631, 21657, 21669, 21681, 20832, 38672, 38672,
  60049. 38672, 21337, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794,
  60050. 35998, 19418, 35990, 45351, 38672, 18269, 42564, 21697, 38672, 40144, 38672, 23032, 18306, 18356, 18382,
  60051. 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232,
  60052. 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745,
  60053. 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540,
  60054. 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169,
  60055. 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000,
  60056. 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905,
  60057. 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808,
  60058. 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010,
  60059. 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259,
  60060. 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424,
  60061. 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660,
  60062. 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672,
  60063. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60064. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 30462, 38672, 38672, 38672,
  60065. 22025, 23251, 38672, 22249, 23257, 42922, 30462, 38672, 21719, 21725, 21741, 21766, 21750, 21795, 38672,
  60066. 38672, 38672, 46035, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958,
  60067. 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 30475, 38672, 40144, 38672, 23032, 18306, 18356,
  60068. 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003,
  60069. 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753,
  60070. 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839,
  60071. 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062,
  60072. 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273,
  60073. 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938,
  60074. 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771,
  60075. 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383,
  60076. 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223,
  60077. 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497,
  60078. 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945,
  60079. 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672,
  60080. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60081. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 24785, 38672, 38672,
  60082. 38672, 30470, 38672, 38672, 38672, 37115, 50393, 21856, 21832, 21850, 21834, 21872, 21896, 21908, 20832,
  60083. 38672, 38672, 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953,
  60084. 18958, 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306,
  60085. 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 21924, 19412, 50440, 18509,
  60086. 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722,
  60087. 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794,
  60088. 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016,
  60089. 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222,
  60090. 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608,
  60091. 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745,
  60092. 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562,
  60093. 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207,
  60094. 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484,
  60095. 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143,
  60096. 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672,
  60097. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60098. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672,
  60099. 38672, 38672, 30470, 38672, 38672, 38672, 37301, 25812, 27394, 21985, 22003, 21985, 22017, 27392, 21987,
  60100. 20832, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60101. 18953, 18958, 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 42072, 38672, 23032,
  60102. 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440,
  60103. 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685,
  60104. 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814,
  60105. 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974,
  60106. 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185,
  60107. 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569,
  60108. 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792,
  60109. 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321,
  60110. 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479,
  60111. 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468,
  60112. 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629,
  60113. 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672,
  60114. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60115. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 20981,
  60116. 38672, 38672, 38672, 30470, 24643, 38672, 48413, 22054, 26165, 22041, 22070, 22074, 22074, 22090, 20979,
  60117. 48442, 20832, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672,
  60118. 38672, 18953, 18958, 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672,
  60119. 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412,
  60120. 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652,
  60121. 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364,
  60122. 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947,
  60123. 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154,
  60124. 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495,
  60125. 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722,
  60126. 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992,
  60127. 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176,
  60128. 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452,
  60129. 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487,
  60130. 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672,
  60131. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60132. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22114,
  60133. 38672, 38672, 38672, 38672, 30470, 38672, 38672, 38672, 38672, 42922, 47221, 22137, 22155, 22137, 22169,
  60134. 47219, 22139, 22193, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672,
  60135. 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 22230, 38672, 22247, 38672, 29641, 22265, 42072,
  60136. 33771, 38672, 38672, 38672, 38672, 26929, 22475, 35267, 22475, 22475, 36544, 42277, 22411, 22411, 33858,
  60137. 26727, 37227, 26727, 26727, 35540, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 18609, 24891, 38672,
  60138. 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727,
  60139. 26727, 26727, 26727, 26727, 32919, 33803, 21432, 38031, 38672, 38672, 38672, 38672, 38672, 22291, 38672,
  60140. 26931, 22311, 22475, 22475, 22475, 22475, 33849, 22352, 22411, 35447, 22411, 22411, 33324, 22381, 26727,
  60141. 45449, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 30028, 38672, 38672, 22475, 36607, 22475,
  60142. 22475, 28015, 33854, 22411, 22410, 22411, 22411, 27851, 26727, 45441, 26727, 26727, 22521, 33795, 38672,
  60143. 38672, 22807, 38672, 38672, 28255, 22475, 22475, 38505, 29442, 22411, 22411, 34626, 26485, 26727, 26727,
  60144. 26860, 26998, 22647, 38672, 38672, 22428, 26931, 48359, 22475, 42142, 32794, 22411, 28347, 37402, 26727,
  60145. 22521, 32486, 38672, 18915, 38672, 22451, 22474, 36860, 37042, 22411, 22492, 22517, 22520, 26312, 34036,
  60146. 26929, 42625, 42144, 35207, 26975, 22537, 26310, 35759, 22589, 36765, 22624, 22640, 22663, 22685, 22706,
  60147. 39617, 42139, 28345, 26456, 39814, 47009, 22727, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863,
  60148. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60149. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60150. 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672, 38672, 23092, 42922, 38672, 38672, 38672, 38672,
  60151. 38672, 31140, 31152, 22751, 38672, 38672, 38672, 43215, 38672, 38672, 26131, 38672, 38672, 38672, 38672,
  60152. 38672, 38672, 38672, 28256, 42141, 22411, 26453, 27937, 27268, 22230, 38672, 38672, 38672, 29641, 38672,
  60153. 40144, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 36544, 22411, 22411, 22411,
  60154. 33858, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 18609, 38672,
  60155. 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334,
  60156. 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60157. 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727,
  60158. 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475,
  60159. 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521, 33795,
  60160. 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485, 26727,
  60161. 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727,
  60162. 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312,
  60163. 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340,
  60164. 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905,
  60165. 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60166. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60167. 38672, 20939, 22803, 38672, 38672, 38672, 22886, 38672, 38672, 38672, 38672, 42922, 36439, 22823, 22844,
  60168. 22866, 22878, 36438, 22828, 20832, 38672, 38672, 38672, 43215, 38672, 38672, 50505, 41329, 38672, 22902,
  60169. 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641,
  60170. 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503,
  60171. 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609,
  60172. 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835,
  60173. 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672,
  60174. 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248,
  60175. 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393,
  60176. 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647,
  60177. 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983,
  60178. 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132,
  60179. 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374,
  60180. 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608,
  60181. 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755,
  60182. 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60183. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60184. 38672, 38672, 20939, 22923, 38672, 38672, 38672, 30470, 38672, 38672, 38672, 23115, 42922, 38672, 38672,
  60185. 38672, 38672, 38672, 26339, 22940, 22970, 38672, 38672, 38672, 43215, 38672, 38672, 23007, 38672, 38672,
  60186. 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 47631, 27268, 22230, 38672, 38672, 38672,
  60187. 29641, 38672, 48650, 23029, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 36544, 22411,
  60188. 22411, 22411, 33858, 26727, 26727, 26727, 26727, 30990, 42723, 23085, 38672, 38672, 38672, 38672, 38672,
  60189. 23048, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411,
  60190. 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 23072, 23108, 38672, 38672, 38672, 38672, 38672,
  60191. 48411, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 46833, 22411, 22411, 22411, 22411, 22411,
  60192. 47864, 26727, 26727, 26727, 26727, 26727, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60193. 22475, 22475, 22475, 22475, 43252, 33854, 22411, 22411, 22411, 22411, 48185, 26727, 26727, 26727, 26727,
  60194. 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411,
  60195. 36778, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411,
  60196. 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727,
  60197. 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196,
  60198. 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362,
  60199. 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60200. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60201. 38672, 38672, 38672, 20939, 18878, 38672, 38672, 38672, 35592, 32963, 38672, 38672, 23153, 42922, 37950,
  60202. 35335, 23190, 23196, 23212, 38672, 41919, 23236, 23274, 38672, 38672, 45078, 23291, 38672, 50505, 38672,
  60203. 38672, 38672, 38672, 38672, 38672, 38672, 18953, 25157, 23483, 23350, 24209, 23309, 45351, 38672, 18269,
  60204. 42564, 28228, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670, 19821,
  60205. 23376, 23336, 23369, 23392, 24203, 23434, 23465, 24172, 23726, 19833, 38672, 46930, 18591, 38672, 38672,
  60206. 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 18729, 23481, 23642, 24581,
  60207. 23499, 23504, 24048, 23353, 23520, 23933, 23353, 24164, 23917, 24518, 37554, 48943, 18855, 18871, 18894,
  60208. 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 23536, 23854, 23815, 23561, 23577,
  60209. 23632, 24450, 24255, 23689, 23658, 23674, 23716, 23742, 24268, 30964, 19299, 19315, 28712, 19342, 25187,
  60210. 19377, 19393, 19434, 19464, 19495, 19569, 23773, 23804, 23842, 24040, 23870, 23886, 23449, 23700, 23902,
  60211. 23320, 23949, 23992, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 24027, 23545, 23592,
  60212. 24064, 24137, 24459, 24094, 24110, 23407, 20069, 47383, 20010, 46515, 35979, 20039, 20679, 24126, 24567,
  60213. 24482, 24153, 24188, 23616, 24225, 20191, 20207, 20223, 20259, 20298, 20337, 24284, 24078, 24374, 24300,
  60214. 24330, 24314, 23418, 20424, 20452, 20468, 24361, 23826, 23606, 24390, 24419, 20532, 24435, 24475, 24498,
  60215. 24628, 20608, 23750, 23928, 24403, 20644, 23757, 24508, 20660, 20054, 24345, 20695, 24537, 24597, 24613,
  60216. 24552, 23788, 24240, 23964, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60217. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60218. 38672, 38672, 38672, 38672, 20939, 39906, 38672, 38672, 38672, 30470, 24672, 38672, 38672, 24667, 26611,
  60219. 24688, 24695, 24695, 24695, 24711, 26910, 24735, 20832, 38672, 38672, 38672, 43215, 38672, 38672, 50505,
  60220. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 35990, 45351, 38672,
  60221. 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462, 20670,
  60222. 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591, 38672,
  60223. 38672, 37574, 24765, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792, 20360,
  60224. 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 20739, 24828, 48943, 18855, 18871,
  60225. 18894, 40258, 24858, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934, 19154,
  60226. 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19087, 30964, 19299, 19315, 28712, 19342,
  60227. 25187, 19377, 19393, 19434, 19464, 19495, 24876, 24922, 24938, 19905, 19631, 19046, 24954, 24931, 19898,
  60228. 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 24970, 18446,
  60229. 19976, 19994, 19525, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679, 20105,
  60230. 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402, 21368,
  60231. 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548, 20592,
  60232. 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711, 21969,
  60233. 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60234. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60235. 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672, 38672, 38672,
  60236. 21250, 35576, 24999, 24999, 24999, 35584, 31668, 31680, 20832, 38672, 38672, 38672, 43215, 38672, 38672,
  60237. 50505, 38672, 38672, 25271, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 19887, 45351,
  60238. 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422, 18462,
  60239. 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930, 18591,
  60240. 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849, 18792,
  60241. 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943, 18855,
  60242. 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726, 19934,
  60243. 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315, 28712,
  60244. 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601, 24931,
  60245. 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875, 19921,
  60246. 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039, 20679,
  60247. 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380, 20402,
  60248. 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532, 20548,
  60249. 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695, 20711,
  60250. 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60251. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60252. 38672, 38672, 38672, 38672, 38672, 38672, 50381, 27744, 38672, 38672, 38672, 30470, 38672, 38672, 38672,
  60253. 38672, 42922, 40452, 25015, 25015, 25015, 25023, 27746, 40454, 20832, 25047, 38672, 38672, 43215, 38672,
  60254. 38672, 50505, 38672, 38672, 25065, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418, 20310,
  60255. 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422,
  60256. 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930,
  60257. 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849,
  60258. 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943,
  60259. 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726,
  60260. 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315,
  60261. 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601,
  60262. 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875,
  60263. 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039,
  60264. 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380,
  60265. 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532,
  60266. 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695,
  60267. 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60268. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60269. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 50286, 50295, 38672, 38672, 38672, 23056, 38672, 38672,
  60270. 38672, 38672, 42922, 44048, 25088, 25088, 25088, 25096, 46630, 44050, 25120, 38672, 38672, 38672, 43215,
  60271. 38672, 38672, 50505, 38672, 38672, 18699, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418,
  60272. 35990, 25136, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403,
  60273. 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672,
  60274. 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406,
  60275. 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554,
  60276. 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129,
  60277. 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299,
  60278. 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046,
  60279. 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859,
  60280. 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979,
  60281. 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337,
  60282. 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516,
  60283. 20532, 20548, 20592, 20589, 50171, 25152, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954,
  60284. 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60285. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60286. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25173, 38672, 38672, 38672, 38672, 30470, 25218,
  60287. 38672, 38672, 21395, 32346, 38672, 38672, 38672, 25210, 25237, 21393, 25221, 25256, 38672, 38672, 38672,
  60288. 43215, 38672, 38672, 50505, 22214, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998,
  60289. 19206, 20349, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387,
  60290. 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563,
  60291. 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769,
  60292. 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955,
  60293. 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103,
  60294. 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964,
  60295. 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631,
  60296. 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113,
  60297. 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515,
  60298. 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298,
  60299. 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500,
  60300. 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437,
  60301. 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672,
  60302. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60303. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470,
  60304. 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 38672, 41563, 25293, 20832, 38672, 38672,
  60305. 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794,
  60306. 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382,
  60307. 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232,
  60308. 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745,
  60309. 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540,
  60310. 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169,
  60311. 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000,
  60312. 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905,
  60313. 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808,
  60314. 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010,
  60315. 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259,
  60316. 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424,
  60317. 20500, 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660,
  60318. 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672,
  60319. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60320. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672,
  60321. 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672,
  60322. 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141,
  60323. 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672,
  60324. 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727,
  60325. 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 38672, 38672, 38672, 38672, 28258, 22475,
  60326. 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727,
  60327. 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 38672, 38672, 26931, 22475, 22475, 22475,
  60328. 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918,
  60329. 41804, 38672, 38672, 38672, 38672, 34976, 38672, 38672, 22475, 22475, 22475, 22475, 33754, 33854, 22411,
  60330. 22411, 22411, 22411, 31454, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672,
  60331. 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727, 26727, 26998, 46887, 38672,
  60332. 38672, 25437, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672,
  60333. 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411,
  60334. 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456,
  60335. 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672,
  60336. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60337. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672,
  60338. 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344,
  60339. 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256,
  60340. 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672,
  60341. 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727,
  60342. 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 38672, 38672, 38672, 38672, 28258,
  60343. 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727,
  60344. 26727, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 38672, 38672, 26931, 22475, 22475,
  60345. 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727,
  60346. 32918, 41804, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 33754, 33854,
  60347. 22411, 22411, 22411, 22411, 31454, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672,
  60348. 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727, 26727, 26998, 46887,
  60349. 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672,
  60350. 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144,
  60351. 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345,
  60352. 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672,
  60353. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60354. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672,
  60355. 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333,
  60356. 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60357. 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672,
  60358. 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727,
  60359. 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 30057, 38672, 38672, 38672,
  60360. 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727,
  60361. 26727, 26727, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 38672, 38672, 26931, 22475,
  60362. 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727,
  60363. 26727, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 33754,
  60364. 33854, 22411, 22411, 22411, 22411, 31454, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672,
  60365. 38672, 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727, 26727, 26998,
  60366. 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313,
  60367. 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475,
  60368. 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139,
  60369. 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672,
  60370. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60371. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672,
  60372. 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298,
  60373. 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60374. 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672,
  60375. 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727,
  60376. 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 38672, 38672, 38672,
  60377. 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727,
  60378. 26727, 26727, 26727, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 25455, 38672, 38672, 26931,
  60379. 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727,
  60380. 26727, 26727, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475,
  60381. 33754, 33854, 22411, 22411, 22411, 22411, 31454, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672,
  60382. 38672, 38672, 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727, 26727,
  60383. 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521,
  60384. 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929,
  60385. 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617,
  60386. 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672,
  60387. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60388. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323,
  60389. 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448,
  60390. 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 40102, 38672, 38672, 38672, 38672, 38672,
  60391. 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 49130,
  60392. 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690,
  60393. 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 38672, 38672,
  60394. 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727,
  60395. 26727, 26727, 26727, 26727, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 38672, 38672,
  60396. 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727,
  60397. 26727, 26727, 26727, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475,
  60398. 22475, 33754, 33854, 22411, 22411, 22411, 22411, 31454, 26727, 26727, 26727, 26727, 22521, 33795, 38672,
  60399. 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727,
  60400. 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727,
  60401. 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036,
  60402. 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976,
  60403. 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863,
  60404. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60405. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60406. 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672,
  60407. 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60408. 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672, 29641, 38672,
  60409. 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411,
  60410. 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60411. 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334,
  60412. 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60413. 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727,
  60414. 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475,
  60415. 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521, 33795,
  60416. 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485, 26727,
  60417. 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727,
  60418. 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312,
  60419. 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340,
  60420. 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905,
  60421. 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60422. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60423. 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672,
  60424. 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672,
  60425. 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25482, 38672, 38672, 38672, 29641,
  60426. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411,
  60427. 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60428. 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411,
  60429. 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60430. 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324,
  60431. 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475,
  60432. 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521,
  60433. 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485,
  60434. 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347,
  60435. 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520,
  60436. 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435,
  60437. 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357,
  60438. 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60439. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60440. 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672,
  60441. 38672, 38672, 44448, 27298, 33333, 25500, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672,
  60442. 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672, 38672,
  60443. 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411,
  60444. 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672,
  60445. 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411,
  60446. 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672,
  60447. 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411,
  60448. 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60449. 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727,
  60450. 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411,
  60451. 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411,
  60452. 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727,
  60453. 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196,
  60454. 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362,
  60455. 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60456. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60457. 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38220,
  60458. 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672,
  60459. 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672, 38672,
  60460. 38672, 29641, 38672, 38672, 38672, 25563, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393,
  60461. 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672,
  60462. 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411,
  60463. 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672,
  60464. 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411,
  60465. 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672,
  60466. 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727,
  60467. 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411,
  60468. 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411,
  60469. 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977,
  60470. 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978,
  60471. 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538,
  60472. 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60473. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60474. 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922,
  60475. 38672, 38672, 38672, 38672, 28464, 25582, 25594, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672,
  60476. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672,
  60477. 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475,
  60478. 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672,
  60479. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411,
  60480. 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672,
  60481. 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411,
  60482. 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672,
  60483. 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727,
  60484. 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411,
  60485. 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142,
  60486. 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411,
  60487. 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411,
  60488. 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459,
  60489. 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60490. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60491. 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672,
  60492. 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672,
  60493. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375,
  60494. 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475,
  60495. 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672,
  60496. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411,
  60497. 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672,
  60498. 38672, 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411,
  60499. 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672,
  60500. 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727,
  60501. 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 21426, 38672, 28255, 22475, 22475, 22475, 29442,
  60502. 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475,
  60503. 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411,
  60504. 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476,
  60505. 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345,
  60506. 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60507. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60508. 38672, 38672, 38672, 38672, 38672, 38672, 25610, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672,
  60509. 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672,
  60510. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268,
  60511. 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475,
  60512. 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672,
  60513. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786,
  60514. 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672,
  60515. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411,
  60516. 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672,
  60517. 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851,
  60518. 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475,
  60519. 29442, 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475,
  60520. 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143,
  60521. 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759,
  60522. 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257,
  60523. 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60524. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60525. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672,
  60526. 38672, 38672, 42922, 44752, 25631, 25649, 25671, 25683, 44753, 25633, 20832, 38672, 38672, 38672, 43215,
  60527. 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998, 19418,
  60528. 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 35735, 23032, 18306, 18356, 18382, 18387, 18403,
  60529. 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672,
  60530. 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406,
  60531. 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554,
  60532. 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129,
  60533. 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299,
  60534. 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046,
  60535. 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859,
  60536. 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979,
  60537. 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 25717, 20259, 20298, 20337,
  60538. 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516,
  60539. 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954,
  60540. 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60541. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60542. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672,
  60543. 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 38672, 38672, 24860, 20832, 38672, 38672, 38672,
  60544. 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794, 35998,
  60545. 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387,
  60546. 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563,
  60547. 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769,
  60548. 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955,
  60549. 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103,
  60550. 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964,
  60551. 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631,
  60552. 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113,
  60553. 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515,
  60554. 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298,
  60555. 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500,
  60556. 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437,
  60557. 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672,
  60558. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60559. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470,
  60560. 38672, 38672, 38672, 38672, 42922, 31997, 38672, 25754, 25760, 25776, 23293, 41839, 20832, 38672, 38672,
  60561. 38672, 43215, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958, 18794,
  60562. 35998, 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382,
  60563. 18387, 18403, 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232,
  60564. 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745,
  60565. 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540,
  60566. 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169,
  60567. 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000,
  60568. 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905,
  60569. 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808,
  60570. 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010,
  60571. 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259,
  60572. 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 25800, 20452, 20468, 20484, 20497, 50424,
  60573. 20500, 20516, 25828, 20548, 20592, 20589, 50171, 25844, 19547, 18794, 18487, 20629, 20143, 19945, 20660,
  60574. 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672,
  60575. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60576. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 25049, 38672, 38672, 38672,
  60577. 22098, 25865, 25896, 25377, 25881, 25913, 30410, 30418, 25964, 25978, 25990, 26006, 26018, 25344, 45647,
  60578. 38672, 26034, 48091, 26052, 33210, 26086, 26116, 26153, 26223, 35321, 26181, 25701, 26211, 26248, 26264,
  60579. 43583, 44602, 26280, 26296, 26329, 38672, 38672, 38672, 30176, 26355, 38925, 41958, 22850, 24803, 38672,
  60580. 44654, 30480, 22475, 22475, 22475, 36601, 25393, 22411, 22411, 43601, 22690, 26727, 26727, 26727, 39641,
  60581. 30990, 39463, 38672, 43148, 28319, 38672, 29724, 26374, 19326, 38672, 38672, 32428, 40296, 38574, 45608,
  60582. 22475, 22475, 26394, 26439, 26475, 26509, 22411, 37859, 28780, 26529, 38451, 26727, 26727, 43300, 45056,
  60583. 22573, 30349, 25414, 26545, 38672, 26563, 38672, 40287, 48411, 38672, 26599, 35364, 28653, 26627, 31403,
  60584. 45616, 49789, 33849, 44356, 22411, 30609, 28411, 41138, 33324, 35718, 26727, 47625, 44193, 29223, 41749,
  60585. 42781, 38094, 28940, 38672, 21816, 21032, 26644, 38672, 47420, 26664, 22475, 41307, 22336, 31195, 39296,
  60586. 22411, 22411, 26685, 31454, 47988, 26726, 26727, 30787, 32911, 36940, 26744, 38697, 46064, 38672, 26779,
  60587. 26799, 26821, 22787, 22475, 23131, 26837, 37515, 22411, 36778, 26853, 26876, 26727, 33519, 46887, 26926,
  60588. 38672, 38672, 26931, 37355, 35081, 26947, 38899, 38878, 26969, 48550, 26727, 26994, 26313, 38672, 38672,
  60589. 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411,
  60590. 26975, 26727, 26310, 35759, 22476, 22411, 26978, 38555, 27014, 22600, 47761, 48246, 27057, 27076, 27094,
  60591. 27113, 28343, 26456, 27133, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672,
  60592. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60593. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 27153, 38672,
  60594. 38672, 22098, 38672, 38672, 38672, 38672, 39378, 27172, 38672, 27196, 27202, 27218, 27234, 27246, 25344,
  60595. 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256,
  60596. 27262, 42259, 26453, 27284, 27268, 25375, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672,
  60597. 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727,
  60598. 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 46100, 48405, 27326, 25277, 38672, 38672, 28258,
  60599. 22475, 22475, 22475, 37137, 27346, 22411, 22411, 22411, 22411, 39760, 37334, 26727, 26727, 26727, 26727,
  60600. 27410, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 38672, 38672, 26931, 22475, 22475,
  60601. 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727,
  60602. 32918, 41804, 38672, 38672, 27435, 38672, 38672, 33108, 38672, 49441, 22475, 22475, 22475, 38002, 42895,
  60603. 22411, 22411, 22411, 22411, 27454, 27481, 26727, 26727, 26727, 43058, 33795, 38672, 38672, 38672, 38672,
  60604. 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727, 26727, 26727, 26998, 46887,
  60605. 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672,
  60606. 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144,
  60607. 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 46997, 37168,
  60608. 35831, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672,
  60609. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60610. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 27504,
  60611. 38672, 38672, 22098, 38672, 27541, 38672, 27559, 23976, 27578, 27586, 27602, 27617, 27629, 27645, 27657,
  60612. 25344, 38672, 38672, 27676, 44992, 38672, 22924, 38672, 38672, 38672, 38672, 38672, 38672, 27673, 50511,
  60613. 27692, 47251, 26513, 26453, 41246, 27710, 25375, 29768, 38672, 38672, 32334, 38672, 27740, 38672, 27762,
  60614. 27784, 38672, 25948, 27789, 27805, 27821, 22475, 22475, 27840, 27878, 22411, 22411, 22690, 27915, 27931,
  60615. 26727, 26727, 30990, 39463, 44557, 38672, 38672, 44934, 38672, 38225, 48405, 33126, 27953, 38672, 38672,
  60616. 27694, 47073, 35424, 37245, 22475, 35786, 48497, 47338, 42686, 30280, 22411, 37334, 37394, 27977, 27995,
  60617. 43743, 26727, 32919, 30349, 25414, 38672, 38672, 24003, 38672, 30096, 48411, 38672, 38672, 26931, 22475,
  60618. 22475, 22475, 28013, 28031, 33849, 22411, 22411, 22411, 28053, 28070, 33324, 26727, 26727, 26727, 28092,
  60619. 28109, 32918, 41804, 28131, 38672, 38672, 49206, 38672, 28149, 38672, 22475, 22475, 22475, 22780, 33754,
  60620. 33854, 22411, 22411, 42031, 22411, 31454, 26727, 26727, 26727, 28171, 22521, 33795, 38672, 38672, 31346,
  60621. 38672, 46687, 21493, 22475, 28191, 22475, 23131, 22411, 30274, 22411, 36778, 26727, 35228, 26727, 31599,
  60622. 28213, 38672, 38672, 38672, 28250, 28274, 47411, 42142, 28296, 31494, 28347, 36728, 31954, 22521, 26313,
  60623. 38672, 38672, 28317, 27136, 22475, 28335, 22411, 36897, 26977, 26727, 22564, 26312, 34036, 26929, 22475,
  60624. 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 28363, 28379,
  60625. 28427, 28480, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 28504, 28863, 38672, 38672,
  60626. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60627. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672,
  60628. 24521, 38672, 38672, 22098, 38672, 28530, 45484, 38672, 46575, 28549, 28557, 28573, 28587, 28595, 28611,
  60629. 28623, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 19750, 26547, 38672, 26546,
  60630. 19755, 28639, 42141, 48492, 27360, 44280, 27268, 25375, 29257, 27180, 28679, 29641, 21703, 38672, 25730,
  60631. 38672, 38083, 42329, 28697, 28734, 27137, 27824, 36531, 43498, 28750, 22608, 46434, 28774, 46408, 28796,
  60632. 28814, 28833, 26727, 28849, 39463, 38672, 38672, 38672, 25738, 38672, 29761, 48405, 38672, 38672, 38672,
  60633. 19698, 28258, 22475, 22475, 22475, 27023, 35786, 22411, 22411, 22411, 22411, 28891, 37334, 26727, 26727,
  60634. 26727, 26727, 28912, 43066, 28929, 28956, 38672, 38672, 33876, 38672, 28992, 48411, 38672, 38672, 29009,
  60635. 29030, 27032, 22475, 22475, 22669, 33849, 29109, 45393, 22411, 22411, 32729, 33324, 29133, 37067, 26727,
  60636. 26727, 34717, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 29157, 38672, 29181, 22475, 22475, 29202,
  60637. 33754, 43112, 22411, 22411, 32083, 22411, 34472, 29222, 26727, 26727, 29239, 22521, 33795, 38672, 29256,
  60638. 29273, 38672, 29294, 28255, 32383, 27117, 29315, 23131, 44876, 34578, 42252, 36778, 44915, 26727, 29337,
  60639. 26998, 46887, 21810, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521,
  60640. 26313, 38672, 29370, 38672, 27136, 22475, 29387, 22411, 41041, 26977, 26727, 43751, 26312, 34036, 26929,
  60641. 22475, 42144, 22411, 29411, 29240, 26310, 35759, 22476, 22411, 26978, 48196, 29430, 26953, 38544, 39617,
  60642. 34809, 33567, 37775, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672,
  60643. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60644. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323,
  60645. 38672, 38673, 29464, 38672, 22098, 22435, 29483, 38672, 29506, 26195, 29530, 29540, 29556, 29570, 29582,
  60646. 29598, 29610, 25344, 38672, 29626, 25072, 29668, 50094, 29711, 40102, 40331, 29748, 21064, 29784, 29812,
  60647. 29843, 29873, 29903, 29919, 29957, 26423, 29973, 30010, 25375, 30044, 30091, 38782, 30112, 30134, 26137,
  60648. 30161, 38672, 38672, 26583, 38672, 26929, 39099, 30212, 36878, 44806, 30228, 43650, 28758, 46842, 30244,
  60649. 46765, 30296, 30317, 30336, 30384, 39463, 20089, 31354, 30434, 38799, 41183, 30450, 30496, 38672, 30542,
  60650. 30564, 29278, 30580, 39823, 30631, 28663, 42103, 30647, 30685, 30712, 30766, 30811, 30837, 34161, 30878,
  60651. 30901, 34681, 30930, 30980, 31006, 31022, 25414, 31049, 38672, 18321, 49090, 31075, 31094, 31128, 34195,
  60652. 32584, 46802, 31168, 22475, 33645, 42347, 31190, 47486, 31211, 22411, 47598, 49959, 31232, 32841, 31257,
  60653. 26727, 39569, 42011, 31278, 31335, 49499, 35851, 39273, 31370, 43966, 34186, 21188, 33468, 37601, 29186,
  60654. 31389, 31426, 42239, 40895, 22411, 31442, 31481, 31454, 31519, 31539, 30795, 31561, 31595, 33795, 38672,
  60655. 48757, 39401, 38672, 30196, 28255, 39519, 43549, 31615, 23131, 34822, 47675, 31635, 36778, 22546, 47769,
  60656. 31572, 26998, 46887, 39201, 31656, 18290, 31696, 31734, 31750, 31772, 31808, 31845, 31869, 31903, 37385,
  60657. 31919, 31970, 26378, 18593, 32021, 48908, 39526, 44237, 32042, 32063, 32099, 48723, 41712, 26312, 41270,
  60658. 26929, 22475, 32144, 22411, 32167, 44894, 26310, 32185, 46276, 40692, 44326, 31465, 20435, 32208, 32228,
  60659. 32248, 32274, 32295, 32319, 32362, 32399, 32415, 28257, 28345, 26459, 32457, 32473, 36357, 34905, 28863,
  60660. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60661. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60662. 25323, 38672, 38672, 32509, 38672, 22098, 32530, 32548, 43771, 30190, 32600, 32630, 38672, 32616, 32654,
  60663. 32662, 32678, 32690, 25344, 38672, 38672, 48277, 43215, 38672, 38672, 38672, 38672, 29732, 38672, 38672,
  60664. 32706, 29731, 26036, 33631, 42208, 32724, 38438, 44280, 27268, 25375, 21272, 38672, 38672, 31985, 38672,
  60665. 38672, 38672, 26576, 32745, 36837, 38672, 26929, 32766, 22475, 22475, 22475, 32810, 32857, 22411, 22411,
  60666. 22690, 27419, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 48405, 38672,
  60667. 38672, 40108, 38672, 28258, 22475, 22475, 22475, 42113, 35786, 22411, 22411, 22411, 22411, 32877, 37334,
  60668. 26727, 26727, 26727, 26728, 26727, 32919, 30349, 25414, 38672, 38672, 38672, 38672, 38672, 48411, 32026,
  60669. 38672, 26931, 22475, 22475, 46869, 22475, 22475, 33849, 22411, 22411, 39678, 22411, 22411, 33324, 26727,
  60670. 26727, 41099, 26727, 26727, 32918, 41804, 38672, 38672, 38672, 38672, 38672, 30118, 38672, 22475, 22475,
  60671. 22475, 42121, 33754, 33854, 22411, 22411, 48685, 22411, 31454, 26727, 26727, 26727, 46758, 22521, 33795,
  60672. 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 23131, 22411, 22411, 22411, 36778, 26727,
  60673. 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727,
  60674. 26727, 22521, 36404, 38672, 38672, 38672, 44299, 22475, 42143, 31823, 22411, 32169, 26727, 22520, 26312,
  60675. 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340,
  60676. 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 27097, 32897, 36362, 47020, 32935,
  60677. 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60678. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60679. 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 25031, 38672, 38672, 43445, 32979, 32987, 33003,
  60680. 33009, 33025, 33041, 33053, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 29467, 38672, 38672, 38672,
  60681. 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 33069, 38672, 38672, 38672, 29641,
  60682. 38672, 38672, 38672, 33103, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411,
  60683. 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60684. 38672, 33124, 38672, 18284, 28258, 22475, 22475, 22475, 22475, 40837, 22411, 22411, 22411, 22411, 22411,
  60685. 34394, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 33142, 38672, 33163, 42808,
  60686. 38672, 42803, 38566, 22475, 22475, 37994, 22475, 22475, 33849, 22411, 22411, 47479, 22411, 22411, 33324,
  60687. 26727, 26727, 31312, 26727, 26727, 41720, 33181, 38672, 38672, 34958, 38672, 38672, 38672, 38672, 22475,
  60688. 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521,
  60689. 33795, 38672, 38672, 34949, 49071, 38672, 28255, 22475, 22475, 29048, 29442, 22411, 22411, 43834, 26485,
  60690. 26727, 26727, 49882, 26998, 33184, 33200, 40222, 33234, 22991, 22475, 33277, 33313, 50063, 43479, 33349,
  60691. 26727, 33377, 32128, 26313, 33405, 26648, 22985, 33423, 33443, 35387, 48797, 34523, 33492, 40922, 33514,
  60692. 26312, 34036, 46959, 32375, 33535, 33554, 33575, 35236, 26310, 35759, 22476, 22411, 26978, 48196, 20435,
  60693. 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 28488, 33591,
  60694. 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60695. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60696. 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672,
  60697. 38672, 38672, 44448, 27298, 33333, 25344, 32005, 38672, 38672, 33617, 38672, 38672, 38672, 30064, 38672,
  60698. 30073, 38672, 30064, 33661, 30069, 38721, 42958, 22411, 33692, 33700, 33716, 25375, 38672, 38672, 25941,
  60699. 29641, 33732, 20082, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 33752, 25393, 22411,
  60700. 22411, 23137, 22690, 26727, 26727, 26727, 49362, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672,
  60701. 38672, 38672, 25615, 38672, 33770, 28258, 22475, 22475, 22475, 22475, 40491, 22411, 22411, 22411, 22411,
  60702. 22411, 40736, 26727, 26727, 26727, 26727, 26727, 33787, 33803, 33407, 38672, 38672, 38672, 38672, 38672,
  60703. 38672, 38672, 38672, 33819, 48351, 22475, 22475, 22475, 22475, 33849, 46363, 22411, 22411, 22411, 22411,
  60704. 33324, 48523, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 48282, 38672, 38672, 38672, 38672,
  60705. 22475, 22475, 22475, 22475, 33840, 33854, 22411, 22411, 22411, 28403, 27851, 26727, 26727, 26727, 43360,
  60706. 22521, 33795, 38672, 38672, 42813, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411,
  60707. 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411,
  60708. 28347, 26727, 26727, 22521, 26313, 38672, 33874, 21141, 27136, 22475, 42143, 22411, 22411, 26977, 26727,
  60709. 22520, 33892, 34036, 21208, 22475, 46215, 22411, 33914, 26727, 33935, 35759, 22476, 22411, 26978, 48196,
  60710. 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362,
  60711. 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60712. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60713. 38672, 38672, 38672, 25323, 38672, 38672, 42795, 38672, 22098, 25439, 25194, 32493, 40646, 40656, 38304,
  60714. 38312, 33959, 33974, 33986, 34002, 34014, 25344, 38672, 38672, 38672, 49261, 33079, 38672, 38672, 23275,
  60715. 34030, 34052, 38672, 34078, 34127, 34177, 34211, 38408, 34239, 34258, 29354, 34285, 25375, 38672, 38672,
  60716. 36069, 29641, 38672, 34301, 38672, 38672, 38672, 34327, 24011, 26929, 47957, 34366, 22475, 34410, 34439,
  60717. 34460, 34488, 32881, 44853, 22711, 39788, 26727, 49664, 34508, 39463, 38672, 28969, 45656, 28681, 19706,
  60718. 18253, 38672, 26070, 26232, 47650, 46594, 28258, 42618, 22475, 45107, 34547, 44588, 22411, 34575, 22411,
  60719. 34594, 34618, 34642, 27997, 26727, 35481, 34668, 34697, 32919, 33803, 38672, 38672, 38672, 44387, 34733,
  60720. 34759, 38672, 38672, 38672, 26931, 34796, 22475, 22475, 22475, 34845, 34862, 31216, 22411, 22411, 37262,
  60721. 22411, 34878, 31262, 26727, 26727, 28913, 26727, 34894, 33802, 38672, 34931, 35005, 30145, 35033, 35049,
  60722. 30548, 35079, 26669, 35097, 35117, 35142, 44418, 22411, 35167, 35192, 43624, 31718, 26727, 43013, 39321,
  60723. 47169, 35252, 30750, 31033, 38672, 35289, 35307, 35357, 32192, 22475, 35380, 35403, 34559, 22411, 35440,
  60724. 35463, 30821, 35479, 35497, 35530, 35556, 35608, 38672, 38672, 24906, 47811, 35630, 37839, 28037, 35670,
  60725. 48379, 27078, 35705, 48704, 22521, 26313, 33898, 38672, 35734, 27136, 22475, 42143, 22411, 22411, 26977,
  60726. 26727, 22520, 28514, 35751, 26929, 35782, 35802, 36916, 32303, 49941, 26310, 49171, 22476, 22411, 26978,
  60727. 48196, 35867, 35883, 35899, 35915, 42139, 28345, 26456, 28257, 28343, 26456, 35951, 36348, 35941, 33538,
  60728. 36362, 36357, 34905, 35967, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60729. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60730. 38672, 38672, 38672, 38672, 25323, 38672, 38672, 33252, 38672, 22098, 38672, 38672, 38672, 38672, 42922,
  60731. 38672, 20573, 33260, 46302, 45557, 36019, 36031, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672,
  60732. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375, 38672,
  60733. 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 34780, 22475,
  60734. 25393, 22411, 22411, 36047, 22690, 26727, 26727, 36130, 26727, 30990, 39463, 38672, 38672, 38672, 38672,
  60735. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411,
  60736. 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672,
  60737. 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411,
  60738. 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672,
  60739. 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727,
  60740. 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411,
  60741. 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142,
  60742. 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411,
  60743. 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411,
  60744. 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459,
  60745. 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60746. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60747. 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 20243, 38672, 22098, 38672, 38672, 38672, 38672,
  60748. 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672,
  60749. 36066, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375,
  60750. 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475,
  60751. 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672,
  60752. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411,
  60753. 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 45849, 38672, 38672,
  60754. 38672, 38672, 38672, 38672, 38672, 38672, 26931, 36085, 22475, 22475, 22475, 22475, 33849, 36106, 22411,
  60755. 22411, 22411, 22411, 33324, 36126, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672,
  60756. 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727,
  60757. 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442,
  60758. 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475,
  60759. 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411,
  60760. 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476,
  60761. 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345,
  60762. 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60763. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60764. 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 19729, 38672, 22098, 38672, 39473, 38672,
  60765. 44217, 36146, 36184, 36196, 36212, 36218, 36234, 36250, 36262, 25344, 38672, 36278, 38672, 43215, 38672,
  60766. 25421, 18575, 38672, 27438, 38672, 38672, 46139, 36299, 48111, 34141, 26409, 36335, 39145, 44169, 36378,
  60767. 36420, 36455, 38672, 29371, 36476, 38672, 27543, 38672, 36498, 35844, 31373, 34743, 36516, 40527, 36565,
  60768. 29321, 36586, 36623, 36646, 22411, 36676, 29093, 36714, 29346, 28817, 43388, 36750, 36802, 37724, 36836,
  60769. 38672, 38672, 38672, 26061, 38672, 38672, 38672, 38672, 38672, 28258, 36853, 42951, 22475, 36876, 38513,
  60770. 34492, 36894, 36913, 40984, 22411, 43282, 35514, 28798, 26727, 43717, 26727, 36932, 33803, 38672, 38672,
  60771. 36956, 38672, 38672, 18909, 32575, 38672, 38672, 26931, 22475, 22475, 41976, 35273, 36992, 33849, 22411,
  60772. 22411, 45307, 44424, 37025, 33324, 26727, 26727, 40875, 39885, 37058, 32918, 33802, 34967, 38672, 38672,
  60773. 32750, 38672, 38672, 38672, 22475, 38401, 22475, 22475, 28015, 33854, 34444, 22411, 22411, 22411, 27851,
  60774. 26727, 37091, 26727, 26727, 22521, 33795, 37110, 34940, 38672, 46173, 45770, 29014, 37131, 22475, 22475,
  60775. 37153, 29988, 22411, 22411, 37195, 37219, 26727, 26727, 36392, 46887, 38346, 38672, 39265, 26931, 22475,
  60776. 37243, 42142, 22411, 37261, 28347, 26727, 37278, 22521, 26313, 38672, 37296, 38672, 27136, 22475, 37317,
  60777. 22411, 48861, 26977, 26727, 48595, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759,
  60778. 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 35925, 29395, 39608, 37350,
  60779. 37371, 26459, 33538, 37783, 48331, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60780. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60781. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 41939, 38672, 22098, 38672, 25566,
  60782. 38672, 38672, 29887, 39046, 39054, 37418, 37432, 37440, 37456, 37468, 25500, 38672, 37493, 38672, 43215,
  60783. 38672, 28533, 38672, 38672, 27562, 38672, 38672, 37494, 37484, 23258, 20853, 42141, 37510, 47612, 44280,
  60784. 27268, 25375, 38672, 29490, 38672, 29641, 38672, 37531, 37550, 38672, 38672, 38672, 37570, 27517, 39732,
  60785. 22475, 40520, 37590, 25393, 37627, 22412, 37898, 37646, 31523, 26727, 48530, 31241, 31792, 37683, 37699,
  60786. 24812, 38672, 37723, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 37740, 22475, 37799, 22475,
  60787. 35786, 45030, 31853, 36110, 22411, 22411, 37334, 31545, 34712, 40790, 26727, 26727, 32919, 33803, 38672,
  60788. 21024, 48965, 38672, 38672, 33943, 28155, 37816, 38672, 26931, 46335, 37834, 22475, 27041, 22475, 34377,
  60789. 49011, 37855, 22411, 33297, 22411, 27890, 39339, 37875, 26727, 27899, 26727, 32918, 33802, 38672, 38672,
  60790. 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411,
  60791. 27851, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475,
  60792. 22475, 29442, 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 48203, 38672, 38672, 38672, 26931,
  60793. 29057, 22475, 42142, 32786, 22411, 28347, 22555, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475,
  60794. 42143, 22411, 37895, 26977, 49110, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310,
  60795. 37914, 31619, 41895, 26978, 37938, 37974, 41757, 45432, 39617, 42139, 28345, 26456, 28257, 28343, 26456,
  60796. 28257, 36549, 37075, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60797. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60798. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 25240, 38672, 24719, 38672,
  60799. 46651, 38018, 25104, 38054, 38118, 38157, 38142, 38161, 38126, 38177, 38189, 25344, 38672, 45759, 49561,
  60800. 49547, 38205, 49199, 38672, 38241, 38259, 34062, 38289, 38328, 38371, 38273, 38387, 38424, 38467, 39556,
  60801. 38529, 27268, 25375, 40213, 38672, 38672, 38590, 21779, 38672, 38614, 38641, 21123, 43234, 38689, 38713,
  60802. 41522, 39725, 26628, 22475, 25393, 38737, 22411, 29117, 22690, 32232, 31319, 26727, 38753, 34652, 38772,
  60803. 35341, 38672, 38798, 38815, 38672, 38672, 40618, 38672, 38672, 38672, 38840, 33601, 40485, 22475, 38858,
  60804. 22475, 35786, 47683, 38876, 40856, 22411, 22411, 37334, 32114, 26727, 42187, 26727, 26727, 32919, 33803,
  60805. 38672, 38672, 38672, 38672, 24776, 38672, 36500, 33087, 26755, 48300, 22475, 22475, 22475, 46796, 41600,
  60806. 49410, 22411, 22411, 22411, 38894, 29994, 47730, 26727, 26727, 26727, 46465, 44085, 32918, 33802, 38915,
  60807. 38949, 38972, 38992, 38672, 39015, 39031, 44824, 39070, 29039, 39086, 28015, 33854, 39115, 39131, 22365,
  60808. 39171, 27851, 40395, 48234, 48581, 49654, 22521, 39190, 33147, 39225, 26763, 39254, 38337, 41515, 31410,
  60809. 48668, 36570, 39289, 44624, 49920, 36050, 39312, 46490, 26727, 39337, 39355, 46887, 39394, 38672, 20942,
  60810. 22766, 22475, 39417, 21499, 22411, 39448, 25398, 26727, 39489, 22521, 47568, 38672, 38672, 46680, 45512,
  60811. 39505, 42143, 39542, 32076, 39585, 39633, 39657, 35567, 35614, 26929, 29075, 42144, 39674, 26975, 39694,
  60812. 26310, 35759, 35126, 47451, 29414, 27465, 39712, 39748, 39776, 39804, 46246, 41657, 47873, 28257, 28343,
  60813. 26456, 28257, 28345, 26459, 39839, 39865, 36357, 34905, 30398, 38672, 38672, 38672, 38672, 38672, 38672,
  60814. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60815. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 39901, 22098,
  60816. 38672, 30368, 39922, 38672, 45211, 39942, 39950, 39966, 39980, 39988, 40004, 40016, 25344, 35063, 40032,
  60817. 40048, 40074, 25784, 40124, 38672, 40160, 20023, 50351, 40199, 40238, 40274, 40312, 49237, 40347, 40363,
  60818. 36660, 40411, 40427, 25375, 38672, 40443, 18661, 36161, 37534, 38672, 18669, 43864, 38672, 38672, 44690,
  60819. 26929, 22475, 37009, 40470, 40507, 25393, 22411, 40543, 31503, 45950, 26727, 47993, 40578, 40601, 30990,
  60820. 39463, 38672, 44715, 38672, 38672, 40617, 29165, 40634, 41441, 21201, 19353, 22907, 40672, 45368, 47429,
  60821. 22475, 22475, 40708, 37034, 28896, 40724, 22411, 47891, 41633, 40762, 35506, 40782, 26727, 47175, 32919,
  60822. 22394, 40806, 38672, 38654, 32566, 38672, 38672, 38672, 38672, 48740, 26931, 22475, 38860, 22475, 40833,
  60823. 22475, 33849, 22411, 41060, 22411, 40853, 22411, 33324, 26727, 38756, 26727, 40872, 26727, 32918, 33802,
  60824. 38672, 38672, 20973, 45998, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 22458, 40891, 22411, 22411,
  60825. 22411, 22411, 40911, 26727, 26727, 26727, 26727, 22501, 33795, 23174, 18332, 38672, 38672, 38672, 40938,
  60826. 22475, 40962, 22475, 40684, 22411, 40981, 22411, 31782, 26727, 49841, 26727, 26998, 28442, 38672, 38672,
  60827. 38672, 26931, 41000, 41019, 42142, 41039, 41057, 28347, 41076, 41095, 22521, 44039, 38672, 38672, 38672,
  60828. 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 34915, 34036, 27330, 41115, 29084, 41137, 35817,
  60829. 26727, 27724, 35759, 41154, 41218, 41701, 41262, 41286, 47258, 44155, 39617, 42139, 28345, 26456, 28257,
  60830. 28343, 26456, 28257, 28345, 28115, 33538, 27862, 36357, 34905, 46290, 38672, 38672, 38672, 38672, 38672,
  60831. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60832. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 26904,
  60833. 22098, 38672, 38672, 41323, 22275, 41345, 40139, 38672, 26358, 41381, 41394, 41410, 41422, 25344, 38672,
  60834. 38672, 45842, 43215, 38672, 38672, 38672, 41438, 50256, 38672, 22231, 41440, 45848, 38672, 34773, 41457,
  60835. 34829, 39879, 41487, 27268, 25375, 38102, 38672, 38672, 29641, 38672, 41538, 41554, 33261, 38672, 38672,
  60836. 36430, 26929, 41579, 35101, 34846, 45533, 41616, 41649, 40556, 45401, 41673, 41736, 41773, 26727, 41789,
  60837. 40746, 42656, 41831, 38672, 41855, 41875, 32532, 32708, 46542, 38672, 38672, 38672, 38672, 28258, 22475,
  60838. 22475, 41594, 22475, 35786, 22411, 22411, 22411, 41893, 22411, 37334, 26727, 26727, 37094, 26727, 26727,
  60839. 32919, 27373, 41911, 29299, 38672, 38672, 38672, 41935, 25466, 38672, 41955, 26931, 22475, 41121, 41974,
  60840. 22475, 22475, 34152, 22411, 46370, 41992, 22411, 22411, 30778, 26727, 31887, 42009, 26727, 26727, 32918,
  60841. 33802, 38243, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 48461, 22475, 28015, 42027, 22411,
  60842. 22411, 42047, 22411, 37764, 26727, 26727, 48819, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672,
  60843. 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672,
  60844. 22208, 38672, 18340, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 28175, 42067, 38672, 38672,
  60845. 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411,
  60846. 26975, 26727, 30944, 42088, 42137, 42160, 42180, 48196, 42203, 28340, 26976, 39617, 42139, 28345, 26456,
  60847. 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672,
  60848. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60849. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672,
  60850. 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344,
  60851. 38672, 38672, 38672, 43215, 38672, 38672, 31078, 38672, 38672, 32435, 32438, 32441, 42224, 25897, 46967,
  60852. 28280, 42275, 42293, 31579, 27268, 42319, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672,
  60853. 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727,
  60854. 26727, 30990, 39463, 38672, 38672, 38672, 46624, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258,
  60855. 22475, 22475, 22475, 22475, 41023, 22411, 22411, 22411, 22411, 22411, 42864, 26727, 26727, 26727, 26727,
  60856. 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475,
  60857. 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727,
  60858. 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854,
  60859. 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672,
  60860. 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887,
  60861. 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672,
  60862. 38672, 38672, 27136, 42345, 42143, 29941, 22411, 26977, 42363, 22520, 26312, 34036, 26929, 22475, 42144,
  60863. 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345,
  60864. 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672,
  60865. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60866. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672,
  60867. 38672, 44743, 22177, 38672, 38672, 27385, 38672, 45876, 42383, 22121, 42412, 42425, 42433, 42449, 42461,
  60868. 25344, 38672, 32955, 42527, 43215, 18706, 42477, 42499, 33244, 42519, 38672, 42543, 40174, 42559, 42580,
  60869. 42605, 42641, 42672, 40377, 42708, 42766, 25375, 38672, 38672, 38672, 42829, 42880, 42911, 43973, 27961,
  60870. 38672, 38672, 23013, 42938, 22475, 42974, 41003, 39432, 42995, 32861, 22411, 36698, 35176, 43029, 43292,
  60871. 26727, 43049, 43082, 43138, 38672, 38672, 38672, 25328, 43172, 43191, 38672, 43210, 28234, 38672, 43231,
  60872. 48341, 22475, 43250, 22475, 22325, 43268, 47118, 39174, 22411, 22411, 43316, 43332, 43358, 40585, 26727,
  60873. 37280, 43376, 43410, 33803, 38672, 38672, 41815, 45184, 39238, 30360, 38672, 43434, 50186, 43461, 43495,
  60874. 48777, 43514, 43538, 22475, 43573, 43599, 31640, 43617, 43640, 22411, 43666, 43692, 49367, 43710, 43733,
  60875. 26727, 47922, 33802, 43767, 38672, 38672, 43787, 43812, 38672, 43850, 50024, 43886, 43557, 22475, 28015,
  60876. 33854, 43908, 34242, 22411, 22411, 27851, 46470, 43935, 44079, 26727, 39658, 43953, 38672, 43989, 21331,
  60877. 38672, 38672, 33824, 22475, 22475, 49385, 34223, 22411, 22411, 22411, 44011, 26727, 26727, 26727, 44027,
  60878. 46887, 19958, 38672, 38672, 50007, 22475, 22475, 28197, 22411, 22411, 44066, 26727, 26727, 44101, 26313,
  60879. 20872, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475,
  60880. 42144, 22411, 26975, 26727, 26890, 47793, 44124, 44140, 44185, 44209, 20435, 28340, 26976, 33389, 44233,
  60881. 44253, 44277, 44296, 28343, 26456, 28257, 28345, 26459, 44315, 44342, 38482, 34905, 28863, 38672, 38672,
  60882. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60883. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323, 38672,
  60884. 38672, 38672, 18636, 22098, 44386, 29857, 38069, 44372, 44403, 44440, 44464, 44480, 44494, 44510, 44526,
  60885. 44538, 25344, 44554, 46908, 38672, 40088, 38672, 38672, 41365, 38672, 43156, 26783, 26781, 47212, 47203,
  60886. 34311, 44573, 42979, 44618, 41232, 44280, 27268, 44640, 44676, 38672, 44712, 29827, 28456, 38672, 38672,
  60887. 38672, 44731, 44769, 38672, 40058, 44785, 40965, 44822, 22475, 44840, 44869, 48063, 22411, 22690, 39155,
  60888. 44892, 44910, 26727, 30990, 39463, 38672, 44931, 38672, 44950, 44971, 38672, 38672, 38672, 38672, 38672,
  60889. 44987, 28258, 45008, 41301, 22475, 22475, 37611, 28054, 22411, 45028, 22411, 22411, 45046, 30301, 30320,
  60890. 26727, 26727, 28093, 30742, 33803, 38672, 38672, 45072, 32638, 30075, 38672, 46548, 37818, 38672, 42396,
  60891. 22475, 22475, 47037, 45094, 33476, 49452, 22411, 22411, 49585, 32047, 36630, 35654, 26727, 26727, 39696,
  60892. 33919, 26493, 44108, 45157, 32514, 38672, 49604, 38672, 38672, 38672, 45200, 22475, 22475, 43892, 45227,
  60893. 28015, 33854, 22411, 41993, 40562, 22411, 27851, 26727, 26727, 32834, 45248, 22521, 33795, 38672, 22295,
  60894. 45267, 19361, 38672, 28255, 36090, 22475, 45286, 43473, 42051, 22411, 45304, 43005, 43694, 26727, 49877,
  60895. 26998, 46887, 38672, 50299, 46144, 45323, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 49054,
  60896. 26313, 45345, 36168, 40817, 45367, 22475, 45384, 22411, 30669, 26977, 26727, 45417, 45465, 36482, 45500,
  60897. 45528, 32279, 22411, 44261, 26727, 45549, 35759, 34423, 35689, 37179, 48196, 20435, 28340, 26976, 27310,
  60898. 33427, 47309, 26456, 32258, 46222, 29141, 45599, 45573, 45589, 33538, 36362, 36357, 34905, 28863, 38672,
  60899. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60900. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 25323,
  60901. 38672, 38672, 38672, 42503, 22098, 38672, 38672, 19843, 38672, 45632, 29682, 29695, 45672, 45688, 45703,
  60902. 45719, 45731, 25344, 25697, 36820, 25484, 43215, 48936, 33218, 45747, 38933, 25691, 45794, 45830, 45905,
  60903. 45865, 45892, 45921, 30595, 45937, 41471, 45980, 45966, 25375, 45996, 46014, 46030, 34093, 38672, 38672,
  60904. 46051, 24794, 46090, 46124, 46160, 46201, 46238, 46262, 46318, 46334, 46351, 46386, 26710, 46424, 30615,
  60905. 39597, 40389, 46450, 46486, 30259, 41502, 46506, 46564, 38672, 46591, 46610, 46646, 38672, 45270, 33165,
  60906. 46667, 46703, 46719, 46781, 46818, 46866, 45012, 35786, 47344, 42692, 28076, 22411, 34531, 37334, 42303,
  60907. 43342, 43676, 26727, 37661, 41688, 46885, 38672, 46904, 39209, 44660, 46924, 28976, 46946, 38672, 30957,
  60908. 20847, 49903, 46983, 47036, 22475, 47053, 33288, 31829, 47089, 22411, 22411, 47105, 35219, 43394, 47140,
  60909. 26727, 26727, 47156, 32918, 33802, 47191, 38672, 41877, 37707, 38672, 50210, 38598, 47237, 45288, 47274,
  60910. 47290, 28015, 43827, 47306, 47325, 28394, 29934, 30696, 36786, 37667, 47360, 43033, 22521, 43418, 47376,
  60911. 50112, 38672, 38355, 49147, 28255, 47399, 22475, 22475, 47445, 47467, 34602, 22411, 47502, 47526, 50046,
  60912. 26727, 47556, 46887, 36283, 49516, 38672, 48840, 29206, 44799, 47584, 47703, 30662, 30727, 45251, 31880,
  60913. 34269, 39367, 47647, 38672, 49567, 38494, 40946, 47666, 47699, 47719, 39849, 48630, 47746, 32945, 47785,
  60914. 47809, 47827, 47850, 47889, 47907, 48880, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976,
  60915. 39617, 42139, 49752, 49772, 47949, 47973, 48009, 48038, 49034, 30862, 33538, 36362, 36357, 47933, 28863,
  60916. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60917. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60918. 25323, 38672, 38672, 38672, 38672, 48079, 38672, 38672, 48107, 38672, 19671, 30510, 30518, 48127, 30518,
  60919. 30526, 48143, 48155, 25344, 38672, 38672, 38672, 44955, 38672, 29647, 38672, 38672, 38672, 38672, 29652,
  60920. 46888, 38672, 38672, 45329, 35643, 48171, 30851, 45141, 48219, 48262, 38672, 38672, 38672, 29641, 38672,
  60921. 38672, 50200, 50208, 38672, 38672, 38672, 48298, 33458, 22475, 22475, 22475, 48316, 48375, 22411, 22411,
  60922. 28301, 37203, 26727, 26727, 26727, 30914, 41169, 48395, 38672, 34989, 34103, 38672, 38672, 38672, 48429,
  60923. 38672, 34985, 36969, 28258, 49732, 31174, 47066, 48458, 46734, 22411, 37326, 35682, 48477, 41625, 48513,
  60924. 26727, 48546, 48566, 33498, 48611, 32919, 33803, 38672, 32557, 38672, 48646, 38672, 38672, 38672, 19786,
  60925. 38672, 26931, 22475, 48666, 22475, 22475, 22475, 32777, 22411, 48684, 22411, 22411, 22411, 31945, 26727,
  60926. 48701, 26727, 26727, 26727, 32918, 33361, 38672, 45778, 38672, 38672, 38672, 38672, 41194, 35417, 22475,
  60927. 22475, 22475, 28015, 42844, 22411, 22411, 22411, 22411, 27851, 48720, 26727, 26727, 26727, 22521, 33795,
  60928. 48739, 38672, 38672, 48756, 38672, 35766, 48773, 22475, 22475, 45119, 48793, 22411, 42164, 43122, 48813,
  60929. 26727, 43937, 26998, 46887, 48835, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727,
  60930. 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312,
  60931. 34036, 26929, 43522, 42144, 48856, 26975, 48877, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340,
  60932. 26976, 39617, 42139, 28345, 26456, 20436, 32151, 30885, 28257, 28345, 26459, 33538, 22735, 48896, 34905,
  60933. 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60934. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60935. 38672, 25323, 38672, 38672, 38672, 38672, 48924, 48962, 36314, 45181, 38672, 50538, 38672, 45169, 48959,
  60936. 38038, 34111, 48981, 48993, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672,
  60937. 38672, 38672, 38672, 38672, 27525, 42141, 49009, 31292, 44280, 27268, 25375, 38672, 36812, 40252, 29641,
  60938. 38672, 38672, 38672, 38672, 43194, 38672, 38672, 26929, 45232, 22475, 37800, 22475, 25393, 49027, 22411,
  60939. 46850, 22690, 27979, 26727, 26727, 49050, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672, 49070,
  60940. 38672, 38672, 49087, 38672, 28258, 22475, 49810, 22475, 22475, 35786, 22411, 22411, 34386, 22411, 22411,
  60941. 37334, 26727, 26727, 49106, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60942. 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324,
  60943. 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475,
  60944. 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521,
  60945. 33795, 38672, 38672, 49126, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485,
  60946. 26727, 26727, 26727, 26998, 46887, 38672, 49146, 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347,
  60947. 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520,
  60948. 26312, 49163, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435,
  60949. 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357,
  60950. 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60951. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60952. 38672, 38672, 25323, 38672, 38672, 38672, 38672, 49187, 38672, 21516, 38672, 20816, 49222, 49253, 38672,
  60953. 49277, 49291, 49304, 49320, 49332, 25344, 38672, 38672, 38672, 43215, 38672, 38672, 38672, 38672, 38672,
  60954. 38672, 38672, 38672, 38672, 38672, 28256, 31934, 32212, 26453, 47540, 49348, 25375, 38672, 38672, 38672,
  60955. 29641, 38672, 38672, 38672, 43175, 38672, 38672, 38672, 26929, 22475, 22475, 22475, 22475, 25393, 22411,
  60956. 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672, 38672, 38672, 38672,
  60957. 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411, 22411,
  60958. 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672, 35291,
  60959. 38672, 38672, 38672, 36319, 22475, 22475, 22475, 22475, 22475, 31707, 22411, 22411, 22411, 22411, 22411,
  60960. 45130, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38842, 38672, 38672, 38672, 38672, 38672,
  60961. 22475, 22475, 49383, 22475, 49401, 33854, 22411, 42856, 22411, 47124, 27851, 26727, 41079, 26727, 26727,
  60962. 49426, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411, 22411,
  60963. 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411, 22411,
  60964. 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977, 26727,
  60965. 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978, 48196,
  60966. 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538, 36362,
  60967. 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60968. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60969. 38672, 38672, 38672, 25610, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922, 38672,
  60970. 38672, 38672, 38672, 41202, 49468, 49480, 25344, 38672, 38672, 38672, 43215, 49496, 38672, 49515, 38672,
  60971. 38672, 46071, 46074, 38672, 49532, 28993, 37922, 42141, 49583, 32824, 44280, 27268, 25375, 38672, 38672,
  60972. 46108, 29641, 46524, 46533, 49601, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 49620, 37001, 25393,
  60973. 22411, 29448, 22411, 49639, 26727, 26727, 48625, 36734, 30990, 43097, 49680, 38672, 38672, 38672, 38672,
  60974. 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411, 22411, 22411,
  60975. 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672, 38672, 38672,
  60976. 38672, 49703, 38672, 38672, 26931, 22475, 22475, 49727, 22475, 22475, 48053, 22411, 22411, 49748, 22411,
  60977. 22411, 46748, 26727, 26727, 49768, 26727, 26727, 32918, 33802, 20903, 38672, 38672, 38672, 38672, 38672,
  60978. 38672, 22475, 49788, 22475, 22475, 28015, 33854, 26700, 22411, 22411, 22411, 27851, 42367, 26727, 26727,
  60979. 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411, 22411,
  60980. 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475, 42142, 22411,
  60981. 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411, 22411, 26977,
  60982. 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411, 26978,
  60983. 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459, 33538,
  60984. 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60985. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  60986. 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672, 42922,
  60987. 38672, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 45477, 38672, 38672, 43215, 38672, 38672, 49711,
  60988. 38672, 38672, 38672, 49707, 38672, 38672, 27156, 49805, 37753, 37630, 26453, 49986, 49826, 25375, 38672,
  60989. 20236, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 28133, 26929, 22475, 22475, 22475, 47834,
  60990. 25393, 22411, 22411, 22411, 49862, 26727, 26727, 26727, 37879, 30990, 39463, 38672, 45808, 38672, 38672,
  60991. 38672, 38672, 38672, 38672, 29514, 38672, 38672, 28258, 49898, 22475, 31756, 22475, 35786, 22411, 49919,
  60992. 22411, 36688, 22411, 37334, 40766, 26727, 26727, 49936, 26727, 32919, 33803, 38672, 25655, 38672, 38672,
  60993. 38672, 38672, 38672, 38672, 38672, 26931, 22475, 37984, 22475, 22475, 22475, 35151, 22411, 46398, 22411,
  60994. 22411, 22411, 43919, 26727, 31302, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672, 38672,
  60995. 38999, 38672, 22475, 22475, 26805, 22475, 49623, 33854, 22411, 22411, 49957, 22411, 49975, 26727, 26727,
  60996. 47510, 26727, 49846, 33795, 38672, 38672, 18612, 38672, 38672, 28255, 22475, 22475, 22475, 29442, 22411,
  60997. 22411, 22411, 26485, 26727, 26727, 26727, 26998, 30025, 38672, 38672, 50002, 26931, 50023, 22475, 27060,
  60998. 22411, 22411, 28347, 50040, 26727, 22521, 26313, 38672, 40323, 38672, 27136, 29066, 42143, 22411, 50062,
  60999. 26977, 27488, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476, 22411,
  61000. 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345, 26459,
  61001. 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61002. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61003. 38672, 38672, 38672, 38672, 38672, 25323, 38672, 38672, 38672, 38672, 22098, 38672, 38672, 38672, 38672,
  61004. 42922, 41360, 38672, 38672, 38672, 44448, 27298, 33333, 25344, 38672, 38672, 38672, 43215, 38672, 38672,
  61005. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411, 26453, 44280, 27268, 25375,
  61006. 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26929, 22475, 22475, 22475,
  61007. 22475, 25393, 22411, 22411, 22411, 22690, 26727, 26727, 26727, 26727, 30990, 39463, 38672, 38672, 38672,
  61008. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475, 22475, 22475, 35786, 22411,
  61009. 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919, 33803, 38672, 38672, 38672,
  61010. 38672, 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475, 22475, 33849, 22411, 22411,
  61011. 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802, 38672, 38672, 38672, 38672,
  61012. 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411, 22411, 22411, 27851, 26727,
  61013. 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255, 22475, 22475, 22475, 29442,
  61014. 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672, 38672, 26931, 22475, 22475,
  61015. 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672, 27136, 22475, 42143, 22411,
  61016. 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975, 26727, 26310, 35759, 22476,
  61017. 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257, 28343, 26456, 28257, 28345,
  61018. 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61019. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61020. 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 34339, 19585, 19583, 40183,
  61021. 33676, 50079, 27766, 27768, 50110, 33673, 34350, 50128, 50140, 20832, 38672, 38672, 38672, 43215, 38672,
  61022. 38672, 25515, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 20613, 18794, 19200, 19418, 35990,
  61023. 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403, 18422,
  61024. 18462, 20670, 18475, 50434, 18503, 18525, 50156, 19412, 50440, 18509, 36003, 19232, 20563, 38672, 46930,
  61025. 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406, 25849,
  61026. 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554, 48943,
  61027. 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129, 20726,
  61028. 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299, 19315,
  61029. 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046, 19601,
  61030. 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859, 19875,
  61031. 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979, 20039,
  61032. 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337, 20380,
  61033. 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516, 20532,
  61034. 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954, 20695,
  61035. 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61036. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61037. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470, 38672, 38672,
  61038. 20273, 38672, 42922, 31104, 31112, 50226, 50240, 50248, 42483, 50272, 20832, 38672, 38672, 38672, 43215,
  61039. 38672, 38672, 50505, 38672, 38672, 38672, 25547, 38672, 38672, 25544, 18953, 18958, 18794, 35998, 18531,
  61040. 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387, 18403,
  61041. 18422, 18462, 20670, 19406, 50434, 18503, 18525, 18547, 19412, 50440, 18509, 36003, 19232, 20563, 38672,
  61042. 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769, 18406,
  61043. 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955, 37554,
  61044. 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103, 19129,
  61045. 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964, 19299,
  61046. 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631, 19046,
  61047. 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113, 19859,
  61048. 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515, 35979,
  61049. 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298, 20337,
  61050. 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500, 20516,
  61051. 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437, 21954,
  61052. 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61053. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61054. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 42589, 38672,
  61055. 38672, 38672, 38672, 24842, 35017, 50315, 50319, 50335, 50343, 43995, 50367, 20832, 38672, 38672, 38672,
  61056. 43215, 38672, 38672, 25359, 38672, 38672, 23171, 38672, 38672, 38672, 23167, 18953, 18958, 18794, 35998,
  61057. 19418, 35990, 45351, 38672, 18269, 42564, 29641, 38672, 40144, 38672, 23032, 18306, 18356, 18382, 18387,
  61058. 18403, 18422, 18462, 20670, 19075, 50434, 18503, 18525, 50409, 19412, 50440, 18509, 36003, 19232, 20563,
  61059. 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753, 18745, 18769,
  61060. 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839, 19540, 19955,
  61061. 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062, 19169, 19103,
  61062. 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273, 19000, 30964,
  61063. 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938, 19905, 19631,
  61064. 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771, 19808, 19113,
  61065. 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383, 20010, 46515,
  61066. 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223, 20259, 20298,
  61067. 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 20424, 20452, 20468, 20484, 20497, 50424, 20500,
  61068. 20516, 20532, 20548, 20592, 20589, 50171, 20608, 19547, 18794, 18487, 20629, 20143, 19945, 20660, 18437,
  61069. 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672, 38672, 38672,
  61070. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61071. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 20939, 38672, 38672, 38672, 38672, 30470,
  61072. 38672, 38672, 38672, 38672, 42922, 38672, 38672, 38672, 38672, 38672, 38672, 24860, 25344, 38672, 38672,
  61073. 38672, 43215, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28256, 42141, 22411,
  61074. 26453, 44280, 27268, 22230, 38672, 38672, 38672, 29641, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61075. 26929, 22475, 22475, 22475, 22475, 36544, 22411, 22411, 22411, 33858, 26727, 26727, 26727, 26727, 30990,
  61076. 39463, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 28258, 22475, 22475,
  61077. 22475, 22475, 35786, 22411, 22411, 22411, 22411, 22411, 37334, 26727, 26727, 26727, 26727, 26727, 32919,
  61078. 33803, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 26931, 22475, 22475, 22475, 22475,
  61079. 22475, 33849, 22411, 22411, 22411, 22411, 22411, 33324, 26727, 26727, 26727, 26727, 26727, 32918, 33802,
  61080. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 22475, 22475, 22475, 22475, 28015, 33854, 22411, 22411,
  61081. 22411, 22411, 27851, 26727, 26727, 26727, 26727, 22521, 33795, 38672, 38672, 38672, 38672, 38672, 28255,
  61082. 22475, 22475, 22475, 29442, 22411, 22411, 22411, 26485, 26727, 26727, 26727, 26998, 46887, 38672, 38672,
  61083. 38672, 26931, 22475, 22475, 42142, 22411, 22411, 28347, 26727, 26727, 22521, 26313, 38672, 38672, 38672,
  61084. 27136, 22475, 42143, 22411, 22411, 26977, 26727, 22520, 26312, 34036, 26929, 22475, 42144, 22411, 26975,
  61085. 26727, 26310, 35759, 22476, 22411, 26978, 48196, 20435, 28340, 26976, 39617, 42139, 28345, 26456, 28257,
  61086. 28343, 26456, 28257, 28345, 26459, 33538, 36362, 36357, 34905, 28863, 38672, 38672, 38672, 38672, 38672,
  61087. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61088. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61089. 38672, 38672, 38672, 38956, 38672, 38672, 29796, 50456, 50460, 50460, 50482, 38955, 50476, 50498, 38672,
  61090. 38672, 38672, 38672, 38672, 38672, 50505, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 18953, 18958,
  61091. 18794, 35998, 19418, 35990, 45351, 38672, 18269, 42564, 38672, 38672, 40144, 38672, 23032, 18306, 18356,
  61092. 18382, 18387, 18403, 18422, 18462, 20670, 18475, 50434, 18503, 18525, 50156, 19412, 50440, 18509, 36003,
  61093. 19232, 20563, 38672, 46930, 18591, 38672, 38672, 37574, 18609, 18628, 33736, 18652, 18685, 18722, 18753,
  61094. 18745, 18769, 18406, 25849, 18792, 20360, 18810, 18830, 18835, 19138, 18794, 20364, 18814, 18794, 18839,
  61095. 19540, 19955, 37554, 48943, 18855, 18871, 18894, 40258, 38672, 38976, 18931, 18947, 18974, 19016, 19062,
  61096. 19169, 19103, 19129, 20726, 19934, 19154, 19185, 19222, 19248, 20726, 19934, 19154, 19185, 19222, 19273,
  61097. 19000, 30964, 19299, 19315, 28712, 19342, 25187, 19377, 19393, 19434, 19464, 19495, 19569, 19608, 24938,
  61098. 19905, 19631, 19046, 19601, 24931, 19898, 19624, 19039, 19647, 19687, 43796, 19722, 19792, 19745, 19771,
  61099. 19808, 19113, 19859, 19875, 19921, 18446, 19976, 19994, 24983, 18444, 19974, 19992, 20321, 18562, 47383,
  61100. 20010, 46515, 35979, 20039, 20679, 20105, 20160, 20116, 20132, 20159, 20115, 20176, 19479, 20207, 20223,
  61101. 20259, 20298, 20337, 20380, 20402, 21368, 20386, 20408, 21374, 19283, 50527, 20452, 20468, 20484, 20497,
  61102. 50424, 20500, 20516, 26100, 20548, 20592, 20589, 50171, 18953, 19547, 18794, 18487, 20629, 20143, 19945,
  61103. 20660, 18437, 21954, 20695, 20711, 21969, 19448, 21939, 20755, 19510, 19659, 38672, 38672, 38672, 38672,
  61104. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672,
  61105. 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 38672, 94505, 94505, 90408, 90408,
  61106. 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505,
  61107. 94505, 1, 12290, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 0, 94505, 90408, 94505,
  61108. 94505, 94505, 94505, 94505, 94505, 94505, 94505, 94505, 364, 94505, 90408, 94505, 94505, 94505, 94505,
  61109. 94505, 94505, 94505, 69632, 73728, 94505, 94505, 94505, 94505, 94505, 65536, 94505, 3, 0, 0, 2183168, 0,
  61110. 0, 0, 90408, 94505, 298, 299, 0, 2134016, 302, 303, 0, 0, 0, 0, 0, 1636, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1645,
  61111. 0, 0, 2732032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2904064, 2908160, 0, 0, 0, 0, 0, 1699, 0, 0, 0, 0, 0, 0, 0,
  61112. 0, 0, 0, 0, 2963, 0, 0, 0, 0, 0, 2424832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2625536, 0, 0, 0, 0, 0,
  61113. 2045, 0, 0, 0, 0, 2049, 0, 0, 0, 0, 0, 0, 0, 2711, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2976, 0, 534, 534, 534, 534,
  61114. 534, 2699264, 2715648, 0, 0, 2772992, 2805760, 2830336, 0, 2863104, 2920448, 0, 0, 0, 0, 0, 0, 0, 303,
  61115. 303, 303, 303, 0, 303, 303, 303, 303, 0, 2805760, 2920448, 0, 0, 0, 0, 0, 2920448, 0, 0, 0, 0, 0, 0, 0,
  61116. 2732032, 0, 2179072, 2179072, 2179072, 2179072, 2424832, 2433024, 2179072, 2179072, 2179072, 2179072,
  61117. 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61118. 3125248, 2625536, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2699264, 2179072, 2715648,
  61119. 2179072, 2723840, 2179072, 2732032, 2772992, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824,
  61120. 2592768, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61121. 2551808, 2125824, 2125824, 2125824, 2125824, 2125824, 2637824, 2125824, 2179072, 2179072, 2805760,
  61122. 2179072, 2830336, 2179072, 2179072, 2863104, 2179072, 2179072, 2179072, 2179072, 2920448, 2179072,
  61123. 2179072, 2179072, 0, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 2424832, 2433024, 2125824, 2125824,
  61124. 2125824, 2125824, 0, 2502656, 0, 0, 3010560, 0, 0, 0, 0, 2990080, 2179072, 2179072, 2699264, 2125824,
  61125. 2715648, 2125824, 2723840, 2125824, 2732032, 2772992, 2125824, 2125824, 2125824, 2805760, 2125824,
  61126. 2830336, 2125824, 2125824, 2863104, 2125824, 2125824, 2125824, 2125824, 2920448, 2863104, 2125824,
  61127. 2125824, 2125824, 2125824, 2920448, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61128. 2125824, 2125824, 2125824, 0, 1142784, 0, 2179072, 2125824, 2125824, 2125824, 3117056, 2125824, 2125824,
  61129. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 975, 2125824, 0, 0, 0, 0, 0,
  61130. 0, 2510848, 2514944, 0, 0, 2547712, 2596864, 0, 0, 0, 0, 0, 0, 735, 0, 0, 0, 0, 735, 0, 741, 0, 0, 0,
  61131. 2789376, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3137, 0, 0, 2142208, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61132. 0, 0, 0, 0, 2733, 0, 2662400, 0, 2813952, 0, 0, 0, 0, 2375680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 350, 351, 352,
  61133. 0, 0, 0, 0, 2584576, 0, 0, 0, 0, 2838528, 0, 0, 2838528, 0, 0, 0, 0, 0, 0, 0, 0, 1122, 0, 0, 0, 0, 0, 0,
  61134. 0, 0, 0, 0, 1186, 0, 0, 0, 0, 0, 0, 0, 2891776, 0, 0, 0, 0, 0, 2392064, 2412544, 0, 0, 2838528, 0, 0, 0,
  61135. 0, 0, 0, 262144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 706, 0, 0, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072,
  61136. 2408448, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61137. 2179072, 2179072, 2125824, 0, 2126724, 2126724, 2617344, 2179072, 2179072, 2179072, 2179072, 2179072,
  61138. 2179072, 2662400, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61139. 2179072, 2584576, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2801664,
  61140. 2813952, 2179072, 2838528, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61141. 2179072, 2179072, 2179072, 2179072, 2125824, 1798, 2125824, 2125824, 2125824, 2408448, 2125824, 2125824,
  61142. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61143. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2662400, 2125824, 2125824, 2125824, 2125824,
  61144. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2801664, 2813952, 2125824, 2838528,
  61145. 2125824, 2813952, 2125824, 2838528, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61146. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3125248, 2125824, 2125824, 2125824, 2125824,
  61147. 2125824, 2125824, 2125824, 2125824, 0, 2822144, 0, 0, 2883584, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3080192,
  61148. 3100672, 3104768, 0, 0, 0, 0, 3186688, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 306, 0, 0, 0, 0, 0, 0, 2797568,
  61149. 0, 0, 0, 0, 0, 0, 0, 2850816, 2867200, 0, 0, 2883584, 0, 0, 0, 0, 0, 2072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61150. 0, 3134, 0, 0, 0, 0, 2465792, 0, 0, 2719744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3014656, 3207168, 0, 2691072,
  61151. 0, 0, 3215360, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61152. 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 2179072, 2179072, 2179072,
  61153. 2179072, 2179072, 2461696, 2465792, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2523136,
  61154. 2179072, 2179072, 2179072, 0, 1342, 2125824, 2125824, 2125824, 2125824, 2125824, 2424832, 2433024,
  61155. 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2473984, 2478080, 2179072, 2179072,
  61156. 2179072, 2179072, 2179072, 2179072, 2600960, 2179072, 2179072, 2179072, 2179072, 2641920, 2179072,
  61157. 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 1047, 2125824, 2125824,
  61158. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3035136, 2125824, 2125824, 3072000, 2125824,
  61159. 2125824, 2125824, 3121152, 2125824, 2125824, 3141632, 2125824, 2125824, 2125824, 3170304, 2179072,
  61160. 2179072, 2719744, 2179072, 2179072, 2179072, 2179072, 2179072, 2768896, 2777088, 2781184, 2797568,
  61161. 2822144, 2179072, 2179072, 2179072, 0, 900, 2125824, 2125824, 2125824, 2125824, 2125824, 2424832, 2433024,
  61162. 2125824, 2125824, 2125824, 2125824, 298, 0, 299, 0, 302, 0, 303, 0, 0, 0, 2473984, 2478080, 2179072,
  61163. 3063808, 2179072, 2179072, 2179072, 2179072, 3100672, 2179072, 2179072, 3133440, 2179072, 2179072,
  61164. 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2551808, 2179072, 2179072, 2179072, 2179072,
  61165. 2179072, 2637824, 2179072, 2179072, 2179072, 2179072, 3207168, 2179072, 0, 0, 0, 0, 2125824, 2125824,
  61166. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 2125824, 2125824, 2125824, 2408448, 2125824,
  61167. 2125824, 2125824, 2719744, 2125824, 2125824, 2125824, 2125824, 2125824, 2768896, 2777088, 2781184,
  61168. 2797568, 2822144, 2125824, 2125824, 2125824, 2883584, 2179072, 2912256, 2179072, 2179072, 2179072,
  61169. 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3039232, 2125824,
  61170. 2912256, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61171. 2125824, 2125824, 3039232, 2125824, 2125824, 0, 2125824, 2126799, 2125824, 2125824, 2125824, 2125824,
  61172. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 245760, 0, 0, 2179072, 2125824, 2125824,
  61173. 3063808, 2125824, 2125824, 2125824, 2125824, 2125824, 3100672, 2125824, 2125824, 3133440, 2125824,
  61174. 2125824, 2125824, 2125824, 2125824, 2125824, 0, 2179072, 2125824, 2125824, 2457600, 2179072, 2179072,
  61175. 2179072, 2179072, 2457600, 2125824, 2125824, 2125824, 3207168, 2125824, 0, 0, 0, 0, 2125824, 2125824,
  61176. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 1894, 2125824, 2125824, 2125824, 2408448,
  61177. 2125824, 2125824, 2125824, 2125824, 2125824, 3207168, 2125824, 2179072, 2125824, 2125824, 2179072,
  61178. 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 0, 2486272, 0, 0, 0, 0, 0, 2678784,
  61179. 2854912, 3006464, 0, 2924544, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3162112, 3170304, 0, 0, 3219456, 3035136, 0, 0,
  61180. 0, 0, 0, 3072000, 2650112, 0, 0, 2809856, 0, 0, 0, 0, 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, 1654, 0, 2686976,
  61181. 2736128, 0, 0, 2531328, 2707456, 0, 3190784, 0, 0, 2576384, 0, 0, 0, 0, 0, 0, 0, 1688, 0, 0, 0, 0, 0, 0,
  61182. 0, 0, 0, 2742, 0, 0, 0, 0, 0, 0, 0, 3121152, 3141632, 0, 0, 0, 2924544, 0, 2682880, 0, 0, 0, 0, 0, 0,
  61183. 3112960, 2387968, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2453504,
  61184. 2179072, 2473984, 2482176, 2179072, 2179072, 2179072, 0, 901, 2125824, 2125824, 2125824, 2125824, 2125824,
  61185. 2424832, 2433024, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61186. 2125824, 0, 0, 0, 2179072, 2125824, 2125824, 2179072, 2179072, 2179072, 2531328, 2179072, 2179072,
  61187. 2179072, 2179072, 2179072, 2179072, 2179072, 2605056, 2179072, 2629632, 2179072, 2179072, 2179072,
  61188. 2179072, 2179072, 2125824, 2527232, 2125824, 2125824, 2125824, 2125824, 2125824, 3092480, 2125824,
  61189. 2527232, 2125824, 2650112, 2179072, 2179072, 2179072, 2707456, 2179072, 2736128, 2179072, 2179072,
  61190. 2179072, 2179072, 2179072, 2179072, 2179072, 2887680, 2179072, 2125824, 2125824, 2125824, 2125824,
  61191. 2441216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2932736, 2179072, 2924544, 2179072, 2179072, 2179072, 2179072,
  61192. 2179072, 2179072, 2179072, 2179072, 2179072, 3035136, 2179072, 2179072, 3072000, 2179072, 2125824,
  61193. 2658304, 2973696, 2125824, 2125824, 2658304, 2973696, 2125824, 2711552, 2560000, 2179072, 2560000,
  61194. 2125824, 2560000, 2125824, 2125824, 2125824, 2125824, 2125824, 3223552, 975, 0, 2125824, 2125824, 2416640,
  61195. 2125824, 2125824, 2125824, 2445312, 2125824, 2125824, 2125824, 2125824, 2179072, 2125824, 2125824,
  61196. 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61197. 2125824, 2125824, 2125824, 2125824, 2125824, 1047, 0, 0, 2179072, 2125824, 2125824, 2179072, 3121152,
  61198. 2179072, 2179072, 3141632, 2179072, 2179072, 2179072, 3170304, 2179072, 2179072, 3190784, 3194880,
  61199. 2179072, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1134592, 2125824, 2125824, 3190784,
  61200. 3194880, 2125824, 0, 0, 0, 0, 0, 0, 2387968, 2125824, 2125824, 2125824, 2420736, 2125824, 2125824,
  61201. 2125824, 2125824, 2125824, 2453504, 2125824, 2707456, 2125824, 2736128, 2125824, 2125824, 2125824,
  61202. 2125824, 2125824, 2125824, 2125824, 2125824, 2887680, 2125824, 2125824, 2924544, 2125824, 2125824,
  61203. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3141632, 2125824, 2125824,
  61204. 2125824, 3170304, 2125824, 2125824, 3190784, 3194880, 2125824, 2179072, 2125824, 2125824, 2179072,
  61205. 2125824, 2125824, 2179072, 2125824, 2125824, 2985984, 2985984, 2985984, 0, 0, 0, 0, 0, 0, 0, 69632, 73728,
  61206. 0, 419, 419, 0, 0, 65536, 419, 2179072, 3112960, 3219456, 2125824, 2125824, 3112960, 3219456, 2125824,
  61207. 2125824, 3112960, 3219456, 0, 0, 0, 0, 0, 0, 0, 1701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1624, 0, 0, 0, 0, 0, 0,
  61208. 0, 3022848, 0, 0, 3145728, 0, 3203072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 335, 336, 0, 0, 0, 0, 0, 0, 0, 0,
  61209. 3067904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 787, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2445312, 0, 2842624, 0,
  61210. 0, 0, 2637824, 0, 0, 0, 0, 2621440, 0, 0, 0, 0, 0, 2100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2727936, 0, 0,
  61211. 0, 3084288, 3182592, 2899968, 0, 2961408, 0, 0, 2179072, 2179072, 2416640, 2179072, 2179072, 2179072,
  61212. 2445312, 2179072, 2179072, 2179072, 0, 901, 2126724, 2126724, 2126724, 2126724, 2126724, 2425732, 2433924,
  61213. 2126724, 2126724, 2126724, 2126724, 2458574, 2126798, 2126798, 2126798, 2126798, 2183168, 0, 0, 0, 0, 0,
  61214. 0, 0, 396, 0, 0, 0, 0, 0, 396, 0, 0, 2179072, 2179072, 2179072, 2727936, 2752512, 2179072, 2179072,
  61215. 2179072, 2842624, 2846720, 2179072, 2895872, 2916352, 2179072, 2179072, 2945024, 2179072, 2179072,
  61216. 2994176, 2179072, 3002368, 2179072, 2179072, 3022848, 2179072, 3067904, 3084288, 3096576, 2179072,
  61217. 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 237568, 2125824, 2125824,
  61218. 2125824, 2125824, 2125824, 2125824, 2125824, 2605056, 2125824, 2629632, 2125824, 2125824, 2650112,
  61219. 2125824, 2125824, 2125824, 2707456, 2125824, 2736128, 2125824, 2125824, 2125824, 2125824, 2179072,
  61220. 2179072, 2179072, 3223552, 0, 0, 2125824, 2125824, 2416640, 2125824, 2125824, 2125824, 2445312, 2125824,
  61221. 2125824, 2125824, 2125824, 2125824, 2600960, 2125824, 2125824, 2125824, 2125824, 2641920, 2125824,
  61222. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3010560, 2125824, 2125824,
  61223. 2125824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2940, 0, 2637824, 2125824, 2125824, 2125824, 2125824,
  61224. 2727936, 2752512, 2125824, 2125824, 2125824, 2125824, 2842624, 2846720, 2125824, 2895872, 2916352,
  61225. 2125824, 2125824, 2125824, 2125824, 2945024, 2125824, 2125824, 2994176, 2125824, 3002368, 2125824,
  61226. 2125824, 3022848, 2125824, 3067904, 3084288, 2125824, 3096576, 2125824, 2125824, 0, 0, 0, 2928640, 0, 0,
  61227. 0, 3059712, 0, 2543616, 2666496, 0, 2633728, 0, 0, 0, 0, 0, 0, 766, 767, 0, 0, 0, 754, 0, 0, 774, 0,
  61228. 2179072, 2179072, 2179072, 2494464, 2179072, 2179072, 2514944, 2179072, 2179072, 2179072, 2543616,
  61229. 2547712, 2179072, 2179072, 2596864, 2179072, 2126724, 2126724, 2126724, 2126724, 2126724, 2593668,
  61230. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126798, 0, 0, 0, 0, 0, 0,
  61231. 2510848, 2514944, 0, 0, 2547712, 2596864, 0, 0, 0, 0, 0, 0, 1164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1564, 0,
  61232. 1566, 0, 0, 0, 2179072, 2179072, 3059712, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3178496,
  61233. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2928640,
  61234. 2125824, 2125824, 2125824, 2998272, 2125824, 2125824, 2125824, 2125824, 3059712, 2125824, 2125824,
  61235. 2125824, 2125824, 2125824, 2125824, 2125824, 3178496, 2125824, 2125824, 2125824, 2125824, 2125824,
  61236. 2125824, 2125824, 2125824, 2125824, 3010560, 2125824, 2125824, 2125824, 2125824, 2125824, 2502656,
  61237. 2125824, 2125824, 2125824, 2494464, 2125824, 2125824, 2514944, 2125824, 2125824, 2125824, 2543616,
  61238. 2547712, 2125824, 2125824, 2596864, 2125824, 2125824, 2125824, 2125824, 2125824, 3059712, 2125824,
  61239. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3178496, 2179072, 2125824, 2125824, 2179072,
  61240. 2126724, 2126724, 2126798, 2126798, 2441216, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2932736, 2965504, 0, 0, 3076096,
  61241. 0, 0, 2695168, 3174400, 2646016, 2613248, 2703360, 0, 0, 0, 0, 2977792, 0, 0, 3047424, 3129344, 0,
  61242. 2981888, 2396160, 0, 3153920, 0, 0, 0, 2740224, 0, 0, 0, 0, 0, 0, 1106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 334, 0,
  61243. 0, 0, 0, 0, 0, 0, 0, 2793472, 0, 0, 0, 0, 0, 2469888, 2506752, 2756608, 0, 0, 2580480, 0, 0, 0, 0, 0, 0,
  61244. 1146880, 0, 1146880, 0, 0, 0, 0, 0, 0, 0, 302, 302, 302, 302, 0, 302, 302, 302, 302, 0, 2396160, 2400256,
  61245. 2179072, 2179072, 2441216, 2179072, 2469888, 2179072, 2179072, 2179072, 2519040, 2179072, 2179072,
  61246. 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 241664, 2125824, 2125824, 2125824,
  61247. 2125824, 2125824, 2125824, 2125824, 3223552, 2179072, 2125824, 2125824, 2179072, 2179072, 2125824,
  61248. 2125824, 2125824, 2588672, 2179072, 2613248, 2646016, 2179072, 2179072, 2695168, 2756608, 2179072,
  61249. 2179072, 2179072, 2932736, 2179072, 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824,
  61250. 2125824, 2125824, 245760, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2584576, 2125824, 2125824,
  61251. 2125824, 2125824, 2125824, 2617344, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2662400,
  61252. 2179072, 2179072, 2179072, 3129344, 2179072, 2179072, 3153920, 3166208, 3174400, 2396160, 2400256,
  61253. 2125824, 2125824, 2441216, 2125824, 2469888, 2125824, 2125824, 2125824, 2519040, 2125824, 2125824,
  61254. 2125824, 2125824, 2125824, 2519040, 2125824, 2125824, 2125824, 2125824, 2588672, 2125824, 2613248,
  61255. 2646016, 2125824, 2125824, 2695168, 2756608, 2125824, 2125824, 2125824, 2125824, 2932736, 2125824, 0,
  61256. 3108864, 3198976, 0, 0, 3043328, 0, 3149824, 2936832, 0, 2760704, 3132, 0, 0, 0, 0, 534, 534, 534, 534,
  61257. 534, 534, 534, 534, 534, 534, 534, 3503, 2953216, 0, 0, 2826240, 3158016, 2428928, 0, 3018752, 2764800,
  61258. 2572288, 0, 0, 3051520, 2179072, 2428928, 2437120, 2179072, 2486272, 2179072, 2179072, 2179072, 2179072,
  61259. 2179072, 2179072, 2179072, 2179072, 2654208, 2678784, 2760704, 2764800, 2854912, 2969600, 2179072,
  61260. 3006464, 2179072, 3018752, 2179072, 2179072, 2179072, 3149824, 2125824, 2428928, 2437120, 2125824,
  61261. 2486272, 2125824, 2125824, 2125824, 2125824, 2125824, 2654208, 2678784, 2760704, 2764800, 2785280,
  61262. 2854912, 2969600, 2125824, 3006464, 2125824, 3018752, 2125824, 2125824, 2125824, 2125824, 3149824,
  61263. 2179072, 3051520, 2125824, 3051520, 2125824, 3051520, 0, 2490368, 2498560, 0, 0, 0, 0, 2875392, 0, 0, 0,
  61264. 3132, 0, 0, 2834432, 0, 3227648, 2568192, 2564096, 0, 2940928, 2179072, 2179072, 2498560, 2179072,
  61265. 2179072, 2179072, 2555904, 2564096, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61266. 2179072, 2179072, 3137536, 2125824, 2125824, 2125824, 2125824, 2457600, 2125824, 2125824, 2125824,
  61267. 2125824, 2183168, 0, 0, 0, 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 333, 0, 0, 2125824, 3137536, 2125824, 2125824,
  61268. 2498560, 2125824, 2125824, 2125824, 2555904, 2564096, 2125824, 2125824, 2125824, 2125824, 2125824,
  61269. 2125824, 2125824, 2125824, 2125824, 3132, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2179072, 2179072,
  61270. 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2125824, 2126725, 2125824, 2125824, 2125824,
  61271. 2502656, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3010560,
  61272. 2179072, 2179072, 2125824, 2125824, 2502656, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61273. 2179072, 2179072, 2179072, 3010560, 2179072, 2179072, 2126724, 2126724, 2503556, 0, 0, 0, 0, 2179072,
  61274. 2179072, 2179072, 2179072, 2179072, 2592768, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61275. 2179072, 2179072, 3117056, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61276. 2179072, 2928640, 2179072, 2179072, 2179072, 2998272, 2179072, 2179072, 3031040, 0, 0, 0, 2179072,
  61277. 2449408, 2179072, 2535424, 2179072, 2609152, 2179072, 2859008, 2179072, 2179072, 2179072, 3031040,
  61278. 2125824, 2449408, 2125824, 2535424, 2125824, 2609152, 2125824, 2859008, 2125824, 2125824, 2125824,
  61279. 3031040, 2125824, 2125824, 2449408, 2125824, 2125824, 2125824, 2125824, 2461696, 2465792, 2125824,
  61280. 2125824, 2125824, 2125824, 2125824, 2125824, 2523136, 2125824, 2125824, 2125824, 298, 0, 0, 0, 298, 0,
  61281. 299, 0, 0, 0, 299, 0, 302, 2125824, 2125824, 2125824, 3026944, 2404352, 2125824, 2125824, 2125824,
  61282. 2125824, 3026944, 2539520, 0, 2949120, 2179072, 2658304, 2973696, 111044, 111044, 111044, 111044, 111044,
  61283. 111044, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 452, 452, 111044,
  61284. 452, 452, 452, 452, 452, 452, 452, 452, 452, 452, 111044, 111044, 111044, 111044, 111044, 111044, 111044,
  61285. 111044, 111044, 111044, 452, 111044, 111044, 111044, 111044, 111044, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 0, 0,
  61286. 0, 0, 0, 360, 3, 0, 0, 2183168, 0, 0, 0, 0, 0, 298, 299, 0, 2134016, 302, 303, 0, 0, 0, 0, 0, 2124, 0, 0,
  61287. 0, 0, 0, 534, 534, 534, 534, 534, 847, 534, 534, 861, 534, 534, 0, 302, 118784, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61288. 0, 0, 0, 0, 0, 3127, 0, 0, 0, 302, 0, 0, 0, 302, 119197, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 0, 2403,
  61289. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 302, 302, 0, 0, 0, 0, 302, 302, 302, 302, 302, 302, 0, 0, 0, 0, 0, 302, 0,
  61290. 302, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2966, 0, 3, 0, 0, 2183168, 0, 0, 0, 0, 0,
  61291. 33396, 299, 0, 2134016, 49784, 303, 0, 0, 0, 0, 0, 2428, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172032, 0, 0, 0,
  61292. 0, 0, 0, 0, 0, 0, 298, 0, 0, 0, 302, 0, 0, 0, 2424832, 2433024, 0, 0, 2457600, 2105631, 12290, 3, 0, 0,
  61293. 293, 0, 0, 0, 0, 293, 0, 0, 0, 0, 0, 0, 0, 2024, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2455, 0, 0, 0, 0, 0, 0, 0, 0,
  61294. 0, 0, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 0, 0, 122880, 0, 0, 0, 0, 0,
  61295. 0, 0, 0, 0, 0, 0, 785, 0, 790, 0, 793, 0, 0, 0, 122880, 0, 122880, 122880, 122880, 0, 0, 0, 0, 0, 122880,
  61296. 0, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880,
  61297. 122880, 122880, 122880, 0, 0, 122880, 0, 0, 0, 0, 0, 0, 0, 0, 122880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61298. 1216, 0, 0, 0, 0, 147456, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3148, 0, 0, 0, 0, 1067, 1071, 0, 0,
  61299. 1075, 1079, 0, 2424832, 2433024, 0, 0, 2457600, 0, 0, 0, 131072, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 0,
  61300. 65536, 0, 0, 0, 0, 0, 2479, 2437, 0, 0, 0, 0, 0, 2484, 0, 0, 0, 0, 0, 0, 1675, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61301. 0, 3260, 0, 0, 534, 534, 534, 131072, 0, 0, 131072, 131072, 0, 0, 0, 0, 0, 0, 0, 131072, 0, 0, 131072, 0,
  61302. 0, 131072, 0, 0, 0, 0, 0, 135168, 135168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225708, 0, 0, 0,
  61303. 135168, 0, 0, 135168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1096, 0, 0, 0, 0, 0, 0, 0, 135168, 0, 135168,
  61304. 135168, 135168, 135168, 135168, 135168, 0, 135168, 135168, 135168, 135168, 135168, 135168, 0, 0, 0, 0, 0,
  61305. 135168, 0, 135168, 1, 12290, 3, 0, 0, 2183168, 0, 0, 0, 0, 0, 629, 630, 0, 2134016, 633, 634, 0, 0, 0, 0,
  61306. 0, 2725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2200245, 2200245, 2200245, 0, 0, 2125824, 3117056, 2125824,
  61307. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 1434, 2125824,
  61308. 2125824, 2125824, 2125824, 2932736, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61309. 2125824, 3129344, 2125824, 2125824, 3153920, 3166208, 3174400, 2506752, 2506752, 2506752, 0, 303, 139264,
  61310. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266240, 0, 0, 0, 0, 0, 303, 0, 0, 0, 303, 69632, 139681, 0, 0,
  61311. 0, 0, 0, 65536, 0, 0, 0, 0, 0, 2738, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2013, 0, 0, 0, 0, 303, 303, 303,
  61312. 303, 303, 303, 0, 0, 0, 0, 0, 303, 0, 303, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 3, 0, 0,
  61313. 2183168, 0, 0, 0, 0, 0, 298, 33399, 0, 2134016, 302, 49787, 0, 0, 0, 0, 0, 2763, 534, 534, 534, 534, 534,
  61314. 534, 534, 534, 534, 534, 556, 556, 3020, 556, 556, 556, 61440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61315. 0, 360, 300, 300, 300, 143660, 370, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300,
  61316. 300, 300, 143660, 300, 300, 143660, 300, 300, 300, 143730, 300, 300, 300, 143730, 69632, 73728, 300, 300,
  61317. 143660, 300, 300, 65536, 300, 300, 0, 0, 300, 300, 143660, 300, 300, 300, 300, 300, 300, 300, 300, 300,
  61318. 365, 300, 0, 143660, 300, 300, 300, 143660, 143660, 143660, 143660, 143660, 143660, 143660, 143660,
  61319. 143660, 143660, 143660, 143660, 143660, 143660, 143660, 143660, 300, 300, 143660, 300, 300, 300, 300, 300,
  61320. 300, 300, 300, 300, 300, 300, 143730, 300, 300, 300, 300, 300, 300, 300, 300, 143660, 143660, 143660,
  61321. 143660, 143660, 143660, 143660, 143660, 143660, 300, 300, 300, 300, 300, 300, 300, 300, 143660, 300,
  61322. 143660, 143660, 143660, 143660, 300, 143660, 143660, 143660, 143660, 143660, 143660, 300, 0, 300, 0, 300,
  61323. 300, 300, 143660, 300, 143660, 143660, 143660, 143660, 143660, 143730, 143660, 143730, 143730, 143730,
  61324. 143730, 143730, 143730, 143660, 143660, 143660, 143660, 143660, 143660, 143660, 143660, 1, 12290, 0, 0, 0,
  61325. 0, 2200245, 2200245, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1153, 1154, 0, 0, 0, 0, 0, 0, 155648, 155648, 0,
  61326. 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648,
  61327. 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 0, 0, 0, 0,
  61328. 155648, 0, 0, 0, 0, 0, 155648, 155648, 0, 155648, 155648, 0, 12290, 0, 0, 0, 0, 155648, 0, 155648, 0, 0,
  61329. 0, 0, 0, 155648, 0, 0, 0, 0, 0, 0, 1148, 0, 0, 0, 0, 0, 0, 0, 0, 1157, 3, 0, 0, 2183168, 126976, 0, 0, 0,
  61330. 0, 298, 299, 0, 2134016, 302, 303, 0, 0, 0, 0, 0, 2934, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2446, 0, 0, 0, 0,
  61331. 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744,
  61332. 159744, 159744, 159744, 163840, 159744, 159744, 159744, 159744, 0, 0, 159744, 0, 0, 0, 0, 0, 0, 0, 0,
  61333. 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 163840, 159744, 159744,
  61334. 159744, 159744, 159744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 0, 0, 131072, 131072, 25155, 0, 0, 0,
  61335. 159744, 0, 0, 0, 25155, 25155, 25155, 159744, 25155, 25155, 25155, 25155, 25155, 25155, 25155, 159744,
  61336. 159744, 159744, 159744, 25155, 159744, 25155, 1, 12290, 2125824, 3117056, 2125824, 2125824, 2125824,
  61337. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 24576, 975, 2125824, 2125824, 2125824,
  61338. 2125824, 3092480, 0, 0, 0, 2404352, 2179072, 2179072, 2179072, 2179072, 3026944, 2404352, 2125824,
  61339. 2125824, 2125824, 2125824, 2592768, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  61340. 2125824, 2449408, 0, 2535424, 2125824, 2609152, 2125824, 2859008, 2125824, 2125824, 2125824, 3031040,
  61341. 2125824, 2527232, 0, 0, 0, 2179072, 2527232, 167936, 167936, 167936, 167936, 167936, 167936, 167936,
  61342. 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 1, 12290, 167936, 167936, 167936,
  61343. 0, 0, 167936, 0, 0, 0, 0, 0, 0, 0, 0, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 0,
  61344. 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 0, 0, 155648, 0, 172032, 172032, 0, 172032, 0, 0, 172032, 172032, 0,
  61345. 172032, 0, 0, 0, 0, 172032, 172032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172032, 0, 0, 0, 172032, 172032, 0,
  61346. 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032,
  61347. 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 0, 0, 0, 0, 0, 0,
  61348. 0, 0, 0, 364, 0, 292, 0, 0, 0, 0, 1, 288, 3, 0, 0, 0, 294, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 348, 0, 0, 0, 0,
  61349. 0, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128,
  61350. 176128, 176128, 176128, 1, 0, 176128, 176128, 176128, 0, 0, 176128, 0, 0, 0, 0, 0, 0, 0, 0, 176128,
  61351. 176128, 176128, 176128, 176128, 176128, 176128, 176128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 292, 0, 0, 0,
  61352. 347, 3, 78114, 78114, 292, 0, 627, 0, 0, 0, 298, 299, 0, 2134016, 302, 303, 0, 0, 0, 0, 0, 2946, 0, 0, 0,
  61353. 0, 0, 0, 0, 0, 0, 0, 0, 245760, 0, 0, 0, 0, 78114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 672, 0,
  61354. 1102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155648, 0, 0, 0, 0, 1146, 0, 0, 0, 0, 1151, 0, 0, 0, 0,
  61355. 0, 0, 0, 346, 0, 404, 0, 0, 0, 0, 0, 404, 0, 0, 0, 2098, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2717, 0,
  61356. 0, 534, 2135, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2147, 534, 534, 534, 534, 534, 534,
  61357. 1775, 534, 534, 534, 1780, 534, 534, 534, 534, 534, 534, 534, 2545, 534, 534, 534, 534, 534, 534, 0, 2549,
  61358. 2220, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2232, 556, 556, 556, 556, 556, 556, 2590,
  61359. 556, 556, 556, 556, 556, 556, 2598, 556, 556, 2307, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61360. 2319, 580, 580, 580, 0, 0, 0, 2006, 0, 1069, 0, 0, 0, 2008, 0, 1073, 0, 2573, 556, 556, 556, 556, 556,
  61361. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1396, 0, 0, 2955, 0, 0, 0, 2959, 0, 0, 0, 0, 0, 0,
  61362. 0, 0, 0, 0, 371, 0, 0, 372, 0, 0, 0, 534, 3150, 534, 534, 534, 3153, 534, 534, 534, 534, 534, 534, 534,
  61363. 534, 534, 534, 2547, 534, 534, 534, 0, 0, 3161, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61364. 534, 534, 534, 534, 534, 556, 556, 556, 556, 580, 3206, 580, 580, 580, 3209, 580, 580, 580, 580, 580, 580,
  61365. 580, 580, 2679, 580, 580, 580, 534, 580, 556, 534, 580, 580, 3217, 580, 580, 580, 580, 580, 580, 580, 580,
  61366. 580, 580, 580, 580, 580, 534, 580, 556, 534, 580, 580, 3309, 580, 580, 580, 580, 3310, 3311, 580, 580,
  61367. 580, 580, 580, 580, 580, 580, 2875, 580, 580, 580, 580, 580, 580, 580, 580, 3071, 580, 580, 580, 580, 580,
  61368. 580, 580, 580, 3233, 580, 580, 580, 580, 534, 580, 556, 1993, 534, 534, 534, 1997, 556, 556, 556, 2001,
  61369. 534, 534, 534, 3339, 534, 534, 534, 534, 534, 534, 3345, 534, 534, 534, 534, 556, 3407, 556, 3409, 556,
  61370. 556, 556, 556, 556, 556, 556, 556, 1373, 556, 556, 556, 556, 556, 556, 556, 3364, 556, 580, 580, 580, 580,
  61371. 580, 580, 3370, 580, 580, 580, 580, 580, 580, 3376, 580, 580, 580, 3380, 580, 534, 556, 580, 0, 0, 0, 0,
  61372. 0, 0, 0, 0, 0, 2925, 0, 0, 0, 0, 0, 3132, 0, 0, 0, 0, 3391, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61373. 534, 534, 2198, 534, 2200, 534, 534, 534, 534, 534, 534, 3406, 556, 556, 556, 556, 556, 556, 556, 556,
  61374. 556, 556, 556, 556, 26009, 1341, 975, 580, 556, 556, 556, 556, 3422, 580, 580, 580, 580, 580, 580, 580,
  61375. 580, 580, 580, 580, 1449, 580, 580, 580, 580, 580, 580, 580, 3522, 580, 580, 580, 580, 580, 580, 580, 580,
  61376. 580, 0, 0, 0, 534, 534, 534, 534, 3585, 534, 556, 556, 3, 78114, 78114, 292, 0, 0, 0, 0, 0, 298, 299, 0,
  61377. 2134016, 302, 303, 0, 0, 0, 0, 0, 2973, 0, 0, 2975, 0, 0, 534, 534, 2980, 534, 534, 534, 534, 534, 534,
  61378. 2532, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2793, 534, 534, 534, 534, 534, 0, 0, 0, 304, 0, 0,
  61379. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2732, 0, 0, 192965, 192965, 192965, 192965, 192965, 192965, 192965,
  61380. 192965, 192965, 192965, 192965, 192965, 192965, 192965, 192965, 192965, 0, 192965, 0, 1, 12290, 192965,
  61381. 192965, 192965, 0, 0, 192965, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1201, 0, 0, 0, 0, 0, 0, 0, 0, 192965,
  61382. 192965, 192965, 192965, 192965, 192965, 192965, 192965, 192965, 192965, 0, 192965, 192965, 192965, 192965,
  61383. 192965, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 304, 0, 0, 0, 0, 0, 0, 0, 0, 196608, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61384. 0, 0, 0, 1582, 0, 0, 0, 301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 727, 406, 406, 406, 406, 406,
  61385. 406, 0, 0, 0, 0, 0, 406, 0, 406, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118784, 298, 3, 78114,
  61386. 78114, 292, 0, 0, 0, 0, 0, 298, 299, 0, 301, 302, 303, 0, 0, 0, 0, 0, 3142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61387. 0, 2978, 534, 534, 534, 534, 0, 0, 0, 0, 733, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1240, 0, 0, 0, 1244,
  61388. 0, 0, 1175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2871296, 0, 0, 1171, 1171, 0, 0, 0, 1175, 1650, 0,
  61389. 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 253952, 0, 0, 0, 0, 580, 580, 580, 1540, 2005, 0, 0, 0, 0, 1546, 2007, 0,
  61390. 0, 0, 0, 1552, 0, 0, 0, 1558, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 405, 0, 0, 0, 0, 0, 2009, 0, 0, 0, 0, 1558,
  61391. 2011, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 406, 0, 0, 0, 0, 0, 534, 534, 534, 534, 2549, 0, 556, 556, 556, 556,
  61392. 556, 556, 556, 556, 556, 556, 1410, 556, 556, 556, 556, 556, 0, 306, 0, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61393. 306, 0, 0, 0, 0, 0, 0, 1155072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2705, 0, 0, 0, 0, 0, 204800,
  61394. 204800, 0, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800,
  61395. 204800, 204800, 205106, 204800, 204800, 205105, 205106, 204800, 205105, 205105, 204800, 204800, 0, 0, 0,
  61396. 0, 0, 0, 0, 0, 0, 364, 299, 0, 0, 0, 0, 0, 3, 0, 0, 2183794, 0, 0, 0, 0, 0, 298, 299, 151552, 2134016,
  61397. 302, 303, 0, 0, 0, 0, 0, 155648, 155648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 655, 212992, 0, 0,
  61398. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 757, 0, 151552, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61399. 286720, 2179072, 2179072, 2179072, 2179072, 2179072, 2126724, 2126724, 2126724, 2126724, 2126724, 0,
  61400. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3036110, 2126798, 2126798,
  61401. 3072974, 2126798, 2126798, 2126798, 3122126, 2700164, 2126724, 2716548, 2126724, 2724740, 2126724,
  61402. 2732932, 2773892, 2126724, 2126724, 2126724, 2806660, 2126724, 2831236, 2126724, 2126724, 973, 2126798,
  61403. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61404. 2126798, 2126798, 2126798, 2126798, 2864004, 2126724, 2126724, 2126724, 2126724, 2921348, 2126724,
  61405. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2626436, 2126724,
  61406. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 3117956, 2126724, 2126724, 2126724, 2126724,
  61407. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 0, 0, 975, 2126798, 2126798, 2126798, 2126798,
  61408. 2126798, 2126798, 2126798, 3224526, 2179072, 2126798, 2126724, 2179072, 2179072, 2126724, 2126724,
  61409. 2126798, 2126798, 0, 2486272, 0, 0, 0, 0, 0, 2678784, 2854912, 3006464, 2126798, 2126798, 2126798,
  61410. 2626510, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2700238, 2126798, 2716622, 2126798,
  61411. 2724814, 2126798, 2126798, 2126798, 2126798, 2126798, 2454478, 2126798, 2474958, 2483150, 2126798,
  61412. 2126798, 2126798, 2126798, 2126798, 2126798, 2532302, 2733006, 2773966, 2126798, 2126798, 2126798,
  61413. 2806734, 2126798, 2831310, 2126798, 2126798, 2864078, 2126798, 2126798, 2126798, 2126798, 2921422,
  61414. 2126724, 2409348, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61415. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2814852, 2126724, 2839428, 2126724,
  61416. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61417. 2126724, 3126148, 2126724, 2126724, 2126724, 2126724, 2126798, 2126798, 2585550, 2126798, 2126798,
  61418. 2126798, 2126798, 2126798, 2618318, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2663374,
  61419. 2179072, 2179072, 2179072, 3207168, 2179072, 0, 0, 0, 0, 2126724, 2126724, 2126724, 2126724, 2126724,
  61420. 2126724, 2126724, 2126724, 2552708, 2126724, 2126724, 2126724, 2126724, 2126724, 2638724, 2126724,
  61421. 2126724, 2720644, 2126724, 2126724, 2126724, 2126724, 2126724, 2769796, 2777988, 2782084, 2798468,
  61422. 2823044, 2126724, 2126724, 2126724, 2884484, 2126724, 2913156, 2126724, 2126724, 2126724, 2126724,
  61423. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 3040132, 2126724, 2126724,
  61424. 2126724, 2728836, 2753412, 2126724, 2126724, 2126724, 2126724, 2843524, 2847620, 2126724, 2896772,
  61425. 2917252, 2126724, 2126724, 2126724, 2126724, 3150724, 2126798, 2429902, 2438094, 2126798, 2487246,
  61426. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2929614,
  61427. 2126798, 2126798, 2126798, 2999246, 2126798, 3064708, 2126724, 2126724, 2126724, 2126724, 2126724,
  61428. 3101572, 2126724, 2126724, 3134340, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2585476,
  61429. 2126724, 2126724, 2126724, 2126724, 2126724, 2618244, 2126724, 2126724, 2126724, 2126798, 2720718,
  61430. 2126798, 2126798, 2126798, 2126798, 2126798, 2769870, 2778062, 2782158, 2798542, 2823118, 2126798,
  61431. 2126798, 2126798, 2884558, 2126798, 2913230, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61432. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3040206, 2126798, 2126798, 2126798, 2126798,
  61433. 2126798, 2601934, 2126798, 2126798, 2126798, 2126798, 2642894, 2126798, 2126798, 2126798, 2126798,
  61434. 2126798, 2126798, 2126798, 2606030, 2126798, 2630606, 2126798, 2126798, 2651086, 2126798, 2126798,
  61435. 2126798, 3064782, 2126798, 2126798, 2126798, 2126798, 2126798, 3101646, 2126798, 2126798, 3134414,
  61436. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 0, 2179072, 2126798, 2126724, 2457600, 2179072,
  61437. 2179072, 2179072, 2179072, 2458500, 2126798, 2126798, 2126798, 3208142, 2126798, 2179072, 2126798,
  61438. 2126724, 2179072, 2179072, 2179072, 2179072, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61439. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 3011460, 2126724, 2126724, 2126724, 2126798,
  61440. 2126798, 2503630, 0, 0, 0, 0, 2388868, 2126724, 2126724, 2126724, 2421636, 2126724, 2126724, 2126724,
  61441. 2126724, 2126724, 2454404, 2126724, 2126724, 2126724, 3027844, 2405326, 2126798, 2126798, 2126798,
  61442. 2126798, 3027918, 2539520, 0, 2949120, 2179072, 2658304, 2973696, 2474884, 2483076, 2126724, 2126724,
  61443. 2126724, 2126724, 2126724, 2126724, 2532228, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61444. 2126724, 2601860, 2126724, 2126724, 2126724, 2126724, 2642820, 2126724, 2126724, 2126724, 2126724,
  61445. 2126724, 2655108, 2679684, 2761604, 2765700, 2786180, 2855812, 2970500, 2126724, 3007364, 2126724,
  61446. 3019652, 2605956, 2126724, 2630532, 2126724, 2126724, 2651012, 2126724, 2126724, 2126724, 2708356,
  61447. 2126724, 2737028, 2126724, 2126724, 2126724, 2126724, 2462596, 2466692, 2126724, 2126724, 2126724,
  61448. 2126724, 2126724, 2126724, 2524036, 2126724, 2126724, 2126724, 2126724, 3036036, 2126724, 2126724,
  61449. 3072900, 2126724, 2126724, 2126724, 3122052, 2126724, 2126724, 3142532, 2126724, 2126724, 2126724,
  61450. 3171204, 2126724, 2126724, 3191684, 3195780, 2126724, 0, 0, 0, 0, 0, 0, 2388942, 2126798, 2126798,
  61451. 2126798, 2421710, 2708430, 2126798, 2737102, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61452. 2126798, 2126798, 2888654, 2126798, 2126798, 2925518, 2126798, 2126798, 2126798, 2126798, 2179072,
  61453. 2126798, 2126724, 2179072, 2179072, 2179072, 2179072, 2126724, 2126724, 2126724, 2126724, 2126798,
  61454. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61455. 2802638, 2814926, 2126798, 2839502, 2126798, 2126798, 2126798, 3142606, 2126798, 2126798, 2126798,
  61456. 3171278, 2126798, 2126798, 3191758, 3195854, 2126798, 2179072, 2126798, 2126724, 2179072, 2126724,
  61457. 2126798, 2179072, 2126724, 2126798, 2179072, 2126724, 2126798, 2985984, 2986884, 2986958, 0, 0, 0, 0, 0,
  61458. 0, 0, 69632, 73728, 315, 316, 316, 421, 422, 65536, 429, 2179072, 3112960, 3219456, 2126724, 2126724,
  61459. 3113860, 3220356, 2126798, 2126798, 3113934, 3220430, 0, 0, 0, 0, 0, 0, 0, 2046, 0, 0, 0, 0, 0, 0, 0, 0,
  61460. 0, 1238, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 3223552, 0, 0, 2126724, 2126724, 2417540, 2126724,
  61461. 2126724, 2126724, 2446212, 2126724, 2126724, 2126724, 2126724, 2888580, 2126724, 2126724, 2925444,
  61462. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 0, 0, 2126798, 2126798, 2126798,
  61463. 2409422, 2126798, 2126798, 2945924, 2126724, 2126724, 2995076, 2126724, 3003268, 2126724, 2126724,
  61464. 3023748, 2126724, 3068804, 3085188, 2126724, 3097476, 2126724, 2126724, 2126724, 2519940, 2126724,
  61465. 2126724, 2126724, 2126724, 2589572, 2126724, 2614148, 2646916, 2126724, 2126724, 2696068, 2757508,
  61466. 2638798, 2126798, 2126798, 2126798, 2126798, 2728910, 2753486, 2126798, 2126798, 2126798, 2126798,
  61467. 2843598, 2847694, 2126798, 2896846, 2917326, 2126798, 2126798, 2945998, 2126798, 2126798, 2995150,
  61468. 2126798, 3003342, 2126798, 2126798, 3023822, 2126798, 3068878, 3085262, 2126798, 3097550, 2179072,
  61469. 2179072, 3059712, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3178496, 2126724, 2126724,
  61470. 2126724, 2126724, 2126724, 2126724, 3224452, 0, 0, 2126798, 2126798, 2417614, 2126798, 2126798, 2126798,
  61471. 2446286, 2126798, 2126724, 2126724, 3060612, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61472. 2126724, 3179396, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3126222, 2126798,
  61473. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3118030,
  61474. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2495438, 2126798, 2126798, 2515918,
  61475. 2126798, 2126798, 2126798, 2544590, 2548686, 2126798, 2126798, 2597838, 2126798, 2126798, 2126798,
  61476. 2126798, 2425806, 2433998, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61477. 2126798, 2126798, 0, 0, 0, 2179072, 2126798, 2126724, 2126798, 2126798, 2126798, 3060686, 2126798,
  61478. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3179470, 2179072, 2126798, 2126724, 2179072,
  61479. 2126724, 2659204, 2974596, 2126724, 2126798, 2659278, 2974670, 2126798, 2711552, 2560000, 2179072,
  61480. 2560900, 2126724, 2560974, 2126798, 2126798, 2126798, 2126798, 2462670, 2466766, 2126798, 2126798,
  61481. 2126798, 2126798, 2126798, 2126798, 2524110, 2126798, 2126798, 2126798, 2126798, 0, 0, 0, 0, 0, 0, 0, 0,
  61482. 0, 0, 2473984, 2478080, 2179072, 2179072, 2179072, 3129344, 2179072, 2179072, 3153920, 3166208, 3174400,
  61483. 2397060, 2401156, 2126724, 2126724, 2442116, 2126724, 2470788, 3154820, 3167108, 3175300, 2397134,
  61484. 2401230, 2126798, 2126798, 2442190, 2126798, 2470862, 2126798, 2126798, 2126798, 2520014, 2126798,
  61485. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 3130318, 2126798, 2126798, 3154894, 3167182,
  61486. 3175374, 2506752, 2507726, 2507652, 2126798, 2126798, 2589646, 2126798, 2614222, 2646990, 2126798,
  61487. 2126798, 2696142, 2757582, 2126798, 2126798, 2126798, 2126798, 2933710, 2126798, 2126798, 2126798,
  61488. 2126798, 2593742, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2449408, 0,
  61489. 2535424, 2179072, 3006464, 2179072, 3018752, 2179072, 2179072, 2179072, 3149824, 2126724, 2429828,
  61490. 2438020, 2126724, 2487172, 2126724, 2126724, 2126724, 2126724, 2933636, 2126724, 2126724, 2126724,
  61491. 2126724, 2126724, 2126724, 2126724, 2126724, 3130244, 2126724, 2126724, 2126798, 2126798, 2655182,
  61492. 2679758, 2761678, 2765774, 2786254, 2855886, 2970574, 2126798, 3007438, 2126798, 3019726, 2126798,
  61493. 2126798, 2126798, 2126798, 0, 2502656, 0, 0, 3010560, 0, 0, 0, 0, 2990080, 2179072, 2179072, 2126798,
  61494. 3150798, 2179072, 3051520, 2126724, 3052420, 2126798, 3052494, 0, 2490368, 2498560, 0, 0, 0, 0, 2875392,
  61495. 2179072, 2179072, 2179072, 2555904, 2564096, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61496. 2179072, 2179072, 2179072, 3137536, 2126724, 2126724, 2126724, 3208068, 2126724, 0, 0, 0, 0, 2126798,
  61497. 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2552782, 2126798,
  61498. 2126798, 2126798, 2126798, 2126798, 2126724, 2499460, 2126724, 2126724, 2126724, 2556804, 2564996,
  61499. 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2929540, 2126724,
  61500. 2126724, 2126724, 2999172, 2126724, 2126724, 2126724, 3138436, 2126798, 2126798, 2499534, 2126798,
  61501. 2126798, 2126798, 2556878, 2565070, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798, 2126798,
  61502. 2126798, 2126798, 3011534, 2126798, 2126798, 2126798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 322, 323, 0,
  61503. 2126724, 2450308, 2126724, 2536324, 2126724, 2610052, 2126724, 2859908, 2126724, 2126724, 2126724,
  61504. 3031940, 2126724, 2126798, 2450382, 2126798, 2126798, 2126798, 2126798, 3093454, 0, 0, 0, 2404352,
  61505. 2179072, 2179072, 2179072, 2179072, 3026944, 2405252, 2126724, 2126724, 2495364, 2126724, 2126724,
  61506. 2515844, 2126724, 2126724, 2126724, 2544516, 2548612, 2126724, 2126724, 2597764, 2126724, 2126724,
  61507. 2126724, 2663300, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724, 2126724,
  61508. 2126724, 2126724, 2802564, 2536398, 2126798, 2610126, 2126798, 2859982, 2126798, 2126798, 2126798,
  61509. 3032014, 2126798, 2527232, 0, 0, 0, 2179072, 2527232, 2179072, 2179072, 2179072, 2179072, 2179072,
  61510. 2126724, 2528132, 2126724, 2126724, 2126724, 2126724, 2126724, 3093380, 2126798, 2528206, 2126798,
  61511. 2126798, 2126798, 2126798, 3138510, 2940928, 2941828, 2941902, 0, 0, 0, 0, 0, 2748416, 2879488, 0, 0, 0,
  61512. 0, 0, 172032, 0, 172032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 122880, 122880, 0, 0, 0, 221184, 221184, 0,
  61513. 0, 0, 0, 0, 0, 0, 0, 0, 221184, 221184, 0, 0, 221184, 221184, 221184, 0, 0, 0, 0, 0, 0, 221184, 0, 0,
  61514. 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184,
  61515. 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 0, 0, 0, 0, 0, 0,
  61516. 0, 0, 0, 364, 338, 292, 0, 0, 0, 0, 0, 0, 221184, 0, 221184, 221184, 221184, 221184, 221184, 221184,
  61517. 221184, 221184, 221184, 221184, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 299, 0, 0, 2142208,
  61518. 0, 0, 0, 98304, 0, 0, 0, 53248, 0, 0, 0, 0, 0, 0, 0, 2061, 2062, 0, 0, 0, 0, 0, 0, 0, 0, 159744, 0, 0, 0,
  61519. 0, 0, 0, 0, 0, 1198, 0, 0, 0, 0, 0, 0, 0, 0, 1212, 0, 0, 0, 0, 0, 0, 0, 0, 1578, 0, 0, 0, 577536, 0, 0,
  61520. 1583, 0, 0, 0, 302, 0, 303, 0, 0, 0, 303, 0, 0, 0, 2461696, 0, 0, 0, 0, 0, 0, 1159168, 416, 416, 0, 0, 0,
  61521. 0, 0, 416, 0, 0, 98304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12290, 2179072, 3121152, 2179072,
  61522. 2179072, 3141632, 2179072, 2179072, 2179072, 3170304, 2179072, 2179072, 3190784, 3194880, 2179072, 901, 0,
  61523. 0, 0, 0, 0, 229376, 0, 0, 0, 0, 0, 0, 0, 0, 1666, 0, 0, 0, 0, 0, 2958, 0, 0, 0, 0, 2962, 0, 0, 0, 0, 2967,
  61524. 0, 0, 901, 0, 2387968, 2125824, 2125824, 2125824, 2420736, 2125824, 2125824, 2125824, 2125824, 2125824,
  61525. 2453504, 2125824, 2473984, 2482176, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2531328,
  61526. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3190784, 3194880,
  61527. 2125824, 975, 0, 0, 0, 975, 0, 2387968, 2125824, 2125824, 2125824, 2420736, 2179072, 2179072, 2179072,
  61528. 3223552, 901, 0, 2125824, 2125824, 2416640, 2125824, 2125824, 2125824, 2445312, 2125824, 2125824, 2125824,
  61529. 2125824, 2125824, 3223552, 0, 0, 2125824, 2125824, 2416640, 2125824, 2125824, 2125824, 2445312, 2125824,
  61530. 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734,
  61531. 225734, 225734, 225734, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856,
  61532. 249856, 249856, 249856, 249856, 249856, 249856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 379, 0, 0, 0, 0, 0, 0, 0,
  61533. 217088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 307, 308, 0, 0, 0, 114688, 0, 241664, 258048, 0, 0, 0,
  61534. 0, 0, 0, 0, 0, 0, 0, 676, 677, 678, 0, 0, 0, 254407, 254407, 254407, 254407, 254407, 254407, 254407,
  61535. 254407, 254407, 254407, 254407, 254407, 254407, 254407, 254407, 254407, 0, 0, 0, 0, 0, 0, 0, 0, 0, 386, 0,
  61536. 0, 0, 0, 0, 386, 0, 0, 0, 2183168, 0, 0, 270336, 0, 0, 298, 299, 0, 2134016, 302, 303, 200704, 0, 0,
  61537. 180224, 0, 0, 0, 0, 0, 0, 0, 0, 2424832, 2433024, 0, 0, 2457600, 20480, 0, 0, 0, 0, 2179072, 2179072,
  61538. 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2126724, 2126724,
  61539. 2126724, 2126724, 2126724, 1, 12290, 2113825, 0, 0, 0, 0, 0, 0, 295, 0, 0, 0, 295, 0, 0, 0, 0, 0, 0,
  61540. 2387968, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 330, 381, 383, 0, 0, 0, 0, 0, 266240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61541. 0, 266240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12290, 0, 0, 266240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61542. 338, 339, 340, 2113825, 0, 0, 2183168, 0, 0, 0, 0, 0, 298, 299, 0, 2134016, 302, 303, 0, 0, 0, 0, 0,
  61543. 237568, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1657, 0, 0, 0, 0, 274432, 274432, 274432, 274432, 274432, 274432,
  61544. 0, 0, 0, 0, 0, 274432, 0, 274432, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 90408, 90408, 90408, 90408, 0, 94505,
  61545. 1, 12290, 3, 78114, 292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1611, 0, 0, 0, 3, 78114, 78114, 292, 0, 0, 0,
  61546. 0, 0, 298, 299, 0, 0, 302, 303, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1163264, 78114, 1066,
  61547. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 308, 307, 534, 534, 534, 1341, 901, 556, 556, 556, 556, 556,
  61548. 556, 556, 556, 556, 556, 556, 580, 580, 3062, 580, 580, 2009, 0, 0, 0, 0, 0, 2011, 0, 0, 0, 0, 0, 0, 0, 0,
  61549. 0, 0, 722, 0, 0, 0, 0, 0, 0, 2954, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 330, 0, 0, 1650, 0, 0, 0, 0,
  61550. 0, 0, 0, 0, 2089, 0, 0, 0, 0, 0, 0, 0, 2086, 0, 0, 0, 0, 0, 2092, 0, 0, 290, 1066, 0, 0, 0, 0, 0, 0, 0, 0,
  61551. 0, 0, 0, 0, 0, 0, 680, 681, 3, 78114, 78449, 292, 0, 0, 0, 0, 0, 298, 299, 0, 0, 302, 303, 0, 0, 0, 0, 0,
  61552. 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 1138688, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 739, 0, 0, 0, 0, 0,
  61553. 0, 1150976, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 385,
  61554. 337, 0, 581, 557, 557, 557, 557, 557, 557, 557, 581, 581, 581, 534, 581, 581, 581, 581, 581, 581, 581,
  61555. 557, 557, 534, 557, 581, 557, 581, 1, 12290, 1, 12290, 3, 78115, 292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61556. 1680, 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624,
  61557. 282624, 282624, 282624, 282624, 282624, 1, 12290, 282624, 282624, 282624, 0, 0, 282624, 0, 0, 0, 0, 0, 0,
  61558. 0, 0, 0, 0, 0, 2027, 0, 0, 0, 0, 0, 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624, 282624,
  61559. 282624, 282624, 282624, 0, 282624, 282624, 282624, 282624, 282624, 0, 0, 0, 0, 0, 0, 0, 0, 0, 637, 0, 0,
  61560. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 641, 0, 0, 0, 0, 0, 3047424, 3129344, 0, 2981888, 2396160, 0, 3153920, 3132,
  61561. 0, 0, 2740224, 0, 0, 0, 0, 0, 0, 1181, 1183, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1608, 1609, 1610, 0, 0, 0, 0, 0,
  61562. 0, 0, 286720, 286720, 0, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720,
  61563. 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720,
  61564. 286720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 705, 0, 0, 0, 709, 0, 0, 0, 3108864, 3198976, 0, 0, 3043328, 0,
  61565. 3149824, 2936832, 0, 2760704, 3252, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 167936, 0, 0, 0, 0, 65536, 0, 0, 0,
  61566. 0, 3329, 0, 0, 2834432, 0, 3227648, 2568192, 2564096, 0, 2940928, 2179072, 2179072, 2498560, 3329, 0, 0,
  61567. 0, 0, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  61568. 2179072, 2125824, 0, 2125824, 2125824, 0, 0, 0, 308, 0, 0, 0, 0, 0, 307, 0, 307, 308, 0, 307, 307, 0, 0,
  61569. 0, 307, 307, 308, 308, 0, 0, 0, 0, 0, 0, 307, 407, 308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 783,
  61570. 0, 0, 0, 308, 412, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0,
  61571. 57344, 0, 0, 0, 0, 0, 0, 1120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1239, 0, 0, 0, 0, 0, 456, 456, 456, 482, 482,
  61572. 456, 482, 482, 482, 482, 482, 482, 482, 507, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482, 482,
  61573. 482, 482, 527, 482, 482, 482, 482, 482, 535, 558, 535, 558, 535, 535, 558, 535, 582, 558, 558, 558, 558,
  61574. 558, 558, 558, 582, 582, 582, 535, 582, 582, 582, 582, 582, 582, 582, 558, 558, 535, 558, 582, 558, 582,
  61575. 1, 12290, 0, 667, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 769, 0, 697, 0, 0, 0, 0, 0, 0, 0, 704, 0, 0,
  61576. 0, 0, 0, 0, 0, 0, 1639, 0, 0, 0, 0, 0, 0, 0, 0, 1660, 1661, 0, 1663, 0, 0, 0, 0, 0, 729, 0, 0, 0, 0, 0, 0,
  61577. 0, 0, 0, 0, 0, 740, 0, 0, 0, 0, 0, 0, 2834432, 0, 3227648, 2568192, 2564096, 0, 2940928, 2179072, 2179072,
  61578. 2498560, 0, 0, 0, 638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 755, 0, 0, 0, 0, 0, 2134749, 0, 0, 0, 0, 0, 0, 0, 0,
  61579. 0, 0, 0, 1169, 734, 0, 0, 0, 0, 0, 0, 761, 0, 0, 765, 0, 0, 0, 0, 772, 0, 0, 0, 0, 0, 0, 0, 69632, 73728,
  61580. 172032, 0, 0, 0, 0, 65536, 0, 0, 0, 641, 0, 0, 0, 0, 0, 0, 804, 0, 0, 0, 780, 0, 0, 0, 0, 0, 327, 0,
  61581. 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 821, 776, 0, 0, 0, 0, 0, 825, 826, 776, 776, 0, 0, 0, 0, 0,
  61582. 0, 0, 780, 0, 0, 0, 0, 0, 0, 0, 0, 1677, 0, 1679, 0, 0, 0, 0, 0, 0, 776, 729, 776, 0, 534, 534, 836, 840,
  61583. 534, 534, 534, 534, 534, 534, 866, 534, 871, 534, 878, 534, 881, 534, 534, 895, 534, 534, 556, 556, 556,
  61584. 909, 913, 1018, 580, 1025, 580, 1028, 580, 580, 1042, 580, 580, 0, 0, 0, 840, 987, 913, 836, 1052, 881,
  61585. 534, 534, 909, 1057, 954, 556, 556, 0, 983, 1062, 1028, 580, 580, 534, 534, 556, 556, 580, 580, 0, 0, 0,
  61586. 0, 0, 0, 0, 0, 0, 0, 0, 78114, 1066, 0, 0, 1068, 1072, 0, 0, 1076, 1080, 0, 0, 0, 0, 0, 0, 0, 406, 406,
  61587. 406, 406, 0, 406, 406, 406, 406, 0, 0, 1144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 508, 515, 515, 0, 0,
  61588. 0, 1634, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3126, 0, 0, 1769, 534, 534, 1772, 534, 534, 534, 534, 534,
  61589. 534, 534, 534, 534, 534, 1784, 534, 534, 534, 534, 534, 884, 534, 534, 534, 534, 534, 556, 556, 903, 556,
  61590. 556, 0, 580, 580, 580, 984, 580, 990, 580, 580, 1003, 580, 580, 1014, 580, 534, 534, 534, 534, 1789, 534,
  61591. 534, 534, 534, 534, 534, 534, 1341, 1799, 556, 556, 0, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61592. 580, 580, 580, 0, 0, 0, 0, 534, 534, 556, 556, 556, 1806, 556, 556, 556, 556, 556, 1812, 556, 556, 556,
  61593. 556, 556, 556, 0, 0, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2370, 580, 580, 580, 580, 580, 580, 556,
  61594. 556, 556, 1825, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 955, 556, 556, 556, 1885, 556,
  61595. 556, 556, 556, 556, 556, 556, 26009, 1895, 580, 580, 580, 580, 580, 1902, 2017, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61596. 0, 0, 0, 0, 0, 0, 787, 0, 0, 0, 2042, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2051, 0, 0, 0, 0, 0, 0, 1196, 0, 0, 0, 0,
  61597. 0, 0, 0, 0, 0, 0, 1223, 0, 0, 0, 0, 0, 2109, 2110, 0, 0, 2112, 0, 0, 0, 2110, 0, 0, 2117, 0, 0, 0, 0, 0,
  61598. 0, 0, 69632, 73728, 221184, 0, 0, 0, 0, 65536, 0, 2150, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61599. 534, 534, 534, 534, 534, 1313, 0, 0, 0, 2464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3135, 0, 0, 534, 534,
  61600. 534, 534, 2502, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2510, 534, 534, 534, 2601,
  61601. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2611, 556, 556, 556, 556, 556, 2563, 556,
  61602. 556, 556, 556, 556, 556, 556, 556, 556, 556, 1388, 556, 556, 556, 556, 1393, 556, 556, 556, 556, 2632,
  61603. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1967, 0, 0, 0, 2698, 0, 0,
  61604. 0, 0, 0, 0, 2703, 0, 0, 0, 0, 0, 0, 0, 2115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2729, 0, 0, 0, 0, 0, 0, 2749,
  61605. 2750, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 789, 0, 0, 0, 0, 0, 0, 0, 2762, 0, 534, 534, 534, 534,
  61606. 534, 534, 534, 534, 534, 534, 534, 2521, 534, 534, 534, 534, 534, 2773, 534, 534, 2777, 534, 534, 534,
  61607. 534, 534, 534, 534, 534, 534, 534, 2786, 556, 2820, 556, 556, 2824, 556, 556, 556, 556, 556, 556, 556,
  61608. 556, 556, 556, 2833, 580, 580, 580, 2869, 580, 580, 2873, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61609. 580, 2899, 580, 580, 580, 580, 580, 580, 2882, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61610. 2890, 580, 580, 534, 534, 556, 556, 580, 580, 0, 0, 0, 0, 0, 3324, 0, 0, 0, 0, 0, 346, 0, 0, 0, 0, 0, 0,
  61611. 0, 0, 0, 0, 0, 221184, 0, 221184, 0, 0, 0, 0, 2931, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534,
  61612. 534, 534, 534, 3010, 534, 534, 534, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556, 556, 3412, 556, 556,
  61613. 556, 556, 556, 556, 3051, 556, 556, 556, 556, 556, 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580,
  61614. 580, 580, 580, 580, 580, 580, 580, 3091, 580, 3093, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580,
  61615. 556, 534, 534, 556, 556, 580, 3132, 3387, 0, 3389, 0, 534, 3392, 534, 3394, 534, 534, 534, 534, 534, 534,
  61616. 534, 534, 1777, 534, 534, 534, 534, 534, 534, 534, 534, 2157, 534, 534, 534, 534, 534, 534, 534, 534,
  61617. 2182, 534, 534, 534, 534, 2187, 534, 534, 534, 534, 3448, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61618. 534, 556, 556, 556, 556, 556, 3023, 556, 3461, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 580,
  61619. 580, 580, 580, 3064, 580, 3475, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 0, 0, 0, 0, 3561,
  61620. 534, 0, 3490, 0, 3492, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2794, 534, 534, 0,
  61621. 0, 3533, 0, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1281, 309, 310,
  61622. 311, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 640, 0, 0, 0, 0, 420, 0, 0, 0, 0, 443, 0, 0, 0, 0, 0, 0, 0, 0,
  61623. 0, 1109, 0, 1111, 1112, 0, 0, 0, 0, 0, 0, 443, 443, 420, 443, 443, 443, 443, 443, 443, 443, 443, 443, 443,
  61624. 443, 443, 443, 526, 443, 526, 526, 526, 443, 526, 526, 526, 526, 443, 536, 559, 536, 559, 536, 536, 559,
  61625. 536, 583, 559, 559, 559, 559, 559, 559, 559, 583, 583, 583, 536, 583, 583, 583, 583, 583, 583, 583, 559,
  61626. 559, 609, 614, 583, 614, 620, 1, 12290, 534, 534, 874, 534, 534, 534, 534, 534, 534, 534, 534, 556, 556,
  61627. 556, 556, 556, 0, 580, 580, 580, 580, 580, 580, 1021, 580, 580, 580, 580, 580, 580, 580, 580, 0, 0, 0,
  61628. 534, 580, 556, 556, 556, 556, 556, 556, 556, 580, 580, 580, 534, 580, 580, 580, 580, 0, 0, 0, 0, 0, 0, 0,
  61629. 0, 0, 0, 3445, 534, 0, 0, 0, 1657, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3262, 534, 534, 1785, 534, 534,
  61630. 534, 534, 534, 534, 534, 534, 534, 534, 534, 1341, 0, 556, 556, 0, 580, 580, 580, 580, 580, 580, 580, 580,
  61631. 580, 1006, 580, 580, 580, 0, 0, 1544, 0, 0, 0, 0, 0, 1550, 0, 0, 0, 0, 0, 0, 347, 0, 0, 0, 0, 0, 0, 0, 0,
  61632. 0, 0, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 580, 580, 1970, 580, 580, 580, 580,
  61633. 580, 1977, 580, 580, 580, 580, 580, 580, 580, 1444, 580, 580, 580, 580, 580, 1456, 580, 580, 0, 0, 2425,
  61634. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 654, 0, 0, 2612, 556, 556, 556, 556, 0, 2615, 0, 0, 0, 0, 580, 580,
  61635. 580, 580, 580, 534, 556, 580, 0, 3382, 0, 0, 3385, 0, 0, 0, 580, 2621, 580, 580, 580, 580, 2625, 580, 580,
  61636. 580, 580, 580, 580, 580, 580, 580, 580, 3221, 580, 580, 580, 580, 580, 0, 0, 0, 312, 313, 314, 315, 316,
  61637. 317, 318, 319, 320, 321, 0, 0, 0, 0, 0, 0, 1249, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 850, 534, 534,
  61638. 534, 534, 534, 0, 312, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1172, 0, 0, 0, 315, 0, 0, 0, 0, 0, 0, 0,
  61639. 0, 0, 0, 0, 0, 0, 655, 0, 0, 422, 430, 421, 430, 0, 312, 430, 444, 457, 457, 457, 457, 457, 457, 457, 457,
  61640. 457, 457, 457, 457, 457, 457, 457, 457, 457, 457, 478, 483, 483, 494, 483, 483, 483, 483, 483, 483, 483,
  61641. 483, 509, 509, 522, 522, 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, 523, 509, 523, 523, 523, 523,
  61642. 523, 537, 560, 537, 560, 537, 537, 560, 537, 584, 560, 560, 560, 560, 560, 560, 560, 584, 584, 584, 606,
  61643. 584, 584, 584, 584, 584, 584, 607, 608, 608, 606, 608, 607, 608, 607, 1, 12290, 0, 0, 811, 0, 0, 0, 0, 0,
  61644. 0, 0, 0, 0, 0, 0, 0, 0, 679, 0, 0, 0, 695, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61645. 534, 1720, 534, 534, 882, 534, 534, 556, 556, 955, 556, 556, 0, 580, 580, 1029, 580, 580, 534, 534, 556,
  61646. 556, 580, 580, 0, 0, 0, 3322, 0, 0, 3325, 0, 0, 0, 0, 1161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249856,
  61647. 0, 0, 0, 0, 0, 0, 0, 1193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0, 1206, 0, 0, 0,
  61648. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1218, 0, 0, 534, 534, 1254, 534, 1257, 534, 534, 534, 534, 534, 534, 534,
  61649. 534, 1271, 534, 1276, 534, 534, 1280, 534, 534, 1283, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61650. 534, 534, 534, 1294, 534, 534, 534, 534, 534, 1341, 901, 556, 556, 1345, 556, 556, 1349, 556, 556, 556,
  61651. 556, 556, 0, 0, 0, 0, 0, 0, 580, 580, 580, 580, 580, 0, 3580, 0, 534, 534, 534, 534, 534, 534, 556, 556,
  61652. 556, 556, 556, 1363, 556, 1368, 556, 556, 1372, 556, 556, 1375, 556, 556, 556, 556, 556, 0, 2296, 0, 0,
  61653. 580, 580, 580, 580, 580, 580, 580, 2355, 580, 580, 580, 580, 2360, 580, 580, 580, 580, 1437, 580, 580,
  61654. 1441, 580, 580, 580, 580, 580, 580, 580, 580, 1455, 580, 1460, 580, 580, 1464, 580, 580, 1467, 580, 580,
  61655. 580, 580, 580, 580, 580, 580, 580, 580, 0, 0, 188416, 534, 580, 556, 1669, 0, 0, 0, 0, 0, 0, 1676, 0, 0,
  61656. 0, 0, 0, 0, 0, 0, 0, 1199, 1200, 0, 0, 0, 0, 0, 580, 1923, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61657. 580, 580, 580, 580, 580, 1459, 580, 580, 1936, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61658. 580, 580, 1919, 580, 534, 2176, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 0,
  61659. 0, 534, 534, 534, 534, 2192, 2193, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 556, 556, 556, 556,
  61660. 3022, 556, 2262, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1819, 556,
  61661. 556, 556, 2278, 2279, 2280, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1846, 556, 556, 556, 1851,
  61662. 556, 2349, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1985, 580, 580, 580,
  61663. 2365, 2366, 2367, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 0, 3558, 0, 3560, 534, 534, 0, 2399,
  61664. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1243, 0, 0, 0, 0, 0, 2465, 2466, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61665. 0, 2090, 0, 0, 0, 0, 580, 580, 580, 2663, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534,
  61666. 580, 556, 3105, 534, 534, 534, 534, 534, 2790, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 556,
  61667. 3019, 556, 556, 556, 556, 2917, 0, 0, 0, 0, 0, 2923, 0, 0, 0, 0, 0, 0, 0, 2927, 0, 0, 0, 0, 0, 2200246, 0,
  61668. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1617, 0, 0, 0, 0, 0, 0, 0, 0, 2972, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534,
  61669. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2987, 534, 534, 534, 534, 534, 534,
  61670. 534, 534, 534, 534, 899, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3027, 556, 556, 556, 556, 556, 556,
  61671. 556, 556, 556, 556, 556, 1432, 26009, 1341, 975, 580, 0, 3139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61672. 1597, 0, 534, 534, 534, 534, 3175, 534, 534, 534, 534, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61673. 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3438, 0, 3439, 0, 0, 0, 0, 0, 0, 0, 534,
  61674. 3446, 534, 3447, 534, 534, 534, 3451, 534, 534, 534, 534, 534, 534, 534, 556, 3459, 556, 556, 556, 556,
  61675. 556, 2589, 556, 556, 2593, 556, 556, 556, 556, 556, 556, 556, 2606, 556, 556, 556, 556, 556, 556, 556,
  61676. 556, 2269, 556, 556, 556, 556, 556, 556, 556, 3460, 556, 556, 556, 3464, 556, 556, 556, 556, 556, 556,
  61677. 556, 556, 580, 3473, 580, 0, 0, 2920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2926, 0, 0, 0, 0, 0, 1147, 0, 1149, 0, 0,
  61678. 0, 0, 0, 0, 0, 0, 534, 557, 534, 557, 534, 534, 557, 534, 3474, 580, 580, 580, 3478, 580, 580, 580, 580,
  61679. 580, 580, 580, 580, 0, 0, 0, 534, 534, 3583, 3584, 534, 534, 556, 556, 3596, 556, 556, 556, 3598, 580,
  61680. 580, 580, 3600, 0, 534, 534, 556, 556, 580, 580, 0, 0, 0, 0, 3244, 0, 0, 0, 0, 0, 323, 323, 373, 0, 0, 0,
  61681. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725, 0, 0, 0, 0, 373, 0, 432, 438, 0, 445, 458, 458, 458, 458, 458, 458,
  61682. 458, 458, 458, 458, 458, 458, 458, 458, 458, 458, 458, 458, 458, 484, 484, 495, 484, 484, 484, 484, 484,
  61683. 484, 484, 484, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 510, 538, 561,
  61684. 538, 561, 538, 538, 561, 538, 585, 561, 561, 561, 561, 561, 561, 561, 585, 585, 585, 538, 585, 585, 585,
  61685. 585, 585, 585, 585, 561, 561, 538, 561, 585, 561, 585, 1, 12290, 787, 0, 0, 0, 0, 534, 534, 534, 534, 534,
  61686. 534, 534, 534, 859, 534, 534, 534, 534, 534, 534, 2139, 534, 534, 2142, 534, 534, 534, 534, 534, 534, 534,
  61687. 1760, 1761, 1762, 534, 534, 1765, 1766, 534, 534, 1114, 1115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61688. 1613, 0, 1100, 0, 1231, 0, 0, 0, 0, 0, 1115, 0, 0, 0, 0, 0, 1214, 0, 0, 0, 0, 0, 3088384, 0, 0, 0, 0, 0,
  61689. 0, 0, 0, 0, 0, 0, 752, 0, 0, 0, 0, 0, 0, 1246, 1114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 1255, 534, 534,
  61690. 534, 1341, 901, 556, 556, 1346, 556, 556, 556, 556, 556, 556, 556, 556, 1389, 556, 556, 556, 556, 556,
  61691. 556, 556, 556, 1397, 556, 556, 556, 1401, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1880, 556,
  61692. 556, 556, 556, 556, 580, 1438, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1934,
  61693. 580, 580, 580, 1465, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1491, 580, 580,
  61694. 1478, 580, 580, 580, 580, 580, 580, 580, 1487, 580, 580, 1489, 580, 580, 580, 1493, 1517, 580, 580, 580,
  61695. 580, 580, 0, 534, 580, 556, 534, 534, 534, 534, 534, 556, 580, 534, 556, 580, 534, 556, 580, 534, 556,
  61696. 580, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 135168, 135168, 0, 0, 65536, 135168, 556, 556, 556, 556, 1872,
  61697. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1832, 556, 556, 556, 556, 1968, 580, 580, 580, 580,
  61698. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2362, 580, 580, 2004, 0, 2005, 0, 0, 0, 0, 0, 2007,
  61699. 0, 0, 0, 0, 0, 0, 0, 2418, 0, 0, 0, 0, 0, 2422, 0, 0, 2009, 0, 0, 0, 0, 0, 2011, 0, 0, 0, 0, 0, 2014, 0,
  61700. 0, 0, 0, 0, 0, 1576, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2077, 0, 0, 0, 0, 0, 2067, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61701. 0, 0, 0, 0, 0, 0, 827, 2121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 534, 2770,
  61702. 534, 534, 534, 534, 2137, 534, 534, 534, 534, 2141, 534, 534, 534, 534, 534, 534, 534, 534, 2518, 534,
  61703. 534, 534, 534, 534, 534, 534, 534, 2803, 534, 534, 534, 534, 534, 534, 534, 534, 2989, 534, 534, 534, 534,
  61704. 534, 534, 534, 534, 3165, 534, 534, 534, 534, 534, 534, 534, 534, 3270, 534, 534, 534, 534, 534, 534, 534,
  61705. 534, 3280, 556, 556, 556, 556, 556, 556, 556, 1426, 556, 556, 556, 556, 26009, 1341, 975, 580, 556, 556,
  61706. 2222, 556, 556, 556, 556, 2226, 556, 556, 556, 556, 556, 556, 556, 556, 1405, 556, 556, 556, 556, 556,
  61707. 556, 556, 580, 580, 2309, 580, 580, 580, 580, 2313, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3527,
  61708. 580, 580, 580, 0, 3531, 0, 0, 2462, 0, 0, 0, 0, 0, 2467, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1640, 0, 0, 0, 0, 0,
  61709. 0, 534, 534, 534, 2489, 2490, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2522, 534, 534,
  61710. 534, 534, 534, 534, 2529, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2993, 534, 534,
  61711. 2620, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2376, 2660, 580, 580,
  61712. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3316, 2707, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61713. 0, 0, 0, 0, 0, 1100, 0, 0, 0, 0, 2724, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1686, 0, 0, 0, 0, 0, 0, 0,
  61714. 2752, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2028, 0, 0, 0, 534, 534, 534, 534, 534, 2800, 534, 534, 534,
  61715. 534, 534, 534, 534, 534, 534, 534, 1307, 534, 534, 534, 534, 534, 2891, 580, 580, 580, 580, 580, 580, 580,
  61716. 2897, 580, 580, 580, 580, 580, 580, 580, 1471, 580, 580, 580, 580, 580, 580, 580, 580, 1045, 580, 0, 0, 0,
  61717. 534, 580, 556, 3128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1128, 534, 534, 534, 534, 534, 3176,
  61718. 534, 534, 534, 556, 556, 556, 556, 556, 556, 556, 3511, 556, 3513, 556, 556, 556, 556, 580, 556, 556,
  61719. 3297, 556, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3374, 580, 580, 3132, 0, 0, 0, 0,
  61720. 534, 534, 534, 534, 534, 534, 3397, 534, 534, 534, 534, 0, 0, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61721. 556, 1392, 556, 556, 556, 556, 556, 325, 326, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 741, 0, 0, 0, 0,
  61722. 0, 324, 372, 327, 371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1110, 0, 0, 0, 0, 0, 324, 0, 0, 371, 371, 401, 0,
  61723. 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 326, 0, 0, 0, 446, 459, 459, 459, 459,
  61724. 459, 459, 459, 459, 472, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 459, 485, 485, 459, 485,
  61725. 485, 500, 502, 485, 485, 500, 485, 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, 511,
  61726. 528, 511, 511, 511, 511, 511, 539, 562, 539, 562, 539, 539, 562, 539, 586, 562, 562, 562, 562, 562, 562,
  61727. 562, 586, 586, 586, 539, 586, 586, 586, 586, 586, 586, 586, 562, 562, 539, 562, 586, 562, 586, 1, 12290,
  61728. 0, 651, 652, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 663, 664, 0, 0, 0, 0, 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61729. 0, 723, 0, 0, 0, 0, 0, 0, 0, 0, 0, 682, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 364, 364, 0, 0, 0, 0, 0, 355,
  61730. 0, 0, 466, 466, 466, 466, 466, 466, 466, 466, 471, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466,
  61731. 471, 0, 713, 0, 0, 0, 0, 0, 0, 720, 0, 0, 0, 724, 0, 0, 0, 0, 0, 0, 1621, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61732. 769, 0, 0, 0, 0, 0, 0, 0, 0, 0, 762, 763, 0, 0, 0, 0, 0, 771, 0, 773, 0, 0, 0, 0, 0, 0, 1637, 0, 0, 0, 0,
  61733. 0, 0, 0, 0, 0, 0, 1095, 0, 0, 0, 0, 0, 0, 0, 0, 0, 790, 793, 0, 0, 0, 793, 793, 790, 0, 0, 0, 0, 0, 0, 0,
  61734. 106496, 0, 106496, 0, 0, 0, 0, 106496, 106496, 0, 0, 0, 773, 0, 785, 0, 802, 0, 0, 0, 0, 793, 0, 700, 0,
  61735. 0, 0, 0, 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1141, 0, 810, 0, 0, 0, 0, 0, 810, 810, 813, 0, 0, 0, 773, 0,
  61736. 0, 0, 0, 0, 375, 0, 0, 0, 0, 367, 0, 384, 0, 350, 0, 0, 0, 0, 822, 0, 0, 0, 0, 0, 0, 0, 0, 0, 771, 0, 0,
  61737. 0, 0, 0, 385, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 822, 802, 822, 0, 534, 534, 837, 534, 843, 534,
  61738. 534, 856, 534, 534, 867, 534, 872, 534, 534, 880, 883, 888, 534, 896, 534, 534, 556, 556, 556, 910, 556,
  61739. 556, 556, 556, 556, 2604, 2605, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3189, 556, 556, 556, 556,
  61740. 556, 556, 916, 556, 556, 929, 556, 556, 940, 556, 945, 556, 556, 953, 956, 961, 556, 969, 1019, 580, 580,
  61741. 1027, 1030, 1035, 580, 1043, 580, 580, 0, 0, 0, 534, 580, 556, 556, 556, 556, 556, 2825, 556, 556, 556,
  61742. 556, 556, 556, 556, 556, 556, 556, 2284, 556, 556, 556, 556, 556, 837, 534, 1053, 888, 534, 910, 556,
  61743. 1058, 961, 556, 0, 984, 580, 1063, 1035, 580, 0, 2919, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2458, 0, 0,
  61744. 0, 0, 1087, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1097, 0, 0, 0, 0, 0, 0, 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 751, 0,
  61745. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2032, 0, 0, 0, 0, 0, 1104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61746. 2078, 0, 0, 0, 1129, 0, 0, 0, 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2471, 0, 0, 0, 0, 0, 1143, 0, 0,
  61747. 0, 0, 0, 0, 0, 0, 1152, 0, 0, 0, 0, 0, 0, 0, 2442, 0, 0, 0, 0, 0, 0, 0, 2450, 1121, 0, 0, 0, 0, 0, 0, 0,
  61748. 0, 0, 0, 0, 0, 0, 1189, 0, 0, 0, 0, 364, 364, 0, 0, 0, 0, 0, 0, 0, 1139, 0, 0, 0, 0, 0, 328, 0, 0, 0, 0,
  61749. 0, 0, 0, 0, 0, 0, 0, 2757, 2758, 0, 0, 0, 534, 1282, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61750. 534, 534, 534, 1297, 1337, 534, 534, 1341, 901, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1354,
  61751. 556, 556, 1419, 556, 556, 556, 556, 556, 556, 1429, 556, 556, 26009, 1341, 975, 580, 580, 580, 580, 1523,
  61752. 580, 0, 534, 580, 556, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556, 2837, 556, 556, 556, 556, 556,
  61753. 556, 556, 556, 556, 556, 1862, 1863, 556, 556, 556, 556, 1461, 580, 580, 580, 1466, 580, 580, 580, 580,
  61754. 580, 580, 580, 580, 580, 580, 580, 1915, 580, 580, 580, 580, 580, 580, 1481, 580, 580, 580, 580, 580, 580,
  61755. 580, 580, 580, 580, 580, 580, 580, 1933, 580, 580, 580, 1495, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61756. 580, 1511, 580, 580, 580, 0, 2005, 0, 0, 0, 0, 0, 2007, 0, 0, 0, 0, 0, 0, 0, 2074, 0, 0, 0, 0, 0, 0, 0, 0,
  61757. 342, 0, 0, 0, 0, 0, 0, 0, 580, 580, 580, 1521, 580, 580, 0, 534, 580, 556, 534, 534, 534, 534, 534, 556,
  61758. 580, 534, 556, 580, 3610, 3611, 3612, 534, 556, 580, 0, 0, 0, 0, 0, 0, 307, 442, 456, 456, 456, 456, 456,
  61759. 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 456, 0, 0, 1585, 0, 0, 1588, 1589, 1590, 0, 1592, 1593,
  61760. 0, 0, 0, 0, 1598, 1631, 1632, 0, 0, 0, 0, 0, 0, 0, 0, 1641, 1642, 0, 0, 0, 0, 0, 0, 0, 155648, 0, 0, 0, 0,
  61761. 0, 0, 0, 0, 0, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1212, 534, 534, 534, 0, 0, 0, 0, 1648, 0, 0, 1650,
  61762. 0, 0, 0, 0, 1652, 1653, 0, 0, 0, 0, 0, 441, 0, 0, 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, 467,
  61763. 467, 467, 467, 467, 467, 552, 575, 552, 575, 552, 552, 575, 552, 0, 0, 1671, 1672, 1673, 1674, 0, 0, 0, 0,
  61764. 0, 0, 0, 0, 0, 0, 0, 2483, 0, 0, 0, 0, 0, 1683, 0, 0, 1686, 0, 0, 0, 0, 0, 1690, 0, 0, 0, 1694, 1695,
  61765. 1706, 1566, 1566, 1708, 534, 1710, 534, 1711, 1712, 534, 1714, 534, 534, 534, 1718, 534, 534, 534, 534,
  61766. 534, 886, 534, 534, 534, 534, 534, 556, 556, 908, 556, 556, 556, 556, 556, 2254, 556, 556, 556, 556, 556,
  61767. 556, 556, 556, 556, 556, 1431, 556, 26009, 1341, 975, 1435, 534, 534, 1739, 534, 1741, 534, 534, 534, 534,
  61768. 534, 534, 534, 534, 1749, 1750, 1752, 534, 1786, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1797, 1341,
  61769. 0, 1802, 556, 556, 556, 556, 556, 3041, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3200, 556, 556,
  61770. 556, 556, 556, 556, 1804, 556, 1805, 556, 1807, 556, 1809, 556, 556, 556, 1813, 556, 556, 556, 556, 556,
  61771. 0, 0, 0, 0, 0, 0, 580, 580, 2618, 580, 580, 556, 556, 556, 556, 1826, 556, 556, 556, 556, 1830, 556, 556,
  61772. 556, 556, 1834, 556, 556, 556, 556, 556, 3055, 556, 556, 556, 556, 556, 580, 580, 580, 3063, 580, 580,
  61773. 580, 580, 1724, 1915, 1819, 534, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580, 580, 0, 0, 2692, 0, 0,
  61774. 1836, 556, 556, 556, 556, 556, 556, 556, 556, 1844, 1845, 1847, 556, 556, 556, 556, 556, 0, 2297, 0, 0,
  61775. 580, 580, 580, 580, 580, 580, 580, 2667, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2653, 580, 580, 580,
  61776. 580, 2657, 580, 556, 556, 556, 1855, 1856, 1857, 556, 556, 1860, 1861, 556, 556, 556, 556, 556, 556, 0, 0,
  61777. 580, 580, 580, 2862, 580, 580, 580, 580, 556, 1869, 556, 556, 556, 1873, 556, 556, 556, 556, 556, 556,
  61778. 556, 1882, 556, 556, 0, 580, 580, 580, 580, 580, 580, 580, 1002, 580, 580, 580, 580, 580, 580, 3555, 3556,
  61779. 580, 580, 0, 0, 3559, 0, 534, 534, 1903, 580, 1905, 580, 580, 580, 1909, 580, 580, 580, 580, 580, 580,
  61780. 580, 580, 580, 580, 3528, 580, 580, 0, 0, 0, 1922, 580, 580, 580, 580, 1926, 580, 580, 580, 580, 1930,
  61781. 580, 1932, 580, 580, 580, 580, 580, 1524, 0, 1270, 1454, 1362, 534, 534, 534, 534, 534, 556, 1952, 1953,
  61782. 580, 580, 1956, 1957, 580, 580, 580, 580, 580, 580, 580, 1965, 580, 580, 534, 534, 556, 556, 580, 580,
  61783. 3321, 0, 0, 0, 3323, 0, 0, 0, 0, 0, 0, 2114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2605056, 0, 0, 0, 0, 2887680,
  61784. 580, 1969, 580, 580, 580, 580, 580, 580, 580, 1978, 580, 580, 580, 580, 580, 580, 0, 534, 580, 556, 534,
  61785. 534, 534, 534, 534, 556, 580, 580, 580, 1989, 534, 580, 556, 1766, 534, 1995, 534, 1861, 556, 1999, 556,
  61786. 1957, 580, 2003, 580, 0, 2005, 0, 0, 0, 0, 0, 2007, 0, 0, 0, 0, 0, 0, 0, 2702, 0, 0, 0, 0, 0, 0, 0, 2706,
  61787. 0, 2018, 0, 0, 2021, 2022, 0, 0, 0, 2026, 0, 0, 0, 0, 0, 0, 0, 414, 414, 0, 0, 0, 0, 0, 414, 0, 0, 0,
  61788. 2069, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 742, 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, 0, 2088, 0, 0, 0, 0, 0,
  61789. 0, 0, 451, 1147348, 1147348, 1147348, 1147348, 1147348, 1147348, 1147348, 1147348, 1147348, 1147348,
  61790. 1147348, 1147348, 1147348, 1147348, 1147348, 1147348, 2095, 0, 2097, 0, 0, 0, 0, 0, 0, 0, 0, 2106, 0, 0,
  61791. 0, 0, 0, 0, 0, 184725, 184925, 184925, 184925, 0, 184925, 184925, 184925, 184925, 184925, 184925, 0, 0, 0,
  61792. 0, 0, 184925, 0, 184925, 1, 12290, 534, 534, 534, 2153, 534, 2155, 534, 534, 534, 534, 534, 534, 534, 534,
  61793. 534, 534, 1746, 534, 534, 534, 534, 534, 534, 2204, 2205, 534, 534, 0, 0, 0, 0, 556, 556, 556, 556, 556,
  61794. 556, 556, 556, 556, 2558, 556, 556, 556, 556, 2238, 556, 2240, 556, 556, 556, 556, 556, 556, 556, 556,
  61795. 556, 556, 556, 2231, 556, 556, 556, 556, 556, 2291, 2292, 556, 556, 0, 0, 0, 0, 580, 580, 580, 580, 580,
  61796. 580, 580, 1506, 580, 580, 580, 580, 580, 1513, 580, 580, 580, 580, 2325, 580, 2327, 580, 580, 580, 580,
  61797. 580, 580, 580, 580, 580, 580, 580, 2318, 580, 580, 580, 580, 580, 2378, 2379, 580, 580, 2145, 2317, 2230,
  61798. 534, 2385, 534, 534, 556, 2389, 556, 556, 0, 580, 580, 580, 580, 580, 580, 997, 580, 580, 580, 580, 580,
  61799. 580, 2328, 580, 2330, 580, 580, 580, 580, 580, 580, 580, 2342, 580, 580, 580, 580, 580, 580, 580, 580,
  61800. 580, 1474, 580, 580, 580, 580, 580, 580, 580, 2393, 580, 580, 2005, 0, 2007, 0, 2009, 0, 2011, 0, 0, 0, 0,
  61801. 0, 0, 0, 2727, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1579, 0, 0, 0, 0, 0, 0, 0, 2437, 2438, 0, 0, 0, 0, 0, 0, 0, 0,
  61802. 0, 0, 0, 0, 0, 1089, 0, 0, 534, 2526, 534, 534, 534, 2531, 534, 534, 534, 534, 534, 534, 534, 2538, 534,
  61803. 534, 534, 534, 534, 534, 2169, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2782, 534, 534, 2785,
  61804. 534, 534, 534, 534, 534, 534, 534, 2543, 534, 534, 534, 534, 534, 534, 534, 534, 0, 2549, 556, 556, 2587,
  61805. 556, 556, 556, 556, 2591, 556, 556, 556, 2596, 556, 556, 556, 556, 556, 0, 2615, 0, 0, 0, 0, 580, 580,
  61806. 580, 580, 580, 534, 556, 580, 0, 0, 0, 0, 0, 0, 0, 3386, 556, 556, 556, 2603, 556, 556, 556, 556, 556,
  61807. 556, 556, 556, 2609, 556, 556, 556, 556, 556, 556, 3042, 556, 3044, 556, 556, 556, 556, 556, 556, 556,
  61808. 1404, 556, 556, 1411, 556, 556, 556, 556, 556, 580, 580, 580, 2623, 580, 580, 580, 580, 580, 580, 580,
  61809. 580, 580, 580, 580, 580, 1451, 580, 580, 580, 580, 580, 580, 2635, 580, 2637, 580, 580, 580, 580, 580,
  61810. 580, 580, 580, 580, 580, 1914, 580, 580, 580, 580, 580, 580, 580, 2662, 580, 580, 580, 580, 580, 580, 580,
  61811. 2669, 580, 580, 580, 580, 580, 580, 2895, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1046, 0, 0, 0, 534,
  61812. 580, 556, 580, 580, 580, 2675, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580, 556, 534, 2913, 556,
  61813. 2915, 580, 534, 534, 534, 2798, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3348,
  61814. 534, 556, 556, 556, 556, 556, 2846, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2245, 556, 556,
  61815. 556, 556, 0, 2943, 2944, 0, 2945, 0, 2947, 0, 0, 0, 0, 2949, 0, 0, 0, 0, 0, 0, 0, 225883, 225883, 225883,
  61816. 225883, 225734, 225883, 225883, 225883, 225883, 225883, 225883, 225734, 225734, 225734, 225734, 225734,
  61817. 225899, 225734, 225899, 1, 12290, 2968, 2969, 0, 2971, 0, 0, 2974, 0, 0, 0, 2977, 534, 534, 534, 534, 534,
  61818. 0, 0, 0, 0, 556, 2214, 556, 556, 556, 556, 556, 0, 0, 0, 0, 0, 0, 580, 2617, 580, 580, 580, 534, 2984,
  61819. 534, 534, 534, 534, 534, 2988, 534, 534, 534, 534, 534, 534, 534, 2994, 534, 534, 534, 534, 534, 3000,
  61820. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1763, 534, 534, 534, 534, 534, 3009, 3011, 534, 534,
  61821. 534, 3014, 534, 3016, 3017, 534, 556, 556, 556, 556, 556, 556, 0, 0, 580, 2861, 580, 580, 580, 580, 580,
  61822. 580, 0, 1267, 1451, 1359, 534, 534, 534, 1530, 534, 556, 3024, 556, 556, 556, 556, 556, 3028, 556, 556,
  61823. 556, 556, 556, 556, 556, 3034, 556, 556, 556, 556, 556, 3185, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61824. 556, 2229, 556, 556, 2233, 556, 556, 556, 556, 556, 556, 3040, 556, 556, 3043, 556, 556, 556, 556, 556,
  61825. 556, 556, 556, 1829, 556, 556, 556, 556, 556, 556, 556, 3050, 3052, 556, 556, 556, 556, 3056, 556, 3058,
  61826. 3059, 556, 580, 580, 580, 580, 580, 580, 3083, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2331, 580,
  61827. 580, 580, 580, 2335, 580, 580, 3066, 580, 580, 580, 580, 580, 3070, 580, 580, 580, 580, 580, 580, 580,
  61828. 3076, 580, 3092, 3094, 580, 580, 580, 580, 3098, 580, 3100, 3101, 580, 534, 580, 556, 534, 534, 534, 534,
  61829. 534, 887, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556, 0, 0, 0, 2299, 580, 580, 580, 580, 580, 580,
  61830. 580, 3084, 580, 3086, 580, 580, 580, 580, 580, 580, 3106, 556, 3108, 580, 3110, 0, 0, 0, 0, 0, 0, 3116, 0,
  61831. 0, 3119, 0, 0, 0, 0, 364, 364, 0, 0, 0, 0, 0, 1096, 0, 0, 0, 0, 0, 0, 0, 286720, 0, 0, 0, 0, 0, 0, 0, 0,
  61832. 0, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3140, 3141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2107, 0, 0, 0, 556,
  61833. 556, 556, 556, 3184, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2272, 556, 556, 556, 556, 556,
  61834. 556, 556, 3195, 556, 556, 556, 556, 556, 556, 556, 556, 3203, 556, 556, 556, 556, 556, 556, 3197, 556,
  61835. 556, 556, 556, 556, 556, 556, 556, 556, 2594, 556, 556, 556, 556, 556, 556, 556, 556, 556, 580, 580, 580,
  61836. 3208, 580, 580, 580, 580, 580, 580, 580, 3213, 580, 580, 580, 580, 1907, 580, 580, 580, 580, 580, 580,
  61837. 580, 580, 1918, 580, 580, 580, 580, 580, 3096, 580, 580, 3099, 580, 580, 580, 534, 580, 556, 534, 534,
  61838. 534, 534, 534, 534, 3278, 534, 534, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3515, 556, 556,
  61839. 580, 556, 3296, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3214, 3326,
  61840. 3327, 0, 3132, 0, 3331, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 2766, 534, 534, 534, 534, 534, 2771, 534, 534,
  61841. 534, 3405, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 960, 556, 556, 556, 556, 556, 3420,
  61842. 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1452, 580, 580, 580, 580, 580, 3436, 580,
  61843. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3502, 534, 534, 534, 534,
  61844. 534, 3450, 534, 534, 534, 534, 534, 534, 534, 534, 556, 556, 556, 3281, 556, 556, 556, 3284, 556, 556,
  61845. 556, 3463, 556, 556, 556, 556, 556, 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 3302, 580, 580, 580,
  61846. 580, 580, 580, 580, 3477, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3486, 3487, 0, 0, 0, 0, 364, 364,
  61847. 0, 0, 0, 0, 1137, 1095, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 266240, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 0, 3493,
  61848. 3494, 3495, 534, 534, 534, 3498, 534, 3500, 534, 534, 534, 534, 534, 534, 534, 3269, 534, 534, 534, 534,
  61849. 534, 534, 534, 534, 534, 2781, 534, 534, 534, 534, 534, 534, 534, 3505, 3506, 3507, 556, 556, 556, 3510,
  61850. 556, 3512, 556, 556, 556, 556, 3517, 3518, 3519, 3520, 580, 580, 580, 3523, 580, 3525, 580, 580, 580, 580,
  61851. 3530, 0, 0, 0, 0, 0, 0, 1687, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 783, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3562,
  61852. 534, 534, 534, 3566, 556, 556, 3568, 556, 556, 556, 3572, 556, 580, 580, 3574, 580, 580, 580, 3578, 580,
  61853. 0, 0, 0, 534, 534, 534, 534, 534, 534, 556, 556, 580, 580, 0, 3111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 398, 0,
  61854. 0, 0, 0, 0, 0, 0, 0, 328, 329, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2409, 0, 0, 0, 0, 368, 0, 0, 0, 0, 0,
  61855. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1629, 0, 0, 0, 0, 368, 0, 0, 0, 376, 378, 0, 0, 0, 0, 0, 0, 0, 0, 2025, 0, 0,
  61856. 0, 0, 0, 0, 0, 0, 2047, 0, 0, 0, 0, 0, 0, 0, 0, 2087, 0, 0, 0, 0, 0, 0, 0, 0, 2127, 0, 0, 534, 534, 534,
  61857. 534, 534, 0, 0, 411, 0, 0, 0, 411, 69632, 73728, 0, 368, 368, 0, 423, 65536, 368, 0, 0, 368, 423, 492,
  61858. 496, 492, 492, 501, 492, 492, 492, 501, 492, 423, 423, 329, 423, 0, 0, 423, 423, 0, 0, 0, 0, 0, 0, 0, 0,
  61859. 0, 2048, 0, 0, 0, 0, 0, 0, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423,
  61860. 540, 563, 540, 563, 540, 540, 563, 540, 587, 563, 563, 563, 563, 563, 563, 563, 587, 587, 587, 540, 587,
  61861. 587, 587, 587, 587, 587, 587, 563, 563, 540, 563, 587, 563, 587, 1, 12290, 0, 769, 0, 0, 0, 0, 0, 0, 0, 0,
  61862. 0, 0, 0, 0, 0, 0, 1644, 0, 556, 556, 556, 556, 933, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61863. 2285, 556, 2287, 556, 556, 0, 0, 1207, 0, 1096, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2447, 0, 0, 0, 534,
  61864. 534, 534, 534, 1260, 534, 534, 534, 534, 534, 1272, 534, 534, 534, 534, 534, 0, 0, 0, 2212, 556, 556, 556,
  61865. 556, 556, 556, 556, 3029, 556, 556, 556, 556, 556, 556, 556, 556, 3030, 556, 556, 556, 556, 556, 556, 556,
  61866. 534, 534, 534, 1341, 901, 556, 556, 556, 556, 556, 556, 556, 556, 1352, 556, 556, 0, 580, 580, 580, 580,
  61867. 580, 580, 998, 580, 580, 580, 580, 580, 580, 2650, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2315, 580,
  61868. 2317, 580, 580, 580, 580, 556, 556, 556, 1364, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61869. 1378, 1380, 556, 556, 556, 556, 556, 1871, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61870. 1413, 556, 556, 1417, 534, 534, 534, 534, 534, 3567, 556, 556, 556, 556, 556, 556, 556, 3573, 580, 580,
  61871. 580, 580, 580, 2677, 580, 580, 580, 580, 580, 580, 534, 580, 556, 534, 534, 534, 534, 556, 556, 556, 556,
  61872. 580, 534, 3597, 556, 556, 556, 3599, 580, 580, 580, 0, 534, 534, 556, 556, 580, 580, 0, 0, 0, 3243, 0, 0,
  61873. 0, 0, 0, 0, 0, 657, 0, 0, 0, 0, 0, 0, 0, 0, 306, 306, 306, 0, 0, 0, 0, 0, 424, 424, 0, 424, 433, 0, 424,
  61874. 424, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 460, 486,
  61875. 486, 460, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486, 486,
  61876. 486, 486, 486, 486, 486, 541, 564, 541, 564, 541, 541, 564, 541, 588, 564, 564, 564, 564, 564, 564, 564,
  61877. 588, 588, 588, 541, 588, 588, 588, 588, 588, 588, 588, 564, 564, 541, 564, 588, 564, 588, 1, 12290, 78114,
  61878. 1066, 0, 0, 1069, 1073, 0, 0, 1077, 1081, 0, 0, 0, 0, 0, 0, 0, 703, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2104, 0, 0,
  61879. 0, 0, 0, 0, 0, 0, 0, 0, 1194, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2472, 0, 0, 0, 0, 1670, 0, 0, 0, 0, 0,
  61880. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1667, 0, 0, 0, 0, 0, 2044, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2704, 0, 0, 0,
  61881. 0, 2068, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1681, 1682, 2392, 580, 580, 580, 0, 0, 0, 0, 0, 0, 0,
  61882. 0, 0, 0, 0, 0, 0, 0, 2928, 0, 0, 0, 2932, 0, 0, 0, 0, 0, 2938, 0, 0, 0, 0, 0, 0, 0, 719, 0, 0, 0, 0, 0, 0,
  61883. 0, 0, 0, 721, 0, 0, 0, 0, 0, 0, 2953, 0, 0, 2956, 0, 0, 0, 0, 0, 2961, 0, 0, 0, 0, 0, 0, 0, 748, 0, 0, 0,
  61884. 0, 0, 0, 0, 0, 333, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1204, 2995, 534, 534, 534, 534, 534, 534,
  61885. 534, 534, 534, 3004, 534, 534, 534, 534, 534, 0, 0, 2211, 0, 556, 556, 556, 556, 556, 556, 556, 2268, 556,
  61886. 556, 556, 556, 2273, 556, 556, 556, 534, 534, 534, 3012, 534, 534, 3015, 534, 534, 534, 3018, 556, 556,
  61887. 556, 556, 556, 0, 0, 0, 0, 580, 580, 580, 580, 580, 580, 580, 556, 556, 534, 556, 580, 556, 580, 1, 12290,
  61888. 556, 556, 556, 556, 3054, 556, 556, 3057, 556, 556, 556, 3060, 580, 580, 580, 580, 0, 0, 0, 0, 0, 0, 0, 0,
  61889. 2396, 0, 0, 0, 3077, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3087, 580, 580, 580, 580, 0, 0, 0,
  61890. 0, 0, 0, 3442, 0, 3444, 0, 534, 534, 0, 3120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2015, 0, 0, 534,
  61891. 534, 3151, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3458, 556, 556, 534, 534, 534,
  61892. 534, 3163, 534, 534, 534, 534, 534, 534, 534, 3168, 534, 3170, 534, 534, 534, 534, 534, 1261, 534, 534,
  61893. 534, 1270, 534, 534, 534, 534, 534, 534, 534, 2493, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2196,
  61894. 534, 534, 534, 534, 534, 534, 556, 556, 556, 580, 580, 3207, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61895. 580, 1962, 580, 580, 580, 580, 580, 580, 3227, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534,
  61896. 580, 556, 2912, 534, 2914, 556, 2916, 3275, 534, 534, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556,
  61897. 556, 556, 556, 580, 580, 580, 556, 556, 3287, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3293, 556, 556,
  61898. 556, 556, 556, 556, 3466, 556, 556, 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61899. 3306, 3587, 3588, 556, 556, 580, 580, 3591, 3592, 580, 580, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534,
  61900. 534, 534, 1716, 534, 534, 534, 0, 683, 684, 0, 0, 0, 0, 689, 0, 0, 0, 364, 364, 364, 0, 0, 0, 0, 0, 534,
  61901. 830, 534, 534, 534, 534, 534, 534, 860, 534, 534, 534, 534, 534, 534, 2180, 2181, 534, 534, 534, 534, 534,
  61902. 534, 2188, 534, 0, 751, 0, 0, 0, 0, 0, 751, 751, 0, 0, 816, 0, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0,
  61903. 0, 1134592, 0, 0, 0, 0, 970, 556, 0, 580, 580, 580, 580, 988, 580, 580, 580, 580, 580, 580, 580, 580,
  61904. 1044, 580, 0, 0, 0, 841, 988, 914, 534, 534, 534, 534, 897, 556, 556, 556, 556, 970, 0, 580, 580, 580,
  61905. 580, 1044, 0, 0, 0, 1145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2408448, 0, 0, 534, 1318, 534, 534, 534,
  61906. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 0, 2549, 1696, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61907. 0, 0, 0, 1190, 580, 580, 1988, 580, 534, 580, 556, 534, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580,
  61908. 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2122, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534,
  61909. 2768, 534, 2769, 534, 534, 2540, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 0, 0, 0,
  61910. 0, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 0, 0, 975, 580, 0, 3129, 0, 0, 0, 0, 0, 0,
  61911. 0, 0, 0, 0, 0, 0, 0, 0, 2053, 0, 3235, 534, 3237, 556, 3239, 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3124,
  61912. 3125, 0, 0, 0, 556, 556, 556, 3298, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2359, 580,
  61913. 580, 580, 580, 3317, 580, 534, 534, 556, 556, 580, 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2076, 0, 0, 0, 0, 0, 0,
  61914. 461, 461, 479, 487, 487, 479, 487, 487, 487, 487, 487, 487, 487, 487, 512, 520, 520, 520, 520, 520, 520,
  61915. 520, 520, 520, 520, 520, 520, 520, 520, 529, 520, 520, 520, 520, 520, 542, 565, 542, 565, 542, 542, 565,
  61916. 542, 589, 565, 565, 565, 565, 565, 565, 565, 589, 589, 589, 542, 589, 589, 589, 589, 589, 589, 589, 565,
  61917. 565, 542, 565, 589, 565, 589, 1, 12290, 0, 0, 760, 0, 0, 764, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3132, 0, 0,
  61918. 0, 0, 0, 778, 0, 0, 0, 0, 0, 0, 0, 782, 0, 0, 0, 0, 0, 0, 0, 779, 0, 0, 0, 0, 788, 0, 0, 0, 0, 0, 0, 800,
  61919. 0, 0, 0, 0, 0, 0, 805, 0, 0, 0, 782, 0, 0, 0, 0, 364, 364, 0, 0, 0, 1136, 0, 0, 0, 0, 0, 0, 0, 1606, 0, 0,
  61920. 0, 0, 0, 0, 0, 0, 553, 576, 553, 576, 553, 553, 576, 553, 0, 805, 0, 0, 0, 0, 0, 805, 805, 0, 0, 0, 0,
  61921. 782, 0, 0, 0, 0, 0, 534, 831, 534, 534, 534, 846, 534, 534, 534, 534, 534, 0, 2210, 0, 0, 556, 556, 556,
  61922. 556, 556, 556, 556, 1893, 26009, 0, 1898, 580, 1900, 580, 1901, 580, 0, 0, 0, 0, 823, 778, 0, 0, 823, 0,
  61923. 0, 0, 0, 0, 0, 0, 0, 2468, 0, 0, 0, 0, 0, 0, 0, 0, 2022, 0, 2116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 823, 534,
  61924. 534, 534, 534, 844, 534, 852, 534, 534, 534, 534, 0, 0, 556, 556, 556, 556, 556, 2815, 556, 2816, 556,
  61925. 556, 917, 556, 925, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2583, 556, 971,
  61926. 556, 0, 580, 580, 580, 580, 580, 991, 580, 999, 580, 580, 580, 580, 580, 580, 3097, 580, 580, 580, 580,
  61927. 580, 534, 580, 556, 534, 534, 534, 534, 1054, 898, 556, 556, 556, 1059, 971, 0, 580, 580, 580, 1064, 1045,
  61928. 0, 1159, 0, 0, 0, 0, 0, 0, 0, 1167, 0, 0, 0, 0, 0, 0, 0, 789, 0, 0, 0, 0, 0, 0, 770, 0, 0, 0, 1219, 0, 0,
  61929. 0, 0, 0, 0, 0, 0, 1224, 0, 0, 0, 0, 0, 0, 0, 1134592, 0, 364, 0, 0, 0, 1134592, 0, 0, 0, 1134592, 1134592,
  61930. 0, 0, 1134592, 0, 0, 1134592, 0, 1134592, 534, 534, 1284, 534, 534, 534, 534, 534, 534, 534, 1292, 534,
  61931. 534, 534, 534, 534, 0, 2209, 0, 0, 556, 556, 556, 556, 556, 556, 556, 1842, 556, 556, 556, 556, 556, 556,
  61932. 556, 556, 26009, 1896, 580, 580, 580, 580, 580, 580, 534, 534, 534, 1321, 534, 534, 1325, 534, 534, 534,
  61933. 534, 534, 1331, 534, 534, 534, 534, 534, 534, 534, 3342, 534, 3344, 534, 534, 534, 534, 534, 556, 1338,
  61934. 534, 534, 1341, 901, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2568, 556, 556, 556, 556, 556,
  61935. 1357, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1376, 556, 556, 556, 556, 556, 0, 2615, 0, 0, 0, 0,
  61936. 580, 580, 580, 2619, 580, 556, 556, 556, 1384, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61937. 1816, 1817, 556, 556, 580, 580, 580, 1522, 580, 580, 0, 534, 580, 556, 534, 534, 534, 534, 534, 556, 556,
  61938. 556, 556, 556, 3196, 556, 3198, 556, 556, 556, 556, 556, 556, 556, 556, 1878, 1879, 556, 556, 556, 556,
  61939. 556, 556, 534, 534, 534, 534, 1773, 534, 534, 534, 534, 534, 534, 1781, 534, 534, 534, 534, 0, 0, 556,
  61940. 556, 556, 2813, 556, 556, 556, 556, 556, 2818, 556, 556, 1823, 556, 556, 556, 556, 556, 556, 556, 556,
  61941. 556, 556, 556, 556, 556, 556, 2842, 556, 556, 556, 1853, 556, 556, 556, 556, 1859, 556, 556, 556, 556,
  61942. 556, 556, 556, 556, 2840, 556, 556, 556, 556, 556, 556, 556, 1868, 556, 556, 556, 556, 556, 556, 1876,
  61943. 556, 556, 556, 556, 556, 556, 556, 556, 2850, 556, 556, 556, 556, 556, 556, 556, 556, 1886, 1888, 556,
  61944. 556, 556, 556, 556, 26009, 0, 580, 580, 580, 580, 580, 580, 0, 1525, 1526, 1527, 534, 534, 1529, 534, 534,
  61945. 556, 580, 580, 580, 1955, 580, 580, 580, 580, 580, 580, 580, 580, 1964, 580, 580, 580, 580, 580, 1940,
  61946. 1941, 1943, 580, 580, 580, 580, 580, 580, 580, 1951, 580, 580, 580, 1972, 580, 580, 580, 580, 580, 580,
  61947. 580, 580, 580, 1982, 1984, 580, 580, 580, 580, 1925, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61948. 580, 2372, 580, 2374, 580, 580, 0, 0, 0, 2057, 0, 0, 0, 0, 0, 2063, 0, 0, 0, 0, 0, 0, 0, 1089, 0, 0, 0, 0,
  61949. 1241, 1242, 0, 0, 0, 0, 0, 0, 2071, 0, 0, 0, 0, 0, 0, 0, 0, 2079, 0, 0, 0, 0, 0, 534, 833, 534, 534, 534,
  61950. 534, 534, 534, 534, 534, 534, 1306, 534, 534, 534, 534, 534, 534, 2134, 534, 534, 534, 534, 534, 534, 534,
  61951. 534, 534, 534, 534, 2146, 534, 534, 534, 534, 534, 534, 534, 3453, 534, 534, 534, 534, 534, 556, 556, 556,
  61952. 556, 556, 556, 2826, 556, 556, 556, 556, 556, 556, 556, 556, 556, 949, 556, 556, 556, 556, 967, 556, 2189,
  61953. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1314, 2203, 534, 534, 534, 534,
  61954. 0, 0, 0, 0, 556, 556, 556, 556, 556, 556, 2219, 2290, 556, 556, 556, 556, 0, 0, 0, 0, 580, 580, 580, 580,
  61955. 580, 580, 2306, 2377, 580, 580, 580, 580, 2146, 2318, 2231, 534, 534, 534, 534, 556, 556, 556, 556, 580,
  61956. 580, 580, 580, 0, 534, 534, 556, 556, 580, 580, 0, 0, 0, 0, 0, 0, 3246, 0, 0, 0, 0, 0, 2413, 2414, 0, 0,
  61957. 2417, 0, 2419, 0, 0, 0, 0, 0, 0, 0, 0, 2712, 0, 0, 0, 0, 0, 0, 0, 0, 2728, 0, 0, 0, 0, 0, 0, 0, 0, 2429,
  61958. 0, 0, 0, 0, 0, 0, 0, 0, 2406, 0, 0, 0, 0, 0, 0, 0, 0, 2454, 0, 0, 0, 0, 0, 0, 0, 0, 1587, 0, 0, 0, 0, 0,
  61959. 0, 0, 1595, 1596, 0, 0, 0, 2424, 0, 0, 2427, 0, 0, 0, 0, 0, 0, 2431, 0, 0, 0, 0, 0, 0, 0, 1159168, 0,
  61960. 1159168, 0, 0, 0, 0, 1159168, 1159168, 0, 0, 0, 2452, 0, 0, 0, 0, 0, 0, 0, 2456, 2457, 0, 0, 2460, 0, 0,
  61961. 2463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2473, 0, 0, 0, 0, 0, 639, 0, 0, 0, 0, 644, 645, 646, 647, 648, 649,
  61962. 534, 2487, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3008, 534, 534, 534,
  61963. 2515, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1293, 534, 534, 534, 534, 2527, 534,
  61964. 534, 534, 534, 534, 534, 2534, 534, 534, 534, 534, 534, 534, 534, 534, 3343, 534, 534, 534, 534, 534, 534,
  61965. 556, 534, 534, 2541, 534, 534, 534, 2544, 534, 534, 534, 534, 534, 534, 534, 0, 0, 0, 0, 556, 556, 556,
  61966. 556, 2217, 556, 556, 556, 2574, 556, 556, 556, 556, 556, 556, 2579, 556, 556, 556, 556, 556, 556, 556,
  61967. 1427, 1428, 556, 556, 556, 26009, 1341, 975, 580, 2585, 556, 556, 556, 556, 556, 556, 2592, 556, 556, 556,
  61968. 556, 556, 556, 2599, 556, 556, 556, 556, 556, 3290, 556, 556, 556, 556, 3291, 3292, 556, 556, 556, 556,
  61969. 556, 0, 0, 2298, 0, 580, 580, 580, 580, 580, 580, 580, 2886, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  61970. 3312, 580, 580, 580, 580, 580, 580, 2673, 580, 580, 580, 2676, 580, 580, 580, 580, 580, 580, 580, 2681,
  61971. 2682, 2683, 534, 534, 534, 534, 534, 1289, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2185,
  61972. 534, 534, 534, 534, 2720, 2721, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2080, 0, 0, 0, 2736, 0, 0, 0, 0,
  61973. 0, 0, 0, 0, 0, 0, 2746, 0, 0, 0, 0, 0, 667, 0, 0, 0, 0, 0, 729, 0, 780, 0, 0, 0, 0, 0, 305, 0, 0, 0, 0, 0,
  61974. 0, 0, 0, 0, 0, 0, 1565, 0, 0, 0, 0, 0, 0, 2751, 0, 0, 0, 2753, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2109, 534,
  61975. 534, 534, 534, 534, 2787, 2788, 534, 534, 534, 534, 2791, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  61976. 556, 556, 3178, 556, 556, 556, 556, 2796, 534, 534, 534, 2799, 534, 2801, 534, 534, 534, 534, 534, 534,
  61977. 2805, 534, 534, 534, 534, 534, 534, 2492, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1745, 534, 534,
  61978. 534, 534, 534, 534, 2834, 2835, 556, 556, 556, 556, 2838, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  61979. 2257, 556, 556, 556, 556, 556, 556, 556, 2844, 556, 556, 556, 2847, 556, 2849, 556, 556, 556, 556, 556,
  61980. 556, 556, 2854, 580, 2867, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1949,
  61981. 580, 580, 580, 2883, 2884, 580, 580, 580, 580, 2887, 580, 580, 580, 580, 580, 580, 580, 1928, 580, 580,
  61982. 580, 580, 580, 580, 580, 580, 1912, 1913, 580, 580, 580, 580, 1920, 580, 580, 580, 580, 2893, 580, 580,
  61983. 580, 2896, 580, 2898, 580, 580, 580, 580, 580, 580, 1190, 534, 580, 556, 534, 534, 534, 534, 534, 556,
  61984. 580, 2903, 580, 580, 580, 580, 580, 580, 534, 580, 556, 534, 534, 556, 556, 580, 580, 0, 0, 3242, 0, 0, 0,
  61985. 0, 0, 0, 0, 0, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 225734, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  61986. 366, 0, 0, 0, 0, 0, 0, 580, 2918, 0, 0, 2921, 2922, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3132, 0, 0, 3255, 0,
  61987. 534, 534, 534, 534, 2986, 534, 534, 534, 534, 534, 534, 534, 2992, 534, 534, 534, 534, 534, 534, 891, 534,
  61988. 534, 534, 534, 556, 556, 556, 556, 556, 0, 0, 0, 0, 580, 580, 2302, 580, 580, 580, 580, 556, 556, 556,
  61989. 3026, 556, 556, 556, 556, 556, 556, 556, 3032, 556, 556, 556, 556, 556, 556, 1841, 556, 556, 556, 556,
  61990. 556, 556, 556, 556, 556, 3357, 556, 3359, 556, 556, 556, 556, 580, 580, 580, 580, 3068, 580, 580, 580,
  61991. 580, 580, 580, 580, 3074, 580, 580, 580, 580, 580, 2311, 580, 580, 2314, 580, 580, 580, 580, 580, 580,
  61992. 2322, 3138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1191, 3247, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3132,
  61993. 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 2767, 534, 534, 534, 534, 534, 534, 534, 534, 3265, 534,
  61994. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1341, 0, 556, 556, 534, 534, 3276, 534, 534, 534,
  61995. 534, 534, 556, 556, 556, 556, 556, 556, 3283, 556, 556, 556, 556, 556, 3299, 580, 580, 580, 580, 580, 580,
  61996. 580, 3304, 580, 580, 580, 580, 580, 3479, 580, 3481, 580, 580, 3483, 580, 580, 0, 0, 0, 0, 0, 0, 1210, 0,
  61997. 0, 0, 0, 0, 0, 0, 0, 0, 0, 2421, 0, 0, 0, 0, 0, 3132, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 534,
  61998. 3399, 534, 3401, 3402, 534, 3404, 534, 556, 556, 556, 556, 556, 556, 556, 556, 3414, 556, 3416, 3417, 556,
  61999. 3419, 556, 3421, 580, 580, 580, 580, 580, 580, 580, 580, 3430, 580, 3432, 3433, 580, 3435, 580, 3437, 0,
  62000. 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 3499, 534, 3501, 534, 534, 580, 580, 580,
  62001. 3553, 580, 3554, 580, 580, 580, 580, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 3538, 534, 3539, 534, 534,
  62002. 534, 3604, 3605, 3606, 534, 556, 580, 534, 556, 580, 534, 556, 580, 0, 0, 0, 0, 0, 0, 0, 3211264, 0, 0, 0,
  62003. 2179072, 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 2125824,
  62004. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  62005. 2125824, 3117056, 2125824, 2125824, 2125824, 2125824, 590, 566, 566, 566, 566, 566, 566, 566, 590, 590,
  62006. 590, 543, 590, 590, 590, 590, 590, 590, 590, 566, 566, 543, 566, 590, 566, 590, 1, 12290, 556, 556, 1398,
  62007. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2853, 556, 0, 0, 730, 0, 0, 0, 0, 0,
  62008. 0, 0, 0, 0, 0, 0, 0, 0, 1126, 1127, 0, 534, 534, 534, 534, 2138, 534, 534, 534, 534, 534, 534, 534, 534,
  62009. 534, 534, 534, 534, 2784, 534, 534, 534, 556, 556, 556, 2223, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62010. 556, 556, 556, 1849, 556, 556, 556, 580, 580, 580, 2310, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62011. 580, 580, 1490, 580, 580, 580, 402, 0, 0, 0, 0, 380, 0, 69632, 73728, 0, 0, 0, 0, 425, 65536, 0, 0, 0, 0,
  62012. 364, 364, 1133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3133, 0, 0, 0, 3136, 0, 425, 425, 0, 425, 0, 439, 425, 425,
  62013. 462, 462, 462, 469, 462, 462, 462, 462, 462, 462, 462, 462, 469, 462, 462, 462, 462, 462, 462, 462, 462,
  62014. 476, 462, 488, 488, 462, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488,
  62015. 488, 488, 488, 488, 488, 488, 488, 531, 544, 567, 544, 567, 544, 544, 567, 544, 591, 567, 567, 567, 567,
  62016. 567, 567, 567, 591, 591, 591, 544, 591, 591, 591, 591, 591, 591, 591, 567, 567, 544, 567, 591, 567, 591,
  62017. 1, 12290, 0, 0, 0, 653, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2939, 0, 0, 2941, 0, 0, 0, 654, 0, 654,
  62018. 0, 0, 0, 0, 814, 0, 0, 0, 654, 0, 0, 0, 0, 374, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 2130, 534, 534, 534,
  62019. 556, 919, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 957, 556, 556, 556, 556, 556, 556, 3545, 556,
  62020. 3546, 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 0, 0, 0, 534, 534, 534, 534, 534, 534, 556, 556,
  62021. 534, 534, 884, 534, 534, 556, 556, 957, 556, 556, 0, 580, 580, 1031, 580, 580, 580, 580, 580, 2907, 580,
  62022. 580, 534, 580, 556, 534, 534, 556, 556, 580, 580, 0, 0, 0, 0, 0, 0, 0, 3117, 0, 0, 0, 290, 1066, 0, 0,
  62023. 1069, 1073, 0, 0, 1077, 1081, 0, 0, 0, 0, 0, 0, 0, 1094, 0, 0, 0, 0, 0, 0, 0, 0, 0, 192965, 192965,
  62024. 192965, 192965, 192965, 192965, 192965, 192965, 0, 0, 0, 1088, 1089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62025. 131072, 131072, 0, 0, 0, 1130, 0, 0, 364, 364, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3132, 0, 3254, 0, 0, 1089,
  62026. 1088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2093, 0, 1088, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534,
  62027. 1253, 534, 534, 534, 534, 534, 1303, 534, 534, 1305, 534, 534, 534, 1309, 534, 534, 534, 0, 901, 556, 556,
  62028. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3549, 580, 580, 580, 534, 534, 534, 534, 1287, 534, 534,
  62029. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2804, 534, 534, 2807, 534, 534, 1320, 534, 534, 534,
  62030. 534, 534, 534, 534, 534, 534, 534, 534, 1334, 534, 534, 534, 534, 534, 1323, 534, 534, 534, 534, 534, 534,
  62031. 534, 534, 534, 534, 534, 2509, 534, 534, 534, 534, 534, 534, 534, 1341, 901, 556, 1344, 556, 556, 556,
  62032. 556, 556, 556, 556, 556, 556, 2283, 556, 556, 556, 556, 556, 556, 556, 556, 1358, 1365, 556, 556, 556,
  62033. 556, 556, 556, 556, 556, 556, 1379, 556, 556, 0, 580, 580, 580, 985, 989, 992, 580, 1000, 580, 580, 580,
  62034. 1015, 1017, 556, 556, 556, 1399, 556, 556, 556, 556, 556, 556, 556, 1412, 556, 556, 556, 556, 556, 556,
  62035. 1858, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1402, 556, 556, 556, 556, 556, 556, 556, 1416, 556,
  62036. 1436, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1450, 1457, 580, 580, 580, 580, 580, 3069,
  62037. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1510, 580, 580, 580, 580, 580, 580, 1518, 580, 580, 580,
  62038. 580, 0, 1266, 1450, 1358, 534, 534, 1320, 534, 534, 556, 556, 556, 556, 556, 3354, 556, 556, 556, 556,
  62039. 556, 556, 3360, 556, 556, 556, 556, 556, 556, 2615, 0, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2626,
  62040. 580, 580, 580, 580, 580, 580, 556, 1412, 556, 556, 580, 580, 1504, 580, 580, 1066, 0, 0, 0, 0, 0, 0, 0,
  62041. 1107, 0, 0, 0, 0, 0, 0, 0, 0, 658, 0, 0, 661, 0, 0, 0, 0, 1570, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62042. 0, 1228, 1721, 1722, 534, 534, 534, 534, 1729, 534, 534, 534, 534, 534, 534, 534, 534, 534, 556, 3177,
  62043. 556, 556, 556, 3180, 556, 534, 1770, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62044. 1311, 534, 556, 556, 1824, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3204,
  62045. 556, 556, 556, 1838, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3294, 556, 580,
  62046. 1987, 580, 580, 534, 580, 556, 534, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580, 580, 0, 0, 0, 0,
  62047. 2694, 2029, 0, 2030, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2039, 0, 0, 0, 0, 0, 0, 1700, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62048. 298, 0, 0, 0, 0, 0, 0, 534, 534, 2190, 534, 534, 534, 534, 534, 2195, 534, 534, 534, 534, 534, 534, 534,
  62049. 1326, 534, 534, 534, 534, 534, 534, 534, 534, 1291, 534, 534, 534, 534, 534, 534, 534, 556, 2276, 556,
  62050. 556, 556, 556, 556, 556, 2282, 556, 556, 556, 556, 556, 556, 556, 1810, 556, 556, 556, 556, 556, 556, 556,
  62051. 556, 3188, 556, 556, 556, 556, 556, 556, 556, 580, 2363, 580, 580, 580, 580, 580, 580, 2369, 580, 580,
  62052. 580, 580, 580, 580, 580, 2329, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3557, 0, 0, 0, 0, 534, 534,
  62053. 580, 580, 2634, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1948, 580, 580, 0, 0, 0,
  62054. 0, 2699, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163840, 0, 0, 0, 534, 534, 534, 534, 534, 2778, 534, 534,
  62055. 534, 534, 534, 534, 534, 534, 534, 534, 1779, 534, 534, 534, 534, 534, 534, 2809, 534, 534, 0, 0, 556,
  62056. 556, 556, 556, 556, 556, 556, 556, 2817, 556, 556, 556, 556, 556, 3465, 556, 3467, 556, 556, 3469, 556,
  62057. 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3373, 580, 3375, 580, 556, 556, 556, 2858, 556,
  62058. 556, 0, 0, 580, 580, 580, 580, 580, 580, 580, 580, 1445, 580, 580, 580, 1454, 580, 580, 580, 2866, 580,
  62059. 580, 580, 580, 580, 580, 2874, 580, 580, 580, 580, 580, 580, 580, 580, 1473, 580, 580, 580, 580, 580, 580,
  62060. 580, 534, 2996, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1767, 1768, 3036,
  62061. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2275, 580, 3078, 580, 580, 580,
  62062. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1966, 580, 0, 0, 0, 0, 3130, 0, 0, 0, 0, 0, 0, 0,
  62063. 0, 0, 0, 0, 0, 167936, 0, 0, 0, 534, 534, 3174, 534, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556,
  62064. 556, 556, 1828, 556, 556, 556, 556, 556, 556, 556, 556, 26009, 0, 580, 580, 580, 580, 580, 580, 0, 0, 0,
  62065. 0, 3535, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2991, 534, 534, 534, 3542, 556, 556,
  62066. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3550, 580, 580, 580, 580, 580, 3082, 580, 580, 3085,
  62067. 580, 580, 580, 580, 580, 580, 580, 1911, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3072, 580, 580, 580,
  62068. 580, 580, 580, 463, 463, 463, 447, 447, 463, 447, 447, 447, 447, 447, 447, 447, 447, 513, 513, 513, 513,
  62069. 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 513, 545, 568, 545, 568, 545, 545, 568, 545, 592,
  62070. 568, 568, 568, 568, 568, 568, 568, 592, 592, 592, 545, 592, 592, 592, 592, 592, 592, 592, 568, 568, 545,
  62071. 568, 592, 568, 592, 1, 12290, 0, 0, 0, 655, 0, 655, 0, 0, 0, 0, 0, 0, 0, 0, 655, 0, 0, 0, 0, 0, 0, 0, 0,
  62072. 0, 0, 0, 556, 920, 556, 556, 934, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2841, 556, 556,
  62073. 556, 556, 0, 0, 1160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1155, 0, 0, 0, 0, 0, 1177, 0, 0, 0, 0, 0, 0,
  62074. 0, 0, 0, 0, 0, 0, 0, 2461696, 0, 0, 0, 0, 0, 1232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2801664, 0, 0,
  62075. 534, 534, 534, 534, 1322, 534, 534, 534, 534, 534, 1329, 534, 534, 534, 534, 534, 534, 534, 2505, 534,
  62076. 2507, 534, 534, 534, 534, 534, 534, 534, 1793, 534, 534, 534, 534, 1341, 0, 556, 556, 556, 556, 1359, 556,
  62077. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 965, 556, 556, 556, 556, 556, 1421, 556, 556,
  62078. 556, 556, 556, 556, 556, 556, 26009, 1341, 975, 580, 580, 580, 580, 1974, 1975, 580, 580, 580, 580, 580,
  62079. 580, 580, 580, 580, 580, 2641, 580, 580, 580, 2644, 580, 556, 556, 1534, 556, 580, 580, 580, 1538, 580,
  62080. 1066, 0, 1542, 0, 0, 0, 1548, 0, 0, 0, 1554, 0, 0, 0, 1560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2444, 0, 0, 0,
  62081. 2448, 0, 0, 1599, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1569, 534, 534, 1723, 534, 534, 534, 534,
  62082. 534, 534, 534, 534, 534, 1734, 534, 534, 534, 534, 534, 534, 892, 534, 534, 534, 534, 556, 556, 556, 556,
  62083. 556, 0, 0, 2298, 0, 0, 0, 580, 580, 580, 580, 580, 580, 3480, 580, 580, 580, 580, 580, 580, 0, 0, 0, 534,
  62084. 3582, 534, 534, 534, 534, 556, 3586, 1754, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62085. 534, 534, 534, 1316, 0, 2096, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2108, 0, 534, 534, 534, 534, 2154,
  62086. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3006, 534, 534, 534, 556, 556, 556, 2239, 556,
  62087. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1864, 556, 556, 1867, 580, 580, 580, 2326, 580,
  62088. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1512, 580, 580, 580, 556, 556, 3194, 556, 556, 556,
  62089. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1414, 556, 556, 0, 0, 3328, 3132, 0, 0, 0, 0, 0, 0, 0,
  62090. 0, 0, 534, 534, 534, 534, 534, 851, 534, 534, 534, 534, 534, 580, 580, 3379, 580, 580, 534, 556, 580, 0,
  62091. 0, 0, 3384, 0, 0, 0, 0, 0, 0, 306, 204800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 298, 0, 0, 0, 0, 0, 3132, 0, 0,
  62092. 0, 0, 534, 534, 534, 534, 3395, 534, 534, 534, 534, 534, 534, 534, 2156, 534, 2158, 534, 534, 534, 534,
  62093. 534, 534, 534, 2170, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2546, 534, 534, 534, 534, 0, 2549, 387,
  62094. 389, 339, 0, 0, 0, 0, 0, 0, 338, 0, 0, 339, 0, 0, 0, 0, 0, 0, 2023, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 359, 0,
  62095. 0, 0, 0, 0, 0, 0, 0, 386, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 393, 394, 0, 395, 0, 0,
  62096. 0, 0, 0, 395, 0, 0, 0, 0, 0, 1209, 0, 0, 0, 0, 1214, 0, 0, 0, 0, 0, 0, 0, 2405, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62097. 1094, 0, 0, 0, 0, 1099, 0, 0, 0, 338, 0, 0, 440, 0, 0, 464, 464, 464, 464, 464, 464, 464, 464, 546, 569,
  62098. 546, 569, 546, 546, 569, 546, 475, 464, 464, 464, 493, 470, 493, 493, 493, 493, 493, 493, 493, 493, 464,
  62099. 464, 470, 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, 474, 474, 464, 475, 464, 464, 464, 593,
  62100. 569, 569, 569, 569, 569, 569, 569, 593, 593, 593, 546, 593, 593, 593, 593, 593, 593, 593, 569, 569, 546,
  62101. 569, 593, 569, 593, 1, 12290, 0, 0, 0, 699, 0, 0, 0, 0, 0, 0, 0, 0, 708, 0, 710, 0, 0, 0, 0, 431, 0, 0, 0,
  62102. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1643, 0, 0, 0, 0, 743, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2411, 0, 0,
  62103. 759, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 656, 0, 775, 0, 0, 0, 0, 0, 824, 0, 0, 0, 0, 0, 0, 779, 656, 0, 0,
  62104. 796, 0, 0, 0, 0, 699, 0, 0, 0, 0, 0, 0, 799, 0, 0, 0, 0, 434, 0, 0, 331, 461, 461, 461, 461, 461, 461,
  62105. 461, 461, 461, 461, 461, 461, 461, 461, 461, 461, 796, 779, 0, 0, 801, 0, 660, 0, 775, 0, 0, 0, 0, 0, 0,
  62106. 0, 0, 2755, 0, 0, 0, 0, 0, 0, 0, 0, 2937, 0, 0, 0, 0, 0, 0, 0, 0, 2741, 0, 0, 0, 2745, 0, 2747, 0, 0, 0,
  62107. 775, 801, 0, 801, 796, 0, 0, 0, 815, 0, 0, 0, 656, 818, 828, 0, 0, 0, 0, 534, 832, 534, 534, 534, 848,
  62108. 534, 534, 862, 534, 534, 534, 534, 534, 534, 2504, 534, 534, 534, 534, 534, 534, 534, 534, 534, 898, 534,
  62109. 556, 556, 556, 556, 556, 534, 534, 875, 534, 534, 534, 534, 893, 534, 534, 534, 556, 556, 904, 556, 556,
  62110. 0, 580, 580, 976, 580, 580, 580, 580, 580, 580, 1007, 580, 580, 580, 580, 580, 1908, 580, 580, 580, 580,
  62111. 580, 580, 580, 580, 580, 1921, 556, 921, 556, 556, 935, 556, 556, 556, 556, 948, 556, 556, 556, 556, 966,
  62112. 556, 556, 556, 556, 580, 580, 580, 580, 580, 580, 0, 3594, 0, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62113. 3156, 534, 534, 534, 534, 534, 534, 534, 2802, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1795, 534,
  62114. 534, 1341, 1800, 556, 556, 580, 1022, 580, 580, 580, 580, 1040, 580, 580, 580, 0, 0, 0, 534, 580, 556,
  62115. 556, 556, 556, 580, 580, 580, 580, 580, 580, 3428, 580, 580, 580, 580, 580, 534, 556, 580, 3381, 0, 3383,
  62116. 0, 0, 0, 0, 0, 0, 0, 2126, 0, 0, 0, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1717, 534, 534, 0,
  62117. 0, 1131, 0, 364, 364, 0, 1134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2481, 0, 0, 0, 0, 0, 0, 0, 1174, 0, 0, 0, 0, 0,
  62118. 0, 1091, 0, 0, 0, 0, 0, 0, 0, 0, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 111044, 1, 12290,
  62119. 1093, 0, 0, 0, 0, 0, 0, 1197, 0, 0, 0, 0, 1202, 0, 0, 0, 0, 0, 0, 2033, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62120. 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 324, 0, 0, 0, 0, 1131, 0, 0, 1237, 0, 0, 0, 0, 0,
  62121. 0, 0, 0, 0, 2713, 0, 0, 0, 0, 0, 0, 1216, 0, 0, 0, 0, 1248, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 841, 534,
  62122. 534, 534, 534, 534, 534, 534, 556, 556, 1360, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62123. 1382, 580, 580, 1497, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2334, 580, 580,
  62124. 556, 1533, 556, 556, 580, 580, 1537, 580, 580, 1066, 0, 0, 0, 0, 0, 0, 0, 1121, 0, 0, 1124, 1125, 0, 0, 0,
  62125. 0, 1584, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1614, 0, 0, 0, 1602, 0, 0, 1605, 0, 1607, 0, 0, 0,
  62126. 0, 0, 0, 0, 0, 122880, 0, 122880, 122880, 122880, 122880, 122880, 0, 0, 1697, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62127. 0, 0, 0, 0, 0, 2423, 0, 534, 1755, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62128. 2162, 534, 556, 1822, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3049,
  62129. 556, 556, 556, 556, 2265, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3031, 556, 556, 556, 556,
  62130. 0, 0, 0, 0, 2402, 0, 2404, 0, 0, 2407, 0, 0, 0, 0, 0, 0, 0, 1165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 750, 0, 0, 0,
  62131. 0, 0, 0, 2412, 0, 0, 0, 2415, 2416, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106496, 0, 0, 0, 0, 0, 0, 0, 0, 2426,
  62132. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2912256, 0, 3207168, 0, 0, 0, 0, 2440, 0, 2441, 0, 0, 0, 0, 0, 0,
  62133. 0, 0, 0, 0, 2470, 0, 0, 0, 0, 0, 2461, 0, 0, 0, 0, 0, 0, 0, 0, 2469, 0, 0, 0, 0, 0, 2475, 0, 0, 0, 0,
  62134. 2478, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2486, 0, 0, 0, 0, 435, 0, 0, 447, 463, 463, 463, 463, 463, 463, 463, 463,
  62135. 463, 473, 463, 463, 463, 463, 463, 463, 534, 2500, 2501, 534, 534, 534, 534, 534, 2506, 534, 2508, 534,
  62136. 534, 534, 534, 2512, 2525, 534, 534, 534, 534, 534, 534, 2533, 534, 534, 534, 534, 2537, 534, 534, 534,
  62137. 534, 534, 534, 1262, 534, 534, 534, 534, 534, 534, 1277, 534, 534, 556, 556, 556, 2561, 556, 556, 2564,
  62138. 2565, 556, 556, 556, 556, 556, 2570, 556, 2572, 556, 556, 556, 556, 2576, 556, 556, 556, 556, 556, 556,
  62139. 556, 556, 2582, 556, 556, 0, 580, 580, 977, 580, 580, 580, 993, 580, 580, 580, 580, 580, 580, 1443, 580,
  62140. 580, 580, 1447, 580, 580, 1458, 580, 580, 556, 556, 2602, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62141. 556, 556, 556, 556, 1833, 556, 556, 2685, 534, 534, 556, 2687, 556, 556, 580, 2689, 580, 580, 0, 0, 0, 0,
  62142. 0, 0, 0, 2936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2036, 0, 0, 0, 0, 0, 0, 0, 0, 2708, 0, 0, 0, 0, 0, 0, 0, 2714,
  62143. 2715, 2716, 0, 0, 0, 0, 0, 0, 2060, 0, 0, 0, 0, 0, 2064, 0, 0, 2066, 0, 2735, 0, 2737, 0, 0, 0, 2740, 0,
  62144. 0, 2743, 0, 0, 0, 0, 0, 0, 0, 2960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2430, 0, 0, 0, 0, 0, 2435, 534, 534, 2810,
  62145. 534, 0, 0, 2811, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2566, 556, 556, 556, 556, 556, 556, 556,
  62146. 2856, 556, 556, 2859, 556, 0, 0, 2860, 580, 580, 580, 580, 580, 580, 580, 2651, 580, 580, 580, 580, 580,
  62147. 580, 2658, 580, 580, 2892, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2321,
  62148. 580, 2902, 580, 580, 2905, 580, 580, 2908, 580, 2909, 2910, 2911, 534, 534, 556, 556, 580, 580, 0, 0, 0,
  62149. 0, 0, 3115, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 420, 0, 65536, 0, 2929, 2930, 0, 0, 0, 0, 2935, 0,
  62150. 0, 0, 0, 0, 0, 0, 0, 0, 0, 2730, 0, 0, 0, 0, 0, 534, 534, 2997, 534, 2999, 534, 534, 534, 534, 534, 534,
  62151. 3005, 534, 534, 3007, 534, 534, 534, 534, 534, 1324, 534, 534, 534, 534, 534, 534, 534, 534, 1335, 1336,
  62152. 556, 3037, 556, 3039, 556, 556, 556, 556, 556, 556, 556, 3046, 556, 556, 3048, 556, 556, 556, 556, 580,
  62153. 580, 580, 580, 580, 1066, 0, 0, 0, 0, 0, 0, 0, 377, 0, 380, 0, 0, 0, 380, 0, 0, 580, 580, 3079, 580, 3081,
  62154. 580, 580, 580, 580, 580, 580, 580, 3088, 580, 580, 3090, 534, 534, 534, 534, 534, 3164, 534, 534, 534,
  62155. 534, 534, 534, 534, 3169, 534, 534, 534, 534, 534, 534, 2779, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62156. 534, 3167, 534, 534, 534, 534, 534, 3181, 3182, 556, 556, 556, 556, 3186, 3187, 556, 556, 556, 556, 556,
  62157. 3191, 556, 556, 0, 580, 580, 978, 580, 580, 580, 995, 580, 580, 1009, 580, 580, 580, 580, 580, 2353, 2354,
  62158. 580, 580, 580, 580, 580, 580, 2361, 580, 580, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580, 3210,
  62159. 3211, 580, 580, 580, 580, 580, 1442, 580, 580, 580, 580, 1448, 580, 580, 580, 580, 580, 580, 3524, 580,
  62160. 3526, 580, 580, 580, 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 3215, 3216, 580, 580, 580, 580, 580,
  62161. 3220, 580, 580, 580, 580, 580, 580, 580, 580, 1507, 580, 580, 580, 580, 580, 580, 580, 3226, 580, 580,
  62162. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580, 556, 2684, 556, 556, 556, 3288, 556, 556, 556,
  62163. 556, 556, 556, 556, 556, 556, 556, 556, 556, 2258, 556, 556, 556, 3307, 580, 580, 580, 580, 580, 580, 580,
  62164. 580, 580, 580, 580, 580, 580, 580, 580, 2347, 2348, 3132, 0, 0, 0, 0, 534, 534, 3393, 534, 534, 534, 534,
  62165. 3398, 534, 534, 534, 534, 534, 534, 1290, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1267, 534, 534,
  62166. 534, 534, 534, 534, 534, 3403, 534, 534, 556, 556, 3408, 556, 556, 556, 556, 3413, 556, 556, 556, 556,
  62167. 556, 556, 1874, 556, 556, 556, 556, 556, 1881, 556, 556, 556, 3418, 556, 556, 556, 580, 580, 3424, 580,
  62168. 580, 580, 580, 3429, 580, 580, 580, 580, 580, 1468, 580, 580, 580, 580, 580, 580, 580, 1476, 580, 580,
  62169. 3434, 580, 580, 580, 0, 0, 0, 0, 0, 3441, 0, 0, 0, 0, 534, 534, 534, 534, 3497, 534, 534, 534, 534, 534,
  62170. 534, 534, 534, 1731, 534, 534, 534, 534, 1735, 534, 534, 534, 3563, 3564, 534, 534, 556, 556, 556, 3569,
  62171. 3570, 556, 556, 556, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3212, 580, 580, 580, 3575, 3576, 580,
  62172. 580, 580, 0, 0, 0, 534, 534, 534, 534, 534, 534, 556, 556, 0, 580, 580, 979, 580, 580, 580, 580, 580, 580,
  62173. 580, 580, 580, 580, 2358, 580, 580, 580, 580, 580, 341, 342, 343, 344, 345, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62174. 0, 0, 221184, 0, 0, 0, 0, 0, 0, 390, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 302, 0, 0, 0, 344, 344, 345, 344,
  62175. 0, 343, 344, 448, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465,
  62176. 465, 480, 489, 489, 497, 489, 499, 489, 489, 499, 499, 489, 499, 514, 514, 514, 514, 514, 514, 514, 514,
  62177. 514, 514, 514, 514, 514, 514, 514, 514, 547, 570, 547, 570, 547, 547, 570, 547, 594, 570, 570, 570, 570,
  62178. 570, 570, 570, 594, 594, 594, 547, 594, 594, 594, 594, 594, 594, 594, 570, 570, 547, 570, 594, 570, 594,
  62179. 1, 12290, 650, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 665, 666, 0, 668, 669, 0, 0, 0, 0, 0, 675, 0, 0,
  62180. 0, 0, 0, 0, 0, 1220, 1250, 1251, 0, 1220, 0, 534, 534, 534, 0, 0, 0, 685, 0, 0, 0, 0, 0, 0, 692, 364, 364,
  62181. 364, 0, 0, 0, 0, 0, 687, 0, 0, 0, 0, 0, 364, 364, 364, 0, 0, 0, 0, 0, 734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62182. 0, 1691, 0, 0, 0, 0, 712, 0, 714, 0, 716, 0, 0, 0, 0, 0, 0, 0, 0, 0, 726, 0, 0, 0, 0, 436, 0, 0, 0, 0, 0,
  62183. 0, 0, 0, 0, 0, 0, 0, 2138112, 0, 0, 0, 0, 0, 0, 639, 745, 746, 747, 0, 0, 0, 0, 0, 753, 754, 0, 0, 0, 0,
  62184. 0, 748, 0, 0, 803, 0, 0, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 1134592, 0, 0, 0, 0, 0, 685, 0, 0, 665, 0, 685,
  62185. 0, 797, 668, 716, 0, 685, 798, 0, 0, 0, 0, 0, 1090, 1091, 1092, 1093, 0, 0, 0, 0, 0, 0, 0, 0, 2948, 0, 0,
  62186. 0, 0, 0, 2951, 0, 0, 0, 754, 0, 0, 0, 0, 0, 0, 0, 0, 747, 807, 808, 0, 0, 0, 0, 0, 1119, 0, 0, 0, 0, 0, 0,
  62187. 0, 0, 0, 0, 0, 3055616, 0, 0, 0, 3133440, 0, 0, 0, 0, 747, 0, 0, 812, 692, 0, 0, 0, 817, 0, 0, 0, 0, 0, 0,
  62188. 2073, 0, 2075, 0, 0, 0, 0, 0, 0, 0, 0, 1702, 0, 0, 1703, 0, 0, 1704, 0, 819, 0, 0, 0, 685, 692, 0, 0, 685,
  62189. 817, 817, 0, 0, 0, 0, 0, 0, 0, 3131, 0, 0, 0, 0, 0, 0, 0, 0, 749, 0, 0, 0, 0, 0, 0, 756, 870, 873, 534,
  62190. 534, 534, 885, 889, 534, 534, 534, 534, 556, 556, 556, 911, 915, 918, 556, 926, 556, 556, 556, 941, 943,
  62191. 946, 556, 556, 556, 958, 962, 556, 556, 0, 580, 580, 980, 986, 580, 580, 580, 580, 1004, 580, 580, 580,
  62192. 580, 580, 1469, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2627, 580, 580, 2630, 2631, 580, 1020,
  62193. 580, 580, 580, 1032, 1036, 580, 580, 580, 580, 0, 0, 0, 1048, 1049, 1050, 838, 534, 885, 889, 1055, 911,
  62194. 556, 958, 962, 1060, 0, 985, 580, 1032, 1036, 1065, 1101, 0, 0, 0, 0, 1105, 0, 0, 1108, 0, 0, 0, 0, 0, 0,
  62195. 0, 0, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 1, 12290, 1298, 534, 534, 1302, 534,
  62196. 534, 534, 534, 534, 534, 534, 534, 534, 534, 1312, 534, 534, 534, 534, 534, 1727, 534, 534, 534, 534, 534,
  62197. 534, 534, 534, 534, 534, 1796, 534, 1341, 0, 556, 556, 534, 1319, 534, 534, 534, 534, 534, 534, 534, 534,
  62198. 534, 534, 1332, 534, 534, 534, 534, 534, 534, 1304, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1266,
  62199. 1273, 534, 534, 534, 534, 534, 556, 1383, 556, 556, 556, 556, 556, 556, 556, 1390, 556, 556, 1394, 556,
  62200. 556, 556, 556, 556, 1385, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2595, 556, 556, 556, 556, 556,
  62201. 580, 580, 580, 1482, 580, 580, 1486, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1929, 580, 580, 580,
  62202. 580, 580, 580, 580, 1496, 580, 580, 1503, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1516, 1615, 0,
  62203. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1655, 0, 0, 0, 1647, 0, 1649, 0, 0, 0, 1651, 0, 741, 0, 0, 0, 0,
  62204. 0, 0, 330, 0, 0, 0, 0, 0, 0, 0, 330, 0, 0, 69632, 73728, 0, 418, 418, 0, 0, 65536, 418, 0, 0, 0, 534,
  62205. 1709, 534, 534, 534, 534, 534, 534, 1715, 534, 534, 534, 534, 0, 0, 556, 2812, 556, 556, 556, 556, 556,
  62206. 556, 556, 556, 3356, 556, 556, 556, 556, 556, 556, 556, 534, 534, 1787, 534, 534, 534, 534, 534, 534, 534,
  62207. 534, 534, 1341, 0, 556, 1803, 556, 556, 556, 556, 1839, 556, 556, 556, 1843, 556, 556, 1848, 556, 556,
  62208. 556, 556, 556, 556, 1892, 556, 26009, 0, 580, 580, 580, 580, 580, 580, 0, 1269, 1453, 1361, 534, 534, 534,
  62209. 534, 534, 556, 580, 580, 580, 1906, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1917, 580,
  62210. 580, 580, 1935, 580, 580, 580, 1939, 580, 580, 1944, 580, 580, 580, 580, 580, 580, 580, 580, 1945, 580,
  62211. 580, 580, 580, 580, 580, 580, 0, 0, 2010, 0, 1077, 0, 0, 0, 2012, 0, 1081, 0, 0, 0, 0, 0, 0, 0, 3144, 0,
  62212. 0, 0, 0, 0, 0, 3147, 0, 534, 534, 534, 2177, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62213. 1341, 1800, 556, 556, 556, 556, 2263, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62214. 1850, 556, 556, 580, 580, 2350, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2346,
  62215. 580, 580, 0, 2550, 0, 1800, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2569, 556, 2571,
  62216. 556, 556, 2613, 556, 556, 556, 0, 0, 0, 2616, 0, 1896, 580, 580, 580, 580, 580, 580, 3219, 580, 580, 580,
  62217. 580, 580, 580, 580, 580, 3225, 0, 0, 2761, 0, 0, 0, 534, 2765, 534, 534, 534, 534, 534, 534, 534, 534,
  62218. 534, 3166, 534, 534, 534, 534, 534, 3171, 534, 534, 2789, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62219. 534, 534, 534, 534, 1295, 534, 534, 556, 556, 2836, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62220. 556, 556, 1865, 556, 556, 534, 534, 2985, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62221. 1310, 534, 534, 534, 534, 534, 2998, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1341,
  62222. 1801, 556, 556, 556, 3025, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62223. 3205, 556, 556, 3038, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2247, 556, 556,
  62224. 580, 580, 3067, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2643, 580, 580, 580, 580,
  62225. 580, 3080, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2345, 580, 580, 580, 534, 534, 534,
  62226. 534, 534, 3267, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2159, 534, 534, 534, 534, 2163, 3285,
  62227. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2289, 3336, 534, 534, 534, 534,
  62228. 3340, 534, 534, 534, 534, 534, 3346, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580, 580, 580, 1066, 0,
  62229. 0, 0, 1545, 0, 0, 0, 0, 0, 1620, 0, 0, 1623, 0, 1625, 0, 0, 0, 0, 0, 0, 0, 2480, 0, 0, 0, 0, 0, 0, 0, 0,
  62230. 555, 578, 555, 578, 555, 555, 578, 555, 556, 556, 3351, 556, 556, 556, 556, 3355, 556, 556, 556, 556, 556,
  62231. 3361, 556, 556, 0, 580, 580, 981, 580, 580, 580, 580, 580, 580, 1010, 1012, 580, 580, 580, 580, 1029, 580,
  62232. 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 3377, 580, 580, 580, 580, 534, 556, 580, 0, 0, 0, 0, 0, 0, 0,
  62233. 0, 0, 3251, 0, 3132, 3253, 0, 0, 3256, 3132, 0, 0, 0, 0, 534, 534, 534, 534, 534, 3396, 534, 534, 534,
  62234. 3400, 534, 534, 534, 534, 534, 1742, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2536, 534, 534,
  62235. 534, 534, 534, 388, 0, 0, 0, 392, 388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 233472, 0, 0, 0, 0, 0, 0, 0, 404,
  62236. 0, 346, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 437, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 636, 0,
  62237. 0, 0, 0, 515, 515, 515, 515, 0, 0, 0, 0, 0, 0, 0, 0, 0, 515, 515, 515, 515, 515, 515, 515, 515, 548, 571,
  62238. 548, 571, 548, 548, 571, 548, 595, 571, 571, 571, 571, 571, 571, 571, 595, 595, 595, 548, 595, 595, 595,
  62239. 595, 595, 595, 595, 571, 571, 610, 615, 595, 615, 621, 1, 12290, 0, 0, 744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62240. 0, 0, 0, 0, 0, 1668, 534, 534, 876, 534, 534, 534, 534, 894, 534, 534, 534, 556, 556, 905, 556, 556, 0,
  62241. 580, 580, 982, 580, 580, 580, 580, 1001, 1005, 1011, 580, 1016, 580, 580, 1023, 580, 580, 580, 580, 1041,
  62242. 580, 580, 580, 0, 0, 0, 534, 580, 556, 556, 556, 556, 580, 580, 580, 580, 580, 1066, 0, 0, 1544, 0, 0, 0,
  62243. 0, 0, 0, 2764, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1268, 534, 534, 534, 534, 534, 534, 0, 0, 0,
  62244. 0, 1162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1173, 0, 0, 0, 1178, 0, 0, 0, 0, 1094, 0, 0, 0, 0, 0, 0, 0, 0,
  62245. 274432, 274432, 274432, 0, 274432, 274432, 274432, 274432, 1256, 534, 534, 534, 534, 534, 534, 534, 534,
  62246. 1269, 534, 534, 534, 534, 1279, 534, 534, 534, 534, 534, 1757, 534, 534, 534, 534, 534, 534, 534, 534,
  62247. 534, 534, 2197, 534, 534, 534, 534, 534, 534, 534, 534, 1341, 901, 556, 556, 556, 1347, 556, 556, 556,
  62248. 556, 556, 556, 556, 1877, 556, 556, 556, 556, 556, 556, 556, 556, 26009, 0, 580, 1899, 580, 580, 580, 580,
  62249. 556, 556, 1361, 556, 556, 556, 556, 1371, 556, 556, 556, 556, 556, 556, 556, 556, 3468, 556, 556, 3470,
  62250. 556, 580, 580, 580, 556, 556, 556, 556, 1422, 556, 556, 556, 556, 556, 556, 556, 26009, 1341, 975, 580,
  62251. 580, 580, 580, 1990, 1991, 1992, 534, 1994, 534, 534, 556, 1998, 556, 556, 580, 580, 580, 3367, 580, 580,
  62252. 580, 580, 3371, 580, 580, 580, 580, 580, 580, 3232, 580, 580, 580, 580, 580, 580, 534, 580, 556, 2384,
  62253. 534, 534, 534, 2388, 556, 556, 556, 580, 580, 1439, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1453,
  62254. 580, 580, 580, 580, 580, 2381, 2382, 2383, 534, 534, 534, 534, 556, 556, 556, 556, 3410, 556, 556, 556,
  62255. 556, 556, 556, 556, 580, 1463, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1477, 580,
  62256. 580, 1498, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1514, 580, 580, 580, 580, 2005, 0, 2007,
  62257. 0, 2009, 0, 2011, 0, 0, 0, 0, 0, 0, 0, 2034, 2035, 0, 2037, 2038, 0, 0, 0, 0, 0, 0, 0, 1555, 0, 0, 0,
  62258. 1561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286720, 286720, 0, 286720, 286720, 1, 12290, 0, 0, 0, 1586, 0, 0, 0, 0,
  62259. 0, 0, 0, 0, 0, 0, 0, 0, 303, 0, 0, 0, 0, 1600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2434, 0, 556,
  62260. 1852, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3363, 0, 1556, 0, 0, 0,
  62261. 0, 0, 1562, 0, 0, 0, 0, 0, 0, 0, 0, 305, 204800, 204800, 0, 205105, 204800, 1, 12290, 0, 0, 0, 2070, 0, 0,
  62262. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 337, 0, 0, 0, 0, 0, 2111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1188, 0, 0,
  62263. 534, 2165, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2173, 534, 2250, 556,
  62264. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2584, 2337, 580, 580, 580, 580, 580,
  62265. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2375, 580, 2211, 0, 0, 0, 556, 556, 556, 556, 556, 556,
  62266. 556, 556, 556, 556, 556, 556, 2597, 556, 556, 556, 556, 556, 556, 2588, 556, 556, 556, 556, 556, 556, 556,
  62267. 556, 556, 556, 556, 556, 2831, 556, 556, 556, 534, 3107, 556, 3109, 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62268. 0, 2138112, 1170, 0, 0, 0, 0, 0, 3132, 3330, 0, 0, 3332, 0, 0, 0, 0, 0, 534, 3335, 534, 534, 534, 534,
  62269. 534, 1774, 534, 534, 534, 1778, 534, 534, 534, 534, 534, 534, 534, 1776, 534, 534, 534, 534, 534, 534,
  62270. 534, 534, 534, 2535, 534, 534, 534, 534, 534, 534, 534, 3337, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62271. 534, 534, 534, 534, 556, 556, 556, 556, 556, 556, 556, 556, 3350, 556, 556, 3352, 556, 556, 556, 556, 556,
  62272. 556, 556, 556, 556, 556, 556, 556, 2852, 556, 556, 556, 556, 556, 580, 3366, 580, 580, 3368, 580, 580,
  62273. 580, 580, 580, 580, 580, 580, 580, 1946, 580, 580, 580, 580, 580, 580, 3132, 0, 3388, 0, 3390, 534, 534,
  62274. 534, 534, 534, 534, 534, 534, 534, 534, 534, 556, 556, 902, 556, 556, 0, 0, 0, 783, 0, 783, 0, 0, 0, 0, 0,
  62275. 0, 0, 0, 783, 0, 0, 0, 0, 556, 556, 556, 556, 556, 556, 556, 556, 2557, 556, 556, 556, 556, 556, 556,
  62276. 2848, 556, 556, 556, 556, 556, 556, 556, 556, 556, 947, 556, 556, 556, 556, 556, 556, 556, 922, 556, 556,
  62277. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1381, 556, 556, 972, 0, 580, 580, 580, 580,
  62278. 580, 580, 996, 580, 580, 580, 580, 580, 580, 1910, 580, 580, 580, 580, 1916, 580, 580, 580, 580, 78114,
  62279. 1066, 0, 0, 1070, 1074, 0, 0, 1078, 1082, 0, 0, 0, 0, 0, 0, 0, 1222, 0, 0, 0, 0, 1225, 0, 1181, 0, 534,
  62280. 3162, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2201, 534, 580, 580, 580,
  62281. 3218, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2629, 580, 580, 580, 347, 347, 349, 347,
  62282. 0, 0, 347, 347, 0, 0, 0, 0, 348, 0, 0, 0, 0, 0, 0, 2125, 0, 0, 2128, 0, 534, 534, 2131, 534, 534, 0, 0, 0,
  62283. 347, 347, 349, 347, 347, 347, 347, 347, 347, 506, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347, 347,
  62284. 347, 347, 347, 347, 347, 549, 572, 549, 572, 549, 549, 572, 549, 596, 572, 572, 572, 572, 572, 572, 572,
  62285. 596, 596, 596, 549, 596, 596, 596, 596, 596, 596, 596, 572, 572, 549, 572, 596, 572, 596, 1, 12290, 0, 0,
  62286. 0, 715, 0, 717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1147348, 0, 0, 0, 0, 0, 0, 0, 732, 0, 0, 0, 0, 0, 0, 0,
  62287. 0, 0, 0, 0, 0, 353, 354, 355, 356, 758, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 673, 674, 0, 0, 0, 0, 0,
  62288. 0, 0, 794, 795, 0, 0, 0, 0, 795, 0, 0, 0, 0, 0, 795, 0, 0, 794, 809, 0, 803, 0, 657, 0, 0, 0, 0, 0, 0, 0,
  62289. 0, 0, 0, 0, 0, 3117056, 0, 0, 0, 0, 820, 0, 0, 0, 0, 0, 0, 795, 0, 0, 0, 0, 0, 0, 0, 0, 1159168, 364, 0,
  62290. 0, 0, 0, 0, 0, 0, 0, 0, 0, 795, 534, 534, 839, 534, 534, 534, 534, 857, 534, 534, 534, 534, 534, 534,
  62291. 1728, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3272, 534, 534, 534, 3273, 3274, 534, 534, 877,
  62292. 879, 534, 534, 890, 534, 534, 534, 534, 556, 556, 906, 912, 556, 556, 556, 556, 580, 580, 580, 580, 580,
  62293. 1066, 0, 1543, 0, 0, 0, 1549, 556, 556, 556, 930, 556, 556, 556, 556, 556, 950, 952, 556, 556, 963, 556,
  62294. 556, 556, 556, 556, 1840, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1831, 556, 556, 556, 556,
  62295. 1835, 580, 1024, 1026, 580, 580, 1037, 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 556, 556, 556, 580,
  62296. 580, 580, 580, 580, 1066, 1540, 0, 0, 0, 1546, 0, 0, 0, 0, 0, 131072, 0, 131072, 131072, 131072, 131072,
  62297. 0, 131072, 131072, 131072, 131072, 131072, 131072, 0, 0, 0, 0, 0, 131072, 0, 131072, 1, 12290, 839, 879,
  62298. 534, 890, 534, 912, 952, 556, 963, 556, 0, 986, 1026, 580, 1037, 580, 580, 580, 580, 2005, 0, 2007, 0,
  62299. 2009, 0, 2011, 0, 0, 2397, 0, 0, 0, 0, 0, 330, 331, 332, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2083, 0, 0, 0, 0, 0,
  62300. 0, 0, 0, 0, 0, 0, 0, 2731, 0, 0, 0, 0, 0, 0, 1132, 364, 364, 0, 0, 1135, 0, 0, 0, 1138, 0, 1140, 0, 0, 0,
  62301. 0, 556, 556, 556, 556, 556, 556, 556, 2556, 556, 556, 556, 556, 556, 556, 2577, 556, 556, 556, 556, 556,
  62302. 556, 556, 556, 556, 26009, 1897, 580, 580, 580, 580, 580, 580, 1142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62303. 0, 1156, 0, 0, 0, 0, 556, 556, 556, 556, 556, 556, 2555, 556, 556, 556, 556, 2559, 1158, 0, 0, 0, 0, 1163,
  62304. 0, 0, 0, 0, 1168, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 0, 1247, 0, 0, 0,
  62305. 0, 0, 0, 0, 1168, 534, 534, 534, 534, 534, 534, 1743, 534, 534, 534, 534, 534, 534, 534, 534, 534, 897,
  62306. 534, 556, 556, 556, 556, 914, 534, 534, 534, 1286, 1288, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62307. 534, 556, 556, 907, 556, 556, 534, 534, 534, 1341, 901, 556, 556, 556, 556, 1348, 556, 556, 556, 556, 556,
  62308. 556, 0, 2298, 580, 580, 580, 580, 580, 580, 580, 580, 2640, 580, 580, 580, 580, 580, 580, 2645, 580, 580,
  62309. 580, 1440, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2670, 2671, 580, 580, 1494, 580,
  62310. 580, 580, 580, 580, 580, 580, 1508, 580, 580, 580, 580, 580, 580, 580, 2678, 580, 580, 580, 580, 534, 580,
  62311. 556, 534, 534, 534, 1996, 556, 556, 556, 2000, 580, 580, 1519, 1520, 580, 580, 580, 0, 534, 580, 556, 534,
  62312. 1528, 534, 534, 1531, 556, 556, 556, 556, 580, 580, 580, 580, 580, 1066, 1541, 0, 0, 0, 1547, 0, 0, 0, 0,
  62313. 556, 556, 556, 2553, 556, 2554, 556, 556, 556, 556, 556, 556, 0, 0, 580, 580, 580, 580, 2863, 580, 580,
  62314. 580, 1532, 556, 556, 1535, 580, 1536, 580, 580, 1539, 1066, 0, 0, 0, 0, 0, 0, 0, 1577, 0, 0, 0, 0, 0, 0,
  62315. 0, 0, 0, 770, 0, 0, 0, 0, 0, 0, 0, 0, 1617, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1203, 0, 0, 0, 0, 1633,
  62316. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1217, 0, 0, 0, 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364,
  62317. 364, 364, 0, 0, 0, 0, 1698, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1226, 0, 0, 534, 1738, 534, 534, 534,
  62318. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2207, 2549, 534, 534, 534, 1788, 534, 534, 534,
  62319. 534, 1794, 534, 534, 534, 1341, 0, 556, 556, 556, 556, 556, 1891, 556, 556, 26009, 1896, 580, 580, 580,
  62320. 580, 580, 580, 1470, 1472, 580, 580, 580, 580, 580, 580, 580, 580, 1960, 580, 580, 1963, 580, 580, 580,
  62321. 580, 556, 556, 1870, 556, 556, 556, 1875, 556, 556, 556, 556, 556, 556, 556, 556, 1884, 556, 556, 556,
  62322. 556, 1890, 556, 556, 556, 26009, 0, 580, 580, 580, 580, 580, 580, 1927, 580, 580, 580, 580, 1931, 580,
  62323. 580, 580, 580, 580, 1904, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2672, 580,
  62324. 580, 580, 1971, 580, 580, 580, 580, 580, 580, 580, 580, 1980, 580, 580, 580, 580, 580, 1504, 580, 580,
  62325. 580, 580, 580, 580, 580, 580, 580, 580, 2316, 580, 580, 2320, 580, 580, 1986, 580, 580, 580, 534, 580,
  62326. 556, 534, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580, 580, 0, 0, 0, 2693, 0, 0, 0, 0, 0, 2099, 0,
  62327. 2101, 2102, 2103, 0, 2105, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 424, 65536, 0, 0, 0, 0, 2123, 0,
  62328. 0, 0, 0, 0, 0, 0, 2129, 534, 534, 534, 534, 0, 2211, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62329. 3045, 556, 556, 556, 556, 556, 534, 534, 2136, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62330. 534, 1333, 534, 534, 534, 534, 534, 2166, 534, 2168, 534, 2171, 534, 534, 534, 534, 534, 534, 534, 534,
  62331. 534, 3271, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2178, 534, 534, 534, 534, 534, 2184, 534,
  62332. 534, 534, 534, 534, 534, 534, 2792, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2519, 534, 534, 534, 534,
  62333. 534, 534, 534, 534, 534, 534, 2206, 0, 0, 0, 0, 2213, 556, 556, 556, 556, 556, 556, 939, 556, 944, 556,
  62334. 951, 556, 954, 556, 556, 968, 556, 2221, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62335. 556, 1415, 556, 556, 556, 2251, 556, 2253, 556, 2256, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2607,
  62336. 556, 556, 556, 2610, 556, 556, 556, 556, 556, 2264, 556, 556, 556, 556, 556, 2270, 556, 556, 556, 556,
  62337. 556, 556, 1369, 556, 556, 556, 1374, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2293, 0, 0, 0, 0, 2300,
  62338. 580, 580, 580, 580, 580, 580, 1942, 580, 580, 580, 1947, 580, 580, 580, 580, 580, 580, 2308, 580, 580,
  62339. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2880, 580, 580, 580, 2338, 580, 2340, 580,
  62340. 2343, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1961, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62341. 2351, 580, 580, 580, 580, 580, 2357, 580, 580, 580, 580, 580, 580, 1958, 1959, 580, 580, 580, 580, 580,
  62342. 580, 580, 580, 580, 3234, 580, 580, 580, 534, 580, 556, 0, 0, 2400, 2401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62343. 0, 399, 0, 0, 0, 2436, 0, 0, 2439, 0, 0, 0, 0, 2443, 0, 0, 0, 0, 0, 0, 0, 0, 2818048, 2846720, 0, 2916352,
  62344. 0, 0, 3002368, 0, 0, 0, 2451, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2459, 0, 0, 0, 0, 556, 556, 2552, 556, 556,
  62345. 556, 556, 556, 556, 556, 556, 556, 2851, 556, 556, 556, 556, 556, 556, 0, 0, 0, 2477, 0, 0, 0, 0, 0, 0, 0,
  62346. 0, 0, 2485, 0, 0, 0, 0, 0, 1195, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111044, 0, 0, 0, 0, 534, 534, 534, 534,
  62347. 534, 2503, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2520, 534, 534, 534, 534, 534, 556, 556, 556,
  62348. 556, 2562, 556, 556, 556, 556, 556, 2567, 556, 556, 556, 556, 556, 0, 0, 0, 0, 580, 580, 580, 580, 2304,
  62349. 580, 580, 580, 2633, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2901, 580, 534,
  62350. 534, 534, 2686, 556, 556, 556, 2688, 580, 580, 580, 2690, 2691, 0, 0, 0, 0, 0, 0, 2453, 0, 0, 0, 0, 0, 0,
  62351. 0, 0, 0, 0, 1185, 0, 0, 0, 0, 0, 0, 0, 0, 2709, 0, 2710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1159168, 0, 0,
  62352. 0, 0, 2855, 556, 556, 556, 556, 556, 0, 0, 580, 580, 580, 580, 580, 2864, 580, 2865, 580, 580, 2904, 580,
  62353. 580, 580, 580, 580, 534, 580, 556, 534, 534, 556, 556, 580, 580, 0, 0, 0, 3113, 0, 0, 0, 0, 0, 0, 0, 0,
  62354. 254407, 254407, 254407, 254407, 254407, 254407, 254407, 254407, 1, 12290, 556, 556, 556, 3053, 556, 556,
  62355. 556, 556, 556, 556, 556, 580, 3061, 580, 580, 580, 580, 580, 2649, 580, 580, 580, 580, 580, 580, 580, 580,
  62356. 580, 580, 2371, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3095, 580, 580, 580, 580, 580, 580, 580, 534,
  62357. 580, 556, 534, 534, 2386, 2387, 556, 556, 2390, 2391, 534, 534, 3338, 534, 534, 534, 534, 534, 534, 534,
  62358. 534, 534, 3347, 534, 534, 3349, 556, 556, 556, 556, 3353, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62359. 3362, 556, 556, 556, 556, 580, 580, 580, 580, 580, 3427, 580, 580, 580, 3431, 580, 580, 580, 580, 1031,
  62360. 580, 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 556, 556, 3365, 580, 580, 580, 580, 3369, 580, 580, 580,
  62361. 580, 580, 580, 580, 580, 2356, 580, 580, 580, 580, 580, 580, 580, 580, 3378, 580, 580, 580, 534, 556, 580,
  62362. 0, 0, 0, 0, 0, 0, 0, 0, 402, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 3449, 534, 534, 534, 534, 534, 534, 534,
  62363. 534, 534, 556, 556, 556, 3179, 556, 556, 556, 556, 556, 3462, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62364. 556, 580, 580, 580, 3300, 580, 580, 580, 3303, 580, 580, 580, 580, 580, 3476, 580, 580, 580, 580, 580,
  62365. 580, 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 0, 0, 3491, 0, 534, 534, 534, 534, 534, 534, 534, 534,
  62366. 534, 534, 534, 534, 3158, 534, 534, 534, 534, 534, 3565, 534, 556, 556, 556, 556, 556, 3571, 556, 556,
  62367. 580, 580, 580, 580, 580, 580, 580, 580, 580, 3372, 580, 580, 580, 580, 580, 580, 3577, 580, 580, 3579, 0,
  62368. 3581, 534, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556, 2224, 556, 556, 2227, 556, 556, 556, 556,
  62369. 556, 556, 2235, 400, 0, 0, 0, 0, 0, 367, 375, 403, 0, 0, 0, 0, 0, 367, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62370. 0, 0, 0, 2054, 408, 410, 0, 0, 367, 375, 0, 69632, 73728, 0, 0, 0, 0, 426, 65536, 0, 0, 0, 0, 556, 2551,
  62371. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2271, 556, 556, 556, 556, 556, 426, 426, 0, 426, 0, 410,
  62372. 426, 449, 0, 0, 0, 0, 0, 0, 0, 0, 534, 556, 534, 556, 534, 534, 556, 534, 367, 0, 0, 395, 0, 0, 0, 0, 0,
  62373. 350, 0, 0, 367, 0, 0, 395, 0, 408, 0, 490, 490, 0, 490, 490, 490, 490, 490, 490, 490, 490, 516, 516, 516,
  62374. 516, 449, 449, 449, 449, 524, 449, 449, 525, 449, 516, 530, 516, 516, 516, 530, 516, 516, 516, 516, 532,
  62375. 550, 573, 550, 573, 550, 550, 573, 550, 597, 573, 573, 573, 573, 573, 573, 573, 597, 597, 597, 550, 597,
  62376. 597, 597, 597, 597, 597, 597, 573, 573, 611, 616, 597, 616, 622, 1, 12290, 0, 0, 636, 0, 0, 0, 0, 0, 0, 0,
  62377. 0, 0, 0, 0, 0, 0, 1567, 1568, 0, 789, 0, 0, 0, 0, 534, 834, 534, 534, 534, 534, 534, 534, 863, 865, 534,
  62378. 534, 534, 534, 534, 1790, 1792, 534, 534, 534, 534, 534, 1341, 0, 556, 556, 0, 580, 580, 580, 983, 987,
  62379. 580, 580, 580, 580, 580, 580, 1013, 580, 556, 556, 556, 556, 936, 938, 556, 556, 556, 556, 556, 556, 556,
  62380. 556, 556, 556, 2829, 556, 556, 2832, 556, 556, 78114, 1066, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1083, 0, 0,
  62381. 0, 0, 0, 1234, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2050, 0, 0, 0, 0, 1085, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62382. 0, 1098, 0, 0, 0, 0, 0, 1235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122880, 0, 0, 0, 0, 0, 0, 1116, 0, 0, 0, 0,
  62383. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1581, 1582, 0, 0, 0, 0, 1085, 1208, 0, 0, 0, 0, 0, 0, 1215, 0, 0, 0, 0, 0, 0,
  62384. 347, 348, 349, 0, 0, 0, 0, 0, 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624,
  62385. 282624, 0, 0, 0, 1220, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1220, 1229, 534, 534, 534, 1259, 534, 534, 534, 1263,
  62386. 534, 534, 1274, 534, 534, 1278, 534, 534, 534, 534, 534, 534, 3001, 534, 534, 534, 534, 534, 534, 534,
  62387. 534, 534, 1327, 534, 534, 534, 534, 534, 534, 534, 1299, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62388. 534, 534, 534, 534, 2497, 534, 534, 534, 534, 1341, 901, 556, 556, 556, 556, 556, 556, 556, 1351, 556,
  62389. 556, 556, 556, 556, 1423, 556, 556, 556, 1430, 556, 556, 26009, 1341, 975, 580, 1355, 556, 556, 1366, 556,
  62390. 556, 1370, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2828, 556, 556, 556, 556, 556, 556, 1462, 580,
  62391. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3315, 580, 1479, 580, 580, 580,
  62392. 1483, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2877, 580, 580, 580, 580, 0, 1571, 1572, 0,
  62393. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1612, 0, 0, 0, 0, 0, 0, 1603, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364,
  62394. 364, 364, 0, 696, 0, 1616, 0, 1618, 0, 0, 0, 1622, 0, 0, 0, 1626, 0, 0, 0, 1630, 0, 0, 0, 0, 1572, 0, 0,
  62395. 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 364, 364, 695, 0, 534, 534, 534, 1724, 534, 534, 534, 534, 534, 534, 534,
  62396. 534, 534, 534, 534, 534, 1782, 1783, 534, 534, 556, 1837, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62397. 556, 556, 556, 556, 556, 1818, 556, 556, 556, 556, 1889, 556, 556, 556, 556, 26009, 0, 580, 580, 580, 580,
  62398. 580, 580, 1976, 580, 580, 580, 580, 580, 1981, 580, 580, 580, 0, 0, 0, 2031, 0, 2032, 0, 0, 0, 0, 0, 0, 0,
  62399. 0, 0, 0, 0, 2200246, 151552, 2200246, 0, 0, 2175, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62400. 2186, 534, 534, 534, 534, 534, 534, 1758, 534, 534, 534, 534, 1764, 534, 534, 534, 534, 0, 0, 556, 556,
  62401. 556, 556, 2814, 556, 556, 556, 556, 556, 0, 0, 0, 0, 580, 2301, 580, 580, 580, 580, 580, 1038, 580, 580,
  62402. 580, 580, 0, 0, 0, 534, 580, 556, 580, 580, 2394, 2395, 0, 1544, 0, 1550, 0, 1556, 0, 1562, 0, 0, 0, 0, 0,
  62403. 0, 374, 0, 0, 0, 0, 0, 0, 0, 359, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2052, 0, 0, 2476, 0, 0, 0, 0, 0,
  62404. 0, 0, 0, 0, 2482, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 345, 344, 65536, 343, 534, 534, 534, 534,
  62405. 2530, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1275, 534, 534, 534, 534, 580, 2661, 580,
  62406. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3075, 580, 580, 0, 0, 2722, 0, 0, 0, 0,
  62407. 0, 0, 0, 0, 0, 0, 0, 0, 0, 1665, 0, 0, 534, 2797, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62408. 534, 534, 534, 2511, 534, 556, 556, 2845, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62409. 2259, 556, 556, 0, 0, 2970, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 534, 855, 534, 534, 534, 534,
  62410. 0, 0, 0, 0, 3122, 3123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2424832, 2433024, 0, 0, 2457600, 3149, 534, 534,
  62411. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1737, 3172, 534, 534, 534, 534, 534, 534,
  62412. 534, 534, 556, 556, 556, 556, 556, 556, 556, 2242, 556, 556, 556, 556, 556, 556, 556, 556, 1406, 556, 556,
  62413. 556, 556, 556, 556, 556, 580, 580, 580, 3229, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580, 556,
  62414. 556, 556, 556, 580, 580, 580, 580, 3426, 580, 580, 580, 580, 580, 580, 580, 2639, 580, 580, 580, 580, 580,
  62415. 580, 580, 580, 580, 2344, 580, 580, 580, 580, 580, 580, 534, 3236, 556, 3238, 580, 3240, 3241, 0, 0, 0, 0,
  62416. 3245, 0, 0, 0, 0, 0, 0, 640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 323, 397, 0, 0, 0, 323, 0, 0, 0, 3258, 0, 0, 0, 0,
  62417. 0, 0, 0, 0, 3261, 0, 534, 534, 534, 534, 534, 534, 534, 3154, 3155, 534, 534, 534, 534, 3159, 3160, 3263,
  62418. 534, 534, 534, 3266, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1330, 534, 534, 534, 534, 580,
  62419. 580, 3318, 534, 3319, 556, 3320, 580, 0, 0, 0, 0, 0, 0, 0, 0, 543, 566, 543, 566, 543, 543, 566, 543, 556,
  62420. 556, 3543, 556, 3544, 556, 556, 556, 556, 556, 556, 556, 556, 580, 580, 3551, 580, 3552, 580, 580, 580,
  62421. 580, 580, 580, 580, 580, 0, 0, 0, 0, 534, 534, 3536, 534, 3537, 534, 534, 534, 534, 534, 534, 534, 1730,
  62422. 534, 534, 534, 534, 534, 534, 534, 534, 534, 2183, 534, 534, 534, 534, 534, 534, 409, 355, 0, 0, 0, 0, 0,
  62423. 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 638, 0, 0, 641, 642, 0, 0, 0, 0, 0, 0, 0, 0, 1591, 0, 0,
  62424. 1594, 0, 0, 0, 0, 466, 477, 466, 0, 0, 466, 0, 0, 0, 0, 0, 0, 0, 0, 517, 517, 521, 521, 521, 521, 466,
  62425. 466, 466, 466, 466, 466, 466, 471, 466, 521, 517, 521, 521, 517, 521, 521, 521, 521, 533, 551, 574, 551,
  62426. 574, 551, 551, 574, 551, 598, 574, 574, 574, 574, 574, 574, 574, 598, 598, 598, 551, 598, 598, 598, 598,
  62427. 598, 598, 598, 574, 574, 612, 617, 598, 617, 623, 1, 12290, 0, 0, 731, 0, 0, 0, 637, 731, 0, 737, 738,
  62428. 637, 0, 0, 0, 0, 0, 0, 656, 0, 0, 659, 660, 0, 0, 0, 0, 0, 0, 0, 2754, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2420, 0,
  62429. 0, 0, 0, 0, 0, 777, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 786, 0, 791, 0, 0, 0, 0, 0, 1575, 0, 0, 0, 0, 0, 0, 0,
  62430. 0, 0, 0, 303, 303, 0, 0, 0, 0, 0, 0, 0, 0, 791, 0, 0, 0, 0, 0, 0, 791, 0, 0, 0, 0, 0, 0, 672, 0, 0, 0, 0,
  62431. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2016, 0, 0, 0, 0, 806, 0, 0, 0, 0, 0, 637, 0, 0, 0, 0, 0, 0, 0, 69632,
  62432. 73728, 0, 0, 0, 349, 347, 65536, 0, 0, 0, 0, 777, 0, 0, 0, 0, 0, 0, 0, 777, 777, 0, 637, 0, 0, 0, 786, 0,
  62433. 791, 0, 777, 0, 806, 0, 0, 0, 658, 0, 777, 791, 829, 0, 534, 835, 534, 534, 534, 534, 854, 858, 864, 534,
  62434. 869, 556, 556, 927, 931, 937, 556, 942, 556, 556, 556, 556, 556, 959, 556, 556, 556, 556, 556, 1424, 556,
  62435. 556, 556, 556, 556, 556, 26009, 1341, 975, 580, 534, 534, 886, 534, 534, 556, 556, 959, 556, 556, 0, 580,
  62436. 580, 1033, 580, 580, 580, 580, 1033, 580, 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 0, 1086, 0, 0, 0, 0,
  62437. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2449, 0, 0, 0, 0, 1103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1113, 0, 0, 0,
  62438. 1117, 1118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 364, 208896, 0, 0, 0, 0, 0, 0, 1179, 0, 1182, 0, 0, 0,
  62439. 0, 0, 1187, 0, 0, 0, 0, 0, 0, 2726, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 784, 0, 0, 0, 0, 0, 0, 0, 0, 1205, 0, 0,
  62440. 1086, 0, 0, 0, 1211, 0, 1213, 0, 0, 0, 0, 0, 0, 0, 1638, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1123, 0, 0, 0, 0, 0,
  62441. 0, 0, 0, 0, 1221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1227, 0, 0, 0, 0, 654, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62442. 2964, 2965, 0, 0, 1230, 1187, 0, 1211, 1233, 0, 1236, 0, 0, 0, 0, 0, 1117, 0, 0, 0, 0, 0, 0, 2739, 0, 0,
  62443. 0, 0, 2744, 0, 0, 0, 0, 0, 0, 299, 0, 0, 0, 303, 2424832, 2433024, 0, 0, 2457600, 0, 1245, 0, 0, 0, 0, 0,
  62444. 1245, 0, 0, 1136, 1245, 0, 1252, 534, 534, 534, 534, 534, 534, 3279, 534, 556, 556, 556, 556, 556, 556,
  62445. 556, 556, 556, 556, 3514, 556, 556, 556, 580, 534, 534, 1258, 534, 534, 534, 534, 1264, 534, 534, 534,
  62446. 534, 534, 534, 534, 534, 534, 3455, 534, 534, 3457, 556, 556, 556, 534, 534, 1285, 534, 534, 534, 534,
  62447. 534, 534, 534, 534, 534, 534, 1296, 534, 534, 534, 534, 534, 534, 3341, 534, 534, 534, 534, 534, 534, 534,
  62448. 534, 556, 580, 3607, 3608, 3609, 534, 556, 580, 534, 556, 580, 0, 0, 0, 0, 0, 0, 333, 0, 0, 333, 0, 0,
  62449. 333, 0, 0, 0, 534, 534, 1301, 534, 534, 534, 534, 534, 534, 534, 534, 1308, 534, 534, 534, 1315, 1317,
  62450. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2149, 534, 1339, 534, 1341,
  62451. 901, 1343, 556, 556, 556, 556, 556, 1350, 556, 556, 556, 556, 556, 556, 2225, 556, 556, 556, 556, 556,
  62452. 556, 556, 556, 556, 2244, 556, 556, 556, 556, 2248, 556, 1356, 556, 556, 556, 556, 556, 556, 556, 556,
  62453. 556, 556, 1377, 556, 556, 556, 556, 556, 556, 2241, 556, 2243, 556, 556, 556, 556, 556, 556, 556, 1425,
  62454. 556, 556, 556, 556, 556, 26009, 1341, 975, 580, 556, 556, 556, 556, 1400, 556, 556, 556, 1407, 1409, 556,
  62455. 556, 556, 556, 556, 556, 1386, 556, 556, 556, 556, 556, 556, 556, 1395, 556, 1480, 580, 580, 580, 580,
  62456. 1485, 580, 580, 580, 580, 580, 580, 580, 580, 1492, 580, 580, 580, 580, 2352, 580, 580, 580, 580, 580,
  62457. 580, 580, 580, 580, 580, 580, 2628, 580, 580, 580, 580, 580, 580, 1499, 1501, 580, 580, 580, 580, 580,
  62458. 580, 580, 580, 580, 580, 580, 580, 2878, 580, 580, 2881, 1550, 0, 0, 0, 1556, 0, 0, 0, 1562, 0, 0, 0, 0,
  62459. 0, 0, 0, 0, 2957312, 0, 0, 0, 0, 0, 0, 0, 0, 1150, 0, 0, 0, 0, 0, 0, 0, 0, 1166, 0, 0, 0, 0, 0, 0, 0, 0,
  62460. 1179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2094, 0, 0, 0, 1573, 1574, 0, 0, 0, 0, 0, 1580, 0, 0, 0, 0, 0,
  62461. 0, 0, 69632, 73728, 0, 0, 0, 373, 0, 65536, 0, 0, 0, 1601, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1677, 0,
  62462. 0, 0, 0, 0, 0, 1619, 0, 0, 0, 0, 0, 0, 0, 1627, 1628, 0, 0, 0, 0, 0, 1604, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62463. 0, 254407, 0, 0, 0, 0, 0, 0, 0, 0, 1635, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 382, 0, 0, 0, 386, 0, 0, 0,
  62464. 1685, 0, 0, 0, 0, 0, 1689, 0, 0, 1692, 0, 0, 0, 0, 0, 0, 3143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2756, 0, 0,
  62465. 2759, 0, 0, 0, 0, 0, 0, 1689, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1705, 0, 1707, 1681, 534, 534, 534, 534, 534,
  62466. 534, 534, 534, 534, 534, 534, 1719, 534, 534, 534, 534, 534, 1791, 534, 534, 534, 534, 534, 534, 1341, 0,
  62467. 556, 556, 556, 556, 556, 2295, 0, 0, 0, 580, 580, 580, 580, 580, 580, 580, 2666, 580, 580, 580, 580, 580,
  62468. 580, 580, 580, 580, 1446, 580, 580, 580, 580, 580, 580, 534, 534, 534, 1725, 534, 534, 534, 534, 534, 534,
  62469. 534, 534, 534, 534, 1736, 534, 534, 534, 534, 534, 2179, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62470. 2143, 534, 2145, 534, 534, 534, 534, 534, 534, 1740, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62471. 1751, 534, 534, 534, 534, 534, 2207, 0, 0, 0, 556, 556, 556, 556, 556, 556, 556, 1403, 556, 556, 556, 556,
  62472. 556, 556, 556, 556, 1408, 556, 556, 556, 556, 556, 556, 556, 534, 534, 1756, 534, 534, 534, 534, 534, 534,
  62473. 534, 534, 534, 534, 534, 534, 534, 2172, 534, 534, 2002, 580, 580, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62474. 0, 0, 696, 0, 0, 2019, 2020, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662, 0, 0, 0, 2055, 2056, 0, 0, 2058,
  62475. 2059, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2617344, 0, 0, 0, 0, 2081, 0, 0, 0, 0, 2084, 2085, 0, 0, 0, 0, 0,
  62476. 2091, 0, 0, 0, 0, 0, 0, 3259, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 534, 849, 534, 534, 534, 534, 534,
  62477. 534, 534, 2152, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2161, 534, 534, 534, 534, 534, 534,
  62478. 3452, 534, 3454, 534, 534, 3456, 534, 556, 556, 556, 556, 3509, 556, 556, 556, 556, 556, 556, 556, 556,
  62479. 556, 580, 580, 580, 580, 580, 580, 0, 0, 0, 3595, 534, 534, 2164, 534, 534, 534, 534, 534, 534, 534, 534,
  62480. 534, 534, 534, 534, 534, 534, 534, 2174, 534, 534, 534, 2191, 534, 534, 534, 2194, 534, 534, 534, 534,
  62481. 2199, 534, 534, 534, 534, 534, 534, 1759, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1732, 534, 534,
  62482. 534, 534, 534, 534, 556, 2237, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2246, 556, 556, 2249,
  62483. 556, 556, 2277, 556, 556, 556, 556, 2281, 556, 556, 556, 556, 2286, 556, 556, 556, 556, 556, 1808, 556,
  62484. 556, 556, 556, 556, 556, 556, 556, 556, 556, 2608, 556, 556, 556, 556, 556, 580, 2324, 580, 580, 580, 580,
  62485. 580, 580, 580, 580, 580, 580, 2333, 580, 580, 2336, 580, 580, 2364, 580, 580, 580, 580, 2368, 580, 580,
  62486. 580, 580, 2373, 580, 580, 580, 580, 580, 2665, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1979,
  62487. 580, 580, 580, 580, 580, 2398, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2408, 0, 0, 0, 0, 0, 0, 687, 0, 0, 0, 770, 0,
  62488. 0, 0, 0, 789, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176128, 176128, 176128, 176128, 176128, 176128, 176128,
  62489. 176128, 534, 534, 2488, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2496, 534, 534, 534, 534, 534,
  62490. 882, 534, 534, 534, 534, 534, 556, 556, 556, 556, 556, 3411, 556, 556, 556, 3415, 556, 556, 534, 534,
  62491. 2514, 534, 534, 2516, 534, 2517, 534, 534, 534, 534, 534, 534, 534, 2524, 534, 534, 2528, 534, 534, 534,
  62492. 534, 534, 534, 534, 534, 534, 534, 534, 534, 2539, 556, 556, 2560, 556, 556, 556, 556, 556, 556, 556, 556,
  62493. 556, 556, 556, 556, 556, 3472, 580, 580, 556, 556, 556, 2575, 556, 556, 556, 2578, 556, 556, 2580, 556,
  62494. 2581, 556, 556, 556, 556, 556, 1827, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1814, 556, 556,
  62495. 556, 556, 1820, 580, 2646, 580, 2647, 580, 580, 580, 580, 580, 580, 580, 580, 2655, 580, 580, 2659, 0,
  62496. 2696, 2697, 0, 0, 2700, 2701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3178496, 2670592, 0, 2744320, 0, 0, 2772, 534,
  62497. 2775, 534, 534, 534, 534, 2780, 534, 534, 534, 2783, 534, 534, 534, 534, 534, 534, 534, 3002, 3003, 534,
  62498. 534, 534, 534, 534, 534, 534, 534, 2494, 534, 534, 534, 534, 534, 534, 534, 534, 1744, 534, 534, 534,
  62499. 1748, 534, 534, 1753, 2808, 534, 534, 534, 0, 0, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3358,
  62500. 556, 556, 556, 556, 556, 2819, 556, 2822, 556, 556, 556, 556, 2827, 556, 556, 556, 2830, 556, 556, 556,
  62501. 556, 556, 556, 2255, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2228, 556, 2230, 556, 556, 556, 556,
  62502. 556, 556, 2857, 556, 556, 556, 0, 0, 580, 580, 580, 580, 580, 580, 580, 580, 2652, 580, 580, 580, 580,
  62503. 580, 580, 580, 580, 580, 2868, 580, 2871, 580, 580, 580, 580, 2876, 580, 580, 580, 2879, 580, 580, 580,
  62504. 580, 1034, 580, 580, 580, 580, 580, 0, 0, 0, 534, 580, 556, 580, 580, 580, 580, 2906, 580, 580, 580, 534,
  62505. 580, 556, 534, 534, 556, 556, 580, 580, 0, 0, 3112, 0, 3114, 0, 0, 0, 3118, 0, 0, 534, 534, 534, 534,
  62506. 3013, 534, 534, 534, 534, 534, 556, 556, 556, 3021, 556, 556, 556, 556, 556, 2266, 2267, 556, 556, 556,
  62507. 556, 556, 556, 2274, 556, 556, 0, 580, 580, 580, 580, 580, 580, 994, 580, 580, 1008, 580, 580, 580, 580,
  62508. 580, 2341, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 0, 0, 733, 534, 580, 556, 0, 0, 3121, 0, 0,
  62509. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1693, 0, 0, 534, 3173, 534, 534, 534, 534, 534, 534, 534, 556, 556, 556,
  62510. 556, 556, 556, 556, 2839, 556, 556, 556, 556, 556, 556, 556, 556, 1811, 556, 556, 556, 556, 556, 556, 556,
  62511. 556, 556, 3183, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3033, 556, 556, 556, 556,
  62512. 3193, 556, 556, 556, 556, 556, 556, 3199, 556, 3201, 556, 556, 556, 556, 556, 0, 0, 0, 0, 580, 580, 580,
  62513. 2303, 580, 2305, 580, 580, 580, 3228, 580, 3230, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580, 556,
  62514. 556, 556, 556, 580, 3423, 580, 3425, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2888, 580, 580, 580,
  62515. 580, 580, 580, 0, 0, 0, 3248, 0, 0, 0, 0, 0, 0, 0, 3132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3334, 534, 534, 0,
  62516. 3257, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 2982, 534, 534, 3264, 534, 534, 534, 3268, 534,
  62517. 534, 534, 534, 534, 534, 534, 534, 534, 1328, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 3277, 534,
  62518. 534, 534, 556, 556, 556, 556, 556, 3282, 556, 556, 556, 556, 556, 2294, 0, 0, 0, 580, 580, 580, 580, 580,
  62519. 580, 580, 580, 3482, 580, 580, 3484, 580, 0, 0, 0, 556, 3286, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62520. 556, 556, 556, 556, 556, 1883, 556, 3295, 556, 556, 556, 556, 580, 580, 580, 580, 580, 3301, 580, 580,
  62521. 580, 3305, 580, 580, 580, 580, 2380, 534, 580, 556, 534, 534, 534, 534, 556, 556, 556, 556, 580, 580, 580,
  62522. 580, 0, 534, 3601, 556, 3602, 580, 3603, 3489, 0, 0, 0, 534, 534, 534, 3496, 534, 534, 534, 534, 534, 534,
  62523. 534, 534, 1265, 534, 534, 534, 534, 534, 534, 534, 3504, 556, 556, 556, 3508, 556, 556, 556, 556, 556,
  62524. 556, 556, 556, 3516, 556, 580, 580, 580, 580, 2624, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62525. 1475, 580, 580, 580, 580, 580, 580, 3521, 580, 580, 580, 580, 580, 580, 580, 580, 3529, 580, 0, 0, 0, 0,
  62526. 0, 0, 122880, 122880, 122880, 122880, 122880, 0, 122880, 0, 2105631, 12290, 0, 3532, 0, 3534, 534, 534,
  62527. 534, 534, 534, 534, 534, 534, 534, 3540, 3541, 534, 534, 534, 534, 534, 2208, 0, 0, 0, 556, 556, 556, 556,
  62528. 556, 556, 556, 1387, 556, 556, 556, 1391, 556, 556, 556, 556, 556, 357, 358, 0, 0, 0, 0, 0, 0, 0, 364, 0,
  62529. 292, 0, 0, 0, 0, 0, 0, 688, 0, 0, 0, 0, 364, 364, 364, 0, 0, 0, 0, 0, 391, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62530. 0, 0, 722, 0, 735, 654, 467, 467, 481, 0, 0, 481, 358, 358, 358, 503, 358, 358, 358, 358, 467, 467, 599,
  62531. 575, 575, 575, 575, 575, 575, 575, 599, 599, 599, 552, 599, 599, 599, 599, 599, 599, 599, 575, 575, 552,
  62532. 575, 599, 575, 599, 1, 12290, 556, 556, 928, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 964, 556,
  62533. 556, 556, 556, 556, 2294, 2615, 0, 0, 0, 0, 580, 580, 580, 580, 580, 534, 556, 580, 0, 0, 0, 0, 0, 0, 0,
  62534. 0, 2924, 0, 0, 0, 0, 0, 0, 534, 534, 534, 891, 534, 556, 556, 556, 964, 556, 0, 580, 580, 580, 1038, 580,
  62535. 580, 580, 580, 2636, 580, 2638, 580, 580, 580, 580, 2642, 580, 580, 580, 580, 0, 0, 0, 3440, 0, 0, 0,
  62536. 3443, 0, 0, 534, 534, 78114, 1066, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1084, 0, 0, 0, 0, 670, 0, 0, 0, 0,
  62537. 0, 0, 0, 0, 0, 0, 0, 0, 2432, 0, 0, 0, 1184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 2132,
  62538. 2133, 534, 534, 1340, 1341, 901, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1353, 556, 556, 556, 556,
  62539. 580, 3590, 580, 580, 580, 580, 0, 0, 0, 534, 534, 534, 534, 534, 534, 1713, 534, 534, 534, 534, 534, 534,
  62540. 534, 2140, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2990, 534, 534, 534, 534, 534, 534, 556, 556,
  62541. 1362, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3047, 556, 556, 556, 0, 1551, 0, 0,
  62542. 0, 1557, 0, 0, 0, 1563, 0, 0, 0, 0, 0, 0, 0, 1650, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172032, 0,
  62543. 1656, 0, 0, 0, 0, 0, 0, 0, 0, 1662, 0, 1664, 0, 0, 0, 0, 0, 0, 172032, 172032, 172032, 172032, 172032,
  62544. 172032, 172032, 172032, 1, 12290, 534, 534, 1771, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62545. 534, 534, 2523, 534, 534, 556, 556, 1854, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1866,
  62546. 556, 556, 556, 556, 932, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 1815, 556, 556, 556, 556,
  62547. 556, 1887, 556, 556, 556, 556, 556, 556, 26009, 0, 580, 580, 580, 580, 580, 580, 2312, 580, 580, 580, 580,
  62548. 580, 580, 580, 580, 580, 1488, 580, 580, 580, 580, 580, 580, 580, 580, 580, 1924, 580, 580, 580, 580, 580,
  62549. 580, 580, 580, 580, 580, 580, 580, 3073, 580, 580, 580, 580, 580, 1937, 580, 580, 580, 580, 580, 580, 580,
  62550. 580, 580, 580, 580, 1950, 580, 580, 580, 580, 2648, 580, 580, 580, 580, 580, 580, 580, 580, 2656, 580,
  62551. 580, 580, 580, 580, 3231, 580, 580, 580, 580, 580, 580, 580, 534, 580, 556, 580, 580, 580, 1973, 580, 580,
  62552. 580, 580, 580, 580, 580, 580, 580, 1983, 580, 580, 580, 580, 1484, 580, 580, 580, 580, 580, 580, 580, 580,
  62553. 580, 580, 580, 3222, 580, 580, 580, 580, 0, 0, 0, 2043, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 733, 1171, 0,
  62554. 0, 534, 2151, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2795, 534, 2236, 556,
  62555. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2600, 2323, 580, 580, 580, 580, 580,
  62556. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3089, 580, 580, 580, 580, 2622, 580, 580, 580, 580, 580,
  62557. 580, 580, 580, 580, 580, 580, 580, 580, 3224, 580, 580, 2695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62558. 2120, 2734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2719, 534, 2774, 534, 2776, 534, 534, 534, 534,
  62559. 534, 534, 534, 534, 534, 534, 534, 534, 2160, 534, 534, 534, 556, 2821, 556, 2823, 556, 556, 556, 556,
  62560. 556, 556, 556, 556, 556, 556, 556, 556, 3190, 556, 556, 556, 580, 580, 580, 2870, 580, 2872, 580, 580,
  62561. 580, 580, 580, 580, 580, 580, 580, 580, 2654, 580, 580, 580, 580, 580, 0, 0, 0, 0, 2933, 0, 0, 0, 0, 0, 0,
  62562. 0, 0, 0, 0, 0, 534, 534, 534, 2981, 534, 556, 556, 556, 556, 3289, 556, 556, 556, 556, 556, 556, 556, 556,
  62563. 556, 556, 556, 3202, 556, 556, 556, 556, 580, 3308, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62564. 580, 580, 580, 3314, 580, 580, 556, 556, 3589, 556, 580, 580, 580, 580, 3593, 580, 0, 0, 0, 534, 534, 534,
  62565. 3152, 534, 534, 534, 534, 534, 534, 534, 3157, 534, 534, 534, 0, 0, 359, 0, 0, 0, 0, 0, 0, 364, 0, 292, 0,
  62566. 0, 0, 0, 0, 0, 702, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2600960, 0, 0, 2768896, 2777088, 2781184, 0, 0, 369, 0,
  62567. 0, 369, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2040, 2041, 0, 600, 576, 576, 576, 576, 576, 576, 576, 600,
  62568. 600, 600, 553, 600, 600, 600, 600, 600, 600, 600, 576, 576, 553, 576, 600, 576, 600, 1, 12290, 556, 923,
  62569. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 2234, 556, 556, 556, 556, 556, 1367,
  62570. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3547, 3548, 556, 556, 580, 580, 580, 580, 580,
  62571. 1500, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3102, 3103, 3104, 534, 1646, 0, 0,
  62572. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2748, 0, 0, 1684, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2065, 0,
  62573. 0, 580, 580, 580, 1938, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 3223, 580, 580, 580,
  62574. 0, 0, 0, 2723, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 734, 0, 0, 0, 2942, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62575. 0, 0, 0, 2760, 0, 0, 0, 0, 3249, 0, 3250, 0, 0, 0, 0, 3132, 0, 0, 0, 0, 0, 0, 0, 3333, 0, 534, 534, 534,
  62576. 0, 0, 0, 360, 361, 362, 363, 0, 0, 364, 0, 292, 0, 0, 0, 0, 0, 0, 718, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2445,
  62577. 0, 0, 0, 0, 0, 0, 361, 0, 360, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 427, 65536, 0, 0, 0, 0, 685, 534, 534,
  62578. 838, 842, 845, 534, 853, 534, 534, 534, 868, 427, 427, 0, 427, 0, 361, 427, 450, 0, 0, 0, 0, 0, 0, 0, 0,
  62579. 690, 691, 0, 364, 364, 364, 0, 0, 0, 0, 0, 491, 491, 0, 498, 498, 498, 498, 504, 505, 498, 498, 518, 518,
  62580. 518, 518, 450, 450, 450, 450, 450, 450, 450, 450, 450, 518, 518, 518, 518, 518, 518, 518, 518, 554, 577,
  62581. 554, 577, 554, 554, 577, 554, 601, 577, 577, 577, 577, 577, 577, 577, 601, 601, 601, 554, 601, 601, 601,
  62582. 601, 601, 601, 601, 577, 577, 613, 618, 601, 618, 624, 1, 12290, 534, 534, 887, 534, 534, 556, 556, 960,
  62583. 556, 556, 0, 580, 580, 1034, 580, 580, 580, 580, 1502, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62584. 580, 2332, 580, 580, 580, 580, 534, 2513, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62585. 534, 2806, 534, 534, 534, 534, 2542, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 0, 0, 0, 0, 556,
  62586. 556, 556, 2216, 556, 2218, 556, 580, 2674, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 534, 580,
  62587. 556, 534, 534, 534, 534, 534, 2491, 534, 534, 534, 534, 2495, 534, 534, 534, 534, 534, 0, 0, 0, 0, 556,
  62588. 556, 2215, 556, 556, 556, 556, 602, 578, 578, 578, 578, 578, 578, 578, 602, 602, 602, 555, 602, 602, 602,
  62589. 602, 602, 602, 602, 578, 578, 555, 578, 602, 578, 602, 1, 12290, 0, 0, 698, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62590. 0, 0, 0, 2410, 0, 0, 728, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2952, 0, 0, 0, 728, 0, 784, 0, 0,
  62591. 0, 0, 0, 0, 0, 0, 784, 0, 0, 0, 0, 686, 0, 0, 0, 0, 0, 0, 364, 364, 364, 0, 0, 0, 0, 0, 671, 0, 0, 0, 0,
  62592. 0, 0, 0, 0, 0, 0, 0, 3145, 3146, 0, 0, 0, 556, 924, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62593. 556, 556, 556, 2260, 2261, 0, 0, 1176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2433, 0, 0, 534, 1300, 534,
  62594. 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2548, 0, 0, 1418, 556, 556, 556, 556,
  62595. 556, 556, 556, 556, 556, 556, 556, 26009, 1341, 975, 580, 580, 580, 580, 2664, 580, 580, 580, 580, 2668,
  62596. 580, 580, 580, 580, 580, 580, 1505, 580, 580, 1509, 580, 580, 580, 580, 580, 1515, 0, 0, 1553, 0, 0, 0,
  62597. 1559, 0, 0, 0, 0, 0, 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2082, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62598. 736, 0, 0, 0, 0, 0, 0, 0, 534, 534, 534, 534, 2167, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534,
  62599. 1733, 534, 534, 534, 534, 556, 556, 556, 2252, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62600. 3471, 580, 580, 580, 580, 580, 580, 2339, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62601. 3485, 0, 0, 3488, 2499, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2202,
  62602. 0, 0, 0, 0, 736, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 1747, 534, 534, 534, 534, 1051,
  62603. 534, 534, 892, 534, 1056, 556, 556, 965, 556, 0, 1061, 580, 580, 1039, 580, 580, 580, 580, 2885, 580, 580,
  62604. 580, 580, 580, 580, 580, 580, 580, 580, 580, 2680, 534, 580, 556, 534, 556, 556, 1420, 556, 556, 556, 556,
  62605. 556, 556, 556, 556, 556, 26009, 1341, 975, 580, 580, 580, 580, 2894, 580, 580, 580, 580, 580, 580, 580,
  62606. 580, 580, 580, 580, 2900, 580, 580, 580, 580, 534, 534, 534, 534, 1726, 534, 534, 534, 534, 534, 534, 534,
  62607. 534, 534, 534, 534, 2144, 534, 534, 2148, 534, 1821, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62608. 556, 556, 556, 556, 556, 2843, 580, 580, 1954, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580,
  62609. 580, 3313, 580, 580, 580, 580, 556, 2586, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556,
  62610. 556, 2288, 556, 556, 556, 556, 556, 2614, 0, 0, 0, 0, 0, 0, 580, 580, 580, 580, 580, 1039, 580, 580, 580,
  62611. 580, 0, 0, 0, 534, 580, 556, 0, 0, 0, 0, 2957, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 534, 2979, 534, 534, 534,
  62612. 2983, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, 2498, 3065, 580, 580,
  62613. 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 580, 2889, 580, 580, 580, 580, 580, 3192, 556,
  62614. 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 556, 3035, 1134592, 0, 1134592, 0, 0, 0,
  62615. 1134592, 1135007, 1135007, 0, 0, 0, 0, 0, 1135007, 0, 0, 0, 0, 700, 701, 0, 0, 0, 0, 0, 707, 0, 0, 0, 711,
  62616. 0, 1134592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2718, 0, 0, 1134592, 1134592, 0, 0, 0, 0, 1135196,
  62617. 1135196, 1135196, 1135196, 1134592, 1135196, 1135196, 1135196, 1135196, 1135196, 1135196, 0, 1134592,
  62618. 1134592, 1134592, 1134592, 1135196, 1134592, 1135196, 1, 12290, 2125824, 3117056, 2125824, 2125824,
  62619. 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 2125824, 2125824,
  62620. 2125824, 2125824, 3137536, 2940928, 2940928, 2940928, 0, 0, 0, 0, 0, 2748416, 2879488, 0, 0, 0, 0, 0,
  62621. 2113, 0, 0, 0, 2113, 0, 0, 2118, 2119, 0, 0, 0, 0, 0, 1180, 0, 0, 0, 1184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  62622. 0, 0, 0, 0, 2474, 0, 1147348, 1147348, 1147348, 451, 451, 1147348, 451, 451, 451, 451, 451, 451, 451, 451,
  62623. 1147399, 1147399, 1147399, 1147399, 1147399, 1147399, 1147399, 1147399, 1147399, 1147399, 1147399,
  62624. 1147399, 1147399, 1147399, 1147399, 1147399, 0, 0, 0, 0, 0, 0, 0, 0, 768, 0, 0, 0, 0, 0, 0, 0, 451, 0, 0,
  62625. 0, 0, 0, 1147348, 1147348, 1147348, 1147399, 1147399, 1147348, 1147399, 1147399, 1, 12290, 3, 0, 0, 0, 0,
  62626. 0, 253952, 0, 0, 0, 253952, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2950, 0, 0, 0, 0, 1159168, 0, 1159168,
  62627. 1159168, 0, 1159168, 1159168, 0, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168,
  62628. 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168,
  62629. 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 0, 0, 0, 0, 0, 0, 0, 0, 781, 0, 0, 0, 0, 0,
  62630. 792, 0, 0, 1159168, 0, 0, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168,
  62631. 1159168, 1, 12290, 3, 0, 0, 0, 0, 249856, 0, 0, 0, 249856, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 163840, 0,
  62632. 0, 0, 0, 65536, 0, 2125824, 3117056, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  62633. 2125824, 2125824, 2125824, 0, 0, 974, 2125824, 2125824, 2125824, 2125824, 3149824, 2125824, 2428928,
  62634. 2437120, 2125824, 2486272, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  62635. 2125824, 2625536, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2699264, 2125824, 2715648,
  62636. 2125824, 2723840, 2125824, 0, 106496, 106496, 0, 106496, 106496, 106496, 106496, 106496, 106496, 106496,
  62637. 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 0, 0, 106496, 0, 0, 106496,
  62638. 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2183168,
  62639. 0, 0, 0, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 695, 0, 0, 0, 0, 0, 3108864, 3198976, 0,
  62640. 0, 3043328, 0, 3149824, 2936832, 0, 2760704, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 369, 369, 0, 0, 65536,
  62641. 369
  62642. ];
  62643. XQueryParser.EXPECTED =
  62644. [
  62645. 127, 143, 342, 950, 172, 201, 188, 217, 769, 963, 247, 263, 279, 295, 311, 327, 1395, 373, 1083, 374, 374,
  62646. 374, 374, 374, 374, 374, 374, 374, 419, 391, 407, 466, 435, 589, 1682, 909, 574, 156, 1220, 451, 495, 511,
  62647. 527, 543, 559, 634, 1096, 678, 694, 755, 649, 785, 801, 817, 833, 849, 865, 881, 897, 937, 979, 995, 1023,
  62648. 1039, 1055, 479, 1112, 1128, 1473, 1144, 1160, 1206, 1236, 357, 662, 1266, 709, 1282, 1292, 1308, 1324,
  62649. 1339, 1355, 1411, 1427, 1443, 618, 1459, 724, 1489, 604, 1518, 1528, 231, 1070, 1544, 1560, 1576, 1592,
  62650. 1622, 1250, 1638, 1654, 1606, 921, 1670, 739, 1698, 1714, 1820, 1190, 1730, 1746, 1502, 1758, 1774, 1790,
  62651. 1806, 1175, 1850, 1860, 1836, 1009, 1370, 1876, 1385, 375, 1892, 1896, 1903, 1903, 1903, 1898, 1902, 1903,
  62652. 1910, 1907, 1914, 1918, 1922, 1926, 1929, 1933, 1937, 1941, 1945, 4040, 4040, 4040, 4106, 4040, 4040, 2020,
  62653. 2279, 4040, 1949, 4040, 4040, 4040, 2429, 2379, 4040, 4040, 4040, 4040, 2438, 4040, 4040, 3112, 2651, 3443,
  62654. 2444, 1955, 1984, 1994, 1998, 4040, 4040, 4040, 4040, 4040, 2017, 2042, 4040, 4040, 4040, 2024, 2285, 2030,
  62655. 2034, 4040, 4040, 4040, 4040, 4040, 2041, 4040, 4040, 3002, 2285, 2285, 2285, 2285, 2285, 2111, 1988, 1988,
  62656. 1988, 1988, 1988, 1990, 1955, 1955, 1955, 1955, 1955, 2101, 3099, 1988, 1988, 1988, 1988, 1988, 2120, 1955,
  62657. 1955, 1955, 1955, 1955, 2046, 2055, 4040, 4040, 2212, 2349, 4040, 4040, 4040, 4137, 3441, 4040, 4040, 4040,
  62658. 4040, 3531, 4040, 2745, 1988, 1988, 1988, 2066, 1955, 1955, 1955, 1957, 2073, 4040, 4040, 2473, 3002, 2285,
  62659. 2285, 2026, 1988, 1988, 3101, 1955, 1955, 1956, 2072, 4040, 2471, 4040, 2284, 2285, 3098, 1988, 1988, 2078,
  62660. 1955, 2068, 2129, 2446, 3554, 2285, 2112, 1988, 2120, 1955, 2083, 2281, 2286, 1988, 2067, 2089, 2095, 2113,
  62661. 2049, 2107, 3097, 2114, 2079, 3096, 3100, 2079, 3096, 2114, 2051, 2118, 2126, 2135, 2139, 2143, 2156, 2160,
  62662. 2170, 2170, 2170, 2163, 2167, 2170, 2173, 2177, 2181, 2185, 2189, 2193, 2197, 2201, 2205, 2209, 2216, 4040,
  62663. 4040, 4040, 2131, 4040, 4040, 4040, 2220, 4040, 2226, 4040, 2283, 2287, 1988, 1954, 2122, 2098, 1961, 4040,
  62664. 4040, 4040, 1970, 4040, 2474, 1980, 4040, 2321, 3139, 4040, 2440, 3145, 4427, 2277, 3219, 2796, 3151, 3505,
  62665. 3155, 4040, 3263, 3161, 2906, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040,
  62666. 4040, 4040, 4040, 4041, 2255, 2259, 2262, 2266, 2270, 2274, 3465, 2291, 4040, 4040, 4040, 4040, 3213, 2296,
  62667. 2312, 2303, 2396, 2240, 2243, 2309, 2316, 2320, 2649, 4006, 4040, 2726, 2326, 3670, 4040, 4040, 4040, 4040,
  62668. 2231, 3466, 4040, 4040, 4040, 3429, 2237, 4040, 2618, 3123, 2249, 2253, 3877, 2348, 4040, 4040, 4013, 2355,
  62669. 4040, 2359, 4040, 4040, 4040, 4040, 3173, 2321, 2227, 2367, 3192, 4040, 4040, 2459, 4040, 4040, 3192, 4040,
  62670. 4040, 4348, 2989, 2882, 2918, 3129, 2349, 4040, 3014, 2311, 2670, 2331, 3577, 4417, 2336, 2379, 4040, 4040,
  62671. 2549, 2340, 4040, 4040, 4040, 2984, 4040, 4040, 4040, 4040, 3591, 2979, 4040, 4040, 4040, 3390, 4180, 4419,
  62672. 3131, 4040, 3190, 3194, 4040, 2950, 2989, 2918, 3210, 4040, 2469, 2788, 3212, 4040, 4005, 3283, 3279, 4282,
  62673. 4040, 3281, 4226, 4226, 2601, 4283, 3283, 3283, 1966, 3282, 3279, 1966, 4227, 3283, 4191, 2462, 2478, 4040,
  62674. 4040, 4040, 4040, 2588, 2522, 4040, 4040, 4040, 2007, 2858, 2484, 3025, 2492, 2495, 2498, 2502, 2503, 2507,
  62675. 2511, 2515, 4040, 2521, 4040, 4040, 2526, 4040, 3968, 2913, 2541, 2545, 3867, 2553, 2563, 2574, 2578, 4040,
  62676. 3387, 3385, 4040, 2582, 4040, 3458, 2587, 4040, 3120, 4040, 4040, 4040, 3174, 2074, 2409, 2537, 2432, 4040,
  62677. 4040, 4040, 2536, 2416, 4040, 2373, 2377, 4040, 4040, 4040, 4040, 4255, 2378, 4040, 4040, 4040, 4040, 4256,
  62678. 2379, 4040, 2838, 3503, 4040, 4040, 4040, 4040, 2839, 3504, 3974, 3509, 4040, 4040, 3730, 3536, 4040, 3349,
  62679. 2906, 4040, 3326, 2556, 3181, 3383, 3394, 3403, 4040, 4397, 4040, 3553, 3551, 3545, 4040, 2668, 2912, 3478,
  62680. 3399, 2548, 2592, 3456, 3471, 2600, 4040, 4040, 4040, 4242, 4040, 3147, 4040, 3818, 4040, 4037, 3923, 3990,
  62681. 3561, 4003, 4040, 2655, 4039, 4040, 4040, 4040, 3167, 4040, 4040, 4040, 3331, 3171, 4040, 4040, 4040, 4040,
  62682. 3632, 3179, 4040, 2638, 2611, 2615, 4040, 2388, 2622, 4040, 4040, 4040, 4040, 2389, 2349, 4040, 4040, 4040,
  62683. 2397, 2390, 4040, 4040, 4040, 3141, 4040, 4040, 3846, 4040, 4040, 2630, 2517, 4070, 2637, 2412, 2989, 4040,
  62684. 4040, 4040, 4040, 2344, 4040, 4040, 4040, 4040, 4040, 3269, 2989, 2380, 3207, 4040, 3463, 4040, 4040, 4040,
  62685. 3861, 3470, 4040, 4040, 4040, 3475, 4040, 3482, 4040, 4040, 2631, 3905, 4040, 4040, 4040, 4040, 2631, 3905,
  62686. 2424, 3909, 4040, 2152, 2595, 3785, 3915, 2631, 4365, 2642, 4040, 4040, 4040, 4040, 4085, 2646, 4040, 4040,
  62687. 4040, 4040, 4085, 2646, 4040, 4040, 2464, 4040, 4040, 2285, 2285, 2285, 2285, 2025, 1988, 1988, 1988, 1988,
  62688. 1988, 2120, 3610, 3833, 4040, 4040, 4040, 4365, 2656, 4040, 4040, 4040, 2660, 2665, 3980, 2516, 3196, 2674,
  62689. 2678, 3830, 2685, 4040, 4040, 3830, 2685, 4040, 4040, 2299, 2690, 4040, 3184, 3458, 2004, 3969, 3197, 3312,
  62690. 3251, 2696, 4040, 2037, 2690, 4040, 3251, 2696, 4040, 2702, 2709, 3195, 4000, 2713, 2717, 4040, 2715, 4040,
  62691. 2679, 2723, 4040, 2730, 2734, 2739, 3644, 4040, 2705, 2583, 3646, 2583, 2749, 2753, 2704, 3203, 2944, 2566,
  62692. 2570, 2956, 2945, 3843, 2568, 2568, 2761, 3815, 3641, 2765, 3607, 2769, 2773, 2775, 2779, 2783, 2787, 4040,
  62693. 4040, 4040, 3316, 4040, 4040, 3564, 2792, 3570, 2800, 2804, 2808, 2810, 2814, 2818, 2821, 2823, 2824, 4040,
  62694. 4040, 3315, 4040, 3428, 2828, 3896, 3248, 2833, 2843, 2434, 2453, 3918, 2849, 2907, 2853, 4040, 2150, 2148,
  62695. 4040, 4040, 4040, 4040, 2405, 2349, 4040, 4040, 4040, 4040, 2405, 2349, 4040, 4040, 4040, 4040, 2362, 3442,
  62696. 4040, 4040, 4040, 4040, 2363, 3773, 3950, 4040, 4040, 4040, 2857, 4040, 2559, 2968, 3853, 2862, 2937, 4379,
  62697. 2869, 3988, 3295, 4040, 2873, 4040, 4040, 4040, 3554, 2285, 2285, 2285, 2285, 1987, 1988, 1988, 1988, 1989,
  62698. 1955, 1955, 1955, 1955, 1956, 2103, 4040, 4040, 4040, 2472, 4040, 2109, 2285, 2285, 2285, 2113, 3527, 2877,
  62699. 4040, 4040, 4040, 2886, 2890, 4040, 4040, 4040, 4040, 2980, 4040, 3336, 2829, 3897, 2895, 2899, 4040, 2911,
  62700. 2917, 4040, 4040, 2922, 4040, 4040, 4040, 4040, 2844, 2923, 4040, 4040, 2626, 4289, 4040, 3453, 3038, 4353,
  62701. 4386, 3183, 4040, 4040, 4041, 4370, 4040, 4040, 2845, 2924, 4040, 4040, 4040, 4040, 4040, 2990, 4040, 2558,
  62702. 2928, 4420, 2935, 4040, 2943, 2949, 4040, 2970, 2954, 4040, 4040, 4040, 4040, 3855, 2960, 4040, 4040, 4040,
  62703. 4040, 3855, 2960, 4040, 4040, 4040, 4040, 3389, 4040, 2966, 3897, 2974, 2327, 4275, 4040, 3590, 2978, 4040,
  62704. 3535, 3379, 3488, 3521, 3230, 4040, 4040, 3540, 4040, 4040, 4040, 3439, 4040, 4040, 4040, 4364, 4040, 4040,
  62705. 4040, 4040, 4040, 4040, 4040, 4040, 4378, 4040, 4040, 4040, 2605, 4040, 4040, 2245, 4040, 4040, 3459, 4040,
  62706. 4040, 4038, 3923, 4040, 2013, 3616, 2411, 4040, 3631, 2988, 4040, 4040, 3631, 2988, 4040, 4040, 4040, 2994,
  62707. 4040, 4040, 2350, 4262, 2381, 3617, 4040, 4040, 4346, 4040, 4040, 3000, 4040, 4040, 4346, 4040, 2350, 4208,
  62708. 3615, 2881, 4040, 2795, 3174, 3112, 3180, 3024, 3111, 3180, 3180, 3933, 3014, 3113, 3113, 3006, 3181, 3014,
  62709. 3013, 3014, 3175, 4047, 3018, 3029, 3053, 4040, 4040, 4040, 4040, 3634, 4040, 4221, 4040, 3650, 4040, 4040,
  62710. 4040, 4040, 2631, 3651, 4040, 4040, 4040, 4040, 3648, 4287, 4291, 4040, 4010, 4017, 4303, 4022, 2632, 3182,
  62711. 4040, 4032, 4040, 1950, 4012, 4040, 2865, 4045, 4051, 3043, 3047, 4064, 3061, 3065, 3069, 3073, 3077, 3081,
  62712. 3105, 3084, 4040, 4040, 3633, 4040, 4040, 3443, 2444, 4040, 4040, 4040, 2450, 4040, 4040, 4040, 4349, 4040,
  62713. 4040, 3014, 3276, 2487, 2961, 2691, 4276, 3109, 1976, 3117, 3127, 3289, 3135, 3305, 4040, 3324, 3322, 4040,
  62714. 4040, 3734, 3779, 3739, 3744, 3969, 4040, 3748, 3754, 3761, 3943, 3887, 3765, 4057, 4040, 2488, 2962, 2692,
  62715. 3163, 3224, 3188, 3412, 4040, 4040, 2085, 3201, 4040, 4040, 4040, 4040, 2343, 3217, 3223, 3228, 4040, 4040,
  62716. 4040, 3234, 4040, 4040, 4040, 4040, 4040, 3238, 4040, 4040, 4040, 4040, 3422, 4040, 2529, 2686, 4354, 3245,
  62717. 4040, 4040, 4040, 4342, 4040, 4040, 4040, 4040, 1972, 4040, 4040, 4040, 4040, 4040, 3255, 4040, 4040, 4040,
  62718. 3423, 3952, 2686, 4355, 3261, 4040, 4040, 3267, 4040, 4040, 4040, 1974, 4040, 4040, 4040, 3273, 4040, 4220,
  62719. 3981, 2680, 4356, 3895, 4040, 3287, 4040, 4040, 3293, 4040, 4040, 2062, 4040, 4220, 3953, 3299, 2146, 4040,
  62720. 3303, 4040, 2607, 4040, 4040, 2061, 4040, 4248, 3309, 3894, 3498, 4040, 4360, 4040, 4040, 4040, 4369, 4040,
  62721. 4374, 3056, 4383, 3622, 4040, 4040, 4390, 4040, 4040, 4424, 2742, 4040, 2633, 4040, 3056, 4040, 3039, 3157,
  62722. 4040, 4040, 4040, 4040, 4040, 4040, 4040, 2455, 4325, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 3320, 4040,
  62723. 3330, 3911, 3335, 3629, 3588, 4213, 3943, 3587, 4213, 4213, 4040, 3341, 3589, 3589, 3628, 4214, 3341, 3340,
  62724. 3341, 3630, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 4040, 3836, 2349, 3347, 4040, 3354, 3001, 4080, 4404,
  62725. 3358, 3362, 3366, 3369, 3373, 3373, 3377, 4040, 4040, 3835, 4091, 3410, 4040, 4040, 3416, 4040, 4040, 3420,
  62726. 3427, 4040, 3433, 4040, 4331, 3447, 4040, 4040, 3797, 4040, 3795, 4040, 4040, 4345, 4040, 2350, 1964, 4040,
  62727. 2879, 4040, 3397, 4040, 2904, 4040, 3350, 3488, 4040, 3486, 2535, 3492, 3496, 4040, 4040, 4040, 3502, 4040,
  62728. 4040, 4040, 4127, 4028, 2010, 4131, 4141, 4145, 4149, 4153, 4157, 4161, 4165, 4169, 4173, 4134, 4377, 4293,
  62729. 2534, 3516, 4040, 4040, 4040, 2839, 3504, 4040, 4040, 4040, 4040, 2931, 3442, 4040, 3450, 4040, 2902, 4040,
  62730. 3799, 4363, 3520, 4196, 3525, 3406, 2349, 2757, 2305, 2996, 4393, 4347, 3544, 4040, 3549, 4040, 4040, 3549,
  62731. 4040, 4040, 3558, 2756, 2305, 4077, 4395, 3960, 4040, 3568, 4040, 3823, 2349, 4040, 3997, 3750, 3574, 3884,
  62732. 3961, 4269, 4040, 4270, 4040, 3581, 3944, 3585, 3595, 3931, 3600, 2001, 3930, 3604, 3604, 4211, 3614, 3932,
  62733. 3621, 3626, 3662, 3638, 3655, 3656, 3660, 3667, 3674, 3678, 3682, 3685, 4040, 4040, 4040, 3840, 2596, 3740,
  62734. 3850, 2668, 2332, 3343, 4040, 3859, 4040, 4040, 4040, 2233, 3865, 2891, 3735, 2465, 2351, 3690, 3698, 3874,
  62735. 3702, 3705, 3709, 3713, 3717, 3721, 3725, 3729, 4040, 2423, 2421, 3241, 3772, 4040, 4040, 2939, 3777, 3783,
  62736. 3789, 3793, 4136, 2698, 3342, 2633, 2425, 3803, 4040, 4040, 3808, 2349, 4040, 4040, 4186, 3812, 4040, 4040,
  62737. 4040, 3009, 3822, 3827, 4040, 3871, 2532, 4318, 3881, 4040, 3891, 3773, 4040, 4040, 4040, 4040, 3901, 4040,
  62738. 4040, 4040, 4040, 4040, 2385, 4040, 4040, 4040, 4040, 3014, 4040, 2394, 4040, 2401, 2379, 4035, 3922, 4040,
  62739. 4040, 2292, 3927, 4040, 4040, 4040, 4040, 3937, 4040, 4040, 4040, 4040, 2091, 3941, 3948, 4040, 3957, 3757,
  62740. 3966, 2835, 3112, 4040, 4040, 2222, 3979, 4040, 4040, 2719, 3973, 2632, 3183, 3021, 4040, 4055, 4040, 4061,
  62741. 2419, 4040, 3023, 4068, 4074, 4084, 4112, 4089, 4095, 3596, 4100, 4308, 4099, 4104, 4110, 4099, 4113, 4119,
  62742. 3257, 4117, 4123, 4040, 4040, 4040, 4040, 4177, 4184, 2836, 3686, 4190, 3693, 4195, 4200, 4410, 4205, 4218,
  62743. 4040, 3090, 2735, 4225, 3093, 4231, 4040, 4040, 4040, 3631, 4235, 2661, 4040, 2681, 4429, 2369, 4040, 4239,
  62744. 4040, 4040, 4040, 4040, 3804, 4246, 4040, 4040, 4040, 4252, 4040, 4040, 4040, 2631, 4260, 4266, 4040, 4040,
  62745. 4040, 4025, 4185, 2837, 2686, 2480, 4274, 4040, 4280, 4040, 4040, 4040, 4040, 4201, 3978, 4018, 4303, 3768,
  62746. 4040, 3050, 4040, 4040, 3985, 4040, 4040, 3994, 4040, 4322, 4385, 4329, 4040, 4040, 4040, 4040, 4335, 4040,
  62747. 4040, 4040, 4040, 3663, 4339, 4040, 4040, 4297, 4040, 3057, 3087, 4301, 3962, 3032, 4040, 4040, 4040, 4040,
  62748. 2624, 4307, 4040, 4040, 4040, 4040, 2624, 4312, 4315, 4040, 2322, 3436, 2837, 2058, 4040, 4040, 3035, 4040,
  62749. 4401, 4408, 3694, 4040, 4040, 3512, 4040, 2631, 4414, 4040, 3511, 4558, 4433, 6024, 6027, 4439, 4466, 4468,
  62750. 4468, 4446, 4455, 4467, 4468, 4468, 4468, 4468, 4468, 4468, 4473, 4468, 4468, 4463, 4457, 4459, 4479, 4477,
  62751. 4483, 4468, 4469, 4493, 4496, 4506, 4510, 4524, 4519, 4511, 4500, 4502, 4502, 4518, 4519, 4498, 4515, 4523,
  62752. 4528, 4532, 4536, 4539, 4547, 4546, 4543, 4551, 4554, 4556, 4566, 5097, 4574, 6086, 5003, 5101, 5101, 5101,
  62753. 4593, 4599, 4602, 4602, 4602, 4602, 4608, 4640, 4568, 4622, 4628, 5101, 4434, 5101, 5099, 5101, 6713, 5101,
  62754. 6256, 5101, 5101, 4584, 5992, 5101, 5101, 4729, 5101, 5473, 6277, 5101, 5007, 4602, 5693, 4609, 5696, 5699,
  62755. 5699, 5699, 5699, 4601, 4602, 5699, 4602, 4619, 4621, 4623, 4627, 6087, 5101, 4434, 6165, 6164, 5101, 5101,
  62756. 6380, 6242, 5096, 5101, 4576, 5101, 6463, 5101, 5101, 5635, 4488, 5366, 6275, 5101, 4581, 5101, 4590, 5411,
  62757. 5123, 5123, 5123, 5697, 5699, 4603, 4621, 4621, 4622, 4627, 4627, 4628, 5101, 4583, 5448, 6513, 5474, 5101,
  62758. 5008, 5101, 5101, 4602, 4632, 5123, 5699, 4602, 4602, 4602, 5704, 5121, 4602, 4621, 4627, 5101, 4583, 6563,
  62759. 5101, 4584, 6017, 5101, 5101, 5699, 5701, 4602, 4602, 4602, 4632, 4640, 5705, 5101, 5101, 5101, 4734, 5700,
  62760. 4602, 4602, 4602, 5705, 4643, 5701, 5101, 5101, 4824, 5651, 4602, 4650, 5101, 5101, 4824, 6512, 5010, 5695,
  62761. 5123, 5123, 5698, 5690, 4602, 4608, 5696, 5700, 5703, 5101, 4602, 5101, 5101, 5121, 5123, 5123, 5123, 5699,
  62762. 5699, 5699, 5702, 5123, 5698, 5699, 5702, 4602, 4602, 5704, 4607, 4602, 5705, 5123, 5697, 5704, 5101, 5101,
  62763. 4816, 4822, 5699, 4602, 5704, 5695, 5698, 5702, 5694, 5701, 4651, 4652, 4650, 5101, 4592, 5101, 5101, 5815,
  62764. 5567, 5101, 5101, 5106, 6519, 6761, 6550, 6560, 4662, 4695, 4656, 4660, 4693, 4666, 4673, 4670, 4680, 4684,
  62765. 4691, 4693, 4693, 4693, 4693, 4694, 4676, 4699, 4693, 4703, 4708, 4714, 4704, 4726, 4740, 4744, 4687, 4751,
  62766. 4753, 4748, 4787, 4789, 4789, 4791, 4757, 4759, 4761, 4763, 4776, 4776, 4770, 4767, 4774, 4717, 4675, 4710,
  62767. 4780, 4784, 4795, 4797, 4801, 4805, 4809, 5101, 4592, 6198, 6202, 4990, 5007, 5230, 6461, 5101, 6373, 5101,
  62768. 5101, 4824, 6698, 4831, 5101, 5101, 5101, 4736, 5108, 5108, 5101, 5101, 4826, 6485, 5490, 5979, 4838, 5101,
  62769. 4720, 4985, 5101, 4720, 5101, 5101, 4853, 5311, 4857, 5333, 4876, 4902, 4906, 4906, 4906, 4906, 4908, 4915,
  62770. 4917, 4912, 4921, 4925, 4928, 4931, 4934, 4939, 4938, 4943, 4944, 4959, 4949, 4948, 4953, 4956, 4963, 5101,
  62771. 5107, 5101, 4892, 5101, 5007, 5101, 5101, 5695, 5123, 5123, 5123, 5123, 5696, 5699, 5988, 5101, 5101, 5101,
  62772. 4825, 5300, 5101, 5608, 5101, 4811, 5449, 6426, 4969, 5101, 5101, 4988, 6219, 5101, 5018, 4987, 5101, 5101,
  62773. 4860, 5101, 5101, 4995, 5015, 5101, 6412, 5034, 5101, 5101, 5101, 4893, 6751, 6138, 5101, 5101, 5101, 4894,
  62774. 6729, 5101, 5101, 5101, 4965, 5055, 5068, 5081, 5086, 5091, 5076, 5095, 5101, 4824, 5933, 5929, 5376, 5087,
  62775. 4434, 5101, 5101, 5101, 4979, 5008, 6409, 5996, 5101, 5999, 5151, 5987, 5376, 5101, 4826, 6502, 6738, 6204,
  62776. 5101, 6730, 5101, 5101, 4891, 5101, 4570, 5101, 5115, 5127, 5074, 4442, 5096, 5101, 5101, 5101, 4975, 5538,
  62777. 5411, 5986, 5281, 5101, 4840, 5628, 5355, 5382, 4434, 4736, 5101, 4973, 5101, 5101, 5101, 4840, 5687, 5132,
  62778. 5075, 5140, 5890, 5072, 5076, 5141, 6462, 4888, 5101, 5101, 4895, 5101, 5343, 5073, 6582, 4451, 5101, 4894,
  62779. 5101, 5101, 6416, 5101, 5101, 5101, 6191, 5101, 5415, 5892, 5074, 6583, 5096, 5101, 5101, 4898, 5999, 5411,
  62780. 5280, 5101, 5101, 4974, 4978, 5134, 5157, 5101, 5101, 5007, 5101, 5132, 5075, 5159, 5101, 4897, 5101, 5871,
  62781. 4980, 5101, 5949, 5135, 5159, 5101, 4976, 5101, 5101, 5010, 5101, 5101, 5169, 4434, 5101, 5101, 5009, 5101,
  62782. 5101, 5101, 4613, 4614, 4975, 5101, 4614, 5101, 5411, 4978, 6164, 6391, 5101, 4977, 6380, 5395, 5376, 5188,
  62783. 4872, 5243, 5197, 5197, 5194, 5197, 5199, 5203, 5205, 5207, 5209, 5209, 5209, 5213, 5213, 5213, 5213, 5214,
  62784. 5213, 5213, 5215, 5219, 5221, 5101, 5101, 5101, 5036, 5101, 5059, 5063, 5372, 5101, 5101, 5101, 6378, 6010,
  62785. 5101, 4978, 6569, 5101, 4980, 5101, 5417, 5101, 5101, 5101, 5891, 5074, 5240, 5101, 5351, 6463, 5247, 5101,
  62786. 5101, 5257, 5101, 5101, 5101, 5068, 5263, 6448, 5875, 5101, 4981, 5101, 5101, 5876, 6281, 5416, 5275, 4435,
  62787. 5874, 5101, 4990, 6089, 5406, 5410, 5101, 5265, 5407, 5285, 5101, 5101, 5297, 6402, 5101, 5101, 5304, 5309,
  62788. 5101, 5101, 5101, 5057, 5371, 5101, 5101, 5101, 5059, 5330, 4833, 5427, 5101, 5010, 4978, 5101, 5415, 5358,
  62789. 5101, 5101, 5101, 5100, 5883, 5359, 5101, 5101, 5102, 6015, 4893, 5258, 5101, 5342, 5432, 5101, 5348, 5101,
  62790. 5024, 6570, 5977, 5382, 4434, 5101, 5101, 5102, 6113, 5726, 5101, 6379, 5101, 5101, 5101, 5102, 5101, 5101,
  62791. 6462, 5101, 4561, 5876, 5101, 6422, 6426, 5381, 6381, 6423, 6427, 5382, 5101, 5031, 5101, 5101, 4866, 4885,
  62792. 4811, 5438, 6425, 5399, 6381, 5479, 5101, 5101, 5101, 5104, 5106, 5060, 5064, 5101, 5035, 5101, 5101, 5051,
  62793. 5101, 5350, 5101, 5879, 4896, 5431, 5101, 5101, 5101, 5106, 5101, 4975, 5471, 5101, 5101, 5101, 5107, 6430,
  62794. 5101, 5101, 5101, 5108, 4890, 6429, 6381, 5101, 5101, 5102, 6446, 5479, 5101, 5101, 5453, 5269, 5410, 5101,
  62795. 4614, 5101, 5101, 6380, 5153, 5101, 5101, 5732, 5268, 5470, 5101, 5101, 5102, 6697, 5459, 5468, 6381, 5101,
  62796. 5041, 5046, 5045, 5478, 5101, 5101, 5453, 4614, 5101, 5101, 5101, 5111, 6088, 5350, 5877, 5413, 5538, 5101,
  62797. 5101, 5047, 5047, 5047, 5461, 5101, 6088, 6119, 5106, 5267, 5271, 5101, 5047, 6213, 5101, 5101, 5404, 4990,
  62798. 5404, 5408, 5404, 4990, 5404, 5962, 5423, 5961, 5101, 6084, 5423, 5233, 6104, 5101, 4990, 5232, 5230, 5101,
  62799. 5232, 4989, 5232, 5232, 5232, 5231, 6488, 5101, 5101, 5101, 5168, 5876, 5722, 5483, 4434, 5099, 5101, 5101,
  62800. 6498, 6279, 5487, 5101, 4886, 6166, 5489, 5856, 5494, 5500, 5498, 5504, 5504, 5504, 5504, 5506, 5513, 5510,
  62801. 5517, 5519, 5519, 5519, 5521, 5519, 5525, 5525, 5525, 5525, 5527, 6280, 5415, 5319, 5672, 5101, 5005, 6438,
  62802. 5101, 5101, 5103, 5101, 5101, 5101, 6361, 6199, 5571, 5101, 5101, 5101, 5176, 5626, 6498, 5551, 5101, 6442,
  62803. 5561, 5101, 5814, 5566, 5575, 5101, 5101, 5101, 5181, 6167, 5004, 6438, 5101, 5102, 6092, 6381, 5580, 5101,
  62804. 5101, 5004, 6127, 5600, 5863, 5606, 5862, 5605, 5101, 5101, 5235, 5101, 5101, 5101, 5424, 5102, 6128, 5601,
  62805. 5864, 5607, 5101, 5101, 5101, 5224, 5101, 6167, 5101, 5006, 6440, 5101, 5569, 5101, 5102, 6180, 5148, 5101,
  62806. 5101, 5996, 5101, 6283, 5464, 5101, 5101, 5101, 5228, 5101, 5620, 5101, 5101, 5101, 5232, 5176, 5626, 6753,
  62807. 5665, 5101, 5101, 5632, 5321, 4434, 5101, 5102, 6362, 6200, 5027, 5562, 5101, 5570, 5101, 5101, 5223, 5746,
  62808. 5463, 5101, 5101, 5101, 5266, 4989, 5621, 5101, 5101, 5101, 5278, 6754, 5666, 5101, 5101, 5265, 5407, 6755,
  62809. 5376, 5101, 5101, 4990, 5101, 5612, 5415, 5320, 6393, 5101, 5101, 5176, 5639, 5646, 4577, 5568, 5410, 5640,
  62810. 5664, 5101, 5101, 5101, 5293, 5175, 5639, 5663, 5376, 5659, 5376, 5101, 5101, 5101, 4980, 5657, 5676, 5101,
  62811. 5101, 5288, 5037, 5658, 5101, 5101, 5101, 5411, 5123, 5098, 5101, 5423, 5101, 5102, 6471, 6477, 5098, 5101,
  62812. 5424, 5101, 5101, 5426, 5098, 5424, 5101, 5102, 6558, 5101, 5101, 5101, 6393, 5101, 5426, 5424, 5568, 5424,
  62813. 5233, 5101, 5101, 5102, 6562, 5101, 5104, 5101, 5101, 5101, 4974, 6215, 5710, 4879, 5101, 6496, 5376, 5101,
  62814. 5105, 5101, 5424, 5424, 5099, 5101, 5105, 5101, 5101, 5101, 5720, 4722, 5730, 5742, 5751, 5757, 5766, 5764,
  62815. 5767, 5755, 5761, 5771, 5774, 5776, 5778, 5790, 5782, 5785, 5789, 5790, 5791, 5796, 5795, 5801, 5797, 5806,
  62816. 5101, 5108, 4976, 5101, 5110, 6702, 5101, 5111, 6707, 5101, 5123, 5123, 5123, 5698, 5699, 5699, 5700, 4602,
  62817. 5801, 5802, 5801, 5801, 4998, 5101, 5098, 5101, 5101, 5425, 5101, 5101, 5812, 5819, 5557, 5101, 5145, 5281,
  62818. 5101, 4844, 5876, 4852, 5595, 5101, 4888, 5101, 5950, 5136, 4434, 5101, 4615, 5101, 5101, 5823, 5848, 5941,
  62819. 5101, 5101, 5363, 5101, 5472, 5373, 5101, 5101, 5386, 5101, 5860, 4888, 5868, 5887, 5011, 5011, 5101, 5101,
  62820. 5414, 5101, 6528, 5376, 5101, 5101, 5414, 6347, 5545, 5908, 6527, 4732, 5904, 6529, 5101, 5101, 5423, 5101,
  62821. 5101, 5100, 5942, 5101, 5101, 5101, 5426, 5101, 5101, 5101, 5479, 5912, 5924, 5101, 5101, 5423, 5163, 5158,
  62822. 5101, 5101, 5101, 4989, 5101, 5350, 5929, 5376, 5101, 5101, 5454, 5270, 6215, 5393, 5374, 5101, 5168, 5173,
  62823. 5101, 5101, 5101, 5021, 5109, 5101, 5411, 5101, 5853, 5101, 6347, 5101, 5100, 5101, 5102, 5947, 5925, 5101,
  62824. 5101, 5530, 4980, 4811, 5650, 5954, 5376, 4812, 5959, 5955, 5101, 5184, 5539, 6436, 5879, 5098, 5102, 5538,
  62825. 5101, 6166, 5101, 5102, 5447, 5442, 4585, 5993, 5101, 5101, 5538, 6089, 5099, 4592, 5101, 5101, 5546, 5903,
  62826. 4584, 5993, 5101, 5101, 5649, 5940, 5102, 4586, 5994, 5101, 5231, 4887, 5101, 4974, 5100, 5101, 5101, 6712,
  62827. 5101, 5101, 4584, 5995, 5101, 5101, 5706, 5898, 4585, 5995, 5101, 5101, 5808, 5101, 5106, 5101, 5413, 6346,
  62828. 5102, 6004, 5101, 5101, 5833, 5840, 6392, 5107, 5412, 5876, 4894, 5152, 5101, 5035, 5576, 5101, 5101, 5106,
  62829. 6016, 5101, 5101, 5837, 5841, 5101, 5101, 5338, 5101, 6015, 5101, 5101, 5101, 5547, 5412, 5101, 5101, 5101,
  62830. 5612, 5101, 6161, 5101, 5101, 5101, 5679, 5101, 5101, 6367, 5101, 5101, 5842, 6096, 5101, 6282, 5101, 4486,
  62831. 6021, 6046, 6045, 6046, 6046, 6043, 6046, 6050, 6054, 6058, 6062, 6071, 6066, 6070, 6071, 6071, 6075, 6075,
  62832. 6075, 6075, 6078, 6082, 5101, 5101, 5842, 6097, 5103, 5234, 5101, 5101, 5880, 5305, 5101, 5101, 5047, 5101,
  62833. 5101, 6102, 5109, 6108, 5101, 5236, 5101, 5101, 5325, 5101, 6117, 5101, 6123, 5101, 5249, 6209, 6202, 5101,
  62834. 6493, 5101, 5101, 5897, 5101, 5101, 6142, 6181, 5096, 5843, 6097, 5101, 5101, 5966, 5101, 5101, 5996, 5101,
  62835. 5101, 5101, 5876, 5103, 6174, 5101, 5101, 5416, 5421, 5101, 5101, 5251, 6200, 6204, 5101, 5101, 5101, 5949,
  62836. 6147, 6152, 6000, 4980, 4980, 4980, 5101, 5292, 4635, 5101, 5299, 5101, 5101, 5058, 5062, 5371, 6361, 5737,
  62837. 5101, 5101, 5975, 4848, 5988, 6137, 5101, 5101, 5101, 5882, 5102, 5734, 5738, 5101, 5317, 6462, 5349, 6382,
  62838. 5101, 6160, 6159, 5101, 6173, 5101, 5101, 5999, 5101, 5101, 6667, 5106, 4894, 6247, 4978, 5101, 5101, 6004,
  62839. 5101, 6361, 6199, 6203, 5101, 5101, 5101, 5896, 6382, 6382, 5101, 5101, 6111, 5418, 5101, 5101, 6668, 4893,
  62840. 6186, 5101, 6769, 5879, 5101, 5101, 5529, 6188, 5101, 5101, 6126, 5599, 5102, 6197, 6201, 6205, 5419, 6182,
  62841. 4434, 5101, 5101, 6089, 5252, 6201, 6205, 5585, 5101, 5101, 5101, 6007, 6455, 4450, 5101, 5101, 6133, 5101,
  62842. 5101, 5101, 5695, 6454, 4449, 4434, 5101, 5350, 5101, 5878, 5101, 6280, 4886, 4988, 6229, 5101, 5101, 6162,
  62843. 4614, 5101, 6378, 4434, 5101, 5375, 5101, 4562, 6229, 5101, 4978, 6214, 6161, 4980, 5101, 5101, 6162, 5101,
  62844. 5101, 5101, 5655, 5640, 6234, 5101, 5101, 5101, 6089, 5101, 6258, 4434, 6240, 5101, 6258, 4434, 5101, 5404,
  62845. 5962, 5101, 5102, 5437, 6424, 6235, 5101, 5101, 5568, 5410, 5101, 5101, 6236, 5101, 6165, 5101, 5101, 5101,
  62846. 6259, 5101, 5101, 6164, 5101, 5101, 5101, 5648, 5849, 5942, 5101, 6260, 5101, 6165, 5101, 5405, 5409, 5101,
  62847. 5057, 5268, 5409, 5101, 5101, 5102, 6742, 5253, 5101, 5101, 5101, 6260, 5101, 5101, 6259, 5101, 6167, 6258,
  62848. 5101, 5101, 5101, 6112, 6259, 5101, 6259, 6165, 4847, 5987, 5376, 5568, 6497, 6259, 5568, 6497, 6168, 6257,
  62849. 6257, 6261, 6251, 6254, 6254, 5101, 5101, 5101, 6169, 5118, 5101, 5916, 5101, 5414, 5538, 5101, 5101, 5918,
  62850. 4896, 5553, 4884, 5037, 6272, 6287, 6305, 6299, 6305, 6303, 6299, 6309, 6293, 6290, 6295, 6322, 6313, 6327,
  62851. 6316, 6319, 6323, 6332, 6331, 6339, 6339, 6340, 6339, 6339, 6339, 6336, 6344, 5101, 5101, 5101, 6178, 5224,
  62852. 5747, 5376, 5101, 5101, 5415, 5101, 5101, 6351, 4893, 4893, 4882, 5230, 5001, 5101, 6372, 5101, 5101, 6214,
  62853. 4980, 5101, 6357, 5969, 5101, 5417, 5419, 6353, 6366, 4434, 5101, 6371, 6390, 6397, 6401, 5101, 5418, 4636,
  62854. 5647, 6434, 5101, 5101, 5101, 6192, 5943, 5101, 5008, 5101, 4978, 5101, 4979, 5101, 5416, 5101, 6351, 4893,
  62855. 5419, 6352, 4894, 6268, 6367, 5002, 5101, 5101, 6279, 5641, 5101, 5101, 5290, 5101, 6452, 5101, 5101, 5101,
  62856. 6223, 5101, 6470, 6459, 6480, 6475, 6479, 6205, 5101, 5423, 5407, 5101, 5057, 5061, 5390, 6481, 5101, 5101,
  62857. 5101, 6228, 5589, 5588, 5587, 5101, 5436, 5442, 6428, 5402, 5101, 5101, 5102, 6143, 6182, 5106, 5745, 6520,
  62858. 5101, 5455, 5409, 5101, 5057, 5061, 5370, 6267, 5101, 5410, 5101, 5535, 5101, 5101, 5177, 5640, 5423, 5999,
  62859. 5101, 5101, 6360, 5736, 6738, 6204, 5101, 5101, 6378, 5101, 5224, 5077, 5101, 5008, 6265, 5555, 5101, 5415,
  62860. 5070, 5082, 5622, 5101, 5101, 6278, 6165, 5233, 5101, 5377, 6377, 6386, 5103, 5101, 5679, 5101, 5538, 5101,
  62861. 5101, 5101, 5534, 5538, 4826, 5935, 6737, 6204, 4827, 5936, 6535, 6204, 6191, 6191, 5101, 5101, 6378, 6393,
  62862. 5232, 5101, 5036, 5101, 5543, 5259, 5326, 6190, 5101, 5101, 5101, 6278, 5443, 6506, 4434, 5101, 5568, 6236,
  62863. 5101, 5101, 5568, 5101, 5102, 6511, 5134, 6507, 5164, 4451, 5101, 5101, 6392, 5101, 6165, 5101, 6192, 6192,
  62864. 6192, 5101, 5101, 6378, 6392, 5101, 5101, 6517, 5376, 5101, 5583, 5101, 5101, 5101, 6011, 6524, 5101, 6278,
  62865. 5101, 5101, 5101, 5037, 6155, 5101, 5101, 5101, 6382, 6533, 6549, 5101, 5101, 5101, 6379, 6393, 5101, 6544,
  62866. 6381, 5101, 5593, 5101, 5101, 5229, 5634, 5101, 6676, 6549, 5101, 5616, 6230, 5101, 5351, 5877, 4895, 5411,
  62867. 5432, 5101, 5101, 5101, 5031, 5101, 6675, 6548, 5101, 5101, 5101, 6391, 5101, 6539, 5426, 5101, 5101, 5417,
  62868. 5920, 4896, 5101, 5648, 6722, 5416, 6462, 5101, 5562, 5101, 6554, 6381, 5101, 5680, 5101, 5101, 6381, 5101,
  62869. 5101, 5101, 5101, 4583, 5101, 6540, 5425, 5101, 5426, 5101, 5101, 6709, 5417, 4895, 5102, 4595, 5101, 5101,
  62870. 6406, 5101, 4594, 5403, 6540, 5101, 5714, 5003, 4991, 6090, 6568, 5101, 5101, 6464, 4988, 5101, 6091, 6381,
  62871. 5101, 5842, 5037, 5998, 5996, 5996, 5413, 4893, 5101, 5101, 5101, 6419, 5101, 6091, 5101, 5101, 6492, 6491,
  62872. 5101, 6091, 5101, 4895, 4561, 4896, 5101, 5101, 6090, 6089, 4896, 5101, 5101, 6494, 6256, 4559, 5101, 5101,
  62873. 6090, 5101, 5101, 6090, 4561, 6089, 4561, 5101, 6089, 4560, 5537, 6089, 5101, 5537, 6574, 6752, 4888, 4577,
  62874. 5716, 5997, 6579, 5101, 5844, 5037, 5101, 5101, 5101, 6196, 5101, 6462, 6465, 6463, 4869, 5826, 5829, 6587,
  62875. 4489, 4646, 6598, 6591, 6597, 6593, 6605, 6602, 6607, 6611, 6613, 6617, 6619, 6628, 6625, 6632, 6621, 6635,
  62876. 6639, 6640, 6644, 6647, 6654, 6653, 6651, 6658, 6661, 6665, 5101, 6574, 6723, 5101, 5876, 6281, 5670, 5418,
  62877. 5421, 5101, 5101, 5101, 6469, 5107, 5101, 4975, 5101, 4976, 6672, 5101, 5101, 5101, 6682, 6494, 5101, 5101,
  62878. 5101, 6695, 6680, 5313, 6686, 5101, 5877, 5684, 4434, 6246, 5101, 5101, 6163, 5101, 5101, 5101, 6692, 5101,
  62879. 5101, 6495, 5101, 5101, 6703, 5101, 5101, 5101, 6713, 5101, 5101, 6718, 6717, 4834, 6722, 5101, 5418, 5422,
  62880. 5101, 6727, 6734, 5101, 5881, 5357, 5337, 6746, 5101, 5101, 5101, 6495, 6378, 5101, 6222, 6745, 5101, 5889,
  62881. 5128, 5074, 4442, 6224, 6747, 5101, 5877, 5615, 5671, 5876, 5101, 5879, 5101, 5899, 6230, 5101, 5101, 6089,
  62882. 5101, 5101, 4892, 5101, 5412, 5002, 6734, 5101, 5101, 6711, 5101, 5101, 5253, 5101, 5877, 5877, 5877, 5101,
  62883. 5101, 5101, 6771, 5101, 5101, 6575, 5642, 4635, 5411, 6089, 5101, 4889, 5258, 5101, 5252, 4561, 5101, 5101,
  62884. 6090, 5252, 4561, 5876, 5876, 5101, 5101, 5101, 5914, 6353, 6148, 5106, 4974, 5101, 5101, 5972, 5101, 4989,
  62885. 5101, 6165, 5425, 5101, 6688, 5107, 5101, 6111, 5724, 6759, 5725, 4561, 5101, 5101, 5983, 5994, 5101, 5190,
  62886. 5879, 5101, 5101, 5101, 5344, 5376, 5106, 5101, 5101, 5413, 6463, 5879, 5102, 6775, 6767, 5101, 5101, 5997,
  62887. 5101, 5101, 5101, 4811, 4583, 6765, 5101, 5101, 5101, 5101, 6098, 5420, 5101, 5998, 5101, 5101, 5101, 4818,
  62888. 5109, 5101, 5413, 5537, 5101, 5101, 6165, 5101, 6111, 6564, 5101, 5998, 5101, 6769, 5101, 5101, 6132, 6137,
  62889. 5101, 6098, 5101, 5101, 6033, 6031, 6039, 5105, 5101, 5109, 5101, 4863, 5101, 6776, 5101, 5101, 5101, 6035,
  62890. 4434, 5101, 6161, 5536, 5101, 5036, 5102, 5101, 5101, 6088, 5101, 5101, 5412, 6089, 1048576, 1073741824, 0,
  62891. 0, 0, -872415232, 4194560, 4196352, 270532608, 2097152, 4194304, 117440512, 134217728, 4194304, 16777216,
  62892. 4194432, 3145728, 16777216, 134217728, 536870912, 1073741824, 0, 541065216, 541065216, -2143289344,
  62893. -2143289344, 4194304, 4194304, 4196352, -2143289344, 4194304, 4194432, 37748736, 541065216, -2143289344,
  62894. 4194304, 4194304, 4194304, 4194304, 37748736, 4194304, 4194304, 4198144, 4196352, 8540160, 4194304,
  62895. 4194304, 4194304, 4196352, 276901888, 4194304, 4194304, 8425488, 4194304, 1, 0, 1024, 1024, 0, 1024,
  62896. 742391808, 239075328, -1405091840, 742391808, 742391808, 775946240, 239075328, 171966464, 775946240,
  62897. 171966464, 171966464, 171966464, 171966464, -1405091840, 775946240, 775946240, -1405091840, -1371537408,
  62898. 775946240, 775946240, 775946240, 171966464, 239075328, 239075328, 171966464, 775946240, -1371537408,
  62899. 775946240, 775946240, -1371537408, 239075328, 775946240, 775946240, 775946240, 775946240, 4718592, 64,
  62900. 4718592, 2097216, 4720640, 541589504, 4194368, 541589504, 4194400, 4194368, 541065280, 4194368,
  62901. -2143289280, 4194368, -2143285440, -2143285408, -2143285408, -2109730976, -2143285408, -2143285408,
  62902. -2143285408, -2143285408, 776470528, -2143285408, -2109730976, 775946336, 775946304, 776470528, 775946304,
  62903. -1908404384, 2, 4, 8, 262144, 0, 0, 0, 0x80000000, 8, 262144, 262144, 1048576, 0, 128, 4096, 0, 4194304,
  62904. 128, 128, 0, 1048576, 0, 0, 1536, 1792, 0, 0, 1, 2, 4, 128, 2097152, 8192, 8392704, 0, 0, 1, 4, 8, 262144,
  62905. 536870912, 64, 64, 32, 96, 96, 96, 96, 128, 1536, 524288, 96, 64, 524288, 524288, 1536, 1024, 0, 0, 0, 29,
  62906. 96, 1048576, 128, 128, 128, 128, 2048, 2048, 2048, 2048, 2048, 2048, 0, 96, 524288, 96, 64, 0, 0, 128,
  62907. 1024, 524288, 64, 64, 96, 96, 524288, 524288, 4100, 1024, 100680704, 96, 524288, 64, 96, 524288, 64, 80,
  62908. 528, 524304, 1048592, 2097168, 268435472, 16, 16, 2, 536936448, 16, 262160, 16, 536936448, 16, 17, 17, 20,
  62909. 16, 48, 16, 16, 20, 560, 24, 560, 48, 2097680, 3145744, 1048592, 1048592, 2097168, 16, 1049104, 2228784,
  62910. 2097168, 2097168, 16, 16, 16, 16, 20, 48, 48, 3146256, 2097680, 1048592, 16, 16, 16, 28, 0, 2097552,
  62911. 3146256, 16, 16, 16, 21, 16, 16, 28, 16, 0, 16, 0, -2046820352, 0, 0, 2, 2, 2, 2098064, 17, 21, 266240,
  62912. 1048576, 67108864, 0x80000000, 0, 0, 64, 65536, 1048576, 0, 16, 16, 163577856, 17, 528, 528, 16, 528,
  62913. -161430188, -161429676, -161429676, -161430188, -161429680, -161430188, -161430188, -161429680, -161429676,
  62914. -161349072, -161429675, -161349072, -161349072, -161349072, -161349072, -161347728, -161347728, -161347728,
  62915. -161347728, -161298572, -160774288, -160299084, -161298572, -161298576, -160299088, -161298576, -160774284,
  62916. -160774284, -161298572, -161298572, -161298572, -161298572, 112, 21, 53, 146804757, 146812949, 146862101,
  62917. 146863389, -161429676, -160905388, -161429676, -161429676, -161429676, -161429676, -161429675, -161349072,
  62918. 146863421, 148960541, 146863389, 146863389, 148960541, 146863421, 148960541, 148960541, -161429740,
  62919. -161429676, -160905388, -161298572, -161298572, -18860267, -160774284, -18729163, 0, 0, 1, 6, 8, 16,
  62920. 262144, 0, 0, 1, 8, 0, 24, 0, 0, 1, 14, 16, 32, 1024, 32768, 100663296, -1073741824, 0, 0, 0, 150528,
  62921. 131072, 16777216, 0, 0, 1, 102, 1, 32768, 131328, 131072, 524288, 2097152, 8388608, 16777216, 164096, 0, 0,
  62922. 0, 1007, 0, 1073741825, 0x80000000, 0x80000000, 1073741824, 8, 0, 0, 58368, 0, 0, 65536, 1048576, 4096,
  62923. 1048576, 512, 512, 9476, 134218240, 0, 1073741824, 2621440, 1073741824, 0x80000000, 0x80000000, 0, 0,
  62924. 66048, 0, 0, 0, 67108864, 0, 0, 0, 16384, 0, 0, 0, 8, 0, 0, 0, 9, 4456448, 8, 16777216, 1073774592,
  62925. 1226014816, 100665360, 100665360, 100665360, 100665360, -2046818288, 1091799136, 1091799136, 1091803360,
  62926. 1091799136, 1091799136, -2044196848, 1091799136, 1091799136, 1091799136, 1091799136, 1091799136,
  62927. 1158908000, 1158908001, 1192462432, 1192462448, 1192462448, 1192462448, 1192462448, 1200851056, 1091799393,
  62928. 1200851056, 1200851056, 1091799393, 1200851056, 1200851056, 1200851056, 1192462448, 1870638912, 1870638912,
  62929. 1870655296, 1870638912, 1870655296, 1870655296, 1870655296, 1870655296, 1870655296, 1870655312, 1870655316,
  62930. 1870655316, 1870655316, 1870655317, 1870655348, 1870655316, 1870655316, 1870655312, 1870655312, 1879027568,
  62931. 1879043952, 1870655316, 1870655316, 1870655316, 1870638928, 1879043952, 1879043956, 0, 0, 1, 12288, 0,
  62932. 229440, 1048576, 1224736768, 100663296, 0, 0, 0, 1024, 0, 0, 8192, 0, 0, 0, 576, 0, 231488, 1090519040, 0,
  62933. 0, 0, 2048, 0, 0, 134217728, 0, 1157627904, 1191182336, 0, 0, 131584, 268435456, 49152, 0, 0, 0, 134217728,
  62934. 0, 0, 0, 16, 0, 0, 0, 13, 0, 9437184, 231744, 0, 0, 235712, 0, 0, 131328, 0, 0, 131072, 32768, 0, 0,
  62935. 134217728, 0, 520000, 7864320, 1862270976, 0, 0, 0, 4096, 0, 0, 0, 1862270976, 1862270976, 1862270976, 0,
  62936. 16252928, 0, 0, 0, 8192, 64, 98304, 1048576, 150994944, 83886080, 117440512, 0, 0, 2, 4, 16, 32, 256, 1024,
  62937. 8192, 33554432, 0, 0, 64, 256, 3584, 8192, 16384, 65536, 262144, 524288, 1048576, 2097152, 4194304,
  62938. 0x80000000, 8192, 98304, 393216, 524288, 1048576, 1048576, 2097152, 4194304, 251658240, 536870912, 8192,
  62939. 16384, 98304, 393216, 251658240, 536870912, 1073741824, 0, 0, 2097152, 0, 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 0,
  62940. 3, 240, 0, 83886080, 117440512, 64, 0, 2, 0, 0, 524288, 524288, 524288, 524288, 256, 1536, 2048, 8192,
  62941. 16384, 256, 1536, 8192, 65536, 262144, 524288, 2097152, 67108864, 4194304, 16777216, 100663296, 134217728,
  62942. 536870912, 524288, 2097152, 134217728, 268435456, 536870912, 1073741824, 0, 0, 524288, 2097152, 0, 0,
  62943. 1048576, 2097152, 67108864, 1073741824, 0, 0, 1536, 65536, 262144, 524288, 33554432, 0, 1024, 65536,
  62944. 262144, 2097152, 2097152, 1073741824, 0, 0, 2, 8, 16, 32, 0, 8192, 4096, 0, 0, 605503, 1066401792, 9476,
  62945. 512, 0, 32, 384, 8192, 4194312, 4194312, 541065224, 4194312, 4194312, 4194312, 4194312, 4194344,
  62946. -869654016, -869654016, 4203820, -869654016, -869654016, -869654016, -869654016, 1279402504, 1279402504,
  62947. 1279402504, 1279402504, 2143549415, 2143549415, 2143549415, 2143549415, 2143549423, 2143549423, 2143549423,
  62948. 2143549423, 2143549423, 2143549423, 0, 0, 2, 16384, 32768, 260, 512, 0, 0, 0, 65536, 0, 0, 0, 384, 8192, 0,
  62949. 32, 512, 0, 1050624, 262144, 512, 1275208192, 139264, 1275068416, 0, 0, 4, 128, 1024, 2048, 16384, 262144,
  62950. 8, 4194304, 0, 0, 0, 82432, 0, 40, 0, 0, 4, 256, 1024, 98304, 131072, 16777216, 268435456, 0, 0, 300,
  62951. 4203520, 0, 0, 2097152, 1073741824, 0x80000000, 0, 0, 520, 4333568, 1275068416, 0, 0, 4194304, 1024, 0,
  62952. 4096, 8192, 0, 0, 0, 520, 520, 0, 0, 0, 164096, 999, 29619200, 2113929216, 0, 0, 0, 1007, 1007, 1007, 0, 0,
  62953. 8, 124160, 32, 512, 0, 2048, 524288, 0, 536870912, 0, 139264, 0, 0, 0, 139264, 0, 40, 0, 2621440, 0, 0,
  62954. 0x80000000, 1610612736, 0, 0, 0, 229376, 0, 40, 0, 524288, 2097152, 1073741824, 44, 0, 0, 0, 262144, 0, 0,
  62955. 16384, 229376, 4194304, 25165824, 100663296, 402653184, 1610612736, 0, 110, 110, 110, 0, 0, 8388608,
  62956. 8388608, 8192, 33554432, 67108864, 134217728, 1073741824, 0, 0x80000000, 0, 0, 0, 12545, 25165824,
  62957. 33554432, 67108864, 402653184, 536870912, 0, 104, 104, 104, 8192, 33554432, 134217728, 0, 0, 8388608,
  62958. 134217728, 1073741824, 0, 229376, 25165824, 33554432, 402653184, 536870912, 0, 0, 256, 1024, 65536,
  62959. 16777216, 268435456, 0, 0, 0, 524288, 0, 0, 0, 64, 0, 0, 0, 128, 0, 0, 0, 256, 0, 0, 0, 300, 524288,
  62960. 2097152, 0x80000000, 0, 0, 1, 6, 32, 64, 256, 512, 256, 1024, 4096, 8192, 65536, 2, 4, 32, 64, 256, 1024,
  62961. 0, 2, 4, 256, 1024, 65536, 4, 64, 256, 1024, 0, 0, 8, 8388608, 0, 98304, 131072, 25165824, 268435456,
  62962. 536870912, 0, 0, 8388608, 4096, 0, 0, 8, 8, 8, 0, 2048, 524288, 67108864, 536870912, 32, 4100, 67108864, 0,
  62963. 32768, 0, 32768, 0, 1049088, 0, 134348800, 270532608, 0, 1049088, 1049088, 8192, 1049088, 12845065,
  62964. 12845065, 12845065, 12845065, 147193865, 5505537, 5591557, 5587465, 5587457, 5587457, 147202057, 5587457,
  62965. 5587457, 5591557, 5587457, 13894153, 13894153, 13894153, 13894153, 81003049, 13894153, -1881791493,
  62966. -1881791493, -1881791493, -1881791493, 0, 0, 8, 33554432, 262144, 0, 33554432, 1024, 0, 4, 0, 0, 0, 867647,
  62967. 1, 5505024, 0, 0, 15, 16, 32, 192, 86528, 9, 0, 0, 16, 8192, 0, 0, 23, 0, 75497472, 0, 0, 0, 1048576,
  62968. 5505024, -1887436800, 0, 0, 0, 2097152, 268435456, 0, 0, 4096, 8192, 67108864, 0, 0, 262144, 4194304,
  62969. 8388608, 0, 0, 33554432, 8192, 0, 0, 288, 8388608, 0, 0, 0, 81920, 0, 0, 24, 282624, 64, 896, 8192, 131072,
  62970. 262144, 1048576, 16777216, 33554432, -1946157056, 0, 0, 0, 2621440, 0, 131072, 0, 32, 0, 0, 2048, 3145728,
  62971. 0, 16384, 65536, 0, 0, 268435456, 32, 64, 384, 512, 5120, 8192, 0, 64, 0, 2048, 1048576, 0, 0, 32, 64, 384,
  62972. 8192, 131072, 0, 0, 32768, 134217728, 0, 0, 8, 32, 64, 1024, 2048, 0, 2, 8, 32, 384, 8192, 131072,
  62973. 33554432, 131072, 1048576, 33554432, 134217728, 0x80000000, 0, 0, 2048, 524288, 536870912, 0, 1073741824,
  62974. 0, 131072, 33554432, 0x80000000, 0, 0, 33554432, 1073741824, 0, 32, 0, 524288, 0, 0, 67108864, 64, 64, 0,
  62975. 96, 96, 0, 524288, 524288, 524288, 64, 64, 64, 64, 96, 96, 96, 0, 0, 0, 28, 0, 8396800, 4194304, 134217728,
  62976. 2048, 134217728, 0, 0, 32, 1, 0, 8396800, 0, 0, 32, 64, 128, 1024, 2048, 262144, 0, 16384, 0, 2, 4, 64,
  62977. 128, 3840, 16384, 19922944, 2080374784, 0, 16384, 16384, 16777216, 16384, 32768, 1048576, 2097152, 4194304,
  62978. 16777216, 524288, 268567040, 16384, 2113544, 68489237, 72618005, 68423701, 68423701, 68423701, 68489237,
  62979. 68423701, -2079059883, -2079059947, 68423701, 85200917, 68423701, 68423701, 68423701, 68423701, 68423765,
  62980. -2079059883, 68425749, 68423703, 69488664, 85200919, 69488664, 69488664, 69488664, 69488664, 70537244,
  62981. 70537245, 70537245, 70537245, 70537309, 70537245, -2076946339, -2076946403, 70537245, -2076946339,
  62982. 70537245, 70537245, 70537245, 70537245, 70539293, -2022351745, -2022351745, -2022351617, -2022351745,
  62983. -2022351617, -2022351617, -2022351617, -2022351617, -2022351617, -2022351617, -2022351745, -2022351617,
  62984. -2022351617, 0, 0, 40, 67108864, 331776, 83886080, 0, 0, 59, 140224, 5505024, 5242880, -2080374784,
  62985. -2080374784, 268288, 29, 0, 284672, 0, 0, 68157440, 137363456, 0, 66, 66, 0, 63, 64, 351232, 63, 192,
  62986. 351232, 7340032, -2030043136, 0, 0, 0, 4194304, 1, 1024, 32, 64, 256, 32768, 65536, 512, 131072, 268435456,
  62987. 0, 0, 134348800, 134348800, 16, 4096, 262144, 1048576, 4194304, 8388608, 16777216, 33554432, 5242880, 0, 7,
  62988. 0, 0, 142606336, 0, -872415232, 0, 0, 0, 131072, 0, 0, 0, 999, 259072, 4194304, 25165824, 0, 20480, 0, 0,
  62989. 64, 256, 1536, 8192, 16384, 0, 12, 3145728, 0, 0, 0, 3145728, 64, 3072, 20480, 65536, 262144, 32, 192,
  62990. 3072, 20480, 4, 1048576, 0, 0, 128, 131072, 0, 134218752, 0, 0, 128, 134217728, 5242880, 0, 6, 0, 0, 16384,
  62991. 65536, 7340032, 50331648, 32, 192, 1024, 2048, 4096, 8192, 65536, 32768, 65536, 4194304, 16777216,
  62992. 0x80000000, 0, 0, 1, 4, 0, 0, 256, 1536, 65536, 65536, 2097152, 4194304, 50331648, 0x80000000, 32, 192,
  62993. 1024, 65536, 268435456, 0, 0, 32768, 4194304, 16777216, 0, 0, 184549376, 0, 0, 243269632, 0, 0, 32768,
  62994. 131072, 131072, 0, 32768, 32768, 1, 2, 4, 2097152, 16777216, 134217728, 268435456, 1073741824, 0x80000000,
  62995. 128, 2097152, 4194304, 50331648, 0, 0, 0, 8388608, 0, 0, 0, 768, 2, 4, 50331648, 0, 0, 536870912, 9216, 0,
  62996. 0, 0, 49152, 2, 4, 128, 50331648, 0, 0, 4096, 4194304, 268435456, 0, 0, 1075838976, 2097152, 2097152,
  62997. 268435456, 4194432, 268435968, 268435968, 1073743872, 268435968, 0, 128, 6144, 0, 229376, 128, 268435968,
  62998. 268436032, 256, 256, 536871168, 256, 256, 256, 256, 257, 256, 384, -1879046336, -1879046334, 1073744256,
  62999. -1879046334, -1879046326, -1879046334, -1879046334, -1879046326, -1879046326, -1845491902, -1878784182,
  63000. 268444480, 268444480, 268436288, 268436288, 268436288, 268436288, 268436289, 268444480, 268444480,
  63001. 268444480, 268444480, 2100318149, 2100318149, 2100318149, 2100318149, 2100326341, 2100326341, 2100318149,
  63002. 2100326341, 2100326341, 0, 0, 256, 2048, 2048, 0, 0, 0, 4, 8, 262144, 134217728, 1, 1024, 0, 4096, 0, 64,
  63003. 1856, 0x80000000, 0, 0, 256, 65536, 2432, 0, 1864, 0, 1, 2, 16, 32, 64, 0, 301989888, 0, 262144, 131072, 0,
  63004. 0, 832, 8192, 0, 1, 2, 56, 64, 896, 0, 1, 4036, 19939328, 2080374784, 2080374784, 0, 0, 0, 16252928, 1, 16,
  63005. 32, 128, 512, 2304, 0, 8, 0, 512, 301989888, 0, 0, 262144, 524288, 134217728, 536870912, 0, 24576, 0, 0, 0,
  63006. 33554432, 0, 0, 0, 32768, 0, 0, 2097152, 134217728, 0, 32768, 196608, 0, 0, 0, 1, 128, 512, 2048, 524288,
  63007. 268435456, 536870912, 0, 33554432, 262144, 8192, 0, 0, 256, 8388608, 0, 0, 1, 4, 128, 3584, 16384, 3145728,
  63008. 16777216, 67108864, 134217728, 805306368, 1073741824, 0, 0, 1024, 2048, 16384, 3145728, 0, 8192, 0, 8192,
  63009. 0, 536870912, 524288, 536870912, 1073741824, 0, 1, 2, 112, 128, 3072, 2048, 3145728, 16777216, 536870912,
  63010. 1073741824, 0, 0, 2097152, 16777216, 1073741824, 0, 0, 0, 8192, 8192, 8192, 9216, 33554432, 32768,
  63011. 33554432, 0, 0, 262144, 0, 16777216, 0, 16777216, 16777216, 16777216, 16777216, 0, 0, 2097152, 16777216, 0,
  63012. 0, 16777216, 268500992, 4243456, 0, 0, 512, 65536, 0, 4096, 4096, 0, 4096, 4096, 4096, 4096, 0, 0, 0, 32,
  63013. 0, 0, 0, 41, 0, 4243456, 4096, 12289, 1073754113, 12289, 12289, 1124073472, 12289, 12289, 1098920193,
  63014. 1098920193, 1124073488, 1124073472, 1124073472, 1258292224, 1124073472, 1124073474, 1124073472, 1124073472,
  63015. 1124073472, 1124073472, 1124073472, 1392574464, 1124073472, 12289, 1124085761, 1124085761, 1124085761,
  63016. 1124085761, 1132474625, 1098920209, 1132474625, 1132474625, 1098920209, 1132474625, 1132474625, 1132474625,
  63017. 1132474625, 1400975617, 1124085777, 1124085761, 1124085761, 1258304513, 2132360255, 2132360255, 2132622399,
  63018. 2132360255, 2132622399, 2132622399, 2140749119, 2141011263, 2132622399, 2132622399, 2132622399, 2132622399,
  63019. 2132360255, 2141011263, 2141011263, 0, 0, 512, 131072, 0, 128, 131072, 1024, 134217728, 0, 0, 0, 50331648,
  63020. 1073741824, 0, 1, 4, 64, 128, 3584, 318767104, 0, 0, 0, 268435456, 0, 12289, 0, 0, 0, 159383552, 25165824,
  63021. 0, 0, 0, 536870912, 0, 0, 0, 24576, 58720256, 0, 0, 12305, 13313, 0, 0, 0, 1073741824, 0, 0, 0, 12561, 0,
  63022. 78081, 327155712, 0, 0, 0, 1275068416, 0, 605247, 1058013184, 1073741824, 1073741824, 8388608, 0, 0,
  63023. 503616, 7864320, 867391, 1058013184, 1073741824, 0, 1, 6, 96, 384, 512, 1024, 4096, 8192, 16384, 229376,
  63024. 25165824, 33554432, 268435456, 536870912, 0, 867647, 1066401792, 0, 0, 0, 512, 1048576, 0, 0, 9, 8388608,
  63025. 12288, 0, 0, 0, 512, 2760704, 77824, 0, 0, 0, 1024, 2048, 3145728, 2048, 77824, 524288, 1048576, 0, 0, 0,
  63026. 512, 0, 1048576, 0, 1, 30, 32, 1024, 2048, 1024, 2048, 339968, 524288, 1048576, 16777216, 100663296,
  63027. 134217728, 805306368, 1073741824, 1024, 2048, 12288, 65536, 0, 65536, 0, 0, 19947520, 0, 0, 0, 16777216, 0,
  63028. 0, 0, 5, 1024, 2048, 12288, 327680, 524288, 33554432, 134217728, 536870912, 1073741824, 14, 16, 1024, 4096,
  63029. 8192, 229376, 0, 2, 16384, 4194304, 0x80000000, 0, 0, 0, 8, 0, 65536, 262144, 7340032, 50331648, 67108864,
  63030. 0x80000000, 4096, 65536, 262144, 524288, 1048576, 33554432, 256, 0, 256, 0, 256, 1, 12, 1024, 134217728,
  63031. 262144, 134217728, 536870912, 0, 0, 268435456, 1, 4, 8, 134217728, 4, 8, 536870912, 0, 2, 16, 64, 128, 0,
  63032. 0, 262144, 536870912, 0, 0, 1073741824, 32768, 0, 8, 32, 512, 4096, 9437184, 0, 0, 1048576, 2097152,
  63033. 4194304, 67108864, 134217728, 0, 1024, 137363456, 66, 25165824, 26214400, 92274688, 92274688, 25165952,
  63034. 92274688, 25165824, 25165824, 92274688, 25165824, 25165824, 92274688, 92274688, 92274720, 92274688,
  63035. 25165824, 92274688, 93323264, 25165890, 100721664, 100721664, 25165890, 100721928, 100721928, 100787464,
  63036. 100853000, 100721928, 100721928, 125977600, 125977600, 125977600, 125977600, 127026176, 125977600,
  63037. 125846528, 125846528, 125846560, 125846528, 125846528, 125846528, 126895104, 125846528, 125977600,
  63038. 127026176, 125977600, 125977600, 127026176, 127026176, 281843, 281843, 1330419, 281843, 1330419, 281843,
  63039. 1330419, 1330419, 281843, 281843, 281843, 5524723, 39079155, 72633587, 5524723, 5524723, 5524723, 5524723,
  63040. 93605107, 72633587, 72633587, 92556531, 93605107, 127290611, 127290611, 97799411, 127290611, 131484915, 0,
  63041. 0, 1536, 0x80000000, 0, 0, 17408, 33554432, 0, 1, 12, 1024, 262144, 0, 58624, 0, 0, 1536, 0, 189696, 0, 0,
  63042. 0, 1792, 0x80000000, 0, 148480, 50331648, 0, 1, 14, 1024, 4096, 65536, 524288, 240, 19456, 262144, 0, 0,
  63043. 19456, 262144, 0, 4194304, 0, 0, 1024, 2097152, 0, 0, 0, 150528, 0, 0, 0, 512, 4096, 8192, 131072, 0,
  63044. 57344, 0, 0, 0, 2048, 100663296, 0, 0, 256, 0, 65536, 524288, 1048576, 33554432, 67108864, 2, 48, 64, 128,
  63045. 3072, 16384, 262144, 0, 0, 32, 4096, 8192, 131072, 1048576, 8388608, 33554432, 134217728, 2048, 262144, 0,
  63046. 0, 2048, 268435456, 16, 64, 128, 262144, 0, 0, 32768, 65536, 131072, 0, 1, 2, 16, 64, 0
  63047. ];
  63048. XQueryParser.TOKEN =
  63049. [
  63050. "(0)",
  63051. "PragmaContents",
  63052. "DirCommentContents",
  63053. "DirPIContents",
  63054. "CDataSection",
  63055. "Wildcard",
  63056. "EQName",
  63057. "URILiteral",
  63058. "IntegerLiteral",
  63059. "DecimalLiteral",
  63060. "DoubleLiteral",
  63061. "StringLiteral",
  63062. "PredefinedEntityRef",
  63063. "'\"\"'",
  63064. "EscapeApos",
  63065. "ElementContentChar",
  63066. "QuotAttrContentChar",
  63067. "AposAttrContentChar",
  63068. "PITarget",
  63069. "NCName",
  63070. "QName",
  63071. "S",
  63072. "S",
  63073. "CharRef",
  63074. "CommentContents",
  63075. "EOF",
  63076. "'!'",
  63077. "'!='",
  63078. "'\"'",
  63079. "'#'",
  63080. "'#)'",
  63081. "'$'",
  63082. "'%'",
  63083. "''''",
  63084. "'('",
  63085. "'(#'",
  63086. "'(:'",
  63087. "')'",
  63088. "'*'",
  63089. "'*'",
  63090. "'+'",
  63091. "','",
  63092. "'-'",
  63093. "'-->'",
  63094. "'.'",
  63095. "'..'",
  63096. "'/'",
  63097. "'//'",
  63098. "'/>'",
  63099. "':'",
  63100. "':)'",
  63101. "'::'",
  63102. "':='",
  63103. "';'",
  63104. "'<'",
  63105. "'<!--'",
  63106. "'</'",
  63107. "'<<'",
  63108. "'<='",
  63109. "'<?'",
  63110. "'='",
  63111. "'>'",
  63112. "'>='",
  63113. "'>>'",
  63114. "'?'",
  63115. "'?>'",
  63116. "'@'",
  63117. "'NaN'",
  63118. "'['",
  63119. "']'",
  63120. "'after'",
  63121. "'all'",
  63122. "'allowing'",
  63123. "'ancestor'",
  63124. "'ancestor-or-self'",
  63125. "'and'",
  63126. "'any'",
  63127. "'append'",
  63128. "'array'",
  63129. "'as'",
  63130. "'ascending'",
  63131. "'at'",
  63132. "'attribute'",
  63133. "'base-uri'",
  63134. "'before'",
  63135. "'boundary-space'",
  63136. "'break'",
  63137. "'by'",
  63138. "'case'",
  63139. "'cast'",
  63140. "'castable'",
  63141. "'catch'",
  63142. "'check'",
  63143. "'child'",
  63144. "'collation'",
  63145. "'collection'",
  63146. "'comment'",
  63147. "'constraint'",
  63148. "'construction'",
  63149. "'contains'",
  63150. "'content'",
  63151. "'context'",
  63152. "'continue'",
  63153. "'copy'",
  63154. "'copy-namespaces'",
  63155. "'count'",
  63156. "'decimal-format'",
  63157. "'decimal-separator'",
  63158. "'declare'",
  63159. "'default'",
  63160. "'delete'",
  63161. "'descendant'",
  63162. "'descendant-or-self'",
  63163. "'descending'",
  63164. "'diacritics'",
  63165. "'different'",
  63166. "'digit'",
  63167. "'distance'",
  63168. "'div'",
  63169. "'document'",
  63170. "'document-node'",
  63171. "'element'",
  63172. "'else'",
  63173. "'empty'",
  63174. "'empty-sequence'",
  63175. "'encoding'",
  63176. "'end'",
  63177. "'entire'",
  63178. "'eq'",
  63179. "'every'",
  63180. "'exactly'",
  63181. "'except'",
  63182. "'exit'",
  63183. "'external'",
  63184. "'first'",
  63185. "'following'",
  63186. "'following-sibling'",
  63187. "'for'",
  63188. "'foreach'",
  63189. "'foreign'",
  63190. "'from'",
  63191. "'ft-option'",
  63192. "'ftand'",
  63193. "'ftnot'",
  63194. "'ftor'",
  63195. "'function'",
  63196. "'ge'",
  63197. "'greatest'",
  63198. "'group'",
  63199. "'grouping-separator'",
  63200. "'gt'",
  63201. "'idiv'",
  63202. "'if'",
  63203. "'import'",
  63204. "'in'",
  63205. "'index'",
  63206. "'infinity'",
  63207. "'inherit'",
  63208. "'insensitive'",
  63209. "'insert'",
  63210. "'instance'",
  63211. "'integrity'",
  63212. "'intersect'",
  63213. "'into'",
  63214. "'is'",
  63215. "'item'",
  63216. "'json'",
  63217. "'json-item'",
  63218. "'key'",
  63219. "'language'",
  63220. "'last'",
  63221. "'lax'",
  63222. "'le'",
  63223. "'least'",
  63224. "'let'",
  63225. "'levels'",
  63226. "'loop'",
  63227. "'lowercase'",
  63228. "'lt'",
  63229. "'minus-sign'",
  63230. "'mod'",
  63231. "'modify'",
  63232. "'module'",
  63233. "'most'",
  63234. "'namespace'",
  63235. "'namespace-node'",
  63236. "'ne'",
  63237. "'next'",
  63238. "'no'",
  63239. "'no-inherit'",
  63240. "'no-preserve'",
  63241. "'node'",
  63242. "'nodes'",
  63243. "'not'",
  63244. "'object'",
  63245. "'occurs'",
  63246. "'of'",
  63247. "'on'",
  63248. "'only'",
  63249. "'option'",
  63250. "'or'",
  63251. "'order'",
  63252. "'ordered'",
  63253. "'ordering'",
  63254. "'paragraph'",
  63255. "'paragraphs'",
  63256. "'parent'",
  63257. "'pattern-separator'",
  63258. "'per-mille'",
  63259. "'percent'",
  63260. "'phrase'",
  63261. "'position'",
  63262. "'preceding'",
  63263. "'preceding-sibling'",
  63264. "'preserve'",
  63265. "'previous'",
  63266. "'processing-instruction'",
  63267. "'relationship'",
  63268. "'rename'",
  63269. "'replace'",
  63270. "'return'",
  63271. "'returning'",
  63272. "'revalidation'",
  63273. "'same'",
  63274. "'satisfies'",
  63275. "'schema'",
  63276. "'schema-attribute'",
  63277. "'schema-element'",
  63278. "'score'",
  63279. "'self'",
  63280. "'sensitive'",
  63281. "'sentence'",
  63282. "'sentences'",
  63283. "'skip'",
  63284. "'sliding'",
  63285. "'some'",
  63286. "'stable'",
  63287. "'start'",
  63288. "'stemming'",
  63289. "'stop'",
  63290. "'strict'",
  63291. "'strip'",
  63292. "'structured-item'",
  63293. "'switch'",
  63294. "'text'",
  63295. "'then'",
  63296. "'thesaurus'",
  63297. "'times'",
  63298. "'to'",
  63299. "'treat'",
  63300. "'try'",
  63301. "'tumbling'",
  63302. "'type'",
  63303. "'typeswitch'",
  63304. "'union'",
  63305. "'unique'",
  63306. "'unordered'",
  63307. "'updating'",
  63308. "'uppercase'",
  63309. "'using'",
  63310. "'validate'",
  63311. "'value'",
  63312. "'variable'",
  63313. "'version'",
  63314. "'weight'",
  63315. "'when'",
  63316. "'where'",
  63317. "'while'",
  63318. "'wildcards'",
  63319. "'window'",
  63320. "'with'",
  63321. "'without'",
  63322. "'word'",
  63323. "'words'",
  63324. "'xquery'",
  63325. "'zero-digit'",
  63326. "'{'",
  63327. "'{{'",
  63328. "'{|'",
  63329. "'|'",
  63330. "'||'",
  63331. "'|}'",
  63332. "'}'",
  63333. "'}}'"
  63334. ];
  63335. },{}],"/node_modules/xqlint/lib/tree_ops.js":[function(_dereq_,module,exports){
  63336. 'use strict';
  63337. exports.TreeOps = {
  63338. flatten: function(node){
  63339. var that = this;
  63340. var value = '';
  63341. if(!node) {
  63342. throw new Error('Invalid node found');
  63343. } else if (node.value === undefined) {
  63344. node.children.forEach(function(child){
  63345. value += that.flatten(child);
  63346. });
  63347. } else {
  63348. value += node.value;
  63349. }
  63350. return value;
  63351. },
  63352. concat: function(obj1, obj2, copy){
  63353. var result = copy ? {} : obj1;
  63354. if(copy){
  63355. Object.keys(obj1).forEach(function(key){
  63356. result[key] = obj1[key];
  63357. });
  63358. }
  63359. var keys = Object.keys(obj2);
  63360. keys.forEach(function(key){
  63361. result[key] = obj2[key];
  63362. });
  63363. return result;
  63364. },
  63365. removeParentPtr: function(ast){
  63366. if(ast.getParent !== undefined) {
  63367. delete ast.getParent;
  63368. }
  63369. for(var i in ast.children) {
  63370. var child = ast.children[i];
  63371. this.removeParentPtr(child);
  63372. }
  63373. },
  63374. inRange: function(p, pos, exclusive){
  63375. if(p && p.sl <= pos.line && pos.line <= p.el) {
  63376. if(p.sl < pos.line && pos.line < p.el) {
  63377. return true;
  63378. } else if(p.sl === pos.line && pos.line < p.el) {
  63379. return p.sc <= pos.col;
  63380. } else if(p.sl === pos.line && p.el === pos.line) {
  63381. return p.sc <= pos.col && pos.col <= p.ec + (exclusive ? 1 : 0);
  63382. } else if(p.sl < pos.line && p.el === pos.line) {
  63383. return pos.col <= p.ec + (exclusive ? 1 : 0);
  63384. }
  63385. }
  63386. },
  63387. findNode: function(ast, pos) {
  63388. if(!ast) {
  63389. return;
  63390. }
  63391. var p = ast.pos;
  63392. if(this.inRange(p, pos) === true) {
  63393. for(var i in ast.children) {
  63394. var child = ast.children[i];
  63395. var n = this.findNode(child, pos);
  63396. if(n !== undefined) {
  63397. return n;
  63398. }
  63399. }
  63400. return ast;
  63401. } else {
  63402. return;
  63403. }
  63404. },
  63405. astAsXML: function(node, indent){
  63406. var result = '';
  63407. indent = indent ? indent : '';
  63408. if(node.value) {
  63409. result += (indent + '<' + node.name + '>' + node.value + '</' + node.name + '>\n');
  63410. }
  63411. result += indent + '<' + node.name + '>\n';
  63412. var that = this;
  63413. node.children.forEach(function(child){
  63414. result += that.astAsXML(child, indent + ' ');
  63415. });
  63416. result += indent + '</' + node.name + '>\n';
  63417. return result;
  63418. }
  63419. };
  63420. },{}],"/node_modules/xqlint/lib/xqdoc/parse_comment.js":[function(_dereq_,module,exports){
  63421. 'use strict';
  63422. exports.parseComment = function(comment){
  63423. comment = comment.trim();
  63424. var isXQDoc = comment.substring(0, 3) === '(:~';
  63425. if(isXQDoc){
  63426. var lines = comment.split('\n');
  63427. var ann = {
  63428. description: ''
  63429. };
  63430. lines.forEach(function(line, index){
  63431. if(index === 0) {
  63432. line = line.substring(3);
  63433. }
  63434. line = line.trim();
  63435. if(line[0] === ':') {
  63436. line = line.substring(1);
  63437. }
  63438. line = line.trim();
  63439. ann.description += ' ' + line;
  63440. });
  63441. ann.description = ann.description.trim();
  63442. ann.description = ann.description.substring(0, ann.description.length - 2).trim();
  63443. return ann;
  63444. }
  63445. };
  63446. },{}],"/node_modules/xqlint/lib/xqdoc/xqdoc.js":[function(_dereq_,module,exports){
  63447. var _ = _dereq_('lodash');
  63448. var parseComment = _dereq_('./parse_comment').parseComment;
  63449. exports.XQDoc = function(ast){
  63450. 'use strict';
  63451. var doc = {};
  63452. this.getDoc = function(){
  63453. return doc;
  63454. };
  63455. this.WS = function(node){
  63456. if(node.value.trim().substring(0, 3) === '(:~') {
  63457. node.getParent.comment = parseComment(node.value);
  63458. }
  63459. };
  63460. this.AnnotatedDecl = function(node){
  63461. this.visitChildren(node);
  63462. node.comment = node.getParent.comment;
  63463. node.getParent.comment = undefined;
  63464. };
  63465. this.XQuery = function(node){
  63466. this.visitChildren(node);
  63467. };
  63468. this.getXQDoc = function(sctx){
  63469. var doc = {
  63470. moduleNamespace: sctx.moduleNamespace,
  63471. description: sctx.description,
  63472. variables: [],
  63473. functions: []
  63474. };
  63475. _.forEach(sctx.variables, function(variable){
  63476. var varDecl = _.cloneDeep(variable.qname);
  63477. varDecl.annotations = variable.annotations;
  63478. varDecl.description = variable.description;
  63479. varDecl.type = variable.type;
  63480. varDecl.occurrence = variable.occurrence;
  63481. doc.variables.push(varDecl);
  63482. });
  63483. _.forEach(sctx.functions, function(fn, key){
  63484. if(key.substring(0, 'http://www.w3.org/2001/XMLSchema#'.length) === 'http://www.w3.org/2001/XMLSchema#') {
  63485. return;
  63486. }
  63487. var tokens = key.split('#');
  63488. doc.functions.push({
  63489. name: tokens[0],
  63490. uri: tokens[1],
  63491. params: fn.params
  63492. });
  63493. });
  63494. return doc;
  63495. };
  63496. this.visit = function (node) {
  63497. var name = node.name;
  63498. var skip = false;
  63499. if (typeof this[name] === 'function') {
  63500. skip = this[name](node) === true;
  63501. }
  63502. if (!skip) {
  63503. this.visitChildren(node);
  63504. }
  63505. };
  63506. this.visitChildren = function (node, handler) {
  63507. for (var i = 0; i < node.children.length; i++) {
  63508. var child = node.children[i];
  63509. if (handler !== undefined && typeof handler[child.name] === 'function') {
  63510. handler[child.name](child);
  63511. } else {
  63512. this.visit(child);
  63513. }
  63514. }
  63515. };
  63516. this.visit(ast);
  63517. };
  63518. },{"./parse_comment":"/node_modules/xqlint/lib/xqdoc/parse_comment.js","lodash":"/node_modules/xqlint/node_modules/lodash/index.js"}],"/node_modules/xqlint/lib/xqlint.js":[function(_dereq_,module,exports){
  63519. 'use strict';
  63520. var _ = _dereq_('lodash');
  63521. var JSONiqParser = _dereq_('./parsers/JSONiqParser').JSONiqParser;
  63522. var XQueryParser = _dereq_('./parsers/XQueryParser').XQueryParser;
  63523. var JSONParseTreeHandler = _dereq_('./parsers/JSONParseTreeHandler').JSONParseTreeHandler;
  63524. var Translator = _dereq_('./compiler/translator').Translator;
  63525. var StyleChecker = _dereq_('./formatter/style_checker').StyleChecker;
  63526. var XQDoc = _dereq_('./xqdoc/xqdoc').XQDoc;
  63527. var completer = _dereq_('../lib/completion/completer');
  63528. var TreeOps = _dereq_('./tree_ops').TreeOps;
  63529. var createStaticContext = exports.createStaticContext = function(){
  63530. var StaticContext = _dereq_('./compiler/static_context').StaticContext;
  63531. return new StaticContext();
  63532. };
  63533. var convertPosition = function (code, begin, end) {
  63534. var before = code.substring(0, begin);
  63535. var after = code.substring(0, end);
  63536. var startline = before.split('\n').length;
  63537. var startcolumn = begin - before.lastIndexOf('\n');
  63538. var endline = after.split('\n').length;
  63539. var endcolumn = end - after.lastIndexOf('\n');
  63540. var pos = {
  63541. sl: startline - 1,
  63542. sc: startcolumn - 1,
  63543. el: endline - 1,
  63544. ec: endcolumn - 1
  63545. };
  63546. return pos;
  63547. };
  63548. exports.JSONiqLexer = _dereq_('./lexers/jsoniq_lexer').JSONiqLexer;
  63549. exports.XQueryLexer = _dereq_('./lexers/xquery_lexer').XQueryLexer;
  63550. exports.XQLint = function (source, opts) {
  63551. if(_.defaults) {
  63552. opts = _.defaults(opts ? opts : {}, { styleCheck: false });
  63553. }
  63554. var ast, xqdoc;
  63555. var sctx = opts.staticContext ? opts.staticContext : createStaticContext();
  63556. this.getAST = function () {
  63557. return ast;
  63558. };
  63559. this.printAST = function () {
  63560. return TreeOps.astAsXML(ast, ' ');
  63561. };
  63562. this.getXQDoc = function () {
  63563. return xqdoc.getXQDoc(sctx);
  63564. };
  63565. var markers = [];
  63566. this.getMarkers = function () {
  63567. return markers;
  63568. };
  63569. this.getMarkers = function(type){
  63570. var m = [];
  63571. markers.forEach(function(marker){
  63572. if(marker.type === type || type === undefined){
  63573. m.push(marker);
  63574. }
  63575. });
  63576. return m;
  63577. };
  63578. this.getErrors = function(){
  63579. return this.getMarkers('error');
  63580. };
  63581. this.getWarnings = function(){
  63582. return this.getMarkers('warning');
  63583. };
  63584. this.getCompletions = function(pos){
  63585. return completer.complete(source, ast, sctx, pos);
  63586. };
  63587. var syntaxError = false;
  63588. this.hasSyntaxError = function () {
  63589. return syntaxError;
  63590. };
  63591. var file = opts.fileName ? opts.fileName : '';
  63592. var isJSONiq = ((file.substring(file.length - '.jq'.length).indexOf('.jq') !== -1) && source.indexOf('xquery version') !== 0) || source.indexOf('jsoniq version') === 0;
  63593. var h = new JSONParseTreeHandler(source);
  63594. var parser = isJSONiq ? new JSONiqParser(source, h) : new XQueryParser(source, h);
  63595. try {
  63596. parser.parse_XQuery();
  63597. } catch (e) {
  63598. if (e instanceof parser.ParseException) {
  63599. syntaxError = true;
  63600. h.closeParseTree();
  63601. var pos = convertPosition(source, e.getBegin(), e.getEnd());
  63602. var message = parser.getErrorMessage(e);
  63603. if (pos.sc === pos.ec) {
  63604. pos.ec++;
  63605. }
  63606. markers.push({
  63607. pos: pos,
  63608. type: 'error',
  63609. level: 'error',
  63610. message: message
  63611. });
  63612. } else {
  63613. throw e;
  63614. }
  63615. }
  63616. ast = h.getParseTree();
  63617. if(opts.styleCheck) {
  63618. markers = markers.concat(new StyleChecker(ast, source).getMarkers());
  63619. }
  63620. xqdoc = new XQDoc(ast);
  63621. var translator = new Translator(sctx, ast);
  63622. markers = markers.concat(translator.getMarkers());
  63623. };
  63624. },{"../lib/completion/completer":"/node_modules/xqlint/lib/completion/completer.js","./compiler/static_context":"/node_modules/xqlint/lib/compiler/static_context.js","./compiler/translator":"/node_modules/xqlint/lib/compiler/translator.js","./formatter/style_checker":"/node_modules/xqlint/lib/formatter/style_checker.js","./lexers/jsoniq_lexer":"/node_modules/xqlint/lib/lexers/jsoniq_lexer.js","./lexers/xquery_lexer":"/node_modules/xqlint/lib/lexers/xquery_lexer.js","./parsers/JSONParseTreeHandler":"/node_modules/xqlint/lib/parsers/JSONParseTreeHandler.js","./parsers/JSONiqParser":"/node_modules/xqlint/lib/parsers/JSONiqParser.js","./parsers/XQueryParser":"/node_modules/xqlint/lib/parsers/XQueryParser.js","./tree_ops":"/node_modules/xqlint/lib/tree_ops.js","./xqdoc/xqdoc":"/node_modules/xqlint/lib/xqdoc/xqdoc.js","lodash":"/node_modules/xqlint/node_modules/lodash/index.js"}],"/node_modules/xqlint/node_modules/lodash/index.js":[function(_dereq_,module,exports){
  63625. (function (global){
  63626. ;(function() {
  63627. var undefined;
  63628. var VERSION = '3.10.1';
  63629. var BIND_FLAG = 1,
  63630. BIND_KEY_FLAG = 2,
  63631. CURRY_BOUND_FLAG = 4,
  63632. CURRY_FLAG = 8,
  63633. CURRY_RIGHT_FLAG = 16,
  63634. PARTIAL_FLAG = 32,
  63635. PARTIAL_RIGHT_FLAG = 64,
  63636. ARY_FLAG = 128,
  63637. REARG_FLAG = 256;
  63638. var DEFAULT_TRUNC_LENGTH = 30,
  63639. DEFAULT_TRUNC_OMISSION = '...';
  63640. var HOT_COUNT = 150,
  63641. HOT_SPAN = 16;
  63642. var LARGE_ARRAY_SIZE = 200;
  63643. var LAZY_FILTER_FLAG = 1,
  63644. LAZY_MAP_FLAG = 2;
  63645. var FUNC_ERROR_TEXT = 'Expected a function';
  63646. var PLACEHOLDER = '__lodash_placeholder__';
  63647. var argsTag = '[object Arguments]',
  63648. arrayTag = '[object Array]',
  63649. boolTag = '[object Boolean]',
  63650. dateTag = '[object Date]',
  63651. errorTag = '[object Error]',
  63652. funcTag = '[object Function]',
  63653. mapTag = '[object Map]',
  63654. numberTag = '[object Number]',
  63655. objectTag = '[object Object]',
  63656. regexpTag = '[object RegExp]',
  63657. setTag = '[object Set]',
  63658. stringTag = '[object String]',
  63659. weakMapTag = '[object WeakMap]';
  63660. var arrayBufferTag = '[object ArrayBuffer]',
  63661. float32Tag = '[object Float32Array]',
  63662. float64Tag = '[object Float64Array]',
  63663. int8Tag = '[object Int8Array]',
  63664. int16Tag = '[object Int16Array]',
  63665. int32Tag = '[object Int32Array]',
  63666. uint8Tag = '[object Uint8Array]',
  63667. uint8ClampedTag = '[object Uint8ClampedArray]',
  63668. uint16Tag = '[object Uint16Array]',
  63669. uint32Tag = '[object Uint32Array]';
  63670. var reEmptyStringLeading = /\b__p \+= '';/g,
  63671. reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
  63672. reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
  63673. var reEscapedHtml = /&(?:amp|lt|gt|quot|#39|#96);/g,
  63674. reUnescapedHtml = /[&<>"'`]/g,
  63675. reHasEscapedHtml = RegExp(reEscapedHtml.source),
  63676. reHasUnescapedHtml = RegExp(reUnescapedHtml.source);
  63677. var reEscape = /<%-([\s\S]+?)%>/g,
  63678. reEvaluate = /<%([\s\S]+?)%>/g,
  63679. reInterpolate = /<%=([\s\S]+?)%>/g;
  63680. var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\n\\]|\\.)*?\1)\]/,
  63681. reIsPlainProp = /^\w*$/,
  63682. rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\n\\]|\\.)*?)\2)\]/g;
  63683. var reRegExpChars = /^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,
  63684. reHasRegExpChars = RegExp(reRegExpChars.source);
  63685. var reComboMark = /[\u0300-\u036f\ufe20-\ufe23]/g;
  63686. var reEscapeChar = /\\(\\)?/g;
  63687. var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
  63688. var reFlags = /\w*$/;
  63689. var reHasHexPrefix = /^0[xX]/;
  63690. var reIsHostCtor = /^\[object .+?Constructor\]$/;
  63691. var reIsUint = /^\d+$/;
  63692. var reLatin1 = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g;
  63693. var reNoMatch = /($^)/;
  63694. var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
  63695. var reWords = (function() {
  63696. var upper = '[A-Z\\xc0-\\xd6\\xd8-\\xde]',
  63697. lower = '[a-z\\xdf-\\xf6\\xf8-\\xff]+';
  63698. return RegExp(upper + '+(?=' + upper + lower + ')|' + upper + '?' + lower + '|' + upper + '+|[0-9]+', 'g');
  63699. }());
  63700. var contextProps = [
  63701. 'Array', 'ArrayBuffer', 'Date', 'Error', 'Float32Array', 'Float64Array',
  63702. 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Math', 'Number',
  63703. 'Object', 'RegExp', 'Set', 'String', '_', 'clearTimeout', 'isFinite',
  63704. 'parseFloat', 'parseInt', 'setTimeout', 'TypeError', 'Uint8Array',
  63705. 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap'
  63706. ];
  63707. var templateCounter = -1;
  63708. var typedArrayTags = {};
  63709. typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =
  63710. typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =
  63711. typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =
  63712. typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =
  63713. typedArrayTags[uint32Tag] = true;
  63714. typedArrayTags[argsTag] = typedArrayTags[arrayTag] =
  63715. typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =
  63716. typedArrayTags[dateTag] = typedArrayTags[errorTag] =
  63717. typedArrayTags[funcTag] = typedArrayTags[mapTag] =
  63718. typedArrayTags[numberTag] = typedArrayTags[objectTag] =
  63719. typedArrayTags[regexpTag] = typedArrayTags[setTag] =
  63720. typedArrayTags[stringTag] = typedArrayTags[weakMapTag] = false;
  63721. var cloneableTags = {};
  63722. cloneableTags[argsTag] = cloneableTags[arrayTag] =
  63723. cloneableTags[arrayBufferTag] = cloneableTags[boolTag] =
  63724. cloneableTags[dateTag] = cloneableTags[float32Tag] =
  63725. cloneableTags[float64Tag] = cloneableTags[int8Tag] =
  63726. cloneableTags[int16Tag] = cloneableTags[int32Tag] =
  63727. cloneableTags[numberTag] = cloneableTags[objectTag] =
  63728. cloneableTags[regexpTag] = cloneableTags[stringTag] =
  63729. cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =
  63730. cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;
  63731. cloneableTags[errorTag] = cloneableTags[funcTag] =
  63732. cloneableTags[mapTag] = cloneableTags[setTag] =
  63733. cloneableTags[weakMapTag] = false;
  63734. var deburredLetters = {
  63735. '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
  63736. '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
  63737. '\xc7': 'C', '\xe7': 'c',
  63738. '\xd0': 'D', '\xf0': 'd',
  63739. '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
  63740. '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
  63741. '\xcC': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
  63742. '\xeC': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
  63743. '\xd1': 'N', '\xf1': 'n',
  63744. '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
  63745. '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
  63746. '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
  63747. '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
  63748. '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
  63749. '\xc6': 'Ae', '\xe6': 'ae',
  63750. '\xde': 'Th', '\xfe': 'th',
  63751. '\xdf': 'ss'
  63752. };
  63753. var htmlEscapes = {
  63754. '&': '&amp;',
  63755. '<': '&lt;',
  63756. '>': '&gt;',
  63757. '"': '&quot;',
  63758. "'": '&#39;',
  63759. '`': '&#96;'
  63760. };
  63761. var htmlUnescapes = {
  63762. '&amp;': '&',
  63763. '&lt;': '<',
  63764. '&gt;': '>',
  63765. '&quot;': '"',
  63766. '&#39;': "'",
  63767. '&#96;': '`'
  63768. };
  63769. var objectTypes = {
  63770. 'function': true,
  63771. 'object': true
  63772. };
  63773. var regexpEscapes = {
  63774. '0': 'x30', '1': 'x31', '2': 'x32', '3': 'x33', '4': 'x34',
  63775. '5': 'x35', '6': 'x36', '7': 'x37', '8': 'x38', '9': 'x39',
  63776. 'A': 'x41', 'B': 'x42', 'C': 'x43', 'D': 'x44', 'E': 'x45', 'F': 'x46',
  63777. 'a': 'x61', 'b': 'x62', 'c': 'x63', 'd': 'x64', 'e': 'x65', 'f': 'x66',
  63778. 'n': 'x6e', 'r': 'x72', 't': 'x74', 'u': 'x75', 'v': 'x76', 'x': 'x78'
  63779. };
  63780. var stringEscapes = {
  63781. '\\': '\\',
  63782. "'": "'",
  63783. '\n': 'n',
  63784. '\r': 'r',
  63785. '\u2028': 'u2028',
  63786. '\u2029': 'u2029'
  63787. };
  63788. var freeExports = objectTypes[typeof exports] && exports && !exports.nodeType && exports;
  63789. var freeModule = objectTypes[typeof module] && module && !module.nodeType && module;
  63790. var freeGlobal = freeExports && freeModule && typeof global == 'object' && global && global.Object && global;
  63791. var freeSelf = objectTypes[typeof self] && self && self.Object && self;
  63792. var freeWindow = objectTypes[typeof window] && window && window.Object && window;
  63793. var moduleExports = freeModule && freeModule.exports === freeExports && freeExports;
  63794. var root = freeGlobal || ((freeWindow !== (this && this.window)) && freeWindow) || freeSelf || this;
  63795. function baseCompareAscending(value, other) {
  63796. if (value !== other) {
  63797. var valIsNull = value === null,
  63798. valIsUndef = value === undefined,
  63799. valIsReflexive = value === value;
  63800. var othIsNull = other === null,
  63801. othIsUndef = other === undefined,
  63802. othIsReflexive = other === other;
  63803. if ((value > other && !othIsNull) || !valIsReflexive ||
  63804. (valIsNull && !othIsUndef && othIsReflexive) ||
  63805. (valIsUndef && othIsReflexive)) {
  63806. return 1;
  63807. }
  63808. if ((value < other && !valIsNull) || !othIsReflexive ||
  63809. (othIsNull && !valIsUndef && valIsReflexive) ||
  63810. (othIsUndef && valIsReflexive)) {
  63811. return -1;
  63812. }
  63813. }
  63814. return 0;
  63815. }
  63816. function baseFindIndex(array, predicate, fromRight) {
  63817. var length = array.length,
  63818. index = fromRight ? length : -1;
  63819. while ((fromRight ? index-- : ++index < length)) {
  63820. if (predicate(array[index], index, array)) {
  63821. return index;
  63822. }
  63823. }
  63824. return -1;
  63825. }
  63826. function baseIndexOf(array, value, fromIndex) {
  63827. if (value !== value) {
  63828. return indexOfNaN(array, fromIndex);
  63829. }
  63830. var index = fromIndex - 1,
  63831. length = array.length;
  63832. while (++index < length) {
  63833. if (array[index] === value) {
  63834. return index;
  63835. }
  63836. }
  63837. return -1;
  63838. }
  63839. function baseIsFunction(value) {
  63840. return typeof value == 'function' || false;
  63841. }
  63842. function baseToString(value) {
  63843. return value == null ? '' : (value + '');
  63844. }
  63845. function charsLeftIndex(string, chars) {
  63846. var index = -1,
  63847. length = string.length;
  63848. while (++index < length && chars.indexOf(string.charAt(index)) > -1) {}
  63849. return index;
  63850. }
  63851. function charsRightIndex(string, chars) {
  63852. var index = string.length;
  63853. while (index-- && chars.indexOf(string.charAt(index)) > -1) {}
  63854. return index;
  63855. }
  63856. function compareAscending(object, other) {
  63857. return baseCompareAscending(object.criteria, other.criteria) || (object.index - other.index);
  63858. }
  63859. function compareMultiple(object, other, orders) {
  63860. var index = -1,
  63861. objCriteria = object.criteria,
  63862. othCriteria = other.criteria,
  63863. length = objCriteria.length,
  63864. ordersLength = orders.length;
  63865. while (++index < length) {
  63866. var result = baseCompareAscending(objCriteria[index], othCriteria[index]);
  63867. if (result) {
  63868. if (index >= ordersLength) {
  63869. return result;
  63870. }
  63871. var order = orders[index];
  63872. return result * ((order === 'asc' || order === true) ? 1 : -1);
  63873. }
  63874. }
  63875. //
  63876. return object.index - other.index;
  63877. }
  63878. function deburrLetter(letter) {
  63879. return deburredLetters[letter];
  63880. }
  63881. function escapeHtmlChar(chr) {
  63882. return htmlEscapes[chr];
  63883. }
  63884. function escapeRegExpChar(chr, leadingChar, whitespaceChar) {
  63885. if (leadingChar) {
  63886. chr = regexpEscapes[chr];
  63887. } else if (whitespaceChar) {
  63888. chr = stringEscapes[chr];
  63889. }
  63890. return '\\' + chr;
  63891. }
  63892. function escapeStringChar(chr) {
  63893. return '\\' + stringEscapes[chr];
  63894. }
  63895. function indexOfNaN(array, fromIndex, fromRight) {
  63896. var length = array.length,
  63897. index = fromIndex + (fromRight ? 0 : -1);
  63898. while ((fromRight ? index-- : ++index < length)) {
  63899. var other = array[index];
  63900. if (other !== other) {
  63901. return index;
  63902. }
  63903. }
  63904. return -1;
  63905. }
  63906. function isObjectLike(value) {
  63907. return !!value && typeof value == 'object';
  63908. }
  63909. function isSpace(charCode) {
  63910. return ((charCode <= 160 && (charCode >= 9 && charCode <= 13) || charCode == 32 || charCode == 160) || charCode == 5760 || charCode == 6158 ||
  63911. (charCode >= 8192 && (charCode <= 8202 || charCode == 8232 || charCode == 8233 || charCode == 8239 || charCode == 8287 || charCode == 12288 || charCode == 65279)));
  63912. }
  63913. function replaceHolders(array, placeholder) {
  63914. var index = -1,
  63915. length = array.length,
  63916. resIndex = -1,
  63917. result = [];
  63918. while (++index < length) {
  63919. if (array[index] === placeholder) {
  63920. array[index] = PLACEHOLDER;
  63921. result[++resIndex] = index;
  63922. }
  63923. }
  63924. return result;
  63925. }
  63926. function sortedUniq(array, iteratee) {
  63927. var seen,
  63928. index = -1,
  63929. length = array.length,
  63930. resIndex = -1,
  63931. result = [];
  63932. while (++index < length) {
  63933. var value = array[index],
  63934. computed = iteratee ? iteratee(value, index, array) : value;
  63935. if (!index || seen !== computed) {
  63936. seen = computed;
  63937. result[++resIndex] = value;
  63938. }
  63939. }
  63940. return result;
  63941. }
  63942. function trimmedLeftIndex(string) {
  63943. var index = -1,
  63944. length = string.length;
  63945. while (++index < length && isSpace(string.charCodeAt(index))) {}
  63946. return index;
  63947. }
  63948. function trimmedRightIndex(string) {
  63949. var index = string.length;
  63950. while (index-- && isSpace(string.charCodeAt(index))) {}
  63951. return index;
  63952. }
  63953. function unescapeHtmlChar(chr) {
  63954. return htmlUnescapes[chr];
  63955. }
  63956. function runInContext(context) {
  63957. context = context ? _.defaults(root.Object(), context, _.pick(root, contextProps)) : root;
  63958. var Array = context.Array,
  63959. Date = context.Date,
  63960. Error = context.Error,
  63961. Function = context.Function,
  63962. Math = context.Math,
  63963. Number = context.Number,
  63964. Object = context.Object,
  63965. RegExp = context.RegExp,
  63966. String = context.String,
  63967. TypeError = context.TypeError;
  63968. var arrayProto = Array.prototype,
  63969. objectProto = Object.prototype,
  63970. stringProto = String.prototype;
  63971. var fnToString = Function.prototype.toString;
  63972. var hasOwnProperty = objectProto.hasOwnProperty;
  63973. var idCounter = 0;
  63974. var objToString = objectProto.toString;
  63975. var oldDash = root._;
  63976. var reIsNative = RegExp('^' +
  63977. fnToString.call(hasOwnProperty).replace(/[\\^$.*+?()[\]{}|]/g, '\\$&')
  63978. .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
  63979. );
  63980. var ArrayBuffer = context.ArrayBuffer,
  63981. clearTimeout = context.clearTimeout,
  63982. parseFloat = context.parseFloat,
  63983. pow = Math.pow,
  63984. propertyIsEnumerable = objectProto.propertyIsEnumerable,
  63985. Set = getNative(context, 'Set'),
  63986. setTimeout = context.setTimeout,
  63987. splice = arrayProto.splice,
  63988. Uint8Array = context.Uint8Array,
  63989. WeakMap = getNative(context, 'WeakMap');
  63990. var nativeCeil = Math.ceil,
  63991. nativeCreate = getNative(Object, 'create'),
  63992. nativeFloor = Math.floor,
  63993. nativeIsArray = getNative(Array, 'isArray'),
  63994. nativeIsFinite = context.isFinite,
  63995. nativeKeys = getNative(Object, 'keys'),
  63996. nativeMax = Math.max,
  63997. nativeMin = Math.min,
  63998. nativeNow = getNative(Date, 'now'),
  63999. nativeParseInt = context.parseInt,
  64000. nativeRandom = Math.random;
  64001. var NEGATIVE_INFINITY = Number.NEGATIVE_INFINITY,
  64002. POSITIVE_INFINITY = Number.POSITIVE_INFINITY;
  64003. var MAX_ARRAY_LENGTH = 4294967295,
  64004. MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,
  64005. HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;
  64006. var MAX_SAFE_INTEGER = 9007199254740991;
  64007. var metaMap = WeakMap && new WeakMap;
  64008. var realNames = {};
  64009. function lodash(value) {
  64010. if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {
  64011. if (value instanceof LodashWrapper) {
  64012. return value;
  64013. }
  64014. if (hasOwnProperty.call(value, '__chain__') && hasOwnProperty.call(value, '__wrapped__')) {
  64015. return wrapperClone(value);
  64016. }
  64017. }
  64018. return new LodashWrapper(value);
  64019. }
  64020. function baseLodash() {
  64021. }
  64022. function LodashWrapper(value, chainAll, actions) {
  64023. this.__wrapped__ = value;
  64024. this.__actions__ = actions || [];
  64025. this.__chain__ = !!chainAll;
  64026. }
  64027. var support = lodash.support = {};
  64028. lodash.templateSettings = {
  64029. 'escape': reEscape,
  64030. 'evaluate': reEvaluate,
  64031. 'interpolate': reInterpolate,
  64032. 'variable': '',
  64033. 'imports': {
  64034. '_': lodash
  64035. }
  64036. };
  64037. function LazyWrapper(value) {
  64038. this.__wrapped__ = value;
  64039. this.__actions__ = [];
  64040. this.__dir__ = 1;
  64041. this.__filtered__ = false;
  64042. this.__iteratees__ = [];
  64043. this.__takeCount__ = POSITIVE_INFINITY;
  64044. this.__views__ = [];
  64045. }
  64046. function lazyClone() {
  64047. var result = new LazyWrapper(this.__wrapped__);
  64048. result.__actions__ = arrayCopy(this.__actions__);
  64049. result.__dir__ = this.__dir__;
  64050. result.__filtered__ = this.__filtered__;
  64051. result.__iteratees__ = arrayCopy(this.__iteratees__);
  64052. result.__takeCount__ = this.__takeCount__;
  64053. result.__views__ = arrayCopy(this.__views__);
  64054. return result;
  64055. }
  64056. function lazyReverse() {
  64057. if (this.__filtered__) {
  64058. var result = new LazyWrapper(this);
  64059. result.__dir__ = -1;
  64060. result.__filtered__ = true;
  64061. } else {
  64062. result = this.clone();
  64063. result.__dir__ *= -1;
  64064. }
  64065. return result;
  64066. }
  64067. function lazyValue() {
  64068. var array = this.__wrapped__.value(),
  64069. dir = this.__dir__,
  64070. isArr = isArray(array),
  64071. isRight = dir < 0,
  64072. arrLength = isArr ? array.length : 0,
  64073. view = getView(0, arrLength, this.__views__),
  64074. start = view.start,
  64075. end = view.end,
  64076. length = end - start,
  64077. index = isRight ? end : (start - 1),
  64078. iteratees = this.__iteratees__,
  64079. iterLength = iteratees.length,
  64080. resIndex = 0,
  64081. takeCount = nativeMin(length, this.__takeCount__);
  64082. if (!isArr || arrLength < LARGE_ARRAY_SIZE || (arrLength == length && takeCount == length)) {
  64083. return baseWrapperValue((isRight && isArr) ? array.reverse() : array, this.__actions__);
  64084. }
  64085. var result = [];
  64086. outer:
  64087. while (length-- && resIndex < takeCount) {
  64088. index += dir;
  64089. var iterIndex = -1,
  64090. value = array[index];
  64091. while (++iterIndex < iterLength) {
  64092. var data = iteratees[iterIndex],
  64093. iteratee = data.iteratee,
  64094. type = data.type,
  64095. computed = iteratee(value);
  64096. if (type == LAZY_MAP_FLAG) {
  64097. value = computed;
  64098. } else if (!computed) {
  64099. if (type == LAZY_FILTER_FLAG) {
  64100. continue outer;
  64101. } else {
  64102. break outer;
  64103. }
  64104. }
  64105. }
  64106. result[resIndex++] = value;
  64107. }
  64108. return result;
  64109. }
  64110. function MapCache() {
  64111. this.__data__ = {};
  64112. }
  64113. function mapDelete(key) {
  64114. return this.has(key) && delete this.__data__[key];
  64115. }
  64116. function mapGet(key) {
  64117. return key == '__proto__' ? undefined : this.__data__[key];
  64118. }
  64119. function mapHas(key) {
  64120. return key != '__proto__' && hasOwnProperty.call(this.__data__, key);
  64121. }
  64122. function mapSet(key, value) {
  64123. if (key != '__proto__') {
  64124. this.__data__[key] = value;
  64125. }
  64126. return this;
  64127. }
  64128. function SetCache(values) {
  64129. var length = values ? values.length : 0;
  64130. this.data = { 'hash': nativeCreate(null), 'set': new Set };
  64131. while (length--) {
  64132. this.push(values[length]);
  64133. }
  64134. }
  64135. function cacheIndexOf(cache, value) {
  64136. var data = cache.data,
  64137. result = (typeof value == 'string' || isObject(value)) ? data.set.has(value) : data.hash[value];
  64138. return result ? 0 : -1;
  64139. }
  64140. function cachePush(value) {
  64141. var data = this.data;
  64142. if (typeof value == 'string' || isObject(value)) {
  64143. data.set.add(value);
  64144. } else {
  64145. data.hash[value] = true;
  64146. }
  64147. }
  64148. function arrayConcat(array, other) {
  64149. var index = -1,
  64150. length = array.length,
  64151. othIndex = -1,
  64152. othLength = other.length,
  64153. result = Array(length + othLength);
  64154. while (++index < length) {
  64155. result[index] = array[index];
  64156. }
  64157. while (++othIndex < othLength) {
  64158. result[index++] = other[othIndex];
  64159. }
  64160. return result;
  64161. }
  64162. function arrayCopy(source, array) {
  64163. var index = -1,
  64164. length = source.length;
  64165. array || (array = Array(length));
  64166. while (++index < length) {
  64167. array[index] = source[index];
  64168. }
  64169. return array;
  64170. }
  64171. function arrayEach(array, iteratee) {
  64172. var index = -1,
  64173. length = array.length;
  64174. while (++index < length) {
  64175. if (iteratee(array[index], index, array) === false) {
  64176. break;
  64177. }
  64178. }
  64179. return array;
  64180. }
  64181. function arrayEachRight(array, iteratee) {
  64182. var length = array.length;
  64183. while (length--) {
  64184. if (iteratee(array[length], length, array) === false) {
  64185. break;
  64186. }
  64187. }
  64188. return array;
  64189. }
  64190. function arrayEvery(array, predicate) {
  64191. var index = -1,
  64192. length = array.length;
  64193. while (++index < length) {
  64194. if (!predicate(array[index], index, array)) {
  64195. return false;
  64196. }
  64197. }
  64198. return true;
  64199. }
  64200. function arrayExtremum(array, iteratee, comparator, exValue) {
  64201. var index = -1,
  64202. length = array.length,
  64203. computed = exValue,
  64204. result = computed;
  64205. while (++index < length) {
  64206. var value = array[index],
  64207. current = +iteratee(value);
  64208. if (comparator(current, computed)) {
  64209. computed = current;
  64210. result = value;
  64211. }
  64212. }
  64213. return result;
  64214. }
  64215. function arrayFilter(array, predicate) {
  64216. var index = -1,
  64217. length = array.length,
  64218. resIndex = -1,
  64219. result = [];
  64220. while (++index < length) {
  64221. var value = array[index];
  64222. if (predicate(value, index, array)) {
  64223. result[++resIndex] = value;
  64224. }
  64225. }
  64226. return result;
  64227. }
  64228. function arrayMap(array, iteratee) {
  64229. var index = -1,
  64230. length = array.length,
  64231. result = Array(length);
  64232. while (++index < length) {
  64233. result[index] = iteratee(array[index], index, array);
  64234. }
  64235. return result;
  64236. }
  64237. function arrayPush(array, values) {
  64238. var index = -1,
  64239. length = values.length,
  64240. offset = array.length;
  64241. while (++index < length) {
  64242. array[offset + index] = values[index];
  64243. }
  64244. return array;
  64245. }
  64246. function arrayReduce(array, iteratee, accumulator, initFromArray) {
  64247. var index = -1,
  64248. length = array.length;
  64249. if (initFromArray && length) {
  64250. accumulator = array[++index];
  64251. }
  64252. while (++index < length) {
  64253. accumulator = iteratee(accumulator, array[index], index, array);
  64254. }
  64255. return accumulator;
  64256. }
  64257. function arrayReduceRight(array, iteratee, accumulator, initFromArray) {
  64258. var length = array.length;
  64259. if (initFromArray && length) {
  64260. accumulator = array[--length];
  64261. }
  64262. while (length--) {
  64263. accumulator = iteratee(accumulator, array[length], length, array);
  64264. }
  64265. return accumulator;
  64266. }
  64267. function arraySome(array, predicate) {
  64268. var index = -1,
  64269. length = array.length;
  64270. while (++index < length) {
  64271. if (predicate(array[index], index, array)) {
  64272. return true;
  64273. }
  64274. }
  64275. return false;
  64276. }
  64277. function arraySum(array, iteratee) {
  64278. var length = array.length,
  64279. result = 0;
  64280. while (length--) {
  64281. result += +iteratee(array[length]) || 0;
  64282. }
  64283. return result;
  64284. }
  64285. function assignDefaults(objectValue, sourceValue) {
  64286. return objectValue === undefined ? sourceValue : objectValue;
  64287. }
  64288. function assignOwnDefaults(objectValue, sourceValue, key, object) {
  64289. return (objectValue === undefined || !hasOwnProperty.call(object, key))
  64290. ? sourceValue
  64291. : objectValue;
  64292. }
  64293. function assignWith(object, source, customizer) {
  64294. var index = -1,
  64295. props = keys(source),
  64296. length = props.length;
  64297. while (++index < length) {
  64298. var key = props[index],
  64299. value = object[key],
  64300. result = customizer(value, source[key], key, object, source);
  64301. if ((result === result ? (result !== value) : (value === value)) ||
  64302. (value === undefined && !(key in object))) {
  64303. object[key] = result;
  64304. }
  64305. }
  64306. return object;
  64307. }
  64308. function baseAssign(object, source) {
  64309. return source == null
  64310. ? object
  64311. : baseCopy(source, keys(source), object);
  64312. }
  64313. function baseAt(collection, props) {
  64314. var index = -1,
  64315. isNil = collection == null,
  64316. isArr = !isNil && isArrayLike(collection),
  64317. length = isArr ? collection.length : 0,
  64318. propsLength = props.length,
  64319. result = Array(propsLength);
  64320. while(++index < propsLength) {
  64321. var key = props[index];
  64322. if (isArr) {
  64323. result[index] = isIndex(key, length) ? collection[key] : undefined;
  64324. } else {
  64325. result[index] = isNil ? undefined : collection[key];
  64326. }
  64327. }
  64328. return result;
  64329. }
  64330. function baseCopy(source, props, object) {
  64331. object || (object = {});
  64332. var index = -1,
  64333. length = props.length;
  64334. while (++index < length) {
  64335. var key = props[index];
  64336. object[key] = source[key];
  64337. }
  64338. return object;
  64339. }
  64340. function baseCallback(func, thisArg, argCount) {
  64341. var type = typeof func;
  64342. if (type == 'function') {
  64343. return thisArg === undefined
  64344. ? func
  64345. : bindCallback(func, thisArg, argCount);
  64346. }
  64347. if (func == null) {
  64348. return identity;
  64349. }
  64350. if (type == 'object') {
  64351. return baseMatches(func);
  64352. }
  64353. return thisArg === undefined
  64354. ? property(func)
  64355. : baseMatchesProperty(func, thisArg);
  64356. }
  64357. function baseClone(value, isDeep, customizer, key, object, stackA, stackB) {
  64358. var result;
  64359. if (customizer) {
  64360. result = object ? customizer(value, key, object) : customizer(value);
  64361. }
  64362. if (result !== undefined) {
  64363. return result;
  64364. }
  64365. if (!isObject(value)) {
  64366. return value;
  64367. }
  64368. var isArr = isArray(value);
  64369. if (isArr) {
  64370. result = initCloneArray(value);
  64371. if (!isDeep) {
  64372. return arrayCopy(value, result);
  64373. }
  64374. } else {
  64375. var tag = objToString.call(value),
  64376. isFunc = tag == funcTag;
  64377. if (tag == objectTag || tag == argsTag || (isFunc && !object)) {
  64378. result = initCloneObject(isFunc ? {} : value);
  64379. if (!isDeep) {
  64380. return baseAssign(result, value);
  64381. }
  64382. } else {
  64383. return cloneableTags[tag]
  64384. ? initCloneByTag(value, tag, isDeep)
  64385. : (object ? value : {});
  64386. }
  64387. }
  64388. stackA || (stackA = []);
  64389. stackB || (stackB = []);
  64390. var length = stackA.length;
  64391. while (length--) {
  64392. if (stackA[length] == value) {
  64393. return stackB[length];
  64394. }
  64395. }
  64396. stackA.push(value);
  64397. stackB.push(result);
  64398. (isArr ? arrayEach : baseForOwn)(value, function(subValue, key) {
  64399. result[key] = baseClone(subValue, isDeep, customizer, key, value, stackA, stackB);
  64400. });
  64401. return result;
  64402. }
  64403. var baseCreate = (function() {
  64404. function object() {}
  64405. return function(prototype) {
  64406. if (isObject(prototype)) {
  64407. object.prototype = prototype;
  64408. var result = new object;
  64409. object.prototype = undefined;
  64410. }
  64411. return result || {};
  64412. };
  64413. }());
  64414. function baseDelay(func, wait, args) {
  64415. if (typeof func != 'function') {
  64416. throw new TypeError(FUNC_ERROR_TEXT);
  64417. }
  64418. return setTimeout(function() { func.apply(undefined, args); }, wait);
  64419. }
  64420. function baseDifference(array, values) {
  64421. var length = array ? array.length : 0,
  64422. result = [];
  64423. if (!length) {
  64424. return result;
  64425. }
  64426. var index = -1,
  64427. indexOf = getIndexOf(),
  64428. isCommon = indexOf == baseIndexOf,
  64429. cache = (isCommon && values.length >= LARGE_ARRAY_SIZE) ? createCache(values) : null,
  64430. valuesLength = values.length;
  64431. if (cache) {
  64432. indexOf = cacheIndexOf;
  64433. isCommon = false;
  64434. values = cache;
  64435. }
  64436. outer:
  64437. while (++index < length) {
  64438. var value = array[index];
  64439. if (isCommon && value === value) {
  64440. var valuesIndex = valuesLength;
  64441. while (valuesIndex--) {
  64442. if (values[valuesIndex] === value) {
  64443. continue outer;
  64444. }
  64445. }
  64446. result.push(value);
  64447. }
  64448. else if (indexOf(values, value, 0) < 0) {
  64449. result.push(value);
  64450. }
  64451. }
  64452. return result;
  64453. }
  64454. var baseEach = createBaseEach(baseForOwn);
  64455. var baseEachRight = createBaseEach(baseForOwnRight, true);
  64456. function baseEvery(collection, predicate) {
  64457. var result = true;
  64458. baseEach(collection, function(value, index, collection) {
  64459. result = !!predicate(value, index, collection);
  64460. return result;
  64461. });
  64462. return result;
  64463. }
  64464. function baseExtremum(collection, iteratee, comparator, exValue) {
  64465. var computed = exValue,
  64466. result = computed;
  64467. baseEach(collection, function(value, index, collection) {
  64468. var current = +iteratee(value, index, collection);
  64469. if (comparator(current, computed) || (current === exValue && current === result)) {
  64470. computed = current;
  64471. result = value;
  64472. }
  64473. });
  64474. return result;
  64475. }
  64476. function baseFill(array, value, start, end) {
  64477. var length = array.length;
  64478. start = start == null ? 0 : (+start || 0);
  64479. if (start < 0) {
  64480. start = -start > length ? 0 : (length + start);
  64481. }
  64482. end = (end === undefined || end > length) ? length : (+end || 0);
  64483. if (end < 0) {
  64484. end += length;
  64485. }
  64486. length = start > end ? 0 : (end >>> 0);
  64487. start >>>= 0;
  64488. while (start < length) {
  64489. array[start++] = value;
  64490. }
  64491. return array;
  64492. }
  64493. function baseFilter(collection, predicate) {
  64494. var result = [];
  64495. baseEach(collection, function(value, index, collection) {
  64496. if (predicate(value, index, collection)) {
  64497. result.push(value);
  64498. }
  64499. });
  64500. return result;
  64501. }
  64502. function baseFind(collection, predicate, eachFunc, retKey) {
  64503. var result;
  64504. eachFunc(collection, function(value, key, collection) {
  64505. if (predicate(value, key, collection)) {
  64506. result = retKey ? key : value;
  64507. return false;
  64508. }
  64509. });
  64510. return result;
  64511. }
  64512. function baseFlatten(array, isDeep, isStrict, result) {
  64513. result || (result = []);
  64514. var index = -1,
  64515. length = array.length;
  64516. while (++index < length) {
  64517. var value = array[index];
  64518. if (isObjectLike(value) && isArrayLike(value) &&
  64519. (isStrict || isArray(value) || isArguments(value))) {
  64520. if (isDeep) {
  64521. baseFlatten(value, isDeep, isStrict, result);
  64522. } else {
  64523. arrayPush(result, value);
  64524. }
  64525. } else if (!isStrict) {
  64526. result[result.length] = value;
  64527. }
  64528. }
  64529. return result;
  64530. }
  64531. var baseFor = createBaseFor();
  64532. var baseForRight = createBaseFor(true);
  64533. function baseForIn(object, iteratee) {
  64534. return baseFor(object, iteratee, keysIn);
  64535. }
  64536. function baseForOwn(object, iteratee) {
  64537. return baseFor(object, iteratee, keys);
  64538. }
  64539. function baseForOwnRight(object, iteratee) {
  64540. return baseForRight(object, iteratee, keys);
  64541. }
  64542. function baseFunctions(object, props) {
  64543. var index = -1,
  64544. length = props.length,
  64545. resIndex = -1,
  64546. result = [];
  64547. while (++index < length) {
  64548. var key = props[index];
  64549. if (isFunction(object[key])) {
  64550. result[++resIndex] = key;
  64551. }
  64552. }
  64553. return result;
  64554. }
  64555. function baseGet(object, path, pathKey) {
  64556. if (object == null) {
  64557. return;
  64558. }
  64559. if (pathKey !== undefined && pathKey in toObject(object)) {
  64560. path = [pathKey];
  64561. }
  64562. var index = 0,
  64563. length = path.length;
  64564. while (object != null && index < length) {
  64565. object = object[path[index++]];
  64566. }
  64567. return (index && index == length) ? object : undefined;
  64568. }
  64569. function baseIsEqual(value, other, customizer, isLoose, stackA, stackB) {
  64570. if (value === other) {
  64571. return true;
  64572. }
  64573. if (value == null || other == null || (!isObject(value) && !isObjectLike(other))) {
  64574. return value !== value && other !== other;
  64575. }
  64576. return baseIsEqualDeep(value, other, baseIsEqual, customizer, isLoose, stackA, stackB);
  64577. }
  64578. function baseIsEqualDeep(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
  64579. var objIsArr = isArray(object),
  64580. othIsArr = isArray(other),
  64581. objTag = arrayTag,
  64582. othTag = arrayTag;
  64583. if (!objIsArr) {
  64584. objTag = objToString.call(object);
  64585. if (objTag == argsTag) {
  64586. objTag = objectTag;
  64587. } else if (objTag != objectTag) {
  64588. objIsArr = isTypedArray(object);
  64589. }
  64590. }
  64591. if (!othIsArr) {
  64592. othTag = objToString.call(other);
  64593. if (othTag == argsTag) {
  64594. othTag = objectTag;
  64595. } else if (othTag != objectTag) {
  64596. othIsArr = isTypedArray(other);
  64597. }
  64598. }
  64599. var objIsObj = objTag == objectTag,
  64600. othIsObj = othTag == objectTag,
  64601. isSameTag = objTag == othTag;
  64602. if (isSameTag && !(objIsArr || objIsObj)) {
  64603. return equalByTag(object, other, objTag);
  64604. }
  64605. if (!isLoose) {
  64606. var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),
  64607. othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');
  64608. if (objIsWrapped || othIsWrapped) {
  64609. return equalFunc(objIsWrapped ? object.value() : object, othIsWrapped ? other.value() : other, customizer, isLoose, stackA, stackB);
  64610. }
  64611. }
  64612. if (!isSameTag) {
  64613. return false;
  64614. }
  64615. stackA || (stackA = []);
  64616. stackB || (stackB = []);
  64617. var length = stackA.length;
  64618. while (length--) {
  64619. if (stackA[length] == object) {
  64620. return stackB[length] == other;
  64621. }
  64622. }
  64623. stackA.push(object);
  64624. stackB.push(other);
  64625. var result = (objIsArr ? equalArrays : equalObjects)(object, other, equalFunc, customizer, isLoose, stackA, stackB);
  64626. stackA.pop();
  64627. stackB.pop();
  64628. return result;
  64629. }
  64630. function baseIsMatch(object, matchData, customizer) {
  64631. var index = matchData.length,
  64632. length = index,
  64633. noCustomizer = !customizer;
  64634. if (object == null) {
  64635. return !length;
  64636. }
  64637. object = toObject(object);
  64638. while (index--) {
  64639. var data = matchData[index];
  64640. if ((noCustomizer && data[2])
  64641. ? data[1] !== object[data[0]]
  64642. : !(data[0] in object)
  64643. ) {
  64644. return false;
  64645. }
  64646. }
  64647. while (++index < length) {
  64648. data = matchData[index];
  64649. var key = data[0],
  64650. objValue = object[key],
  64651. srcValue = data[1];
  64652. if (noCustomizer && data[2]) {
  64653. if (objValue === undefined && !(key in object)) {
  64654. return false;
  64655. }
  64656. } else {
  64657. var result = customizer ? customizer(objValue, srcValue, key) : undefined;
  64658. if (!(result === undefined ? baseIsEqual(srcValue, objValue, customizer, true) : result)) {
  64659. return false;
  64660. }
  64661. }
  64662. }
  64663. return true;
  64664. }
  64665. function baseMap(collection, iteratee) {
  64666. var index = -1,
  64667. result = isArrayLike(collection) ? Array(collection.length) : [];
  64668. baseEach(collection, function(value, key, collection) {
  64669. result[++index] = iteratee(value, key, collection);
  64670. });
  64671. return result;
  64672. }
  64673. function baseMatches(source) {
  64674. var matchData = getMatchData(source);
  64675. if (matchData.length == 1 && matchData[0][2]) {
  64676. var key = matchData[0][0],
  64677. value = matchData[0][1];
  64678. return function(object) {
  64679. if (object == null) {
  64680. return false;
  64681. }
  64682. return object[key] === value && (value !== undefined || (key in toObject(object)));
  64683. };
  64684. }
  64685. return function(object) {
  64686. return baseIsMatch(object, matchData);
  64687. };
  64688. }
  64689. function baseMatchesProperty(path, srcValue) {
  64690. var isArr = isArray(path),
  64691. isCommon = isKey(path) && isStrictComparable(srcValue),
  64692. pathKey = (path + '');
  64693. path = toPath(path);
  64694. return function(object) {
  64695. if (object == null) {
  64696. return false;
  64697. }
  64698. var key = pathKey;
  64699. object = toObject(object);
  64700. if ((isArr || !isCommon) && !(key in object)) {
  64701. object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
  64702. if (object == null) {
  64703. return false;
  64704. }
  64705. key = last(path);
  64706. object = toObject(object);
  64707. }
  64708. return object[key] === srcValue
  64709. ? (srcValue !== undefined || (key in object))
  64710. : baseIsEqual(srcValue, object[key], undefined, true);
  64711. };
  64712. }
  64713. function baseMerge(object, source, customizer, stackA, stackB) {
  64714. if (!isObject(object)) {
  64715. return object;
  64716. }
  64717. var isSrcArr = isArrayLike(source) && (isArray(source) || isTypedArray(source)),
  64718. props = isSrcArr ? undefined : keys(source);
  64719. arrayEach(props || source, function(srcValue, key) {
  64720. if (props) {
  64721. key = srcValue;
  64722. srcValue = source[key];
  64723. }
  64724. if (isObjectLike(srcValue)) {
  64725. stackA || (stackA = []);
  64726. stackB || (stackB = []);
  64727. baseMergeDeep(object, source, key, baseMerge, customizer, stackA, stackB);
  64728. }
  64729. else {
  64730. var value = object[key],
  64731. result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
  64732. isCommon = result === undefined;
  64733. if (isCommon) {
  64734. result = srcValue;
  64735. }
  64736. if ((result !== undefined || (isSrcArr && !(key in object))) &&
  64737. (isCommon || (result === result ? (result !== value) : (value === value)))) {
  64738. object[key] = result;
  64739. }
  64740. }
  64741. });
  64742. return object;
  64743. }
  64744. function baseMergeDeep(object, source, key, mergeFunc, customizer, stackA, stackB) {
  64745. var length = stackA.length,
  64746. srcValue = source[key];
  64747. while (length--) {
  64748. if (stackA[length] == srcValue) {
  64749. object[key] = stackB[length];
  64750. return;
  64751. }
  64752. }
  64753. var value = object[key],
  64754. result = customizer ? customizer(value, srcValue, key, object, source) : undefined,
  64755. isCommon = result === undefined;
  64756. if (isCommon) {
  64757. result = srcValue;
  64758. if (isArrayLike(srcValue) && (isArray(srcValue) || isTypedArray(srcValue))) {
  64759. result = isArray(value)
  64760. ? value
  64761. : (isArrayLike(value) ? arrayCopy(value) : []);
  64762. }
  64763. else if (isPlainObject(srcValue) || isArguments(srcValue)) {
  64764. result = isArguments(value)
  64765. ? toPlainObject(value)
  64766. : (isPlainObject(value) ? value : {});
  64767. }
  64768. else {
  64769. isCommon = false;
  64770. }
  64771. }
  64772. stackA.push(srcValue);
  64773. stackB.push(result);
  64774. if (isCommon) {
  64775. object[key] = mergeFunc(result, srcValue, customizer, stackA, stackB);
  64776. } else if (result === result ? (result !== value) : (value === value)) {
  64777. object[key] = result;
  64778. }
  64779. }
  64780. function baseProperty(key) {
  64781. return function(object) {
  64782. return object == null ? undefined : object[key];
  64783. };
  64784. }
  64785. function basePropertyDeep(path) {
  64786. var pathKey = (path + '');
  64787. path = toPath(path);
  64788. return function(object) {
  64789. return baseGet(object, path, pathKey);
  64790. };
  64791. }
  64792. function basePullAt(array, indexes) {
  64793. var length = array ? indexes.length : 0;
  64794. while (length--) {
  64795. var index = indexes[length];
  64796. if (index != previous && isIndex(index)) {
  64797. var previous = index;
  64798. splice.call(array, index, 1);
  64799. }
  64800. }
  64801. return array;
  64802. }
  64803. function baseRandom(min, max) {
  64804. return min + nativeFloor(nativeRandom() * (max - min + 1));
  64805. }
  64806. function baseReduce(collection, iteratee, accumulator, initFromCollection, eachFunc) {
  64807. eachFunc(collection, function(value, index, collection) {
  64808. accumulator = initFromCollection
  64809. ? (initFromCollection = false, value)
  64810. : iteratee(accumulator, value, index, collection);
  64811. });
  64812. return accumulator;
  64813. }
  64814. var baseSetData = !metaMap ? identity : function(func, data) {
  64815. metaMap.set(func, data);
  64816. return func;
  64817. };
  64818. function baseSlice(array, start, end) {
  64819. var index = -1,
  64820. length = array.length;
  64821. start = start == null ? 0 : (+start || 0);
  64822. if (start < 0) {
  64823. start = -start > length ? 0 : (length + start);
  64824. }
  64825. end = (end === undefined || end > length) ? length : (+end || 0);
  64826. if (end < 0) {
  64827. end += length;
  64828. }
  64829. length = start > end ? 0 : ((end - start) >>> 0);
  64830. start >>>= 0;
  64831. var result = Array(length);
  64832. while (++index < length) {
  64833. result[index] = array[index + start];
  64834. }
  64835. return result;
  64836. }
  64837. function baseSome(collection, predicate) {
  64838. var result;
  64839. baseEach(collection, function(value, index, collection) {
  64840. result = predicate(value, index, collection);
  64841. return !result;
  64842. });
  64843. return !!result;
  64844. }
  64845. function baseSortBy(array, comparer) {
  64846. var length = array.length;
  64847. array.sort(comparer);
  64848. while (length--) {
  64849. array[length] = array[length].value;
  64850. }
  64851. return array;
  64852. }
  64853. function baseSortByOrder(collection, iteratees, orders) {
  64854. var callback = getCallback(),
  64855. index = -1;
  64856. iteratees = arrayMap(iteratees, function(iteratee) { return callback(iteratee); });
  64857. var result = baseMap(collection, function(value) {
  64858. var criteria = arrayMap(iteratees, function(iteratee) { return iteratee(value); });
  64859. return { 'criteria': criteria, 'index': ++index, 'value': value };
  64860. });
  64861. return baseSortBy(result, function(object, other) {
  64862. return compareMultiple(object, other, orders);
  64863. });
  64864. }
  64865. function baseSum(collection, iteratee) {
  64866. var result = 0;
  64867. baseEach(collection, function(value, index, collection) {
  64868. result += +iteratee(value, index, collection) || 0;
  64869. });
  64870. return result;
  64871. }
  64872. function baseUniq(array, iteratee) {
  64873. var index = -1,
  64874. indexOf = getIndexOf(),
  64875. length = array.length,
  64876. isCommon = indexOf == baseIndexOf,
  64877. isLarge = isCommon && length >= LARGE_ARRAY_SIZE,
  64878. seen = isLarge ? createCache() : null,
  64879. result = [];
  64880. if (seen) {
  64881. indexOf = cacheIndexOf;
  64882. isCommon = false;
  64883. } else {
  64884. isLarge = false;
  64885. seen = iteratee ? [] : result;
  64886. }
  64887. outer:
  64888. while (++index < length) {
  64889. var value = array[index],
  64890. computed = iteratee ? iteratee(value, index, array) : value;
  64891. if (isCommon && value === value) {
  64892. var seenIndex = seen.length;
  64893. while (seenIndex--) {
  64894. if (seen[seenIndex] === computed) {
  64895. continue outer;
  64896. }
  64897. }
  64898. if (iteratee) {
  64899. seen.push(computed);
  64900. }
  64901. result.push(value);
  64902. }
  64903. else if (indexOf(seen, computed, 0) < 0) {
  64904. if (iteratee || isLarge) {
  64905. seen.push(computed);
  64906. }
  64907. result.push(value);
  64908. }
  64909. }
  64910. return result;
  64911. }
  64912. function baseValues(object, props) {
  64913. var index = -1,
  64914. length = props.length,
  64915. result = Array(length);
  64916. while (++index < length) {
  64917. result[index] = object[props[index]];
  64918. }
  64919. return result;
  64920. }
  64921. function baseWhile(array, predicate, isDrop, fromRight) {
  64922. var length = array.length,
  64923. index = fromRight ? length : -1;
  64924. while ((fromRight ? index-- : ++index < length) && predicate(array[index], index, array)) {}
  64925. return isDrop
  64926. ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))
  64927. : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));
  64928. }
  64929. function baseWrapperValue(value, actions) {
  64930. var result = value;
  64931. if (result instanceof LazyWrapper) {
  64932. result = result.value();
  64933. }
  64934. var index = -1,
  64935. length = actions.length;
  64936. while (++index < length) {
  64937. var action = actions[index];
  64938. result = action.func.apply(action.thisArg, arrayPush([result], action.args));
  64939. }
  64940. return result;
  64941. }
  64942. function binaryIndex(array, value, retHighest) {
  64943. var low = 0,
  64944. high = array ? array.length : low;
  64945. if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {
  64946. while (low < high) {
  64947. var mid = (low + high) >>> 1,
  64948. computed = array[mid];
  64949. if ((retHighest ? (computed <= value) : (computed < value)) && computed !== null) {
  64950. low = mid + 1;
  64951. } else {
  64952. high = mid;
  64953. }
  64954. }
  64955. return high;
  64956. }
  64957. return binaryIndexBy(array, value, identity, retHighest);
  64958. }
  64959. function binaryIndexBy(array, value, iteratee, retHighest) {
  64960. value = iteratee(value);
  64961. var low = 0,
  64962. high = array ? array.length : 0,
  64963. valIsNaN = value !== value,
  64964. valIsNull = value === null,
  64965. valIsUndef = value === undefined;
  64966. while (low < high) {
  64967. var mid = nativeFloor((low + high) / 2),
  64968. computed = iteratee(array[mid]),
  64969. isDef = computed !== undefined,
  64970. isReflexive = computed === computed;
  64971. if (valIsNaN) {
  64972. var setLow = isReflexive || retHighest;
  64973. } else if (valIsNull) {
  64974. setLow = isReflexive && isDef && (retHighest || computed != null);
  64975. } else if (valIsUndef) {
  64976. setLow = isReflexive && (retHighest || isDef);
  64977. } else if (computed == null) {
  64978. setLow = false;
  64979. } else {
  64980. setLow = retHighest ? (computed <= value) : (computed < value);
  64981. }
  64982. if (setLow) {
  64983. low = mid + 1;
  64984. } else {
  64985. high = mid;
  64986. }
  64987. }
  64988. return nativeMin(high, MAX_ARRAY_INDEX);
  64989. }
  64990. function bindCallback(func, thisArg, argCount) {
  64991. if (typeof func != 'function') {
  64992. return identity;
  64993. }
  64994. if (thisArg === undefined) {
  64995. return func;
  64996. }
  64997. switch (argCount) {
  64998. case 1: return function(value) {
  64999. return func.call(thisArg, value);
  65000. };
  65001. case 3: return function(value, index, collection) {
  65002. return func.call(thisArg, value, index, collection);
  65003. };
  65004. case 4: return function(accumulator, value, index, collection) {
  65005. return func.call(thisArg, accumulator, value, index, collection);
  65006. };
  65007. case 5: return function(value, other, key, object, source) {
  65008. return func.call(thisArg, value, other, key, object, source);
  65009. };
  65010. }
  65011. return function() {
  65012. return func.apply(thisArg, arguments);
  65013. };
  65014. }
  65015. function bufferClone(buffer) {
  65016. var result = new ArrayBuffer(buffer.byteLength),
  65017. view = new Uint8Array(result);
  65018. view.set(new Uint8Array(buffer));
  65019. return result;
  65020. }
  65021. function composeArgs(args, partials, holders) {
  65022. var holdersLength = holders.length,
  65023. argsIndex = -1,
  65024. argsLength = nativeMax(args.length - holdersLength, 0),
  65025. leftIndex = -1,
  65026. leftLength = partials.length,
  65027. result = Array(leftLength + argsLength);
  65028. while (++leftIndex < leftLength) {
  65029. result[leftIndex] = partials[leftIndex];
  65030. }
  65031. while (++argsIndex < holdersLength) {
  65032. result[holders[argsIndex]] = args[argsIndex];
  65033. }
  65034. while (argsLength--) {
  65035. result[leftIndex++] = args[argsIndex++];
  65036. }
  65037. return result;
  65038. }
  65039. function composeArgsRight(args, partials, holders) {
  65040. var holdersIndex = -1,
  65041. holdersLength = holders.length,
  65042. argsIndex = -1,
  65043. argsLength = nativeMax(args.length - holdersLength, 0),
  65044. rightIndex = -1,
  65045. rightLength = partials.length,
  65046. result = Array(argsLength + rightLength);
  65047. while (++argsIndex < argsLength) {
  65048. result[argsIndex] = args[argsIndex];
  65049. }
  65050. var offset = argsIndex;
  65051. while (++rightIndex < rightLength) {
  65052. result[offset + rightIndex] = partials[rightIndex];
  65053. }
  65054. while (++holdersIndex < holdersLength) {
  65055. result[offset + holders[holdersIndex]] = args[argsIndex++];
  65056. }
  65057. return result;
  65058. }
  65059. function createAggregator(setter, initializer) {
  65060. return function(collection, iteratee, thisArg) {
  65061. var result = initializer ? initializer() : {};
  65062. iteratee = getCallback(iteratee, thisArg, 3);
  65063. if (isArray(collection)) {
  65064. var index = -1,
  65065. length = collection.length;
  65066. while (++index < length) {
  65067. var value = collection[index];
  65068. setter(result, value, iteratee(value, index, collection), collection);
  65069. }
  65070. } else {
  65071. baseEach(collection, function(value, key, collection) {
  65072. setter(result, value, iteratee(value, key, collection), collection);
  65073. });
  65074. }
  65075. return result;
  65076. };
  65077. }
  65078. function createAssigner(assigner) {
  65079. return restParam(function(object, sources) {
  65080. var index = -1,
  65081. length = object == null ? 0 : sources.length,
  65082. customizer = length > 2 ? sources[length - 2] : undefined,
  65083. guard = length > 2 ? sources[2] : undefined,
  65084. thisArg = length > 1 ? sources[length - 1] : undefined;
  65085. if (typeof customizer == 'function') {
  65086. customizer = bindCallback(customizer, thisArg, 5);
  65087. length -= 2;
  65088. } else {
  65089. customizer = typeof thisArg == 'function' ? thisArg : undefined;
  65090. length -= (customizer ? 1 : 0);
  65091. }
  65092. if (guard && isIterateeCall(sources[0], sources[1], guard)) {
  65093. customizer = length < 3 ? undefined : customizer;
  65094. length = 1;
  65095. }
  65096. while (++index < length) {
  65097. var source = sources[index];
  65098. if (source) {
  65099. assigner(object, source, customizer);
  65100. }
  65101. }
  65102. return object;
  65103. });
  65104. }
  65105. function createBaseEach(eachFunc, fromRight) {
  65106. return function(collection, iteratee) {
  65107. var length = collection ? getLength(collection) : 0;
  65108. if (!isLength(length)) {
  65109. return eachFunc(collection, iteratee);
  65110. }
  65111. var index = fromRight ? length : -1,
  65112. iterable = toObject(collection);
  65113. while ((fromRight ? index-- : ++index < length)) {
  65114. if (iteratee(iterable[index], index, iterable) === false) {
  65115. break;
  65116. }
  65117. }
  65118. return collection;
  65119. };
  65120. }
  65121. function createBaseFor(fromRight) {
  65122. return function(object, iteratee, keysFunc) {
  65123. var iterable = toObject(object),
  65124. props = keysFunc(object),
  65125. length = props.length,
  65126. index = fromRight ? length : -1;
  65127. while ((fromRight ? index-- : ++index < length)) {
  65128. var key = props[index];
  65129. if (iteratee(iterable[key], key, iterable) === false) {
  65130. break;
  65131. }
  65132. }
  65133. return object;
  65134. };
  65135. }
  65136. function createBindWrapper(func, thisArg) {
  65137. var Ctor = createCtorWrapper(func);
  65138. function wrapper() {
  65139. var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
  65140. return fn.apply(thisArg, arguments);
  65141. }
  65142. return wrapper;
  65143. }
  65144. function createCache(values) {
  65145. return (nativeCreate && Set) ? new SetCache(values) : null;
  65146. }
  65147. function createCompounder(callback) {
  65148. return function(string) {
  65149. var index = -1,
  65150. array = words(deburr(string)),
  65151. length = array.length,
  65152. result = '';
  65153. while (++index < length) {
  65154. result = callback(result, array[index], index);
  65155. }
  65156. return result;
  65157. };
  65158. }
  65159. function createCtorWrapper(Ctor) {
  65160. return function() {
  65161. var args = arguments;
  65162. switch (args.length) {
  65163. case 0: return new Ctor;
  65164. case 1: return new Ctor(args[0]);
  65165. case 2: return new Ctor(args[0], args[1]);
  65166. case 3: return new Ctor(args[0], args[1], args[2]);
  65167. case 4: return new Ctor(args[0], args[1], args[2], args[3]);
  65168. case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);
  65169. case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);
  65170. case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);
  65171. }
  65172. var thisBinding = baseCreate(Ctor.prototype),
  65173. result = Ctor.apply(thisBinding, args);
  65174. return isObject(result) ? result : thisBinding;
  65175. };
  65176. }
  65177. function createCurry(flag) {
  65178. function curryFunc(func, arity, guard) {
  65179. if (guard && isIterateeCall(func, arity, guard)) {
  65180. arity = undefined;
  65181. }
  65182. var result = createWrapper(func, flag, undefined, undefined, undefined, undefined, undefined, arity);
  65183. result.placeholder = curryFunc.placeholder;
  65184. return result;
  65185. }
  65186. return curryFunc;
  65187. }
  65188. function createDefaults(assigner, customizer) {
  65189. return restParam(function(args) {
  65190. var object = args[0];
  65191. if (object == null) {
  65192. return object;
  65193. }
  65194. args.push(customizer);
  65195. return assigner.apply(undefined, args);
  65196. });
  65197. }
  65198. function createExtremum(comparator, exValue) {
  65199. return function(collection, iteratee, thisArg) {
  65200. if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
  65201. iteratee = undefined;
  65202. }
  65203. iteratee = getCallback(iteratee, thisArg, 3);
  65204. if (iteratee.length == 1) {
  65205. collection = isArray(collection) ? collection : toIterable(collection);
  65206. var result = arrayExtremum(collection, iteratee, comparator, exValue);
  65207. if (!(collection.length && result === exValue)) {
  65208. return result;
  65209. }
  65210. }
  65211. return baseExtremum(collection, iteratee, comparator, exValue);
  65212. };
  65213. }
  65214. function createFind(eachFunc, fromRight) {
  65215. return function(collection, predicate, thisArg) {
  65216. predicate = getCallback(predicate, thisArg, 3);
  65217. if (isArray(collection)) {
  65218. var index = baseFindIndex(collection, predicate, fromRight);
  65219. return index > -1 ? collection[index] : undefined;
  65220. }
  65221. return baseFind(collection, predicate, eachFunc);
  65222. };
  65223. }
  65224. function createFindIndex(fromRight) {
  65225. return function(array, predicate, thisArg) {
  65226. if (!(array && array.length)) {
  65227. return -1;
  65228. }
  65229. predicate = getCallback(predicate, thisArg, 3);
  65230. return baseFindIndex(array, predicate, fromRight);
  65231. };
  65232. }
  65233. function createFindKey(objectFunc) {
  65234. return function(object, predicate, thisArg) {
  65235. predicate = getCallback(predicate, thisArg, 3);
  65236. return baseFind(object, predicate, objectFunc, true);
  65237. };
  65238. }
  65239. function createFlow(fromRight) {
  65240. return function() {
  65241. var wrapper,
  65242. length = arguments.length,
  65243. index = fromRight ? length : -1,
  65244. leftIndex = 0,
  65245. funcs = Array(length);
  65246. while ((fromRight ? index-- : ++index < length)) {
  65247. var func = funcs[leftIndex++] = arguments[index];
  65248. if (typeof func != 'function') {
  65249. throw new TypeError(FUNC_ERROR_TEXT);
  65250. }
  65251. if (!wrapper && LodashWrapper.prototype.thru && getFuncName(func) == 'wrapper') {
  65252. wrapper = new LodashWrapper([], true);
  65253. }
  65254. }
  65255. index = wrapper ? -1 : length;
  65256. while (++index < length) {
  65257. func = funcs[index];
  65258. var funcName = getFuncName(func),
  65259. data = funcName == 'wrapper' ? getData(func) : undefined;
  65260. if (data && isLaziable(data[0]) && data[1] == (ARY_FLAG | CURRY_FLAG | PARTIAL_FLAG | REARG_FLAG) && !data[4].length && data[9] == 1) {
  65261. wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);
  65262. } else {
  65263. wrapper = (func.length == 1 && isLaziable(func)) ? wrapper[funcName]() : wrapper.thru(func);
  65264. }
  65265. }
  65266. return function() {
  65267. var args = arguments,
  65268. value = args[0];
  65269. if (wrapper && args.length == 1 && isArray(value) && value.length >= LARGE_ARRAY_SIZE) {
  65270. return wrapper.plant(value).value();
  65271. }
  65272. var index = 0,
  65273. result = length ? funcs[index].apply(this, args) : value;
  65274. while (++index < length) {
  65275. result = funcs[index].call(this, result);
  65276. }
  65277. return result;
  65278. };
  65279. };
  65280. }
  65281. function createForEach(arrayFunc, eachFunc) {
  65282. return function(collection, iteratee, thisArg) {
  65283. return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
  65284. ? arrayFunc(collection, iteratee)
  65285. : eachFunc(collection, bindCallback(iteratee, thisArg, 3));
  65286. };
  65287. }
  65288. function createForIn(objectFunc) {
  65289. return function(object, iteratee, thisArg) {
  65290. if (typeof iteratee != 'function' || thisArg !== undefined) {
  65291. iteratee = bindCallback(iteratee, thisArg, 3);
  65292. }
  65293. return objectFunc(object, iteratee, keysIn);
  65294. };
  65295. }
  65296. function createForOwn(objectFunc) {
  65297. return function(object, iteratee, thisArg) {
  65298. if (typeof iteratee != 'function' || thisArg !== undefined) {
  65299. iteratee = bindCallback(iteratee, thisArg, 3);
  65300. }
  65301. return objectFunc(object, iteratee);
  65302. };
  65303. }
  65304. function createObjectMapper(isMapKeys) {
  65305. return function(object, iteratee, thisArg) {
  65306. var result = {};
  65307. iteratee = getCallback(iteratee, thisArg, 3);
  65308. baseForOwn(object, function(value, key, object) {
  65309. var mapped = iteratee(value, key, object);
  65310. key = isMapKeys ? mapped : key;
  65311. value = isMapKeys ? value : mapped;
  65312. result[key] = value;
  65313. });
  65314. return result;
  65315. };
  65316. }
  65317. function createPadDir(fromRight) {
  65318. return function(string, length, chars) {
  65319. string = baseToString(string);
  65320. return (fromRight ? string : '') + createPadding(string, length, chars) + (fromRight ? '' : string);
  65321. };
  65322. }
  65323. function createPartial(flag) {
  65324. var partialFunc = restParam(function(func, partials) {
  65325. var holders = replaceHolders(partials, partialFunc.placeholder);
  65326. return createWrapper(func, flag, undefined, partials, holders);
  65327. });
  65328. return partialFunc;
  65329. }
  65330. function createReduce(arrayFunc, eachFunc) {
  65331. return function(collection, iteratee, accumulator, thisArg) {
  65332. var initFromArray = arguments.length < 3;
  65333. return (typeof iteratee == 'function' && thisArg === undefined && isArray(collection))
  65334. ? arrayFunc(collection, iteratee, accumulator, initFromArray)
  65335. : baseReduce(collection, getCallback(iteratee, thisArg, 4), accumulator, initFromArray, eachFunc);
  65336. };
  65337. }
  65338. function createHybridWrapper(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {
  65339. var isAry = bitmask & ARY_FLAG,
  65340. isBind = bitmask & BIND_FLAG,
  65341. isBindKey = bitmask & BIND_KEY_FLAG,
  65342. isCurry = bitmask & CURRY_FLAG,
  65343. isCurryBound = bitmask & CURRY_BOUND_FLAG,
  65344. isCurryRight = bitmask & CURRY_RIGHT_FLAG,
  65345. Ctor = isBindKey ? undefined : createCtorWrapper(func);
  65346. function wrapper() {
  65347. var length = arguments.length,
  65348. index = length,
  65349. args = Array(length);
  65350. while (index--) {
  65351. args[index] = arguments[index];
  65352. }
  65353. if (partials) {
  65354. args = composeArgs(args, partials, holders);
  65355. }
  65356. if (partialsRight) {
  65357. args = composeArgsRight(args, partialsRight, holdersRight);
  65358. }
  65359. if (isCurry || isCurryRight) {
  65360. var placeholder = wrapper.placeholder,
  65361. argsHolders = replaceHolders(args, placeholder);
  65362. length -= argsHolders.length;
  65363. if (length < arity) {
  65364. var newArgPos = argPos ? arrayCopy(argPos) : undefined,
  65365. newArity = nativeMax(arity - length, 0),
  65366. newsHolders = isCurry ? argsHolders : undefined,
  65367. newHoldersRight = isCurry ? undefined : argsHolders,
  65368. newPartials = isCurry ? args : undefined,
  65369. newPartialsRight = isCurry ? undefined : args;
  65370. bitmask |= (isCurry ? PARTIAL_FLAG : PARTIAL_RIGHT_FLAG);
  65371. bitmask &= ~(isCurry ? PARTIAL_RIGHT_FLAG : PARTIAL_FLAG);
  65372. if (!isCurryBound) {
  65373. bitmask &= ~(BIND_FLAG | BIND_KEY_FLAG);
  65374. }
  65375. var newData = [func, bitmask, thisArg, newPartials, newsHolders, newPartialsRight, newHoldersRight, newArgPos, ary, newArity],
  65376. result = createHybridWrapper.apply(undefined, newData);
  65377. if (isLaziable(func)) {
  65378. setData(result, newData);
  65379. }
  65380. result.placeholder = placeholder;
  65381. return result;
  65382. }
  65383. }
  65384. var thisBinding = isBind ? thisArg : this,
  65385. fn = isBindKey ? thisBinding[func] : func;
  65386. if (argPos) {
  65387. args = reorder(args, argPos);
  65388. }
  65389. if (isAry && ary < args.length) {
  65390. args.length = ary;
  65391. }
  65392. if (this && this !== root && this instanceof wrapper) {
  65393. fn = Ctor || createCtorWrapper(func);
  65394. }
  65395. return fn.apply(thisBinding, args);
  65396. }
  65397. return wrapper;
  65398. }
  65399. function createPadding(string, length, chars) {
  65400. var strLength = string.length;
  65401. length = +length;
  65402. if (strLength >= length || !nativeIsFinite(length)) {
  65403. return '';
  65404. }
  65405. var padLength = length - strLength;
  65406. chars = chars == null ? ' ' : (chars + '');
  65407. return repeat(chars, nativeCeil(padLength / chars.length)).slice(0, padLength);
  65408. }
  65409. function createPartialWrapper(func, bitmask, thisArg, partials) {
  65410. var isBind = bitmask & BIND_FLAG,
  65411. Ctor = createCtorWrapper(func);
  65412. function wrapper() {
  65413. var argsIndex = -1,
  65414. argsLength = arguments.length,
  65415. leftIndex = -1,
  65416. leftLength = partials.length,
  65417. args = Array(leftLength + argsLength);
  65418. while (++leftIndex < leftLength) {
  65419. args[leftIndex] = partials[leftIndex];
  65420. }
  65421. while (argsLength--) {
  65422. args[leftIndex++] = arguments[++argsIndex];
  65423. }
  65424. var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;
  65425. return fn.apply(isBind ? thisArg : this, args);
  65426. }
  65427. return wrapper;
  65428. }
  65429. function createRound(methodName) {
  65430. var func = Math[methodName];
  65431. return function(number, precision) {
  65432. precision = precision === undefined ? 0 : (+precision || 0);
  65433. if (precision) {
  65434. precision = pow(10, precision);
  65435. return func(number * precision) / precision;
  65436. }
  65437. return func(number);
  65438. };
  65439. }
  65440. function createSortedIndex(retHighest) {
  65441. return function(array, value, iteratee, thisArg) {
  65442. var callback = getCallback(iteratee);
  65443. return (iteratee == null && callback === baseCallback)
  65444. ? binaryIndex(array, value, retHighest)
  65445. : binaryIndexBy(array, value, callback(iteratee, thisArg, 1), retHighest);
  65446. };
  65447. }
  65448. function createWrapper(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {
  65449. var isBindKey = bitmask & BIND_KEY_FLAG;
  65450. if (!isBindKey && typeof func != 'function') {
  65451. throw new TypeError(FUNC_ERROR_TEXT);
  65452. }
  65453. var length = partials ? partials.length : 0;
  65454. if (!length) {
  65455. bitmask &= ~(PARTIAL_FLAG | PARTIAL_RIGHT_FLAG);
  65456. partials = holders = undefined;
  65457. }
  65458. length -= (holders ? holders.length : 0);
  65459. if (bitmask & PARTIAL_RIGHT_FLAG) {
  65460. var partialsRight = partials,
  65461. holdersRight = holders;
  65462. partials = holders = undefined;
  65463. }
  65464. var data = isBindKey ? undefined : getData(func),
  65465. newData = [func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity];
  65466. if (data) {
  65467. mergeData(newData, data);
  65468. bitmask = newData[1];
  65469. arity = newData[9];
  65470. }
  65471. newData[9] = arity == null
  65472. ? (isBindKey ? 0 : func.length)
  65473. : (nativeMax(arity - length, 0) || 0);
  65474. if (bitmask == BIND_FLAG) {
  65475. var result = createBindWrapper(newData[0], newData[2]);
  65476. } else if ((bitmask == PARTIAL_FLAG || bitmask == (BIND_FLAG | PARTIAL_FLAG)) && !newData[4].length) {
  65477. result = createPartialWrapper.apply(undefined, newData);
  65478. } else {
  65479. result = createHybridWrapper.apply(undefined, newData);
  65480. }
  65481. var setter = data ? baseSetData : setData;
  65482. return setter(result, newData);
  65483. }
  65484. function equalArrays(array, other, equalFunc, customizer, isLoose, stackA, stackB) {
  65485. var index = -1,
  65486. arrLength = array.length,
  65487. othLength = other.length;
  65488. if (arrLength != othLength && !(isLoose && othLength > arrLength)) {
  65489. return false;
  65490. }
  65491. while (++index < arrLength) {
  65492. var arrValue = array[index],
  65493. othValue = other[index],
  65494. result = customizer ? customizer(isLoose ? othValue : arrValue, isLoose ? arrValue : othValue, index) : undefined;
  65495. if (result !== undefined) {
  65496. if (result) {
  65497. continue;
  65498. }
  65499. return false;
  65500. }
  65501. if (isLoose) {
  65502. if (!arraySome(other, function(othValue) {
  65503. return arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB);
  65504. })) {
  65505. return false;
  65506. }
  65507. } else if (!(arrValue === othValue || equalFunc(arrValue, othValue, customizer, isLoose, stackA, stackB))) {
  65508. return false;
  65509. }
  65510. }
  65511. return true;
  65512. }
  65513. function equalByTag(object, other, tag) {
  65514. switch (tag) {
  65515. case boolTag:
  65516. case dateTag:
  65517. return +object == +other;
  65518. case errorTag:
  65519. return object.name == other.name && object.message == other.message;
  65520. case numberTag:
  65521. return (object != +object)
  65522. ? other != +other
  65523. : object == +other;
  65524. case regexpTag:
  65525. case stringTag:
  65526. return object == (other + '');
  65527. }
  65528. return false;
  65529. }
  65530. function equalObjects(object, other, equalFunc, customizer, isLoose, stackA, stackB) {
  65531. var objProps = keys(object),
  65532. objLength = objProps.length,
  65533. othProps = keys(other),
  65534. othLength = othProps.length;
  65535. if (objLength != othLength && !isLoose) {
  65536. return false;
  65537. }
  65538. var index = objLength;
  65539. while (index--) {
  65540. var key = objProps[index];
  65541. if (!(isLoose ? key in other : hasOwnProperty.call(other, key))) {
  65542. return false;
  65543. }
  65544. }
  65545. var skipCtor = isLoose;
  65546. while (++index < objLength) {
  65547. key = objProps[index];
  65548. var objValue = object[key],
  65549. othValue = other[key],
  65550. result = customizer ? customizer(isLoose ? othValue : objValue, isLoose? objValue : othValue, key) : undefined;
  65551. if (!(result === undefined ? equalFunc(objValue, othValue, customizer, isLoose, stackA, stackB) : result)) {
  65552. return false;
  65553. }
  65554. skipCtor || (skipCtor = key == 'constructor');
  65555. }
  65556. if (!skipCtor) {
  65557. var objCtor = object.constructor,
  65558. othCtor = other.constructor;
  65559. if (objCtor != othCtor &&
  65560. ('constructor' in object && 'constructor' in other) &&
  65561. !(typeof objCtor == 'function' && objCtor instanceof objCtor &&
  65562. typeof othCtor == 'function' && othCtor instanceof othCtor)) {
  65563. return false;
  65564. }
  65565. }
  65566. return true;
  65567. }
  65568. function getCallback(func, thisArg, argCount) {
  65569. var result = lodash.callback || callback;
  65570. result = result === callback ? baseCallback : result;
  65571. return argCount ? result(func, thisArg, argCount) : result;
  65572. }
  65573. var getData = !metaMap ? noop : function(func) {
  65574. return metaMap.get(func);
  65575. };
  65576. function getFuncName(func) {
  65577. var result = func.name,
  65578. array = realNames[result],
  65579. length = array ? array.length : 0;
  65580. while (length--) {
  65581. var data = array[length],
  65582. otherFunc = data.func;
  65583. if (otherFunc == null || otherFunc == func) {
  65584. return data.name;
  65585. }
  65586. }
  65587. return result;
  65588. }
  65589. function getIndexOf(collection, target, fromIndex) {
  65590. var result = lodash.indexOf || indexOf;
  65591. result = result === indexOf ? baseIndexOf : result;
  65592. return collection ? result(collection, target, fromIndex) : result;
  65593. }
  65594. var getLength = baseProperty('length');
  65595. function getMatchData(object) {
  65596. var result = pairs(object),
  65597. length = result.length;
  65598. while (length--) {
  65599. result[length][2] = isStrictComparable(result[length][1]);
  65600. }
  65601. return result;
  65602. }
  65603. function getNative(object, key) {
  65604. var value = object == null ? undefined : object[key];
  65605. return isNative(value) ? value : undefined;
  65606. }
  65607. function getView(start, end, transforms) {
  65608. var index = -1,
  65609. length = transforms.length;
  65610. while (++index < length) {
  65611. var data = transforms[index],
  65612. size = data.size;
  65613. switch (data.type) {
  65614. case 'drop': start += size; break;
  65615. case 'dropRight': end -= size; break;
  65616. case 'take': end = nativeMin(end, start + size); break;
  65617. case 'takeRight': start = nativeMax(start, end - size); break;
  65618. }
  65619. }
  65620. return { 'start': start, 'end': end };
  65621. }
  65622. function initCloneArray(array) {
  65623. var length = array.length,
  65624. result = new array.constructor(length);
  65625. if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {
  65626. result.index = array.index;
  65627. result.input = array.input;
  65628. }
  65629. return result;
  65630. }
  65631. function initCloneObject(object) {
  65632. var Ctor = object.constructor;
  65633. if (!(typeof Ctor == 'function' && Ctor instanceof Ctor)) {
  65634. Ctor = Object;
  65635. }
  65636. return new Ctor;
  65637. }
  65638. function initCloneByTag(object, tag, isDeep) {
  65639. var Ctor = object.constructor;
  65640. switch (tag) {
  65641. case arrayBufferTag:
  65642. return bufferClone(object);
  65643. case boolTag:
  65644. case dateTag:
  65645. return new Ctor(+object);
  65646. case float32Tag: case float64Tag:
  65647. case int8Tag: case int16Tag: case int32Tag:
  65648. case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:
  65649. var buffer = object.buffer;
  65650. return new Ctor(isDeep ? bufferClone(buffer) : buffer, object.byteOffset, object.length);
  65651. case numberTag:
  65652. case stringTag:
  65653. return new Ctor(object);
  65654. case regexpTag:
  65655. var result = new Ctor(object.source, reFlags.exec(object));
  65656. result.lastIndex = object.lastIndex;
  65657. }
  65658. return result;
  65659. }
  65660. function invokePath(object, path, args) {
  65661. if (object != null && !isKey(path, object)) {
  65662. path = toPath(path);
  65663. object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
  65664. path = last(path);
  65665. }
  65666. var func = object == null ? object : object[path];
  65667. return func == null ? undefined : func.apply(object, args);
  65668. }
  65669. function isArrayLike(value) {
  65670. return value != null && isLength(getLength(value));
  65671. }
  65672. function isIndex(value, length) {
  65673. value = (typeof value == 'number' || reIsUint.test(value)) ? +value : -1;
  65674. length = length == null ? MAX_SAFE_INTEGER : length;
  65675. return value > -1 && value % 1 == 0 && value < length;
  65676. }
  65677. function isIterateeCall(value, index, object) {
  65678. if (!isObject(object)) {
  65679. return false;
  65680. }
  65681. var type = typeof index;
  65682. if (type == 'number'
  65683. ? (isArrayLike(object) && isIndex(index, object.length))
  65684. : (type == 'string' && index in object)) {
  65685. var other = object[index];
  65686. return value === value ? (value === other) : (other !== other);
  65687. }
  65688. return false;
  65689. }
  65690. function isKey(value, object) {
  65691. var type = typeof value;
  65692. if ((type == 'string' && reIsPlainProp.test(value)) || type == 'number') {
  65693. return true;
  65694. }
  65695. if (isArray(value)) {
  65696. return false;
  65697. }
  65698. var result = !reIsDeepProp.test(value);
  65699. return result || (object != null && value in toObject(object));
  65700. }
  65701. function isLaziable(func) {
  65702. var funcName = getFuncName(func);
  65703. if (!(funcName in LazyWrapper.prototype)) {
  65704. return false;
  65705. }
  65706. var other = lodash[funcName];
  65707. if (func === other) {
  65708. return true;
  65709. }
  65710. var data = getData(other);
  65711. return !!data && func === data[0];
  65712. }
  65713. function isLength(value) {
  65714. return typeof value == 'number' && value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
  65715. }
  65716. function isStrictComparable(value) {
  65717. return value === value && !isObject(value);
  65718. }
  65719. function mergeData(data, source) {
  65720. var bitmask = data[1],
  65721. srcBitmask = source[1],
  65722. newBitmask = bitmask | srcBitmask,
  65723. isCommon = newBitmask < ARY_FLAG;
  65724. var isCombo =
  65725. (srcBitmask == ARY_FLAG && bitmask == CURRY_FLAG) ||
  65726. (srcBitmask == ARY_FLAG && bitmask == REARG_FLAG && data[7].length <= source[8]) ||
  65727. (srcBitmask == (ARY_FLAG | REARG_FLAG) && bitmask == CURRY_FLAG);
  65728. if (!(isCommon || isCombo)) {
  65729. return data;
  65730. }
  65731. if (srcBitmask & BIND_FLAG) {
  65732. data[2] = source[2];
  65733. newBitmask |= (bitmask & BIND_FLAG) ? 0 : CURRY_BOUND_FLAG;
  65734. }
  65735. var value = source[3];
  65736. if (value) {
  65737. var partials = data[3];
  65738. data[3] = partials ? composeArgs(partials, value, source[4]) : arrayCopy(value);
  65739. data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : arrayCopy(source[4]);
  65740. }
  65741. value = source[5];
  65742. if (value) {
  65743. partials = data[5];
  65744. data[5] = partials ? composeArgsRight(partials, value, source[6]) : arrayCopy(value);
  65745. data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : arrayCopy(source[6]);
  65746. }
  65747. value = source[7];
  65748. if (value) {
  65749. data[7] = arrayCopy(value);
  65750. }
  65751. if (srcBitmask & ARY_FLAG) {
  65752. data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);
  65753. }
  65754. if (data[9] == null) {
  65755. data[9] = source[9];
  65756. }
  65757. data[0] = source[0];
  65758. data[1] = newBitmask;
  65759. return data;
  65760. }
  65761. function mergeDefaults(objectValue, sourceValue) {
  65762. return objectValue === undefined ? sourceValue : merge(objectValue, sourceValue, mergeDefaults);
  65763. }
  65764. function pickByArray(object, props) {
  65765. object = toObject(object);
  65766. var index = -1,
  65767. length = props.length,
  65768. result = {};
  65769. while (++index < length) {
  65770. var key = props[index];
  65771. if (key in object) {
  65772. result[key] = object[key];
  65773. }
  65774. }
  65775. return result;
  65776. }
  65777. function pickByCallback(object, predicate) {
  65778. var result = {};
  65779. baseForIn(object, function(value, key, object) {
  65780. if (predicate(value, key, object)) {
  65781. result[key] = value;
  65782. }
  65783. });
  65784. return result;
  65785. }
  65786. function reorder(array, indexes) {
  65787. var arrLength = array.length,
  65788. length = nativeMin(indexes.length, arrLength),
  65789. oldArray = arrayCopy(array);
  65790. while (length--) {
  65791. var index = indexes[length];
  65792. array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;
  65793. }
  65794. return array;
  65795. }
  65796. var setData = (function() {
  65797. var count = 0,
  65798. lastCalled = 0;
  65799. return function(key, value) {
  65800. var stamp = now(),
  65801. remaining = HOT_SPAN - (stamp - lastCalled);
  65802. lastCalled = stamp;
  65803. if (remaining > 0) {
  65804. if (++count >= HOT_COUNT) {
  65805. return key;
  65806. }
  65807. } else {
  65808. count = 0;
  65809. }
  65810. return baseSetData(key, value);
  65811. };
  65812. }());
  65813. function shimKeys(object) {
  65814. var props = keysIn(object),
  65815. propsLength = props.length,
  65816. length = propsLength && object.length;
  65817. var allowIndexes = !!length && isLength(length) &&
  65818. (isArray(object) || isArguments(object));
  65819. var index = -1,
  65820. result = [];
  65821. while (++index < propsLength) {
  65822. var key = props[index];
  65823. if ((allowIndexes && isIndex(key, length)) || hasOwnProperty.call(object, key)) {
  65824. result.push(key);
  65825. }
  65826. }
  65827. return result;
  65828. }
  65829. function toIterable(value) {
  65830. if (value == null) {
  65831. return [];
  65832. }
  65833. if (!isArrayLike(value)) {
  65834. return values(value);
  65835. }
  65836. return isObject(value) ? value : Object(value);
  65837. }
  65838. function toObject(value) {
  65839. return isObject(value) ? value : Object(value);
  65840. }
  65841. function toPath(value) {
  65842. if (isArray(value)) {
  65843. return value;
  65844. }
  65845. var result = [];
  65846. baseToString(value).replace(rePropName, function(match, number, quote, string) {
  65847. result.push(quote ? string.replace(reEscapeChar, '$1') : (number || match));
  65848. });
  65849. return result;
  65850. }
  65851. function wrapperClone(wrapper) {
  65852. return wrapper instanceof LazyWrapper
  65853. ? wrapper.clone()
  65854. : new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__, arrayCopy(wrapper.__actions__));
  65855. }
  65856. function chunk(array, size, guard) {
  65857. if (guard ? isIterateeCall(array, size, guard) : size == null) {
  65858. size = 1;
  65859. } else {
  65860. size = nativeMax(nativeFloor(size) || 1, 1);
  65861. }
  65862. var index = 0,
  65863. length = array ? array.length : 0,
  65864. resIndex = -1,
  65865. result = Array(nativeCeil(length / size));
  65866. while (index < length) {
  65867. result[++resIndex] = baseSlice(array, index, (index += size));
  65868. }
  65869. return result;
  65870. }
  65871. function compact(array) {
  65872. var index = -1,
  65873. length = array ? array.length : 0,
  65874. resIndex = -1,
  65875. result = [];
  65876. while (++index < length) {
  65877. var value = array[index];
  65878. if (value) {
  65879. result[++resIndex] = value;
  65880. }
  65881. }
  65882. return result;
  65883. }
  65884. var difference = restParam(function(array, values) {
  65885. return (isObjectLike(array) && isArrayLike(array))
  65886. ? baseDifference(array, baseFlatten(values, false, true))
  65887. : [];
  65888. });
  65889. function drop(array, n, guard) {
  65890. var length = array ? array.length : 0;
  65891. if (!length) {
  65892. return [];
  65893. }
  65894. if (guard ? isIterateeCall(array, n, guard) : n == null) {
  65895. n = 1;
  65896. }
  65897. return baseSlice(array, n < 0 ? 0 : n);
  65898. }
  65899. function dropRight(array, n, guard) {
  65900. var length = array ? array.length : 0;
  65901. if (!length) {
  65902. return [];
  65903. }
  65904. if (guard ? isIterateeCall(array, n, guard) : n == null) {
  65905. n = 1;
  65906. }
  65907. n = length - (+n || 0);
  65908. return baseSlice(array, 0, n < 0 ? 0 : n);
  65909. }
  65910. function dropRightWhile(array, predicate, thisArg) {
  65911. return (array && array.length)
  65912. ? baseWhile(array, getCallback(predicate, thisArg, 3), true, true)
  65913. : [];
  65914. }
  65915. function dropWhile(array, predicate, thisArg) {
  65916. return (array && array.length)
  65917. ? baseWhile(array, getCallback(predicate, thisArg, 3), true)
  65918. : [];
  65919. }
  65920. function fill(array, value, start, end) {
  65921. var length = array ? array.length : 0;
  65922. if (!length) {
  65923. return [];
  65924. }
  65925. if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {
  65926. start = 0;
  65927. end = length;
  65928. }
  65929. return baseFill(array, value, start, end);
  65930. }
  65931. var findIndex = createFindIndex();
  65932. var findLastIndex = createFindIndex(true);
  65933. function first(array) {
  65934. return array ? array[0] : undefined;
  65935. }
  65936. function flatten(array, isDeep, guard) {
  65937. var length = array ? array.length : 0;
  65938. if (guard && isIterateeCall(array, isDeep, guard)) {
  65939. isDeep = false;
  65940. }
  65941. return length ? baseFlatten(array, isDeep) : [];
  65942. }
  65943. function flattenDeep(array) {
  65944. var length = array ? array.length : 0;
  65945. return length ? baseFlatten(array, true) : [];
  65946. }
  65947. function indexOf(array, value, fromIndex) {
  65948. var length = array ? array.length : 0;
  65949. if (!length) {
  65950. return -1;
  65951. }
  65952. if (typeof fromIndex == 'number') {
  65953. fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : fromIndex;
  65954. } else if (fromIndex) {
  65955. var index = binaryIndex(array, value);
  65956. if (index < length &&
  65957. (value === value ? (value === array[index]) : (array[index] !== array[index]))) {
  65958. return index;
  65959. }
  65960. return -1;
  65961. }
  65962. return baseIndexOf(array, value, fromIndex || 0);
  65963. }
  65964. function initial(array) {
  65965. return dropRight(array, 1);
  65966. }
  65967. var intersection = restParam(function(arrays) {
  65968. var othLength = arrays.length,
  65969. othIndex = othLength,
  65970. caches = Array(length),
  65971. indexOf = getIndexOf(),
  65972. isCommon = indexOf == baseIndexOf,
  65973. result = [];
  65974. while (othIndex--) {
  65975. var value = arrays[othIndex] = isArrayLike(value = arrays[othIndex]) ? value : [];
  65976. caches[othIndex] = (isCommon && value.length >= 120) ? createCache(othIndex && value) : null;
  65977. }
  65978. var array = arrays[0],
  65979. index = -1,
  65980. length = array ? array.length : 0,
  65981. seen = caches[0];
  65982. outer:
  65983. while (++index < length) {
  65984. value = array[index];
  65985. if ((seen ? cacheIndexOf(seen, value) : indexOf(result, value, 0)) < 0) {
  65986. var othIndex = othLength;
  65987. while (--othIndex) {
  65988. var cache = caches[othIndex];
  65989. if ((cache ? cacheIndexOf(cache, value) : indexOf(arrays[othIndex], value, 0)) < 0) {
  65990. continue outer;
  65991. }
  65992. }
  65993. if (seen) {
  65994. seen.push(value);
  65995. }
  65996. result.push(value);
  65997. }
  65998. }
  65999. return result;
  66000. });
  66001. function last(array) {
  66002. var length = array ? array.length : 0;
  66003. return length ? array[length - 1] : undefined;
  66004. }
  66005. function lastIndexOf(array, value, fromIndex) {
  66006. var length = array ? array.length : 0;
  66007. if (!length) {
  66008. return -1;
  66009. }
  66010. var index = length;
  66011. if (typeof fromIndex == 'number') {
  66012. index = (fromIndex < 0 ? nativeMax(length + fromIndex, 0) : nativeMin(fromIndex || 0, length - 1)) + 1;
  66013. } else if (fromIndex) {
  66014. index = binaryIndex(array, value, true) - 1;
  66015. var other = array[index];
  66016. if (value === value ? (value === other) : (other !== other)) {
  66017. return index;
  66018. }
  66019. return -1;
  66020. }
  66021. if (value !== value) {
  66022. return indexOfNaN(array, index, true);
  66023. }
  66024. while (index--) {
  66025. if (array[index] === value) {
  66026. return index;
  66027. }
  66028. }
  66029. return -1;
  66030. }
  66031. function pull() {
  66032. var args = arguments,
  66033. array = args[0];
  66034. if (!(array && array.length)) {
  66035. return array;
  66036. }
  66037. var index = 0,
  66038. indexOf = getIndexOf(),
  66039. length = args.length;
  66040. while (++index < length) {
  66041. var fromIndex = 0,
  66042. value = args[index];
  66043. while ((fromIndex = indexOf(array, value, fromIndex)) > -1) {
  66044. splice.call(array, fromIndex, 1);
  66045. }
  66046. }
  66047. return array;
  66048. }
  66049. var pullAt = restParam(function(array, indexes) {
  66050. indexes = baseFlatten(indexes);
  66051. var result = baseAt(array, indexes);
  66052. basePullAt(array, indexes.sort(baseCompareAscending));
  66053. return result;
  66054. });
  66055. function remove(array, predicate, thisArg) {
  66056. var result = [];
  66057. if (!(array && array.length)) {
  66058. return result;
  66059. }
  66060. var index = -1,
  66061. indexes = [],
  66062. length = array.length;
  66063. predicate = getCallback(predicate, thisArg, 3);
  66064. while (++index < length) {
  66065. var value = array[index];
  66066. if (predicate(value, index, array)) {
  66067. result.push(value);
  66068. indexes.push(index);
  66069. }
  66070. }
  66071. basePullAt(array, indexes);
  66072. return result;
  66073. }
  66074. function rest(array) {
  66075. return drop(array, 1);
  66076. }
  66077. function slice(array, start, end) {
  66078. var length = array ? array.length : 0;
  66079. if (!length) {
  66080. return [];
  66081. }
  66082. if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {
  66083. start = 0;
  66084. end = length;
  66085. }
  66086. return baseSlice(array, start, end);
  66087. }
  66088. var sortedIndex = createSortedIndex();
  66089. var sortedLastIndex = createSortedIndex(true);
  66090. function take(array, n, guard) {
  66091. var length = array ? array.length : 0;
  66092. if (!length) {
  66093. return [];
  66094. }
  66095. if (guard ? isIterateeCall(array, n, guard) : n == null) {
  66096. n = 1;
  66097. }
  66098. return baseSlice(array, 0, n < 0 ? 0 : n);
  66099. }
  66100. function takeRight(array, n, guard) {
  66101. var length = array ? array.length : 0;
  66102. if (!length) {
  66103. return [];
  66104. }
  66105. if (guard ? isIterateeCall(array, n, guard) : n == null) {
  66106. n = 1;
  66107. }
  66108. n = length - (+n || 0);
  66109. return baseSlice(array, n < 0 ? 0 : n);
  66110. }
  66111. function takeRightWhile(array, predicate, thisArg) {
  66112. return (array && array.length)
  66113. ? baseWhile(array, getCallback(predicate, thisArg, 3), false, true)
  66114. : [];
  66115. }
  66116. function takeWhile(array, predicate, thisArg) {
  66117. return (array && array.length)
  66118. ? baseWhile(array, getCallback(predicate, thisArg, 3))
  66119. : [];
  66120. }
  66121. var union = restParam(function(arrays) {
  66122. return baseUniq(baseFlatten(arrays, false, true));
  66123. });
  66124. function uniq(array, isSorted, iteratee, thisArg) {
  66125. var length = array ? array.length : 0;
  66126. if (!length) {
  66127. return [];
  66128. }
  66129. if (isSorted != null && typeof isSorted != 'boolean') {
  66130. thisArg = iteratee;
  66131. iteratee = isIterateeCall(array, isSorted, thisArg) ? undefined : isSorted;
  66132. isSorted = false;
  66133. }
  66134. var callback = getCallback();
  66135. if (!(iteratee == null && callback === baseCallback)) {
  66136. iteratee = callback(iteratee, thisArg, 3);
  66137. }
  66138. return (isSorted && getIndexOf() == baseIndexOf)
  66139. ? sortedUniq(array, iteratee)
  66140. : baseUniq(array, iteratee);
  66141. }
  66142. function unzip(array) {
  66143. if (!(array && array.length)) {
  66144. return [];
  66145. }
  66146. var index = -1,
  66147. length = 0;
  66148. array = arrayFilter(array, function(group) {
  66149. if (isArrayLike(group)) {
  66150. length = nativeMax(group.length, length);
  66151. return true;
  66152. }
  66153. });
  66154. var result = Array(length);
  66155. while (++index < length) {
  66156. result[index] = arrayMap(array, baseProperty(index));
  66157. }
  66158. return result;
  66159. }
  66160. function unzipWith(array, iteratee, thisArg) {
  66161. var length = array ? array.length : 0;
  66162. if (!length) {
  66163. return [];
  66164. }
  66165. var result = unzip(array);
  66166. if (iteratee == null) {
  66167. return result;
  66168. }
  66169. iteratee = bindCallback(iteratee, thisArg, 4);
  66170. return arrayMap(result, function(group) {
  66171. return arrayReduce(group, iteratee, undefined, true);
  66172. });
  66173. }
  66174. var without = restParam(function(array, values) {
  66175. return isArrayLike(array)
  66176. ? baseDifference(array, values)
  66177. : [];
  66178. });
  66179. function xor() {
  66180. var index = -1,
  66181. length = arguments.length;
  66182. while (++index < length) {
  66183. var array = arguments[index];
  66184. if (isArrayLike(array)) {
  66185. var result = result
  66186. ? arrayPush(baseDifference(result, array), baseDifference(array, result))
  66187. : array;
  66188. }
  66189. }
  66190. return result ? baseUniq(result) : [];
  66191. }
  66192. var zip = restParam(unzip);
  66193. function zipObject(props, values) {
  66194. var index = -1,
  66195. length = props ? props.length : 0,
  66196. result = {};
  66197. if (length && !values && !isArray(props[0])) {
  66198. values = [];
  66199. }
  66200. while (++index < length) {
  66201. var key = props[index];
  66202. if (values) {
  66203. result[key] = values[index];
  66204. } else if (key) {
  66205. result[key[0]] = key[1];
  66206. }
  66207. }
  66208. return result;
  66209. }
  66210. var zipWith = restParam(function(arrays) {
  66211. var length = arrays.length,
  66212. iteratee = length > 2 ? arrays[length - 2] : undefined,
  66213. thisArg = length > 1 ? arrays[length - 1] : undefined;
  66214. if (length > 2 && typeof iteratee == 'function') {
  66215. length -= 2;
  66216. } else {
  66217. iteratee = (length > 1 && typeof thisArg == 'function') ? (--length, thisArg) : undefined;
  66218. thisArg = undefined;
  66219. }
  66220. arrays.length = length;
  66221. return unzipWith(arrays, iteratee, thisArg);
  66222. });
  66223. function chain(value) {
  66224. var result = lodash(value);
  66225. result.__chain__ = true;
  66226. return result;
  66227. }
  66228. function tap(value, interceptor, thisArg) {
  66229. interceptor.call(thisArg, value);
  66230. return value;
  66231. }
  66232. function thru(value, interceptor, thisArg) {
  66233. return interceptor.call(thisArg, value);
  66234. }
  66235. function wrapperChain() {
  66236. return chain(this);
  66237. }
  66238. function wrapperCommit() {
  66239. return new LodashWrapper(this.value(), this.__chain__);
  66240. }
  66241. var wrapperConcat = restParam(function(values) {
  66242. values = baseFlatten(values);
  66243. return this.thru(function(array) {
  66244. return arrayConcat(isArray(array) ? array : [toObject(array)], values);
  66245. });
  66246. });
  66247. function wrapperPlant(value) {
  66248. var result,
  66249. parent = this;
  66250. while (parent instanceof baseLodash) {
  66251. var clone = wrapperClone(parent);
  66252. if (result) {
  66253. previous.__wrapped__ = clone;
  66254. } else {
  66255. result = clone;
  66256. }
  66257. var previous = clone;
  66258. parent = parent.__wrapped__;
  66259. }
  66260. previous.__wrapped__ = value;
  66261. return result;
  66262. }
  66263. function wrapperReverse() {
  66264. var value = this.__wrapped__;
  66265. var interceptor = function(value) {
  66266. return (wrapped && wrapped.__dir__ < 0) ? value : value.reverse();
  66267. };
  66268. if (value instanceof LazyWrapper) {
  66269. var wrapped = value;
  66270. if (this.__actions__.length) {
  66271. wrapped = new LazyWrapper(this);
  66272. }
  66273. wrapped = wrapped.reverse();
  66274. wrapped.__actions__.push({ 'func': thru, 'args': [interceptor], 'thisArg': undefined });
  66275. return new LodashWrapper(wrapped, this.__chain__);
  66276. }
  66277. return this.thru(interceptor);
  66278. }
  66279. function wrapperToString() {
  66280. return (this.value() + '');
  66281. }
  66282. function wrapperValue() {
  66283. return baseWrapperValue(this.__wrapped__, this.__actions__);
  66284. }
  66285. var at = restParam(function(collection, props) {
  66286. return baseAt(collection, baseFlatten(props));
  66287. });
  66288. var countBy = createAggregator(function(result, value, key) {
  66289. hasOwnProperty.call(result, key) ? ++result[key] : (result[key] = 1);
  66290. });
  66291. function every(collection, predicate, thisArg) {
  66292. var func = isArray(collection) ? arrayEvery : baseEvery;
  66293. if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
  66294. predicate = undefined;
  66295. }
  66296. if (typeof predicate != 'function' || thisArg !== undefined) {
  66297. predicate = getCallback(predicate, thisArg, 3);
  66298. }
  66299. return func(collection, predicate);
  66300. }
  66301. function filter(collection, predicate, thisArg) {
  66302. var func = isArray(collection) ? arrayFilter : baseFilter;
  66303. predicate = getCallback(predicate, thisArg, 3);
  66304. return func(collection, predicate);
  66305. }
  66306. var find = createFind(baseEach);
  66307. var findLast = createFind(baseEachRight, true);
  66308. function findWhere(collection, source) {
  66309. return find(collection, baseMatches(source));
  66310. }
  66311. var forEach = createForEach(arrayEach, baseEach);
  66312. var forEachRight = createForEach(arrayEachRight, baseEachRight);
  66313. var groupBy = createAggregator(function(result, value, key) {
  66314. if (hasOwnProperty.call(result, key)) {
  66315. result[key].push(value);
  66316. } else {
  66317. result[key] = [value];
  66318. }
  66319. });
  66320. function includes(collection, target, fromIndex, guard) {
  66321. var length = collection ? getLength(collection) : 0;
  66322. if (!isLength(length)) {
  66323. collection = values(collection);
  66324. length = collection.length;
  66325. }
  66326. if (typeof fromIndex != 'number' || (guard && isIterateeCall(target, fromIndex, guard))) {
  66327. fromIndex = 0;
  66328. } else {
  66329. fromIndex = fromIndex < 0 ? nativeMax(length + fromIndex, 0) : (fromIndex || 0);
  66330. }
  66331. return (typeof collection == 'string' || !isArray(collection) && isString(collection))
  66332. ? (fromIndex <= length && collection.indexOf(target, fromIndex) > -1)
  66333. : (!!length && getIndexOf(collection, target, fromIndex) > -1);
  66334. }
  66335. var indexBy = createAggregator(function(result, value, key) {
  66336. result[key] = value;
  66337. });
  66338. var invoke = restParam(function(collection, path, args) {
  66339. var index = -1,
  66340. isFunc = typeof path == 'function',
  66341. isProp = isKey(path),
  66342. result = isArrayLike(collection) ? Array(collection.length) : [];
  66343. baseEach(collection, function(value) {
  66344. var func = isFunc ? path : ((isProp && value != null) ? value[path] : undefined);
  66345. result[++index] = func ? func.apply(value, args) : invokePath(value, path, args);
  66346. });
  66347. return result;
  66348. });
  66349. function map(collection, iteratee, thisArg) {
  66350. var func = isArray(collection) ? arrayMap : baseMap;
  66351. iteratee = getCallback(iteratee, thisArg, 3);
  66352. return func(collection, iteratee);
  66353. }
  66354. var partition = createAggregator(function(result, value, key) {
  66355. result[key ? 0 : 1].push(value);
  66356. }, function() { return [[], []]; });
  66357. function pluck(collection, path) {
  66358. return map(collection, property(path));
  66359. }
  66360. var reduce = createReduce(arrayReduce, baseEach);
  66361. var reduceRight = createReduce(arrayReduceRight, baseEachRight);
  66362. function reject(collection, predicate, thisArg) {
  66363. var func = isArray(collection) ? arrayFilter : baseFilter;
  66364. predicate = getCallback(predicate, thisArg, 3);
  66365. return func(collection, function(value, index, collection) {
  66366. return !predicate(value, index, collection);
  66367. });
  66368. }
  66369. function sample(collection, n, guard) {
  66370. if (guard ? isIterateeCall(collection, n, guard) : n == null) {
  66371. collection = toIterable(collection);
  66372. var length = collection.length;
  66373. return length > 0 ? collection[baseRandom(0, length - 1)] : undefined;
  66374. }
  66375. var index = -1,
  66376. result = toArray(collection),
  66377. length = result.length,
  66378. lastIndex = length - 1;
  66379. n = nativeMin(n < 0 ? 0 : (+n || 0), length);
  66380. while (++index < n) {
  66381. var rand = baseRandom(index, lastIndex),
  66382. value = result[rand];
  66383. result[rand] = result[index];
  66384. result[index] = value;
  66385. }
  66386. result.length = n;
  66387. return result;
  66388. }
  66389. function shuffle(collection) {
  66390. return sample(collection, POSITIVE_INFINITY);
  66391. }
  66392. function size(collection) {
  66393. var length = collection ? getLength(collection) : 0;
  66394. return isLength(length) ? length : keys(collection).length;
  66395. }
  66396. function some(collection, predicate, thisArg) {
  66397. var func = isArray(collection) ? arraySome : baseSome;
  66398. if (thisArg && isIterateeCall(collection, predicate, thisArg)) {
  66399. predicate = undefined;
  66400. }
  66401. if (typeof predicate != 'function' || thisArg !== undefined) {
  66402. predicate = getCallback(predicate, thisArg, 3);
  66403. }
  66404. return func(collection, predicate);
  66405. }
  66406. function sortBy(collection, iteratee, thisArg) {
  66407. if (collection == null) {
  66408. return [];
  66409. }
  66410. if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
  66411. iteratee = undefined;
  66412. }
  66413. var index = -1;
  66414. iteratee = getCallback(iteratee, thisArg, 3);
  66415. var result = baseMap(collection, function(value, key, collection) {
  66416. return { 'criteria': iteratee(value, key, collection), 'index': ++index, 'value': value };
  66417. });
  66418. return baseSortBy(result, compareAscending);
  66419. }
  66420. var sortByAll = restParam(function(collection, iteratees) {
  66421. if (collection == null) {
  66422. return [];
  66423. }
  66424. var guard = iteratees[2];
  66425. if (guard && isIterateeCall(iteratees[0], iteratees[1], guard)) {
  66426. iteratees.length = 1;
  66427. }
  66428. return baseSortByOrder(collection, baseFlatten(iteratees), []);
  66429. });
  66430. function sortByOrder(collection, iteratees, orders, guard) {
  66431. if (collection == null) {
  66432. return [];
  66433. }
  66434. if (guard && isIterateeCall(iteratees, orders, guard)) {
  66435. orders = undefined;
  66436. }
  66437. if (!isArray(iteratees)) {
  66438. iteratees = iteratees == null ? [] : [iteratees];
  66439. }
  66440. if (!isArray(orders)) {
  66441. orders = orders == null ? [] : [orders];
  66442. }
  66443. return baseSortByOrder(collection, iteratees, orders);
  66444. }
  66445. function where(collection, source) {
  66446. return filter(collection, baseMatches(source));
  66447. }
  66448. var now = nativeNow || function() {
  66449. return new Date().getTime();
  66450. };
  66451. function after(n, func) {
  66452. if (typeof func != 'function') {
  66453. if (typeof n == 'function') {
  66454. var temp = n;
  66455. n = func;
  66456. func = temp;
  66457. } else {
  66458. throw new TypeError(FUNC_ERROR_TEXT);
  66459. }
  66460. }
  66461. n = nativeIsFinite(n = +n) ? n : 0;
  66462. return function() {
  66463. if (--n < 1) {
  66464. return func.apply(this, arguments);
  66465. }
  66466. };
  66467. }
  66468. function ary(func, n, guard) {
  66469. if (guard && isIterateeCall(func, n, guard)) {
  66470. n = undefined;
  66471. }
  66472. n = (func && n == null) ? func.length : nativeMax(+n || 0, 0);
  66473. return createWrapper(func, ARY_FLAG, undefined, undefined, undefined, undefined, n);
  66474. }
  66475. function before(n, func) {
  66476. var result;
  66477. if (typeof func != 'function') {
  66478. if (typeof n == 'function') {
  66479. var temp = n;
  66480. n = func;
  66481. func = temp;
  66482. } else {
  66483. throw new TypeError(FUNC_ERROR_TEXT);
  66484. }
  66485. }
  66486. return function() {
  66487. if (--n > 0) {
  66488. result = func.apply(this, arguments);
  66489. }
  66490. if (n <= 1) {
  66491. func = undefined;
  66492. }
  66493. return result;
  66494. };
  66495. }
  66496. var bind = restParam(function(func, thisArg, partials) {
  66497. var bitmask = BIND_FLAG;
  66498. if (partials.length) {
  66499. var holders = replaceHolders(partials, bind.placeholder);
  66500. bitmask |= PARTIAL_FLAG;
  66501. }
  66502. return createWrapper(func, bitmask, thisArg, partials, holders);
  66503. });
  66504. var bindAll = restParam(function(object, methodNames) {
  66505. methodNames = methodNames.length ? baseFlatten(methodNames) : functions(object);
  66506. var index = -1,
  66507. length = methodNames.length;
  66508. while (++index < length) {
  66509. var key = methodNames[index];
  66510. object[key] = createWrapper(object[key], BIND_FLAG, object);
  66511. }
  66512. return object;
  66513. });
  66514. var bindKey = restParam(function(object, key, partials) {
  66515. var bitmask = BIND_FLAG | BIND_KEY_FLAG;
  66516. if (partials.length) {
  66517. var holders = replaceHolders(partials, bindKey.placeholder);
  66518. bitmask |= PARTIAL_FLAG;
  66519. }
  66520. return createWrapper(key, bitmask, object, partials, holders);
  66521. });
  66522. var curry = createCurry(CURRY_FLAG);
  66523. var curryRight = createCurry(CURRY_RIGHT_FLAG);
  66524. function debounce(func, wait, options) {
  66525. var args,
  66526. maxTimeoutId,
  66527. result,
  66528. stamp,
  66529. thisArg,
  66530. timeoutId,
  66531. trailingCall,
  66532. lastCalled = 0,
  66533. maxWait = false,
  66534. trailing = true;
  66535. if (typeof func != 'function') {
  66536. throw new TypeError(FUNC_ERROR_TEXT);
  66537. }
  66538. wait = wait < 0 ? 0 : (+wait || 0);
  66539. if (options === true) {
  66540. var leading = true;
  66541. trailing = false;
  66542. } else if (isObject(options)) {
  66543. leading = !!options.leading;
  66544. maxWait = 'maxWait' in options && nativeMax(+options.maxWait || 0, wait);
  66545. trailing = 'trailing' in options ? !!options.trailing : trailing;
  66546. }
  66547. function cancel() {
  66548. if (timeoutId) {
  66549. clearTimeout(timeoutId);
  66550. }
  66551. if (maxTimeoutId) {
  66552. clearTimeout(maxTimeoutId);
  66553. }
  66554. lastCalled = 0;
  66555. maxTimeoutId = timeoutId = trailingCall = undefined;
  66556. }
  66557. function complete(isCalled, id) {
  66558. if (id) {
  66559. clearTimeout(id);
  66560. }
  66561. maxTimeoutId = timeoutId = trailingCall = undefined;
  66562. if (isCalled) {
  66563. lastCalled = now();
  66564. result = func.apply(thisArg, args);
  66565. if (!timeoutId && !maxTimeoutId) {
  66566. args = thisArg = undefined;
  66567. }
  66568. }
  66569. }
  66570. function delayed() {
  66571. var remaining = wait - (now() - stamp);
  66572. if (remaining <= 0 || remaining > wait) {
  66573. complete(trailingCall, maxTimeoutId);
  66574. } else {
  66575. timeoutId = setTimeout(delayed, remaining);
  66576. }
  66577. }
  66578. function maxDelayed() {
  66579. complete(trailing, timeoutId);
  66580. }
  66581. function debounced() {
  66582. args = arguments;
  66583. stamp = now();
  66584. thisArg = this;
  66585. trailingCall = trailing && (timeoutId || !leading);
  66586. if (maxWait === false) {
  66587. var leadingCall = leading && !timeoutId;
  66588. } else {
  66589. if (!maxTimeoutId && !leading) {
  66590. lastCalled = stamp;
  66591. }
  66592. var remaining = maxWait - (stamp - lastCalled),
  66593. isCalled = remaining <= 0 || remaining > maxWait;
  66594. if (isCalled) {
  66595. if (maxTimeoutId) {
  66596. maxTimeoutId = clearTimeout(maxTimeoutId);
  66597. }
  66598. lastCalled = stamp;
  66599. result = func.apply(thisArg, args);
  66600. }
  66601. else if (!maxTimeoutId) {
  66602. maxTimeoutId = setTimeout(maxDelayed, remaining);
  66603. }
  66604. }
  66605. if (isCalled && timeoutId) {
  66606. timeoutId = clearTimeout(timeoutId);
  66607. }
  66608. else if (!timeoutId && wait !== maxWait) {
  66609. timeoutId = setTimeout(delayed, wait);
  66610. }
  66611. if (leadingCall) {
  66612. isCalled = true;
  66613. result = func.apply(thisArg, args);
  66614. }
  66615. if (isCalled && !timeoutId && !maxTimeoutId) {
  66616. args = thisArg = undefined;
  66617. }
  66618. return result;
  66619. }
  66620. debounced.cancel = cancel;
  66621. return debounced;
  66622. }
  66623. var defer = restParam(function(func, args) {
  66624. return baseDelay(func, 1, args);
  66625. });
  66626. var delay = restParam(function(func, wait, args) {
  66627. return baseDelay(func, wait, args);
  66628. });
  66629. var flow = createFlow();
  66630. var flowRight = createFlow(true);
  66631. function memoize(func, resolver) {
  66632. if (typeof func != 'function' || (resolver && typeof resolver != 'function')) {
  66633. throw new TypeError(FUNC_ERROR_TEXT);
  66634. }
  66635. var memoized = function() {
  66636. var args = arguments,
  66637. key = resolver ? resolver.apply(this, args) : args[0],
  66638. cache = memoized.cache;
  66639. if (cache.has(key)) {
  66640. return cache.get(key);
  66641. }
  66642. var result = func.apply(this, args);
  66643. memoized.cache = cache.set(key, result);
  66644. return result;
  66645. };
  66646. memoized.cache = new memoize.Cache;
  66647. return memoized;
  66648. }
  66649. var modArgs = restParam(function(func, transforms) {
  66650. transforms = baseFlatten(transforms);
  66651. if (typeof func != 'function' || !arrayEvery(transforms, baseIsFunction)) {
  66652. throw new TypeError(FUNC_ERROR_TEXT);
  66653. }
  66654. var length = transforms.length;
  66655. return restParam(function(args) {
  66656. var index = nativeMin(args.length, length);
  66657. while (index--) {
  66658. args[index] = transforms[index](args[index]);
  66659. }
  66660. return func.apply(this, args);
  66661. });
  66662. });
  66663. function negate(predicate) {
  66664. if (typeof predicate != 'function') {
  66665. throw new TypeError(FUNC_ERROR_TEXT);
  66666. }
  66667. return function() {
  66668. return !predicate.apply(this, arguments);
  66669. };
  66670. }
  66671. function once(func) {
  66672. return before(2, func);
  66673. }
  66674. var partial = createPartial(PARTIAL_FLAG);
  66675. var partialRight = createPartial(PARTIAL_RIGHT_FLAG);
  66676. var rearg = restParam(function(func, indexes) {
  66677. return createWrapper(func, REARG_FLAG, undefined, undefined, undefined, baseFlatten(indexes));
  66678. });
  66679. function restParam(func, start) {
  66680. if (typeof func != 'function') {
  66681. throw new TypeError(FUNC_ERROR_TEXT);
  66682. }
  66683. start = nativeMax(start === undefined ? (func.length - 1) : (+start || 0), 0);
  66684. return function() {
  66685. var args = arguments,
  66686. index = -1,
  66687. length = nativeMax(args.length - start, 0),
  66688. rest = Array(length);
  66689. while (++index < length) {
  66690. rest[index] = args[start + index];
  66691. }
  66692. switch (start) {
  66693. case 0: return func.call(this, rest);
  66694. case 1: return func.call(this, args[0], rest);
  66695. case 2: return func.call(this, args[0], args[1], rest);
  66696. }
  66697. var otherArgs = Array(start + 1);
  66698. index = -1;
  66699. while (++index < start) {
  66700. otherArgs[index] = args[index];
  66701. }
  66702. otherArgs[start] = rest;
  66703. return func.apply(this, otherArgs);
  66704. };
  66705. }
  66706. function spread(func) {
  66707. if (typeof func != 'function') {
  66708. throw new TypeError(FUNC_ERROR_TEXT);
  66709. }
  66710. return function(array) {
  66711. return func.apply(this, array);
  66712. };
  66713. }
  66714. function throttle(func, wait, options) {
  66715. var leading = true,
  66716. trailing = true;
  66717. if (typeof func != 'function') {
  66718. throw new TypeError(FUNC_ERROR_TEXT);
  66719. }
  66720. if (options === false) {
  66721. leading = false;
  66722. } else if (isObject(options)) {
  66723. leading = 'leading' in options ? !!options.leading : leading;
  66724. trailing = 'trailing' in options ? !!options.trailing : trailing;
  66725. }
  66726. return debounce(func, wait, { 'leading': leading, 'maxWait': +wait, 'trailing': trailing });
  66727. }
  66728. function wrap(value, wrapper) {
  66729. wrapper = wrapper == null ? identity : wrapper;
  66730. return createWrapper(wrapper, PARTIAL_FLAG, undefined, [value], []);
  66731. }
  66732. function clone(value, isDeep, customizer, thisArg) {
  66733. if (isDeep && typeof isDeep != 'boolean' && isIterateeCall(value, isDeep, customizer)) {
  66734. isDeep = false;
  66735. }
  66736. else if (typeof isDeep == 'function') {
  66737. thisArg = customizer;
  66738. customizer = isDeep;
  66739. isDeep = false;
  66740. }
  66741. return typeof customizer == 'function'
  66742. ? baseClone(value, isDeep, bindCallback(customizer, thisArg, 1))
  66743. : baseClone(value, isDeep);
  66744. }
  66745. function cloneDeep(value, customizer, thisArg) {
  66746. return typeof customizer == 'function'
  66747. ? baseClone(value, true, bindCallback(customizer, thisArg, 1))
  66748. : baseClone(value, true);
  66749. }
  66750. function gt(value, other) {
  66751. return value > other;
  66752. }
  66753. function gte(value, other) {
  66754. return value >= other;
  66755. }
  66756. function isArguments(value) {
  66757. return isObjectLike(value) && isArrayLike(value) &&
  66758. hasOwnProperty.call(value, 'callee') && !propertyIsEnumerable.call(value, 'callee');
  66759. }
  66760. var isArray = nativeIsArray || function(value) {
  66761. return isObjectLike(value) && isLength(value.length) && objToString.call(value) == arrayTag;
  66762. };
  66763. function isBoolean(value) {
  66764. return value === true || value === false || (isObjectLike(value) && objToString.call(value) == boolTag);
  66765. }
  66766. function isDate(value) {
  66767. return isObjectLike(value) && objToString.call(value) == dateTag;
  66768. }
  66769. function isElement(value) {
  66770. return !!value && value.nodeType === 1 && isObjectLike(value) && !isPlainObject(value);
  66771. }
  66772. function isEmpty(value) {
  66773. if (value == null) {
  66774. return true;
  66775. }
  66776. if (isArrayLike(value) && (isArray(value) || isString(value) || isArguments(value) ||
  66777. (isObjectLike(value) && isFunction(value.splice)))) {
  66778. return !value.length;
  66779. }
  66780. return !keys(value).length;
  66781. }
  66782. function isEqual(value, other, customizer, thisArg) {
  66783. customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
  66784. var result = customizer ? customizer(value, other) : undefined;
  66785. return result === undefined ? baseIsEqual(value, other, customizer) : !!result;
  66786. }
  66787. function isError(value) {
  66788. return isObjectLike(value) && typeof value.message == 'string' && objToString.call(value) == errorTag;
  66789. }
  66790. function isFinite(value) {
  66791. return typeof value == 'number' && nativeIsFinite(value);
  66792. }
  66793. function isFunction(value) {
  66794. return isObject(value) && objToString.call(value) == funcTag;
  66795. }
  66796. function isObject(value) {
  66797. var type = typeof value;
  66798. return !!value && (type == 'object' || type == 'function');
  66799. }
  66800. function isMatch(object, source, customizer, thisArg) {
  66801. customizer = typeof customizer == 'function' ? bindCallback(customizer, thisArg, 3) : undefined;
  66802. return baseIsMatch(object, getMatchData(source), customizer);
  66803. }
  66804. function isNaN(value) {
  66805. return isNumber(value) && value != +value;
  66806. }
  66807. function isNative(value) {
  66808. if (value == null) {
  66809. return false;
  66810. }
  66811. if (isFunction(value)) {
  66812. return reIsNative.test(fnToString.call(value));
  66813. }
  66814. return isObjectLike(value) && reIsHostCtor.test(value);
  66815. }
  66816. function isNull(value) {
  66817. return value === null;
  66818. }
  66819. function isNumber(value) {
  66820. return typeof value == 'number' || (isObjectLike(value) && objToString.call(value) == numberTag);
  66821. }
  66822. function isPlainObject(value) {
  66823. var Ctor;
  66824. if (!(isObjectLike(value) && objToString.call(value) == objectTag && !isArguments(value)) ||
  66825. (!hasOwnProperty.call(value, 'constructor') && (Ctor = value.constructor, typeof Ctor == 'function' && !(Ctor instanceof Ctor)))) {
  66826. return false;
  66827. }
  66828. var result;
  66829. baseForIn(value, function(subValue, key) {
  66830. result = key;
  66831. });
  66832. return result === undefined || hasOwnProperty.call(value, result);
  66833. }
  66834. function isRegExp(value) {
  66835. return isObject(value) && objToString.call(value) == regexpTag;
  66836. }
  66837. function isString(value) {
  66838. return typeof value == 'string' || (isObjectLike(value) && objToString.call(value) == stringTag);
  66839. }
  66840. function isTypedArray(value) {
  66841. return isObjectLike(value) && isLength(value.length) && !!typedArrayTags[objToString.call(value)];
  66842. }
  66843. function isUndefined(value) {
  66844. return value === undefined;
  66845. }
  66846. function lt(value, other) {
  66847. return value < other;
  66848. }
  66849. function lte(value, other) {
  66850. return value <= other;
  66851. }
  66852. function toArray(value) {
  66853. var length = value ? getLength(value) : 0;
  66854. if (!isLength(length)) {
  66855. return values(value);
  66856. }
  66857. if (!length) {
  66858. return [];
  66859. }
  66860. return arrayCopy(value);
  66861. }
  66862. function toPlainObject(value) {
  66863. return baseCopy(value, keysIn(value));
  66864. }
  66865. var merge = createAssigner(baseMerge);
  66866. var assign = createAssigner(function(object, source, customizer) {
  66867. return customizer
  66868. ? assignWith(object, source, customizer)
  66869. : baseAssign(object, source);
  66870. });
  66871. function create(prototype, properties, guard) {
  66872. var result = baseCreate(prototype);
  66873. if (guard && isIterateeCall(prototype, properties, guard)) {
  66874. properties = undefined;
  66875. }
  66876. return properties ? baseAssign(result, properties) : result;
  66877. }
  66878. var defaults = createDefaults(assign, assignDefaults);
  66879. var defaultsDeep = createDefaults(merge, mergeDefaults);
  66880. var findKey = createFindKey(baseForOwn);
  66881. var findLastKey = createFindKey(baseForOwnRight);
  66882. var forIn = createForIn(baseFor);
  66883. var forInRight = createForIn(baseForRight);
  66884. var forOwn = createForOwn(baseForOwn);
  66885. var forOwnRight = createForOwn(baseForOwnRight);
  66886. function functions(object) {
  66887. return baseFunctions(object, keysIn(object));
  66888. }
  66889. function get(object, path, defaultValue) {
  66890. var result = object == null ? undefined : baseGet(object, toPath(path), path + '');
  66891. return result === undefined ? defaultValue : result;
  66892. }
  66893. function has(object, path) {
  66894. if (object == null) {
  66895. return false;
  66896. }
  66897. var result = hasOwnProperty.call(object, path);
  66898. if (!result && !isKey(path)) {
  66899. path = toPath(path);
  66900. object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
  66901. if (object == null) {
  66902. return false;
  66903. }
  66904. path = last(path);
  66905. result = hasOwnProperty.call(object, path);
  66906. }
  66907. return result || (isLength(object.length) && isIndex(path, object.length) &&
  66908. (isArray(object) || isArguments(object)));
  66909. }
  66910. function invert(object, multiValue, guard) {
  66911. if (guard && isIterateeCall(object, multiValue, guard)) {
  66912. multiValue = undefined;
  66913. }
  66914. var index = -1,
  66915. props = keys(object),
  66916. length = props.length,
  66917. result = {};
  66918. while (++index < length) {
  66919. var key = props[index],
  66920. value = object[key];
  66921. if (multiValue) {
  66922. if (hasOwnProperty.call(result, value)) {
  66923. result[value].push(key);
  66924. } else {
  66925. result[value] = [key];
  66926. }
  66927. }
  66928. else {
  66929. result[value] = key;
  66930. }
  66931. }
  66932. return result;
  66933. }
  66934. var keys = !nativeKeys ? shimKeys : function(object) {
  66935. var Ctor = object == null ? undefined : object.constructor;
  66936. if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
  66937. (typeof object != 'function' && isArrayLike(object))) {
  66938. return shimKeys(object);
  66939. }
  66940. return isObject(object) ? nativeKeys(object) : [];
  66941. };
  66942. function keysIn(object) {
  66943. if (object == null) {
  66944. return [];
  66945. }
  66946. if (!isObject(object)) {
  66947. object = Object(object);
  66948. }
  66949. var length = object.length;
  66950. length = (length && isLength(length) &&
  66951. (isArray(object) || isArguments(object)) && length) || 0;
  66952. var Ctor = object.constructor,
  66953. index = -1,
  66954. isProto = typeof Ctor == 'function' && Ctor.prototype === object,
  66955. result = Array(length),
  66956. skipIndexes = length > 0;
  66957. while (++index < length) {
  66958. result[index] = (index + '');
  66959. }
  66960. for (var key in object) {
  66961. if (!(skipIndexes && isIndex(key, length)) &&
  66962. !(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {
  66963. result.push(key);
  66964. }
  66965. }
  66966. return result;
  66967. }
  66968. var mapKeys = createObjectMapper(true);
  66969. var mapValues = createObjectMapper();
  66970. var omit = restParam(function(object, props) {
  66971. if (object == null) {
  66972. return {};
  66973. }
  66974. if (typeof props[0] != 'function') {
  66975. var props = arrayMap(baseFlatten(props), String);
  66976. return pickByArray(object, baseDifference(keysIn(object), props));
  66977. }
  66978. var predicate = bindCallback(props[0], props[1], 3);
  66979. return pickByCallback(object, function(value, key, object) {
  66980. return !predicate(value, key, object);
  66981. });
  66982. });
  66983. function pairs(object) {
  66984. object = toObject(object);
  66985. var index = -1,
  66986. props = keys(object),
  66987. length = props.length,
  66988. result = Array(length);
  66989. while (++index < length) {
  66990. var key = props[index];
  66991. result[index] = [key, object[key]];
  66992. }
  66993. return result;
  66994. }
  66995. var pick = restParam(function(object, props) {
  66996. if (object == null) {
  66997. return {};
  66998. }
  66999. return typeof props[0] == 'function'
  67000. ? pickByCallback(object, bindCallback(props[0], props[1], 3))
  67001. : pickByArray(object, baseFlatten(props));
  67002. });
  67003. function result(object, path, defaultValue) {
  67004. var result = object == null ? undefined : object[path];
  67005. if (result === undefined) {
  67006. if (object != null && !isKey(path, object)) {
  67007. path = toPath(path);
  67008. object = path.length == 1 ? object : baseGet(object, baseSlice(path, 0, -1));
  67009. result = object == null ? undefined : object[last(path)];
  67010. }
  67011. result = result === undefined ? defaultValue : result;
  67012. }
  67013. return isFunction(result) ? result.call(object) : result;
  67014. }
  67015. function set(object, path, value) {
  67016. if (object == null) {
  67017. return object;
  67018. }
  67019. var pathKey = (path + '');
  67020. path = (object[pathKey] != null || isKey(path, object)) ? [pathKey] : toPath(path);
  67021. var index = -1,
  67022. length = path.length,
  67023. lastIndex = length - 1,
  67024. nested = object;
  67025. while (nested != null && ++index < length) {
  67026. var key = path[index];
  67027. if (isObject(nested)) {
  67028. if (index == lastIndex) {
  67029. nested[key] = value;
  67030. } else if (nested[key] == null) {
  67031. nested[key] = isIndex(path[index + 1]) ? [] : {};
  67032. }
  67033. }
  67034. nested = nested[key];
  67035. }
  67036. return object;
  67037. }
  67038. function transform(object, iteratee, accumulator, thisArg) {
  67039. var isArr = isArray(object) || isTypedArray(object);
  67040. iteratee = getCallback(iteratee, thisArg, 4);
  67041. if (accumulator == null) {
  67042. if (isArr || isObject(object)) {
  67043. var Ctor = object.constructor;
  67044. if (isArr) {
  67045. accumulator = isArray(object) ? new Ctor : [];
  67046. } else {
  67047. accumulator = baseCreate(isFunction(Ctor) ? Ctor.prototype : undefined);
  67048. }
  67049. } else {
  67050. accumulator = {};
  67051. }
  67052. }
  67053. (isArr ? arrayEach : baseForOwn)(object, function(value, index, object) {
  67054. return iteratee(accumulator, value, index, object);
  67055. });
  67056. return accumulator;
  67057. }
  67058. function values(object) {
  67059. return baseValues(object, keys(object));
  67060. }
  67061. function valuesIn(object) {
  67062. return baseValues(object, keysIn(object));
  67063. }
  67064. function inRange(value, start, end) {
  67065. start = +start || 0;
  67066. if (end === undefined) {
  67067. end = start;
  67068. start = 0;
  67069. } else {
  67070. end = +end || 0;
  67071. }
  67072. return value >= nativeMin(start, end) && value < nativeMax(start, end);
  67073. }
  67074. function random(min, max, floating) {
  67075. if (floating && isIterateeCall(min, max, floating)) {
  67076. max = floating = undefined;
  67077. }
  67078. var noMin = min == null,
  67079. noMax = max == null;
  67080. if (floating == null) {
  67081. if (noMax && typeof min == 'boolean') {
  67082. floating = min;
  67083. min = 1;
  67084. }
  67085. else if (typeof max == 'boolean') {
  67086. floating = max;
  67087. noMax = true;
  67088. }
  67089. }
  67090. if (noMin && noMax) {
  67091. max = 1;
  67092. noMax = false;
  67093. }
  67094. min = +min || 0;
  67095. if (noMax) {
  67096. max = min;
  67097. min = 0;
  67098. } else {
  67099. max = +max || 0;
  67100. }
  67101. if (floating || min % 1 || max % 1) {
  67102. var rand = nativeRandom();
  67103. return nativeMin(min + (rand * (max - min + parseFloat('1e-' + ((rand + '').length - 1)))), max);
  67104. }
  67105. return baseRandom(min, max);
  67106. }
  67107. var camelCase = createCompounder(function(result, word, index) {
  67108. word = word.toLowerCase();
  67109. return result + (index ? (word.charAt(0).toUpperCase() + word.slice(1)) : word);
  67110. });
  67111. function capitalize(string) {
  67112. string = baseToString(string);
  67113. return string && (string.charAt(0).toUpperCase() + string.slice(1));
  67114. }
  67115. function deburr(string) {
  67116. string = baseToString(string);
  67117. return string && string.replace(reLatin1, deburrLetter).replace(reComboMark, '');
  67118. }
  67119. function endsWith(string, target, position) {
  67120. string = baseToString(string);
  67121. target = (target + '');
  67122. var length = string.length;
  67123. position = position === undefined
  67124. ? length
  67125. : nativeMin(position < 0 ? 0 : (+position || 0), length);
  67126. position -= target.length;
  67127. return position >= 0 && string.indexOf(target, position) == position;
  67128. }
  67129. function escape(string) {
  67130. string = baseToString(string);
  67131. return (string && reHasUnescapedHtml.test(string))
  67132. ? string.replace(reUnescapedHtml, escapeHtmlChar)
  67133. : string;
  67134. }
  67135. function escapeRegExp(string) {
  67136. string = baseToString(string);
  67137. return (string && reHasRegExpChars.test(string))
  67138. ? string.replace(reRegExpChars, escapeRegExpChar)
  67139. : (string || '(?:)');
  67140. }
  67141. var kebabCase = createCompounder(function(result, word, index) {
  67142. return result + (index ? '-' : '') + word.toLowerCase();
  67143. });
  67144. function pad(string, length, chars) {
  67145. string = baseToString(string);
  67146. length = +length;
  67147. var strLength = string.length;
  67148. if (strLength >= length || !nativeIsFinite(length)) {
  67149. return string;
  67150. }
  67151. var mid = (length - strLength) / 2,
  67152. leftLength = nativeFloor(mid),
  67153. rightLength = nativeCeil(mid);
  67154. chars = createPadding('', rightLength, chars);
  67155. return chars.slice(0, leftLength) + string + chars;
  67156. }
  67157. var padLeft = createPadDir();
  67158. var padRight = createPadDir(true);
  67159. function parseInt(string, radix, guard) {
  67160. if (guard ? isIterateeCall(string, radix, guard) : radix == null) {
  67161. radix = 0;
  67162. } else if (radix) {
  67163. radix = +radix;
  67164. }
  67165. string = trim(string);
  67166. return nativeParseInt(string, radix || (reHasHexPrefix.test(string) ? 16 : 10));
  67167. }
  67168. function repeat(string, n) {
  67169. var result = '';
  67170. string = baseToString(string);
  67171. n = +n;
  67172. if (n < 1 || !string || !nativeIsFinite(n)) {
  67173. return result;
  67174. }
  67175. do {
  67176. if (n % 2) {
  67177. result += string;
  67178. }
  67179. n = nativeFloor(n / 2);
  67180. string += string;
  67181. } while (n);
  67182. return result;
  67183. }
  67184. var snakeCase = createCompounder(function(result, word, index) {
  67185. return result + (index ? '_' : '') + word.toLowerCase();
  67186. });
  67187. var startCase = createCompounder(function(result, word, index) {
  67188. return result + (index ? ' ' : '') + (word.charAt(0).toUpperCase() + word.slice(1));
  67189. });
  67190. function startsWith(string, target, position) {
  67191. string = baseToString(string);
  67192. position = position == null
  67193. ? 0
  67194. : nativeMin(position < 0 ? 0 : (+position || 0), string.length);
  67195. return string.lastIndexOf(target, position) == position;
  67196. }
  67197. function template(string, options, otherOptions) {
  67198. var settings = lodash.templateSettings;
  67199. if (otherOptions && isIterateeCall(string, options, otherOptions)) {
  67200. options = otherOptions = undefined;
  67201. }
  67202. string = baseToString(string);
  67203. options = assignWith(baseAssign({}, otherOptions || options), settings, assignOwnDefaults);
  67204. var imports = assignWith(baseAssign({}, options.imports), settings.imports, assignOwnDefaults),
  67205. importsKeys = keys(imports),
  67206. importsValues = baseValues(imports, importsKeys);
  67207. var isEscaping,
  67208. isEvaluating,
  67209. index = 0,
  67210. interpolate = options.interpolate || reNoMatch,
  67211. source = "__p += '";
  67212. var reDelimiters = RegExp(
  67213. (options.escape || reNoMatch).source + '|' +
  67214. interpolate.source + '|' +
  67215. (interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
  67216. (options.evaluate || reNoMatch).source + '|$'
  67217. , 'g');
  67218. var sourceURL = '//# sourceURL=' +
  67219. ('sourceURL' in options
  67220. ? options.sourceURL
  67221. : ('lodash.templateSources[' + (++templateCounter) + ']')
  67222. ) + '\n';
  67223. string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
  67224. interpolateValue || (interpolateValue = esTemplateValue);
  67225. source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
  67226. if (escapeValue) {
  67227. isEscaping = true;
  67228. source += "' +\n__e(" + escapeValue + ") +\n'";
  67229. }
  67230. if (evaluateValue) {
  67231. isEvaluating = true;
  67232. source += "';\n" + evaluateValue + ";\n__p += '";
  67233. }
  67234. if (interpolateValue) {
  67235. source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
  67236. }
  67237. index = offset + match.length;
  67238. return match;
  67239. });
  67240. source += "';\n";
  67241. var variable = options.variable;
  67242. if (!variable) {
  67243. source = 'with (obj) {\n' + source + '\n}\n';
  67244. }
  67245. source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
  67246. .replace(reEmptyStringMiddle, '$1')
  67247. .replace(reEmptyStringTrailing, '$1;');
  67248. source = 'function(' + (variable || 'obj') + ') {\n' +
  67249. (variable
  67250. ? ''
  67251. : 'obj || (obj = {});\n'
  67252. ) +
  67253. "var __t, __p = ''" +
  67254. (isEscaping
  67255. ? ', __e = _.escape'
  67256. : ''
  67257. ) +
  67258. (isEvaluating
  67259. ? ', __j = Array.prototype.join;\n' +
  67260. "function print() { __p += __j.call(arguments, '') }\n"
  67261. : ';\n'
  67262. ) +
  67263. source +
  67264. 'return __p\n}';
  67265. var result = attempt(function() {
  67266. return Function(importsKeys, sourceURL + 'return ' + source).apply(undefined, importsValues);
  67267. });
  67268. result.source = source;
  67269. if (isError(result)) {
  67270. throw result;
  67271. }
  67272. return result;
  67273. }
  67274. function trim(string, chars, guard) {
  67275. var value = string;
  67276. string = baseToString(string);
  67277. if (!string) {
  67278. return string;
  67279. }
  67280. if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
  67281. return string.slice(trimmedLeftIndex(string), trimmedRightIndex(string) + 1);
  67282. }
  67283. chars = (chars + '');
  67284. return string.slice(charsLeftIndex(string, chars), charsRightIndex(string, chars) + 1);
  67285. }
  67286. function trimLeft(string, chars, guard) {
  67287. var value = string;
  67288. string = baseToString(string);
  67289. if (!string) {
  67290. return string;
  67291. }
  67292. if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
  67293. return string.slice(trimmedLeftIndex(string));
  67294. }
  67295. return string.slice(charsLeftIndex(string, (chars + '')));
  67296. }
  67297. function trimRight(string, chars, guard) {
  67298. var value = string;
  67299. string = baseToString(string);
  67300. if (!string) {
  67301. return string;
  67302. }
  67303. if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
  67304. return string.slice(0, trimmedRightIndex(string) + 1);
  67305. }
  67306. return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
  67307. }
  67308. function trunc(string, options, guard) {
  67309. if (guard && isIterateeCall(string, options, guard)) {
  67310. options = undefined;
  67311. }
  67312. var length = DEFAULT_TRUNC_LENGTH,
  67313. omission = DEFAULT_TRUNC_OMISSION;
  67314. if (options != null) {
  67315. if (isObject(options)) {
  67316. var separator = 'separator' in options ? options.separator : separator;
  67317. length = 'length' in options ? (+options.length || 0) : length;
  67318. omission = 'omission' in options ? baseToString(options.omission) : omission;
  67319. } else {
  67320. length = +options || 0;
  67321. }
  67322. }
  67323. string = baseToString(string);
  67324. if (length >= string.length) {
  67325. return string;
  67326. }
  67327. var end = length - omission.length;
  67328. if (end < 1) {
  67329. return omission;
  67330. }
  67331. var result = string.slice(0, end);
  67332. if (separator == null) {
  67333. return result + omission;
  67334. }
  67335. if (isRegExp(separator)) {
  67336. if (string.slice(end).search(separator)) {
  67337. var match,
  67338. newEnd,
  67339. substring = string.slice(0, end);
  67340. if (!separator.global) {
  67341. separator = RegExp(separator.source, (reFlags.exec(separator) || '') + 'g');
  67342. }
  67343. separator.lastIndex = 0;
  67344. while ((match = separator.exec(substring))) {
  67345. newEnd = match.index;
  67346. }
  67347. result = result.slice(0, newEnd == null ? end : newEnd);
  67348. }
  67349. } else if (string.indexOf(separator, end) != end) {
  67350. var index = result.lastIndexOf(separator);
  67351. if (index > -1) {
  67352. result = result.slice(0, index);
  67353. }
  67354. }
  67355. return result + omission;
  67356. }
  67357. function unescape(string) {
  67358. string = baseToString(string);
  67359. return (string && reHasEscapedHtml.test(string))
  67360. ? string.replace(reEscapedHtml, unescapeHtmlChar)
  67361. : string;
  67362. }
  67363. function words(string, pattern, guard) {
  67364. if (guard && isIterateeCall(string, pattern, guard)) {
  67365. pattern = undefined;
  67366. }
  67367. string = baseToString(string);
  67368. return string.match(pattern || reWords) || [];
  67369. }
  67370. var attempt = restParam(function(func, args) {
  67371. try {
  67372. return func.apply(undefined, args);
  67373. } catch(e) {
  67374. return isError(e) ? e : new Error(e);
  67375. }
  67376. });
  67377. function callback(func, thisArg, guard) {
  67378. if (guard && isIterateeCall(func, thisArg, guard)) {
  67379. thisArg = undefined;
  67380. }
  67381. return isObjectLike(func)
  67382. ? matches(func)
  67383. : baseCallback(func, thisArg);
  67384. }
  67385. function constant(value) {
  67386. return function() {
  67387. return value;
  67388. };
  67389. }
  67390. function identity(value) {
  67391. return value;
  67392. }
  67393. function matches(source) {
  67394. return baseMatches(baseClone(source, true));
  67395. }
  67396. function matchesProperty(path, srcValue) {
  67397. return baseMatchesProperty(path, baseClone(srcValue, true));
  67398. }
  67399. var method = restParam(function(path, args) {
  67400. return function(object) {
  67401. return invokePath(object, path, args);
  67402. };
  67403. });
  67404. var methodOf = restParam(function(object, args) {
  67405. return function(path) {
  67406. return invokePath(object, path, args);
  67407. };
  67408. });
  67409. function mixin(object, source, options) {
  67410. if (options == null) {
  67411. var isObj = isObject(source),
  67412. props = isObj ? keys(source) : undefined,
  67413. methodNames = (props && props.length) ? baseFunctions(source, props) : undefined;
  67414. if (!(methodNames ? methodNames.length : isObj)) {
  67415. methodNames = false;
  67416. options = source;
  67417. source = object;
  67418. object = this;
  67419. }
  67420. }
  67421. if (!methodNames) {
  67422. methodNames = baseFunctions(source, keys(source));
  67423. }
  67424. var chain = true,
  67425. index = -1,
  67426. isFunc = isFunction(object),
  67427. length = methodNames.length;
  67428. if (options === false) {
  67429. chain = false;
  67430. } else if (isObject(options) && 'chain' in options) {
  67431. chain = options.chain;
  67432. }
  67433. while (++index < length) {
  67434. var methodName = methodNames[index],
  67435. func = source[methodName];
  67436. object[methodName] = func;
  67437. if (isFunc) {
  67438. object.prototype[methodName] = (function(func) {
  67439. return function() {
  67440. var chainAll = this.__chain__;
  67441. if (chain || chainAll) {
  67442. var result = object(this.__wrapped__),
  67443. actions = result.__actions__ = arrayCopy(this.__actions__);
  67444. actions.push({ 'func': func, 'args': arguments, 'thisArg': object });
  67445. result.__chain__ = chainAll;
  67446. return result;
  67447. }
  67448. return func.apply(object, arrayPush([this.value()], arguments));
  67449. };
  67450. }(func));
  67451. }
  67452. }
  67453. return object;
  67454. }
  67455. function noConflict() {
  67456. root._ = oldDash;
  67457. return this;
  67458. }
  67459. function noop() {
  67460. }
  67461. function property(path) {
  67462. return isKey(path) ? baseProperty(path) : basePropertyDeep(path);
  67463. }
  67464. function propertyOf(object) {
  67465. return function(path) {
  67466. return baseGet(object, toPath(path), path + '');
  67467. };
  67468. }
  67469. function range(start, end, step) {
  67470. if (step && isIterateeCall(start, end, step)) {
  67471. end = step = undefined;
  67472. }
  67473. start = +start || 0;
  67474. step = step == null ? 1 : (+step || 0);
  67475. if (end == null) {
  67476. end = start;
  67477. start = 0;
  67478. } else {
  67479. end = +end || 0;
  67480. }
  67481. var index = -1,
  67482. length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),
  67483. result = Array(length);
  67484. while (++index < length) {
  67485. result[index] = start;
  67486. start += step;
  67487. }
  67488. return result;
  67489. }
  67490. function times(n, iteratee, thisArg) {
  67491. n = nativeFloor(n);
  67492. if (n < 1 || !nativeIsFinite(n)) {
  67493. return [];
  67494. }
  67495. var index = -1,
  67496. result = Array(nativeMin(n, MAX_ARRAY_LENGTH));
  67497. iteratee = bindCallback(iteratee, thisArg, 1);
  67498. while (++index < n) {
  67499. if (index < MAX_ARRAY_LENGTH) {
  67500. result[index] = iteratee(index);
  67501. } else {
  67502. iteratee(index);
  67503. }
  67504. }
  67505. return result;
  67506. }
  67507. function uniqueId(prefix) {
  67508. var id = ++idCounter;
  67509. return baseToString(prefix) + id;
  67510. }
  67511. function add(augend, addend) {
  67512. return (+augend || 0) + (+addend || 0);
  67513. }
  67514. var ceil = createRound('ceil');
  67515. var floor = createRound('floor');
  67516. var max = createExtremum(gt, NEGATIVE_INFINITY);
  67517. var min = createExtremum(lt, POSITIVE_INFINITY);
  67518. var round = createRound('round');
  67519. function sum(collection, iteratee, thisArg) {
  67520. if (thisArg && isIterateeCall(collection, iteratee, thisArg)) {
  67521. iteratee = undefined;
  67522. }
  67523. iteratee = getCallback(iteratee, thisArg, 3);
  67524. return iteratee.length == 1
  67525. ? arraySum(isArray(collection) ? collection : toIterable(collection), iteratee)
  67526. : baseSum(collection, iteratee);
  67527. }
  67528. lodash.prototype = baseLodash.prototype;
  67529. LodashWrapper.prototype = baseCreate(baseLodash.prototype);
  67530. LodashWrapper.prototype.constructor = LodashWrapper;
  67531. LazyWrapper.prototype = baseCreate(baseLodash.prototype);
  67532. LazyWrapper.prototype.constructor = LazyWrapper;
  67533. MapCache.prototype['delete'] = mapDelete;
  67534. MapCache.prototype.get = mapGet;
  67535. MapCache.prototype.has = mapHas;
  67536. MapCache.prototype.set = mapSet;
  67537. SetCache.prototype.push = cachePush;
  67538. memoize.Cache = MapCache;
  67539. lodash.after = after;
  67540. lodash.ary = ary;
  67541. lodash.assign = assign;
  67542. lodash.at = at;
  67543. lodash.before = before;
  67544. lodash.bind = bind;
  67545. lodash.bindAll = bindAll;
  67546. lodash.bindKey = bindKey;
  67547. lodash.callback = callback;
  67548. lodash.chain = chain;
  67549. lodash.chunk = chunk;
  67550. lodash.compact = compact;
  67551. lodash.constant = constant;
  67552. lodash.countBy = countBy;
  67553. lodash.create = create;
  67554. lodash.curry = curry;
  67555. lodash.curryRight = curryRight;
  67556. lodash.debounce = debounce;
  67557. lodash.defaults = defaults;
  67558. lodash.defaultsDeep = defaultsDeep;
  67559. lodash.defer = defer;
  67560. lodash.delay = delay;
  67561. lodash.difference = difference;
  67562. lodash.drop = drop;
  67563. lodash.dropRight = dropRight;
  67564. lodash.dropRightWhile = dropRightWhile;
  67565. lodash.dropWhile = dropWhile;
  67566. lodash.fill = fill;
  67567. lodash.filter = filter;
  67568. lodash.flatten = flatten;
  67569. lodash.flattenDeep = flattenDeep;
  67570. lodash.flow = flow;
  67571. lodash.flowRight = flowRight;
  67572. lodash.forEach = forEach;
  67573. lodash.forEachRight = forEachRight;
  67574. lodash.forIn = forIn;
  67575. lodash.forInRight = forInRight;
  67576. lodash.forOwn = forOwn;
  67577. lodash.forOwnRight = forOwnRight;
  67578. lodash.functions = functions;
  67579. lodash.groupBy = groupBy;
  67580. lodash.indexBy = indexBy;
  67581. lodash.initial = initial;
  67582. lodash.intersection = intersection;
  67583. lodash.invert = invert;
  67584. lodash.invoke = invoke;
  67585. lodash.keys = keys;
  67586. lodash.keysIn = keysIn;
  67587. lodash.map = map;
  67588. lodash.mapKeys = mapKeys;
  67589. lodash.mapValues = mapValues;
  67590. lodash.matches = matches;
  67591. lodash.matchesProperty = matchesProperty;
  67592. lodash.memoize = memoize;
  67593. lodash.merge = merge;
  67594. lodash.method = method;
  67595. lodash.methodOf = methodOf;
  67596. lodash.mixin = mixin;
  67597. lodash.modArgs = modArgs;
  67598. lodash.negate = negate;
  67599. lodash.omit = omit;
  67600. lodash.once = once;
  67601. lodash.pairs = pairs;
  67602. lodash.partial = partial;
  67603. lodash.partialRight = partialRight;
  67604. lodash.partition = partition;
  67605. lodash.pick = pick;
  67606. lodash.pluck = pluck;
  67607. lodash.property = property;
  67608. lodash.propertyOf = propertyOf;
  67609. lodash.pull = pull;
  67610. lodash.pullAt = pullAt;
  67611. lodash.range = range;
  67612. lodash.rearg = rearg;
  67613. lodash.reject = reject;
  67614. lodash.remove = remove;
  67615. lodash.rest = rest;
  67616. lodash.restParam = restParam;
  67617. lodash.set = set;
  67618. lodash.shuffle = shuffle;
  67619. lodash.slice = slice;
  67620. lodash.sortBy = sortBy;
  67621. lodash.sortByAll = sortByAll;
  67622. lodash.sortByOrder = sortByOrder;
  67623. lodash.spread = spread;
  67624. lodash.take = take;
  67625. lodash.takeRight = takeRight;
  67626. lodash.takeRightWhile = takeRightWhile;
  67627. lodash.takeWhile = takeWhile;
  67628. lodash.tap = tap;
  67629. lodash.throttle = throttle;
  67630. lodash.thru = thru;
  67631. lodash.times = times;
  67632. lodash.toArray = toArray;
  67633. lodash.toPlainObject = toPlainObject;
  67634. lodash.transform = transform;
  67635. lodash.union = union;
  67636. lodash.uniq = uniq;
  67637. lodash.unzip = unzip;
  67638. lodash.unzipWith = unzipWith;
  67639. lodash.values = values;
  67640. lodash.valuesIn = valuesIn;
  67641. lodash.where = where;
  67642. lodash.without = without;
  67643. lodash.wrap = wrap;
  67644. lodash.xor = xor;
  67645. lodash.zip = zip;
  67646. lodash.zipObject = zipObject;
  67647. lodash.zipWith = zipWith;
  67648. lodash.backflow = flowRight;
  67649. lodash.collect = map;
  67650. lodash.compose = flowRight;
  67651. lodash.each = forEach;
  67652. lodash.eachRight = forEachRight;
  67653. lodash.extend = assign;
  67654. lodash.iteratee = callback;
  67655. lodash.methods = functions;
  67656. lodash.object = zipObject;
  67657. lodash.select = filter;
  67658. lodash.tail = rest;
  67659. lodash.unique = uniq;
  67660. mixin(lodash, lodash);
  67661. lodash.add = add;
  67662. lodash.attempt = attempt;
  67663. lodash.camelCase = camelCase;
  67664. lodash.capitalize = capitalize;
  67665. lodash.ceil = ceil;
  67666. lodash.clone = clone;
  67667. lodash.cloneDeep = cloneDeep;
  67668. lodash.deburr = deburr;
  67669. lodash.endsWith = endsWith;
  67670. lodash.escape = escape;
  67671. lodash.escapeRegExp = escapeRegExp;
  67672. lodash.every = every;
  67673. lodash.find = find;
  67674. lodash.findIndex = findIndex;
  67675. lodash.findKey = findKey;
  67676. lodash.findLast = findLast;
  67677. lodash.findLastIndex = findLastIndex;
  67678. lodash.findLastKey = findLastKey;
  67679. lodash.findWhere = findWhere;
  67680. lodash.first = first;
  67681. lodash.floor = floor;
  67682. lodash.get = get;
  67683. lodash.gt = gt;
  67684. lodash.gte = gte;
  67685. lodash.has = has;
  67686. lodash.identity = identity;
  67687. lodash.includes = includes;
  67688. lodash.indexOf = indexOf;
  67689. lodash.inRange = inRange;
  67690. lodash.isArguments = isArguments;
  67691. lodash.isArray = isArray;
  67692. lodash.isBoolean = isBoolean;
  67693. lodash.isDate = isDate;
  67694. lodash.isElement = isElement;
  67695. lodash.isEmpty = isEmpty;
  67696. lodash.isEqual = isEqual;
  67697. lodash.isError = isError;
  67698. lodash.isFinite = isFinite;
  67699. lodash.isFunction = isFunction;
  67700. lodash.isMatch = isMatch;
  67701. lodash.isNaN = isNaN;
  67702. lodash.isNative = isNative;
  67703. lodash.isNull = isNull;
  67704. lodash.isNumber = isNumber;
  67705. lodash.isObject = isObject;
  67706. lodash.isPlainObject = isPlainObject;
  67707. lodash.isRegExp = isRegExp;
  67708. lodash.isString = isString;
  67709. lodash.isTypedArray = isTypedArray;
  67710. lodash.isUndefined = isUndefined;
  67711. lodash.kebabCase = kebabCase;
  67712. lodash.last = last;
  67713. lodash.lastIndexOf = lastIndexOf;
  67714. lodash.lt = lt;
  67715. lodash.lte = lte;
  67716. lodash.max = max;
  67717. lodash.min = min;
  67718. lodash.noConflict = noConflict;
  67719. lodash.noop = noop;
  67720. lodash.now = now;
  67721. lodash.pad = pad;
  67722. lodash.padLeft = padLeft;
  67723. lodash.padRight = padRight;
  67724. lodash.parseInt = parseInt;
  67725. lodash.random = random;
  67726. lodash.reduce = reduce;
  67727. lodash.reduceRight = reduceRight;
  67728. lodash.repeat = repeat;
  67729. lodash.result = result;
  67730. lodash.round = round;
  67731. lodash.runInContext = runInContext;
  67732. lodash.size = size;
  67733. lodash.snakeCase = snakeCase;
  67734. lodash.some = some;
  67735. lodash.sortedIndex = sortedIndex;
  67736. lodash.sortedLastIndex = sortedLastIndex;
  67737. lodash.startCase = startCase;
  67738. lodash.startsWith = startsWith;
  67739. lodash.sum = sum;
  67740. lodash.template = template;
  67741. lodash.trim = trim;
  67742. lodash.trimLeft = trimLeft;
  67743. lodash.trimRight = trimRight;
  67744. lodash.trunc = trunc;
  67745. lodash.unescape = unescape;
  67746. lodash.uniqueId = uniqueId;
  67747. lodash.words = words;
  67748. lodash.all = every;
  67749. lodash.any = some;
  67750. lodash.contains = includes;
  67751. lodash.eq = isEqual;
  67752. lodash.detect = find;
  67753. lodash.foldl = reduce;
  67754. lodash.foldr = reduceRight;
  67755. lodash.head = first;
  67756. lodash.include = includes;
  67757. lodash.inject = reduce;
  67758. mixin(lodash, (function() {
  67759. var source = {};
  67760. baseForOwn(lodash, function(func, methodName) {
  67761. if (!lodash.prototype[methodName]) {
  67762. source[methodName] = func;
  67763. }
  67764. });
  67765. return source;
  67766. }()), false);
  67767. lodash.sample = sample;
  67768. lodash.prototype.sample = function(n) {
  67769. if (!this.__chain__ && n == null) {
  67770. return sample(this.value());
  67771. }
  67772. return this.thru(function(value) {
  67773. return sample(value, n);
  67774. });
  67775. };
  67776. lodash.VERSION = VERSION;
  67777. arrayEach(['bind', 'bindKey', 'curry', 'curryRight', 'partial', 'partialRight'], function(methodName) {
  67778. lodash[methodName].placeholder = lodash;
  67779. });
  67780. arrayEach(['drop', 'take'], function(methodName, index) {
  67781. LazyWrapper.prototype[methodName] = function(n) {
  67782. var filtered = this.__filtered__;
  67783. if (filtered && !index) {
  67784. return new LazyWrapper(this);
  67785. }
  67786. n = n == null ? 1 : nativeMax(nativeFloor(n) || 0, 0);
  67787. var result = this.clone();
  67788. if (filtered) {
  67789. result.__takeCount__ = nativeMin(result.__takeCount__, n);
  67790. } else {
  67791. result.__views__.push({ 'size': n, 'type': methodName + (result.__dir__ < 0 ? 'Right' : '') });
  67792. }
  67793. return result;
  67794. };
  67795. LazyWrapper.prototype[methodName + 'Right'] = function(n) {
  67796. return this.reverse()[methodName](n).reverse();
  67797. };
  67798. });
  67799. arrayEach(['filter', 'map', 'takeWhile'], function(methodName, index) {
  67800. var type = index + 1,
  67801. isFilter = type != LAZY_MAP_FLAG;
  67802. LazyWrapper.prototype[methodName] = function(iteratee, thisArg) {
  67803. var result = this.clone();
  67804. result.__iteratees__.push({ 'iteratee': getCallback(iteratee, thisArg, 1), 'type': type });
  67805. result.__filtered__ = result.__filtered__ || isFilter;
  67806. return result;
  67807. };
  67808. });
  67809. arrayEach(['first', 'last'], function(methodName, index) {
  67810. var takeName = 'take' + (index ? 'Right' : '');
  67811. LazyWrapper.prototype[methodName] = function() {
  67812. return this[takeName](1).value()[0];
  67813. };
  67814. });
  67815. arrayEach(['initial', 'rest'], function(methodName, index) {
  67816. var dropName = 'drop' + (index ? '' : 'Right');
  67817. LazyWrapper.prototype[methodName] = function() {
  67818. return this.__filtered__ ? new LazyWrapper(this) : this[dropName](1);
  67819. };
  67820. });
  67821. arrayEach(['pluck', 'where'], function(methodName, index) {
  67822. var operationName = index ? 'filter' : 'map',
  67823. createCallback = index ? baseMatches : property;
  67824. LazyWrapper.prototype[methodName] = function(value) {
  67825. return this[operationName](createCallback(value));
  67826. };
  67827. });
  67828. LazyWrapper.prototype.compact = function() {
  67829. return this.filter(identity);
  67830. };
  67831. LazyWrapper.prototype.reject = function(predicate, thisArg) {
  67832. predicate = getCallback(predicate, thisArg, 1);
  67833. return this.filter(function(value) {
  67834. return !predicate(value);
  67835. });
  67836. };
  67837. LazyWrapper.prototype.slice = function(start, end) {
  67838. start = start == null ? 0 : (+start || 0);
  67839. var result = this;
  67840. if (result.__filtered__ && (start > 0 || end < 0)) {
  67841. return new LazyWrapper(result);
  67842. }
  67843. if (start < 0) {
  67844. result = result.takeRight(-start);
  67845. } else if (start) {
  67846. result = result.drop(start);
  67847. }
  67848. if (end !== undefined) {
  67849. end = (+end || 0);
  67850. result = end < 0 ? result.dropRight(-end) : result.take(end - start);
  67851. }
  67852. return result;
  67853. };
  67854. LazyWrapper.prototype.takeRightWhile = function(predicate, thisArg) {
  67855. return this.reverse().takeWhile(predicate, thisArg).reverse();
  67856. };
  67857. LazyWrapper.prototype.toArray = function() {
  67858. return this.take(POSITIVE_INFINITY);
  67859. };
  67860. baseForOwn(LazyWrapper.prototype, function(func, methodName) {
  67861. var checkIteratee = /^(?:filter|map|reject)|While$/.test(methodName),
  67862. retUnwrapped = /^(?:first|last)$/.test(methodName),
  67863. lodashFunc = lodash[retUnwrapped ? ('take' + (methodName == 'last' ? 'Right' : '')) : methodName];
  67864. if (!lodashFunc) {
  67865. return;
  67866. }
  67867. lodash.prototype[methodName] = function() {
  67868. var args = retUnwrapped ? [1] : arguments,
  67869. chainAll = this.__chain__,
  67870. value = this.__wrapped__,
  67871. isHybrid = !!this.__actions__.length,
  67872. isLazy = value instanceof LazyWrapper,
  67873. iteratee = args[0],
  67874. useLazy = isLazy || isArray(value);
  67875. if (useLazy && checkIteratee && typeof iteratee == 'function' && iteratee.length != 1) {
  67876. isLazy = useLazy = false;
  67877. }
  67878. var interceptor = function(value) {
  67879. return (retUnwrapped && chainAll)
  67880. ? lodashFunc(value, 1)[0]
  67881. : lodashFunc.apply(undefined, arrayPush([value], args));
  67882. };
  67883. var action = { 'func': thru, 'args': [interceptor], 'thisArg': undefined },
  67884. onlyLazy = isLazy && !isHybrid;
  67885. if (retUnwrapped && !chainAll) {
  67886. if (onlyLazy) {
  67887. value = value.clone();
  67888. value.__actions__.push(action);
  67889. return func.call(value);
  67890. }
  67891. return lodashFunc.call(undefined, this.value())[0];
  67892. }
  67893. if (!retUnwrapped && useLazy) {
  67894. value = onlyLazy ? value : new LazyWrapper(this);
  67895. var result = func.apply(value, args);
  67896. result.__actions__.push(action);
  67897. return new LodashWrapper(result, chainAll);
  67898. }
  67899. return this.thru(interceptor);
  67900. };
  67901. });
  67902. arrayEach(['join', 'pop', 'push', 'replace', 'shift', 'sort', 'splice', 'split', 'unshift'], function(methodName) {
  67903. var func = (/^(?:replace|split)$/.test(methodName) ? stringProto : arrayProto)[methodName],
  67904. chainName = /^(?:push|sort|unshift)$/.test(methodName) ? 'tap' : 'thru',
  67905. retUnwrapped = /^(?:join|pop|replace|shift)$/.test(methodName);
  67906. lodash.prototype[methodName] = function() {
  67907. var args = arguments;
  67908. if (retUnwrapped && !this.__chain__) {
  67909. return func.apply(this.value(), args);
  67910. }
  67911. return this[chainName](function(value) {
  67912. return func.apply(value, args);
  67913. });
  67914. };
  67915. });
  67916. baseForOwn(LazyWrapper.prototype, function(func, methodName) {
  67917. var lodashFunc = lodash[methodName];
  67918. if (lodashFunc) {
  67919. var key = lodashFunc.name,
  67920. names = realNames[key] || (realNames[key] = []);
  67921. names.push({ 'name': methodName, 'func': lodashFunc });
  67922. }
  67923. });
  67924. realNames[createHybridWrapper(undefined, BIND_KEY_FLAG).name] = [{ 'name': 'wrapper', 'func': undefined }];
  67925. LazyWrapper.prototype.clone = lazyClone;
  67926. LazyWrapper.prototype.reverse = lazyReverse;
  67927. LazyWrapper.prototype.value = lazyValue;
  67928. lodash.prototype.chain = wrapperChain;
  67929. lodash.prototype.commit = wrapperCommit;
  67930. lodash.prototype.concat = wrapperConcat;
  67931. lodash.prototype.plant = wrapperPlant;
  67932. lodash.prototype.reverse = wrapperReverse;
  67933. lodash.prototype.toString = wrapperToString;
  67934. lodash.prototype.run = lodash.prototype.toJSON = lodash.prototype.valueOf = lodash.prototype.value = wrapperValue;
  67935. lodash.prototype.collect = lodash.prototype.map;
  67936. lodash.prototype.head = lodash.prototype.first;
  67937. lodash.prototype.select = lodash.prototype.filter;
  67938. lodash.prototype.tail = lodash.prototype.rest;
  67939. return lodash;
  67940. }
  67941. var _ = runInContext();
  67942. if (typeof define == 'function' && typeof define.amd == 'object' && define.amd) {
  67943. root._ = _;
  67944. ace.define(function() {
  67945. return _;
  67946. });
  67947. }
  67948. else if (freeExports && freeModule) {
  67949. if (moduleExports) {
  67950. (freeModule.exports = _)._ = _;
  67951. }
  67952. else {
  67953. freeExports._ = _;
  67954. }
  67955. }
  67956. else {
  67957. root._ = _;
  67958. }
  67959. }.call(this));
  67960. }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
  67961. },{}]},{},["/node_modules/xqlint/lib/xqlint.js"]);
  67962. });
  67963. ace.define("ace/mode/xquery_worker",[], function(require, exports, module) {
  67964. "use strict";
  67965. var oop = require("../lib/oop");
  67966. var Mirror = require("../worker/mirror").Mirror;
  67967. var XQLintLib = require("./xquery/xqlint");
  67968. var XQLint = XQLintLib.XQLint;
  67969. var getModuleResolverFromModules = function(modules){
  67970. return function(uri){
  67971. var index = modules;
  67972. var mod = index[uri];
  67973. var variables = {};
  67974. var functions = {};
  67975. mod.functions.forEach(function(fn){
  67976. functions[uri + '#' + fn.name + '#' + fn.arity] = {
  67977. params: []
  67978. };
  67979. fn.parameters.forEach(function(param){
  67980. functions[uri + '#' + fn.name + '#' + fn.arity].params.push('$' + param.name);
  67981. });
  67982. });
  67983. mod.variables.forEach(function(variable){
  67984. var name = variable.name.substring(variable.name.indexOf(':') + 1);
  67985. variables[uri + '#' + name] = { type: 'VarDecl', annotations: [] };
  67986. });
  67987. return {
  67988. variables: variables,
  67989. functions: functions
  67990. };
  67991. };
  67992. };
  67993. var XQueryWorker = exports.XQueryWorker = function(sender) {
  67994. Mirror.call(this, sender);
  67995. this.setTimeout(200);
  67996. var that = this;
  67997. this.sender.on("complete", function(e){
  67998. if(that.xqlint) {
  67999. var pos = { line: e.data.pos.row, col: e.data.pos.column };
  68000. var proposals = that.xqlint.getCompletions(pos);
  68001. that.sender.emit("complete", proposals);
  68002. }
  68003. });
  68004. this.sender.on("setAvailableModuleNamespaces", function(e){
  68005. that.availableModuleNamespaces = e.data;
  68006. });
  68007. this.sender.on("setFileName", function(e){
  68008. that.fileName = e.data;
  68009. });
  68010. this.sender.on("setModuleResolver", function(e){
  68011. that.moduleResolver = getModuleResolverFromModules(e.data);
  68012. });
  68013. };
  68014. oop.inherits(XQueryWorker, Mirror);
  68015. (function() {
  68016. this.onUpdate = function() {
  68017. this.sender.emit("start");
  68018. var value = this.doc.getValue();
  68019. var sctx = XQLintLib.createStaticContext();
  68020. if(this.moduleResolver) {
  68021. sctx.setModuleResolver(this.moduleResolver);
  68022. }
  68023. if(this.availableModuleNamespaces) {
  68024. sctx.availableModuleNamespaces = this.availableModuleNamespaces;
  68025. }
  68026. var opts = {
  68027. styleCheck: this.styleCheck,
  68028. staticContext: sctx,
  68029. fileName: this.fileName
  68030. };
  68031. this.xqlint = new XQLint(value, opts);
  68032. this.sender.emit("markers", this.xqlint.getMarkers());
  68033. };
  68034. }).call(XQueryWorker.prototype);
  68035. });
  68036. ace.define("ace/lib/es5-shim",[], function(require, exports, module) {
  68037. //
  68038. //
  68039. function Empty() {}
  68040. if (!Function.prototype.bind) {
  68041. Function.prototype.bind = function bind(that) { // .length is 1
  68042. var target = this;
  68043. if (typeof target != "function") {
  68044. throw new TypeError("Function.prototype.bind called on incompatible " + target);
  68045. }
  68046. var args = slice.call(arguments, 1); // for normal call
  68047. var bound = function () {
  68048. if (this instanceof bound) {
  68049. var result = target.apply(
  68050. this,
  68051. args.concat(slice.call(arguments))
  68052. );
  68053. if (Object(result) === result) {
  68054. return result;
  68055. }
  68056. return this;
  68057. } else {
  68058. return target.apply(
  68059. that,
  68060. args.concat(slice.call(arguments))
  68061. );
  68062. }
  68063. };
  68064. if(target.prototype) {
  68065. Empty.prototype = target.prototype;
  68066. bound.prototype = new Empty();
  68067. Empty.prototype = null;
  68068. }
  68069. //
  68070. return bound;
  68071. };
  68072. }
  68073. var call = Function.prototype.call;
  68074. var prototypeOfArray = Array.prototype;
  68075. var prototypeOfObject = Object.prototype;
  68076. var slice = prototypeOfArray.slice;
  68077. var _toString = call.bind(prototypeOfObject.toString);
  68078. var owns = call.bind(prototypeOfObject.hasOwnProperty);
  68079. var defineGetter;
  68080. var defineSetter;
  68081. var lookupGetter;
  68082. var lookupSetter;
  68083. var supportsAccessors;
  68084. if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) {
  68085. defineGetter = call.bind(prototypeOfObject.__defineGetter__);
  68086. defineSetter = call.bind(prototypeOfObject.__defineSetter__);
  68087. lookupGetter = call.bind(prototypeOfObject.__lookupGetter__);
  68088. lookupSetter = call.bind(prototypeOfObject.__lookupSetter__);
  68089. }
  68090. //
  68091. //
  68092. if ([1,2].splice(0).length != 2) {
  68093. if(function() { // test IE < 9 to splice bug - see issue #138
  68094. function makeArray(l) {
  68095. var a = new Array(l+2);
  68096. a[0] = a[1] = 0;
  68097. return a;
  68098. }
  68099. var array = [], lengthBefore;
  68100. array.splice.apply(array, makeArray(20));
  68101. array.splice.apply(array, makeArray(26));
  68102. lengthBefore = array.length; //46
  68103. array.splice(5, 0, "XXX"); // add one element
  68104. lengthBefore + 1 == array.length
  68105. if (lengthBefore + 1 == array.length) {
  68106. return true;// has right splice implementation without bugs
  68107. }
  68108. }()) {//IE 6/7
  68109. var array_splice = Array.prototype.splice;
  68110. Array.prototype.splice = function(start, deleteCount) {
  68111. if (!arguments.length) {
  68112. return [];
  68113. } else {
  68114. return array_splice.apply(this, [
  68115. start === void 0 ? 0 : start,
  68116. deleteCount === void 0 ? (this.length - start) : deleteCount
  68117. ].concat(slice.call(arguments, 2)))
  68118. }
  68119. };
  68120. } else {//IE8
  68121. Array.prototype.splice = function(pos, removeCount){
  68122. var length = this.length;
  68123. if (pos > 0) {
  68124. if (pos > length)
  68125. pos = length;
  68126. } else if (pos == void 0) {
  68127. pos = 0;
  68128. } else if (pos < 0) {
  68129. pos = Math.max(length + pos, 0);
  68130. }
  68131. if (!(pos+removeCount < length))
  68132. removeCount = length - pos;
  68133. var removed = this.slice(pos, pos+removeCount);
  68134. var insert = slice.call(arguments, 2);
  68135. var add = insert.length;
  68136. if (pos === length) {
  68137. if (add) {
  68138. this.push.apply(this, insert);
  68139. }
  68140. } else {
  68141. var remove = Math.min(removeCount, length - pos);
  68142. var tailOldPos = pos + remove;
  68143. var tailNewPos = tailOldPos + add - remove;
  68144. var tailCount = length - tailOldPos;
  68145. var lengthAfterRemove = length - remove;
  68146. if (tailNewPos < tailOldPos) { // case A
  68147. for (var i = 0; i < tailCount; ++i) {
  68148. this[tailNewPos+i] = this[tailOldPos+i];
  68149. }
  68150. } else if (tailNewPos > tailOldPos) { // case B
  68151. for (i = tailCount; i--; ) {
  68152. this[tailNewPos+i] = this[tailOldPos+i];
  68153. }
  68154. } // else, add == remove (nothing to do)
  68155. if (add && pos === lengthAfterRemove) {
  68156. this.length = lengthAfterRemove; // truncate array
  68157. this.push.apply(this, insert);
  68158. } else {
  68159. this.length = lengthAfterRemove + add; // reserves space
  68160. for (i = 0; i < add; ++i) {
  68161. this[pos+i] = insert[i];
  68162. }
  68163. }
  68164. }
  68165. return removed;
  68166. };
  68167. }
  68168. }
  68169. if (!Array.isArray) {
  68170. Array.isArray = function isArray(obj) {
  68171. return _toString(obj) == "[object Array]";
  68172. };
  68173. }
  68174. var boxedString = Object("a"),
  68175. splitString = boxedString[0] != "a" || !(0 in boxedString);
  68176. if (!Array.prototype.forEach) {
  68177. Array.prototype.forEach = function forEach(fun /*, thisp*/) {
  68178. var object = toObject(this),
  68179. self = splitString && _toString(this) == "[object String]" ?
  68180. this.split("") :
  68181. object,
  68182. thisp = arguments[1],
  68183. i = -1,
  68184. length = self.length >>> 0;
  68185. if (_toString(fun) != "[object Function]") {
  68186. throw new TypeError(); // TODO message
  68187. }
  68188. while (++i < length) {
  68189. if (i in self) {
  68190. fun.call(thisp, self[i], i, object);
  68191. }
  68192. }
  68193. };
  68194. }
  68195. if (!Array.prototype.map) {
  68196. Array.prototype.map = function map(fun /*, thisp*/) {
  68197. var object = toObject(this),
  68198. self = splitString && _toString(this) == "[object String]" ?
  68199. this.split("") :
  68200. object,
  68201. length = self.length >>> 0,
  68202. result = Array(length),
  68203. thisp = arguments[1];
  68204. if (_toString(fun) != "[object Function]") {
  68205. throw new TypeError(fun + " is not a function");
  68206. }
  68207. for (var i = 0; i < length; i++) {
  68208. if (i in self)
  68209. result[i] = fun.call(thisp, self[i], i, object);
  68210. }
  68211. return result;
  68212. };
  68213. }
  68214. if (!Array.prototype.filter) {
  68215. Array.prototype.filter = function filter(fun /*, thisp */) {
  68216. var object = toObject(this),
  68217. self = splitString && _toString(this) == "[object String]" ?
  68218. this.split("") :
  68219. object,
  68220. length = self.length >>> 0,
  68221. result = [],
  68222. value,
  68223. thisp = arguments[1];
  68224. if (_toString(fun) != "[object Function]") {
  68225. throw new TypeError(fun + " is not a function");
  68226. }
  68227. for (var i = 0; i < length; i++) {
  68228. if (i in self) {
  68229. value = self[i];
  68230. if (fun.call(thisp, value, i, object)) {
  68231. result.push(value);
  68232. }
  68233. }
  68234. }
  68235. return result;
  68236. };
  68237. }
  68238. if (!Array.prototype.every) {
  68239. Array.prototype.every = function every(fun /*, thisp */) {
  68240. var object = toObject(this),
  68241. self = splitString && _toString(this) == "[object String]" ?
  68242. this.split("") :
  68243. object,
  68244. length = self.length >>> 0,
  68245. thisp = arguments[1];
  68246. if (_toString(fun) != "[object Function]") {
  68247. throw new TypeError(fun + " is not a function");
  68248. }
  68249. for (var i = 0; i < length; i++) {
  68250. if (i in self && !fun.call(thisp, self[i], i, object)) {
  68251. return false;
  68252. }
  68253. }
  68254. return true;
  68255. };
  68256. }
  68257. if (!Array.prototype.some) {
  68258. Array.prototype.some = function some(fun /*, thisp */) {
  68259. var object = toObject(this),
  68260. self = splitString && _toString(this) == "[object String]" ?
  68261. this.split("") :
  68262. object,
  68263. length = self.length >>> 0,
  68264. thisp = arguments[1];
  68265. if (_toString(fun) != "[object Function]") {
  68266. throw new TypeError(fun + " is not a function");
  68267. }
  68268. for (var i = 0; i < length; i++) {
  68269. if (i in self && fun.call(thisp, self[i], i, object)) {
  68270. return true;
  68271. }
  68272. }
  68273. return false;
  68274. };
  68275. }
  68276. if (!Array.prototype.reduce) {
  68277. Array.prototype.reduce = function reduce(fun /*, initial*/) {
  68278. var object = toObject(this),
  68279. self = splitString && _toString(this) == "[object String]" ?
  68280. this.split("") :
  68281. object,
  68282. length = self.length >>> 0;
  68283. if (_toString(fun) != "[object Function]") {
  68284. throw new TypeError(fun + " is not a function");
  68285. }
  68286. if (!length && arguments.length == 1) {
  68287. throw new TypeError("reduce of empty array with no initial value");
  68288. }
  68289. var i = 0;
  68290. var result;
  68291. if (arguments.length >= 2) {
  68292. result = arguments[1];
  68293. } else {
  68294. do {
  68295. if (i in self) {
  68296. result = self[i++];
  68297. break;
  68298. }
  68299. if (++i >= length) {
  68300. throw new TypeError("reduce of empty array with no initial value");
  68301. }
  68302. } while (true);
  68303. }
  68304. for (; i < length; i++) {
  68305. if (i in self) {
  68306. result = fun.call(void 0, result, self[i], i, object);
  68307. }
  68308. }
  68309. return result;
  68310. };
  68311. }
  68312. if (!Array.prototype.reduceRight) {
  68313. Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) {
  68314. var object = toObject(this),
  68315. self = splitString && _toString(this) == "[object String]" ?
  68316. this.split("") :
  68317. object,
  68318. length = self.length >>> 0;
  68319. if (_toString(fun) != "[object Function]") {
  68320. throw new TypeError(fun + " is not a function");
  68321. }
  68322. if (!length && arguments.length == 1) {
  68323. throw new TypeError("reduceRight of empty array with no initial value");
  68324. }
  68325. var result, i = length - 1;
  68326. if (arguments.length >= 2) {
  68327. result = arguments[1];
  68328. } else {
  68329. do {
  68330. if (i in self) {
  68331. result = self[i--];
  68332. break;
  68333. }
  68334. if (--i < 0) {
  68335. throw new TypeError("reduceRight of empty array with no initial value");
  68336. }
  68337. } while (true);
  68338. }
  68339. do {
  68340. if (i in this) {
  68341. result = fun.call(void 0, result, self[i], i, object);
  68342. }
  68343. } while (i--);
  68344. return result;
  68345. };
  68346. }
  68347. if (!Array.prototype.indexOf || ([0, 1].indexOf(1, 2) != -1)) {
  68348. Array.prototype.indexOf = function indexOf(sought /*, fromIndex */ ) {
  68349. var self = splitString && _toString(this) == "[object String]" ?
  68350. this.split("") :
  68351. toObject(this),
  68352. length = self.length >>> 0;
  68353. if (!length) {
  68354. return -1;
  68355. }
  68356. var i = 0;
  68357. if (arguments.length > 1) {
  68358. i = toInteger(arguments[1]);
  68359. }
  68360. i = i >= 0 ? i : Math.max(0, length + i);
  68361. for (; i < length; i++) {
  68362. if (i in self && self[i] === sought) {
  68363. return i;
  68364. }
  68365. }
  68366. return -1;
  68367. };
  68368. }
  68369. if (!Array.prototype.lastIndexOf || ([0, 1].lastIndexOf(0, -3) != -1)) {
  68370. Array.prototype.lastIndexOf = function lastIndexOf(sought /*, fromIndex */) {
  68371. var self = splitString && _toString(this) == "[object String]" ?
  68372. this.split("") :
  68373. toObject(this),
  68374. length = self.length >>> 0;
  68375. if (!length) {
  68376. return -1;
  68377. }
  68378. var i = length - 1;
  68379. if (arguments.length > 1) {
  68380. i = Math.min(i, toInteger(arguments[1]));
  68381. }
  68382. i = i >= 0 ? i : length - Math.abs(i);
  68383. for (; i >= 0; i--) {
  68384. if (i in self && sought === self[i]) {
  68385. return i;
  68386. }
  68387. }
  68388. return -1;
  68389. };
  68390. }
  68391. //
  68392. //
  68393. if (!Object.getPrototypeOf) {
  68394. Object.getPrototypeOf = function getPrototypeOf(object) {
  68395. return object.__proto__ || (
  68396. object.constructor ?
  68397. object.constructor.prototype :
  68398. prototypeOfObject
  68399. );
  68400. };
  68401. }
  68402. if (!Object.getOwnPropertyDescriptor) {
  68403. var ERR_NON_OBJECT = "Object.getOwnPropertyDescriptor called on a " +
  68404. "non-object: ";
  68405. Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) {
  68406. if ((typeof object != "object" && typeof object != "function") || object === null)
  68407. throw new TypeError(ERR_NON_OBJECT + object);
  68408. if (!owns(object, property))
  68409. return;
  68410. var descriptor, getter, setter;
  68411. descriptor = { enumerable: true, configurable: true };
  68412. if (supportsAccessors) {
  68413. var prototype = object.__proto__;
  68414. object.__proto__ = prototypeOfObject;
  68415. var getter = lookupGetter(object, property);
  68416. var setter = lookupSetter(object, property);
  68417. object.__proto__ = prototype;
  68418. if (getter || setter) {
  68419. if (getter) descriptor.get = getter;
  68420. if (setter) descriptor.set = setter;
  68421. return descriptor;
  68422. }
  68423. }
  68424. descriptor.value = object[property];
  68425. return descriptor;
  68426. };
  68427. }
  68428. if (!Object.getOwnPropertyNames) {
  68429. Object.getOwnPropertyNames = function getOwnPropertyNames(object) {
  68430. return Object.keys(object);
  68431. };
  68432. }
  68433. if (!Object.create) {
  68434. var createEmpty;
  68435. if (Object.prototype.__proto__ === null) {
  68436. createEmpty = function () {
  68437. return { "__proto__": null };
  68438. };
  68439. } else {
  68440. createEmpty = function () {
  68441. var empty = {};
  68442. for (var i in empty)
  68443. empty[i] = null;
  68444. empty.constructor =
  68445. empty.hasOwnProperty =
  68446. empty.propertyIsEnumerable =
  68447. empty.isPrototypeOf =
  68448. empty.toLocaleString =
  68449. empty.toString =
  68450. empty.valueOf =
  68451. empty.__proto__ = null;
  68452. return empty;
  68453. }
  68454. }
  68455. Object.create = function create(prototype, properties) {
  68456. var object;
  68457. if (prototype === null) {
  68458. object = createEmpty();
  68459. } else {
  68460. if (typeof prototype != "object")
  68461. throw new TypeError("typeof prototype["+(typeof prototype)+"] != 'object'");
  68462. var Type = function () {};
  68463. Type.prototype = prototype;
  68464. object = new Type();
  68465. object.__proto__ = prototype;
  68466. }
  68467. if (properties !== void 0)
  68468. Object.defineProperties(object, properties);
  68469. return object;
  68470. };
  68471. }
  68472. function doesDefinePropertyWork(object) {
  68473. try {
  68474. Object.defineProperty(object, "sentinel", {});
  68475. return "sentinel" in object;
  68476. } catch (exception) {
  68477. }
  68478. }
  68479. if (Object.defineProperty) {
  68480. var definePropertyWorksOnObject = doesDefinePropertyWork({});
  68481. var definePropertyWorksOnDom = typeof document == "undefined" ||
  68482. doesDefinePropertyWork(document.createElement("div"));
  68483. if (!definePropertyWorksOnObject || !definePropertyWorksOnDom) {
  68484. var definePropertyFallback = Object.defineProperty;
  68485. }
  68486. }
  68487. if (!Object.defineProperty || definePropertyFallback) {
  68488. var ERR_NON_OBJECT_DESCRIPTOR = "Property description must be an object: ";
  68489. var ERR_NON_OBJECT_TARGET = "Object.defineProperty called on non-object: "
  68490. var ERR_ACCESSORS_NOT_SUPPORTED = "getters & setters can not be defined " +
  68491. "on this javascript engine";
  68492. Object.defineProperty = function defineProperty(object, property, descriptor) {
  68493. if ((typeof object != "object" && typeof object != "function") || object === null)
  68494. throw new TypeError(ERR_NON_OBJECT_TARGET + object);
  68495. if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null)
  68496. throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor);
  68497. if (definePropertyFallback) {
  68498. try {
  68499. return definePropertyFallback.call(Object, object, property, descriptor);
  68500. } catch (exception) {
  68501. }
  68502. }
  68503. if (owns(descriptor, "value")) {
  68504. if (supportsAccessors && (lookupGetter(object, property) ||
  68505. lookupSetter(object, property)))
  68506. {
  68507. var prototype = object.__proto__;
  68508. object.__proto__ = prototypeOfObject;
  68509. delete object[property];
  68510. object[property] = descriptor.value;
  68511. object.__proto__ = prototype;
  68512. } else {
  68513. object[property] = descriptor.value;
  68514. }
  68515. } else {
  68516. if (!supportsAccessors)
  68517. throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED);
  68518. if (owns(descriptor, "get"))
  68519. defineGetter(object, property, descriptor.get);
  68520. if (owns(descriptor, "set"))
  68521. defineSetter(object, property, descriptor.set);
  68522. }
  68523. return object;
  68524. };
  68525. }
  68526. if (!Object.defineProperties) {
  68527. Object.defineProperties = function defineProperties(object, properties) {
  68528. for (var property in properties) {
  68529. if (owns(properties, property))
  68530. Object.defineProperty(object, property, properties[property]);
  68531. }
  68532. return object;
  68533. };
  68534. }
  68535. if (!Object.seal) {
  68536. Object.seal = function seal(object) {
  68537. return object;
  68538. };
  68539. }
  68540. if (!Object.freeze) {
  68541. Object.freeze = function freeze(object) {
  68542. return object;
  68543. };
  68544. }
  68545. try {
  68546. Object.freeze(function () {});
  68547. } catch (exception) {
  68548. Object.freeze = (function freeze(freezeObject) {
  68549. return function freeze(object) {
  68550. if (typeof object == "function") {
  68551. return object;
  68552. } else {
  68553. return freezeObject(object);
  68554. }
  68555. };
  68556. })(Object.freeze);
  68557. }
  68558. if (!Object.preventExtensions) {
  68559. Object.preventExtensions = function preventExtensions(object) {
  68560. return object;
  68561. };
  68562. }
  68563. if (!Object.isSealed) {
  68564. Object.isSealed = function isSealed(object) {
  68565. return false;
  68566. };
  68567. }
  68568. if (!Object.isFrozen) {
  68569. Object.isFrozen = function isFrozen(object) {
  68570. return false;
  68571. };
  68572. }
  68573. if (!Object.isExtensible) {
  68574. Object.isExtensible = function isExtensible(object) {
  68575. if (Object(object) === object) {
  68576. throw new TypeError(); // TODO message
  68577. }
  68578. var name = '';
  68579. while (owns(object, name)) {
  68580. name += '?';
  68581. }
  68582. object[name] = true;
  68583. var returnValue = owns(object, name);
  68584. delete object[name];
  68585. return returnValue;
  68586. };
  68587. }
  68588. if (!Object.keys) {
  68589. var hasDontEnumBug = true,
  68590. dontEnums = [
  68591. "toString",
  68592. "toLocaleString",
  68593. "valueOf",
  68594. "hasOwnProperty",
  68595. "isPrototypeOf",
  68596. "propertyIsEnumerable",
  68597. "constructor"
  68598. ],
  68599. dontEnumsLength = dontEnums.length;
  68600. for (var key in {"toString": null}) {
  68601. hasDontEnumBug = false;
  68602. }
  68603. Object.keys = function keys(object) {
  68604. if (
  68605. (typeof object != "object" && typeof object != "function") ||
  68606. object === null
  68607. ) {
  68608. throw new TypeError("Object.keys called on a non-object");
  68609. }
  68610. var keys = [];
  68611. for (var name in object) {
  68612. if (owns(object, name)) {
  68613. keys.push(name);
  68614. }
  68615. }
  68616. if (hasDontEnumBug) {
  68617. for (var i = 0, ii = dontEnumsLength; i < ii; i++) {
  68618. var dontEnum = dontEnums[i];
  68619. if (owns(object, dontEnum)) {
  68620. keys.push(dontEnum);
  68621. }
  68622. }
  68623. }
  68624. return keys;
  68625. };
  68626. }
  68627. //
  68628. //
  68629. if (!Date.now) {
  68630. Date.now = function now() {
  68631. return new Date().getTime();
  68632. };
  68633. }
  68634. //
  68635. //
  68636. var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" +
  68637. "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" +
  68638. "\u2029\uFEFF";
  68639. if (!String.prototype.trim || ws.trim()) {
  68640. ws = "[" + ws + "]";
  68641. var trimBeginRegexp = new RegExp("^" + ws + ws + "*"),
  68642. trimEndRegexp = new RegExp(ws + ws + "*$");
  68643. String.prototype.trim = function trim() {
  68644. return String(this).replace(trimBeginRegexp, "").replace(trimEndRegexp, "");
  68645. };
  68646. }
  68647. //
  68648. //
  68649. function toInteger(n) {
  68650. n = +n;
  68651. if (n !== n) { // isNaN
  68652. n = 0;
  68653. } else if (n !== 0 && n !== (1/0) && n !== -(1/0)) {
  68654. n = (n > 0 || -1) * Math.floor(Math.abs(n));
  68655. }
  68656. return n;
  68657. }
  68658. function isPrimitive(input) {
  68659. var type = typeof input;
  68660. return (
  68661. input === null ||
  68662. type === "undefined" ||
  68663. type === "boolean" ||
  68664. type === "number" ||
  68665. type === "string"
  68666. );
  68667. }
  68668. function toPrimitive(input) {
  68669. var val, valueOf, toString;
  68670. if (isPrimitive(input)) {
  68671. return input;
  68672. }
  68673. valueOf = input.valueOf;
  68674. if (typeof valueOf === "function") {
  68675. val = valueOf.call(input);
  68676. if (isPrimitive(val)) {
  68677. return val;
  68678. }
  68679. }
  68680. toString = input.toString;
  68681. if (typeof toString === "function") {
  68682. val = toString.call(input);
  68683. if (isPrimitive(val)) {
  68684. return val;
  68685. }
  68686. }
  68687. throw new TypeError();
  68688. }
  68689. var toObject = function (o) {
  68690. if (o == null) { // this matches both null and undefined
  68691. throw new TypeError("can't convert "+o+" to object");
  68692. }
  68693. return Object(o);
  68694. };
  68695. });