XQueryParser.js 2.2 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893268942689526896268972689826899269002690126902269032690426905269062690726908269092691026911269122691326914269152691626917269182691926920269212692226923269242692526926269272692826929269302693126932269332693426935269362693726938269392694026941269422694326944269452694626947269482694926950269512695226953269542695526956269572695826959269602696126962269632696426965269662696726968269692697026971269722697326974269752697626977269782697926980269812698226983269842698526986269872698826989269902699126992269932699426995269962699726998269992700027001270022700327004270052700627007270082700927010270112701227013270142701527016270172701827019270202702127022270232702427025270262702727028270292703027031270322703327034270352703627037270382703927040270412704227043270442704527046270472704827049270502705127052270532705427055270562705727058270592706027061270622706327064270652706627067270682706927070270712707227073270742707527076270772707827079270802708127082270832708427085270862708727088270892709027091270922709327094270952709627097270982709927100271012710227103271042710527106271072710827109271102711127112271132711427115271162711727118271192712027121271222712327124271252712627127271282712927130271312713227133271342713527136271372713827139271402714127142271432714427145271462714727148271492715027151271522715327154271552715627157271582715927160271612716227163271642716527166271672716827169271702717127172271732717427175271762717727178271792718027181271822718327184271852718627187271882718927190271912719227193271942719527196271972719827199272002720127202272032720427205272062720727208272092721027211272122721327214272152721627217272182721927220272212722227223272242722527226272272722827229272302723127232272332723427235272362723727238272392724027241272422724327244272452724627247272482724927250272512725227253272542725527256272572725827259272602726127262272632726427265272662726727268272692727027271272722727327274272752727627277272782727927280272812728227283272842728527286272872728827289272902729127292272932729427295272962729727298272992730027301273022730327304273052730627307273082730927310273112731227313273142731527316273172731827319273202732127322273232732427325273262732727328273292733027331273322733327334273352733627337273382733927340273412734227343273442734527346273472734827349273502735127352273532735427355273562735727358273592736027361273622736327364273652736627367273682736927370273712737227373273742737527376273772737827379273802738127382273832738427385273862738727388273892739027391273922739327394273952739627397273982739927400274012740227403274042740527406274072740827409274102741127412274132741427415274162741727418274192742027421274222742327424274252742627427274282742927430274312743227433274342743527436274372743827439274402744127442274432744427445274462744727448274492745027451274522745327454274552745627457274582745927460274612746227463274642746527466274672746827469274702747127472274732747427475274762747727478274792748027481274822748327484274852748627487274882748927490274912749227493274942749527496274972749827499275002750127502275032750427505275062750727508275092751027511275122751327514275152751627517275182751927520275212752227523275242752527526275272752827529275302753127532275332753427535275362753727538275392754027541275422754327544275452754627547275482754927550275512755227553275542755527556275572755827559275602756127562275632756427565275662756727568275692757027571275722757327574275752757627577275782757927580275812758227583275842758527586275872758827589275902759127592275932759427595275962759727598275992760027601276022760327604276052760627607276082760927610276112761227613276142761527616276172761827619276202762127622276232762427625276262762727628276292763027631276322763327634276352763627637276382763927640276412764227643276442764527646276472764827649276502765127652276532765427655276562765727658276592766027661276622766327664276652766627667276682766927670276712767227673276742767527676276772767827679276802768127682276832768427685276862768727688276892769027691276922769327694276952769627697276982769927700277012770227703277042770527706277072770827709277102771127712277132771427715277162771727718277192772027721277222772327724277252772627727277282772927730277312773227733277342773527736277372773827739277402774127742277432774427745277462774727748277492775027751277522775327754277552775627757277582775927760277612776227763277642776527766277672776827769277702777127772277732777427775277762777727778277792778027781277822778327784277852778627787277882778927790277912779227793277942779527796277972779827799278002780127802278032780427805278062780727808278092781027811278122781327814278152781627817278182781927820278212782227823278242782527826278272782827829278302783127832278332783427835278362783727838278392784027841278422784327844278452784627847278482784927850278512785227853278542785527856278572785827859278602786127862278632786427865278662786727868278692787027871278722787327874278752787627877278782787927880278812788227883278842788527886278872788827889278902789127892278932789427895278962789727898278992790027901279022790327904279052790627907279082790927910279112791227913279142791527916279172791827919279202792127922279232792427925279262792727928279292793027931279322793327934279352793627937279382793927940279412794227943279442794527946279472794827949279502795127952279532795427955279562795727958279592796027961279622796327964279652796627967279682796927970279712797227973279742797527976279772797827979279802798127982279832798427985279862798727988279892799027991279922799327994279952799627997279982799928000280012800228003280042800528006280072800828009280102801128012280132801428015280162801728018280192802028021280222802328024280252802628027280282802928030280312803228033280342803528036280372803828039280402804128042280432804428045280462804728048280492805028051280522805328054280552805628057280582805928060280612806228063280642806528066280672806828069280702807128072280732807428075280762807728078280792808028081280822808328084280852808628087280882808928090280912809228093280942809528096280972809828099281002810128102281032810428105281062810728108281092811028111281122811328114281152811628117281182811928120281212812228123281242812528126281272812828129281302813128132281332813428135281362813728138281392814028141281422814328144281452814628147281482814928150281512815228153281542815528156281572815828159281602816128162281632816428165281662816728168281692817028171281722817328174281752817628177281782817928180281812818228183281842818528186281872818828189281902819128192281932819428195281962819728198281992820028201282022820328204282052820628207282082820928210282112821228213282142821528216282172821828219282202822128222282232822428225282262822728228282292823028231282322823328234282352823628237282382823928240282412824228243282442824528246282472824828249282502825128252282532825428255282562825728258282592826028261282622826328264282652826628267282682826928270282712827228273282742827528276282772827828279282802828128282282832828428285282862828728288282892829028291282922829328294282952829628297282982829928300283012830228303283042830528306283072830828309283102831128312283132831428315283162831728318283192832028321283222832328324283252832628327283282832928330283312833228333283342833528336283372833828339283402834128342283432834428345283462834728348283492835028351283522835328354283552835628357283582835928360283612836228363283642836528366283672836828369283702837128372283732837428375283762837728378283792838028381283822838328384283852838628387283882838928390283912839228393283942839528396283972839828399284002840128402284032840428405284062840728408284092841028411284122841328414284152841628417284182841928420284212842228423284242842528426284272842828429284302843128432284332843428435284362843728438284392844028441284422844328444284452844628447284482844928450284512845228453284542845528456284572845828459284602846128462284632846428465284662846728468284692847028471284722847328474284752847628477284782847928480284812848228483284842848528486284872848828489284902849128492284932849428495284962849728498284992850028501285022850328504285052850628507285082850928510285112851228513285142851528516285172851828519285202852128522285232852428525285262852728528285292853028531285322853328534285352853628537285382853928540285412854228543285442854528546285472854828549285502855128552285532855428555285562855728558285592856028561285622856328564285652856628567285682856928570285712857228573285742857528576285772857828579285802858128582285832858428585285862858728588285892859028591285922859328594285952859628597285982859928600286012860228603286042860528606286072860828609286102861128612286132861428615286162861728618286192862028621286222862328624286252862628627286282862928630286312863228633286342863528636286372863828639286402864128642286432864428645286462864728648286492865028651286522865328654286552865628657286582865928660286612866228663286642866528666286672866828669286702867128672286732867428675286762867728678286792868028681286822868328684286852868628687286882868928690286912869228693286942869528696286972869828699287002870128702287032870428705287062870728708287092871028711287122871328714287152871628717287182871928720287212872228723287242872528726287272872828729287302873128732287332873428735287362873728738287392874028741287422874328744287452874628747287482874928750287512875228753287542875528756287572875828759287602876128762287632876428765287662876728768287692877028771287722877328774287752877628777287782877928780287812878228783287842878528786287872878828789287902879128792287932879428795287962879728798287992880028801288022880328804288052880628807288082880928810288112881228813288142881528816288172881828819288202882128822288232882428825288262882728828288292883028831288322883328834288352883628837288382883928840288412884228843288442884528846288472884828849288502885128852288532885428855288562885728858288592886028861288622886328864288652886628867288682886928870288712887228873288742887528876288772887828879288802888128882288832888428885288862888728888288892889028891288922889328894288952889628897288982889928900289012890228903289042890528906289072890828909289102891128912289132891428915289162891728918289192892028921289222892328924289252892628927289282892928930289312893228933289342893528936289372893828939289402894128942289432894428945289462894728948289492895028951289522895328954289552895628957289582895928960289612896228963289642896528966289672896828969289702897128972289732897428975289762897728978289792898028981289822898328984289852898628987289882898928990289912899228993289942899528996289972899828999290002900129002290032900429005290062900729008290092901029011290122901329014290152901629017290182901929020290212902229023290242902529026290272902829029290302903129032290332903429035290362903729038290392904029041290422904329044290452904629047290482904929050290512905229053290542905529056290572905829059290602906129062290632906429065290662906729068290692907029071290722907329074290752907629077290782907929080290812908229083290842908529086290872908829089290902909129092290932909429095290962909729098290992910029101291022910329104291052910629107291082910929110291112911229113291142911529116291172911829119291202912129122291232912429125291262912729128291292913029131291322913329134291352913629137291382913929140291412914229143291442914529146291472914829149291502915129152291532915429155291562915729158291592916029161291622916329164291652916629167291682916929170291712917229173291742917529176291772917829179291802918129182291832918429185291862918729188291892919029191291922919329194291952919629197291982919929200292012920229203292042920529206292072920829209292102921129212292132921429215292162921729218292192922029221292222922329224292252922629227292282922929230292312923229233292342923529236292372923829239292402924129242292432924429245292462924729248292492925029251292522925329254292552925629257292582925929260292612926229263292642926529266292672926829269292702927129272292732927429275292762927729278292792928029281292822928329284292852928629287292882928929290292912929229293292942929529296292972929829299293002930129302293032930429305293062930729308293092931029311293122931329314293152931629317293182931929320293212932229323293242932529326293272932829329293302933129332293332933429335293362933729338293392934029341293422934329344293452934629347293482934929350293512935229353293542935529356293572935829359293602936129362293632936429365293662936729368293692937029371293722937329374293752937629377293782937929380293812938229383293842938529386293872938829389293902939129392293932939429395293962939729398293992940029401294022940329404294052940629407294082940929410294112941229413294142941529416294172941829419294202942129422294232942429425294262942729428294292943029431294322943329434294352943629437294382943929440294412944229443294442944529446294472944829449294502945129452294532945429455294562945729458294592946029461294622946329464294652946629467294682946929470294712947229473294742947529476294772947829479294802948129482294832948429485294862948729488294892949029491294922949329494294952949629497294982949929500295012950229503295042950529506295072950829509295102951129512295132951429515295162951729518295192952029521295222952329524295252952629527295282952929530295312953229533295342953529536295372953829539295402954129542295432954429545295462954729548295492955029551295522955329554295552955629557295582955929560295612956229563295642956529566295672956829569295702957129572295732957429575295762957729578295792958029581295822958329584295852958629587295882958929590295912959229593295942959529596295972959829599296002960129602296032960429605296062960729608296092961029611296122961329614296152961629617296182961929620296212962229623296242962529626296272962829629296302963129632296332963429635296362963729638296392964029641296422964329644296452964629647296482964929650296512965229653296542965529656296572965829659296602966129662296632966429665296662966729668296692967029671296722967329674296752967629677296782967929680296812968229683296842968529686296872968829689296902969129692296932969429695296962969729698296992970029701297022970329704297052970629707297082970929710297112971229713297142971529716297172971829719297202972129722297232972429725297262972729728297292973029731297322973329734297352973629737297382973929740297412974229743297442974529746297472974829749297502975129752297532975429755297562975729758297592976029761297622976329764297652976629767297682976929770297712977229773297742977529776297772977829779297802978129782297832978429785297862978729788297892979029791297922979329794297952979629797297982979929800298012980229803298042980529806298072980829809298102981129812298132981429815298162981729818298192982029821298222982329824298252982629827298282982929830298312983229833298342983529836298372983829839298402984129842298432984429845298462984729848298492985029851298522985329854298552985629857298582985929860298612986229863298642986529866298672986829869298702987129872298732987429875298762987729878298792988029881298822988329884298852988629887298882988929890298912989229893298942989529896298972989829899299002990129902299032990429905299062990729908299092991029911299122991329914299152991629917299182991929920299212992229923299242992529926299272992829929299302993129932299332993429935299362993729938299392994029941299422994329944299452994629947299482994929950299512995229953299542995529956299572995829959299602996129962299632996429965299662996729968299692997029971299722997329974299752997629977299782997929980299812998229983299842998529986299872998829989299902999129992299932999429995299962999729998299993000030001300023000330004300053000630007300083000930010300113001230013300143001530016300173001830019300203002130022300233002430025300263002730028300293003030031300323003330034300353003630037300383003930040300413004230043300443004530046300473004830049300503005130052300533005430055300563005730058300593006030061300623006330064300653006630067300683006930070300713007230073300743007530076300773007830079300803008130082300833008430085300863008730088300893009030091300923009330094300953009630097300983009930100301013010230103301043010530106301073010830109301103011130112301133011430115301163011730118301193012030121301223012330124301253012630127301283012930130301313013230133301343013530136301373013830139301403014130142301433014430145301463014730148301493015030151301523015330154301553015630157301583015930160301613016230163301643016530166301673016830169301703017130172301733017430175301763017730178301793018030181301823018330184301853018630187301883018930190301913019230193301943019530196301973019830199302003020130202302033020430205302063020730208302093021030211302123021330214302153021630217302183021930220302213022230223302243022530226302273022830229302303023130232302333023430235302363023730238302393024030241302423024330244302453024630247302483024930250302513025230253302543025530256302573025830259302603026130262302633026430265302663026730268302693027030271302723027330274302753027630277302783027930280302813028230283302843028530286302873028830289302903029130292302933029430295302963029730298302993030030301303023030330304303053030630307303083030930310303113031230313303143031530316303173031830319303203032130322303233032430325303263032730328303293033030331303323033330334303353033630337303383033930340303413034230343303443034530346303473034830349303503035130352303533035430355303563035730358303593036030361303623036330364303653036630367303683036930370303713037230373303743037530376303773037830379303803038130382303833038430385303863038730388303893039030391303923039330394303953039630397303983039930400304013040230403304043040530406304073040830409304103041130412304133041430415304163041730418304193042030421304223042330424304253042630427304283042930430304313043230433304343043530436304373043830439304403044130442304433044430445304463044730448304493045030451304523045330454304553045630457304583045930460304613046230463304643046530466304673046830469304703047130472304733047430475304763047730478304793048030481304823048330484304853048630487304883048930490304913049230493304943049530496304973049830499305003050130502305033050430505305063050730508305093051030511305123051330514305153051630517305183051930520305213052230523305243052530526305273052830529305303053130532305333053430535305363053730538305393054030541305423054330544305453054630547305483054930550305513055230553305543055530556305573055830559305603056130562305633056430565305663056730568305693057030571305723057330574305753057630577305783057930580305813058230583305843058530586305873058830589305903059130592305933059430595305963059730598305993060030601306023060330604306053060630607306083060930610306113061230613306143061530616306173061830619306203062130622306233062430625306263062730628306293063030631306323063330634306353063630637306383063930640306413064230643306443064530646306473064830649306503065130652306533065430655306563065730658306593066030661306623066330664306653066630667306683066930670306713067230673306743067530676306773067830679306803068130682306833068430685306863068730688306893069030691306923069330694306953069630697306983069930700307013070230703307043070530706307073070830709307103071130712307133071430715307163071730718307193072030721307223072330724307253072630727307283072930730307313073230733307343073530736307373073830739307403074130742307433074430745307463074730748307493075030751307523075330754307553075630757307583075930760307613076230763307643076530766307673076830769307703077130772307733077430775307763077730778307793078030781307823078330784307853078630787307883078930790307913079230793307943079530796307973079830799308003080130802308033080430805308063080730808308093081030811308123081330814308153081630817308183081930820308213082230823308243082530826308273082830829308303083130832308333083430835308363083730838308393084030841308423084330844308453084630847308483084930850308513085230853308543085530856308573085830859308603086130862308633086430865308663086730868308693087030871308723087330874308753087630877308783087930880308813088230883308843088530886308873088830889308903089130892308933089430895308963089730898308993090030901309023090330904309053090630907309083090930910309113091230913309143091530916309173091830919309203092130922309233092430925309263092730928309293093030931309323093330934309353093630937309383093930940309413094230943309443094530946309473094830949309503095130952309533095430955309563095730958309593096030961309623096330964309653096630967309683096930970309713097230973309743097530976309773097830979309803098130982309833098430985309863098730988309893099030991309923099330994309953099630997309983099931000310013100231003310043100531006310073100831009310103101131012310133101431015310163101731018310193102031021310223102331024310253102631027310283102931030310313103231033310343103531036310373103831039310403104131042310433104431045310463104731048310493105031051310523105331054310553105631057310583105931060310613106231063310643106531066310673106831069310703107131072310733107431075310763107731078310793108031081310823108331084310853108631087310883108931090310913109231093310943109531096310973109831099311003110131102311033110431105311063110731108311093111031111311123111331114311153111631117311183111931120311213112231123311243112531126311273112831129311303113131132311333113431135311363113731138311393114031141311423114331144311453114631147311483114931150311513115231153311543115531156311573115831159311603116131162311633116431165311663116731168311693117031171311723117331174311753117631177311783117931180311813118231183311843118531186311873118831189311903119131192311933119431195311963119731198311993120031201312023120331204312053120631207312083120931210312113121231213312143121531216312173121831219312203122131222312233122431225312263122731228312293123031231312323123331234312353123631237312383123931240312413124231243312443124531246312473124831249312503125131252312533125431255312563125731258312593126031261312623126331264312653126631267312683126931270312713127231273312743127531276312773127831279312803128131282312833128431285312863128731288312893129031291312923129331294312953129631297312983129931300313013130231303313043130531306313073130831309313103131131312313133131431315313163131731318313193132031321313223132331324313253132631327313283132931330313313133231333313343133531336313373133831339313403134131342313433134431345313463134731348313493135031351313523135331354313553135631357313583135931360313613136231363313643136531366313673136831369313703137131372313733137431375313763137731378313793138031381313823138331384313853138631387313883138931390313913139231393313943139531396313973139831399314003140131402314033140431405314063140731408314093141031411314123141331414314153141631417314183141931420314213142231423314243142531426314273142831429314303143131432314333143431435314363143731438314393144031441314423144331444314453144631447314483144931450314513145231453314543145531456314573145831459314603146131462314633146431465314663146731468314693147031471314723147331474314753147631477314783147931480314813148231483314843148531486314873148831489314903149131492314933149431495314963149731498314993150031501315023150331504315053150631507315083150931510315113151231513315143151531516315173151831519315203152131522315233152431525315263152731528315293153031531315323153331534315353153631537315383153931540315413154231543315443154531546315473154831549315503155131552315533155431555315563155731558315593156031561315623156331564315653156631567315683156931570315713157231573315743157531576315773157831579315803158131582315833158431585315863158731588315893159031591315923159331594315953159631597315983159931600316013160231603316043160531606316073160831609316103161131612316133161431615316163161731618316193162031621316223162331624316253162631627316283162931630316313163231633316343163531636316373163831639316403164131642316433164431645316463164731648316493165031651316523165331654316553165631657316583165931660316613166231663316643166531666316673166831669316703167131672316733167431675316763167731678316793168031681316823168331684316853168631687316883168931690316913169231693316943169531696316973169831699317003170131702317033170431705317063170731708317093171031711317123171331714317153171631717317183171931720317213172231723317243172531726317273172831729317303173131732317333173431735317363173731738317393174031741317423174331744317453174631747317483174931750317513175231753317543175531756317573175831759317603176131762317633176431765317663176731768317693177031771317723177331774317753177631777317783177931780317813178231783317843178531786317873178831789317903179131792317933179431795317963179731798317993180031801318023180331804318053180631807318083180931810318113181231813318143181531816318173181831819318203182131822318233182431825318263182731828318293183031831318323183331834318353183631837318383183931840318413184231843318443184531846318473184831849318503185131852318533185431855318563185731858318593186031861318623186331864318653186631867318683186931870318713187231873318743187531876318773187831879318803188131882318833188431885318863188731888318893189031891318923189331894318953189631897318983189931900319013190231903319043190531906319073190831909319103191131912319133191431915319163191731918319193192031921319223192331924319253192631927319283192931930319313193231933319343193531936319373193831939319403194131942319433194431945319463194731948319493195031951319523195331954319553195631957319583195931960319613196231963319643196531966319673196831969319703197131972319733197431975319763197731978319793198031981319823198331984319853198631987319883198931990319913199231993319943199531996319973199831999320003200132002320033200432005320063200732008320093201032011320123201332014320153201632017320183201932020320213202232023320243202532026320273202832029320303203132032320333203432035320363203732038320393204032041320423204332044320453204632047320483204932050320513205232053320543205532056320573205832059320603206132062320633206432065320663206732068320693207032071320723207332074320753207632077320783207932080320813208232083320843208532086320873208832089320903209132092320933209432095320963209732098320993210032101321023210332104321053210632107321083210932110321113211232113321143211532116321173211832119321203212132122321233212432125321263212732128321293213032131321323213332134321353213632137321383213932140321413214232143321443214532146321473214832149321503215132152321533215432155321563215732158321593216032161321623216332164321653216632167321683216932170321713217232173321743217532176321773217832179321803218132182321833218432185321863218732188321893219032191321923219332194321953219632197321983219932200322013220232203322043220532206322073220832209322103221132212322133221432215322163221732218322193222032221322223222332224322253222632227322283222932230322313223232233322343223532236322373223832239322403224132242322433224432245322463224732248322493225032251322523225332254322553225632257322583225932260322613226232263322643226532266322673226832269322703227132272322733227432275322763227732278322793228032281322823228332284322853228632287322883228932290322913229232293322943229532296322973229832299323003230132302323033230432305323063230732308323093231032311323123231332314323153231632317323183231932320323213232232323323243232532326323273232832329323303233132332323333233432335323363233732338323393234032341323423234332344323453234632347323483234932350323513235232353323543235532356323573235832359323603236132362323633236432365323663236732368323693237032371323723237332374323753237632377323783237932380323813238232383323843238532386323873238832389323903239132392323933239432395323963239732398323993240032401324023240332404324053240632407324083240932410324113241232413324143241532416324173241832419324203242132422324233242432425324263242732428324293243032431324323243332434324353243632437324383243932440324413244232443324443244532446324473244832449324503245132452324533245432455324563245732458324593246032461324623246332464324653246632467324683246932470324713247232473324743247532476324773247832479324803248132482324833248432485324863248732488324893249032491324923249332494324953249632497324983249932500325013250232503325043250532506325073250832509325103251132512325133251432515325163251732518325193252032521325223252332524325253252632527325283252932530325313253232533325343253532536325373253832539325403254132542325433254432545325463254732548325493255032551325523255332554325553255632557325583255932560325613256232563325643256532566325673256832569325703257132572325733257432575325763257732578325793258032581325823258332584325853258632587325883258932590325913259232593325943259532596325973259832599326003260132602326033260432605326063260732608326093261032611326123261332614326153261632617326183261932620326213262232623326243262532626326273262832629326303263132632326333263432635326363263732638326393264032641326423264332644326453264632647326483264932650326513265232653326543265532656326573265832659326603266132662326633266432665326663266732668326693267032671326723267332674326753267632677326783267932680326813268232683326843268532686326873268832689326903269132692326933269432695326963269732698326993270032701327023270332704327053270632707327083270932710327113271232713327143271532716327173271832719327203272132722327233272432725327263272732728327293273032731327323273332734327353273632737327383273932740327413274232743327443274532746327473274832749327503275132752327533275432755327563275732758327593276032761327623276332764327653276632767327683276932770327713277232773327743277532776327773277832779327803278132782327833278432785327863278732788327893279032791327923279332794327953279632797327983279932800328013280232803328043280532806328073280832809328103281132812328133281432815328163281732818328193282032821328223282332824328253282632827328283282932830328313283232833328343283532836328373283832839328403284132842328433284432845328463284732848328493285032851328523285332854328553285632857328583285932860328613286232863328643286532866328673286832869328703287132872328733287432875328763287732878328793288032881328823288332884328853288632887328883288932890328913289232893328943289532896328973289832899329003290132902329033290432905329063290732908329093291032911329123291332914329153291632917329183291932920329213292232923329243292532926329273292832929329303293132932329333293432935329363293732938329393294032941329423294332944329453294632947329483294932950329513295232953329543295532956329573295832959329603296132962329633296432965329663296732968329693297032971329723297332974329753297632977329783297932980329813298232983329843298532986329873298832989329903299132992329933299432995329963299732998329993300033001330023300333004330053300633007330083300933010330113301233013330143301533016330173301833019330203302133022330233302433025330263302733028330293303033031330323303333034330353303633037330383303933040330413304233043330443304533046330473304833049330503305133052330533305433055330563305733058330593306033061330623306333064330653306633067330683306933070330713307233073330743307533076330773307833079330803308133082330833308433085330863308733088330893309033091330923309333094330953309633097330983309933100331013310233103331043310533106331073310833109331103311133112331133311433115331163311733118331193312033121331223312333124331253312633127331283312933130331313313233133331343313533136331373313833139331403314133142331433314433145331463314733148331493315033151331523315333154331553315633157331583315933160331613316233163331643316533166331673316833169331703317133172331733317433175331763317733178331793318033181331823318333184331853318633187331883318933190331913319233193331943319533196331973319833199332003320133202332033320433205332063320733208332093321033211332123321333214332153321633217332183321933220332213322233223332243322533226332273322833229332303323133232332333323433235332363323733238332393324033241332423324333244332453324633247332483324933250332513325233253332543325533256332573325833259332603326133262332633326433265332663326733268332693327033271332723327333274332753327633277332783327933280332813328233283332843328533286332873328833289332903329133292332933329433295332963329733298332993330033301333023330333304333053330633307333083330933310333113331233313333143331533316333173331833319333203332133322333233332433325333263332733328333293333033331333323333333334333353333633337333383333933340333413334233343333443334533346333473334833349333503335133352333533335433355333563335733358333593336033361333623336333364333653336633367333683336933370333713337233373333743337533376333773337833379333803338133382333833338433385333863338733388333893339033391333923339333394333953339633397333983339933400334013340233403334043340533406334073340833409334103341133412334133341433415334163341733418334193342033421334223342333424334253342633427334283342933430334313343233433334343343533436334373343833439334403344133442334433344433445334463344733448334493345033451334523345333454334553345633457334583345933460334613346233463334643346533466334673346833469334703347133472334733347433475334763347733478334793348033481334823348333484334853348633487
  1. // This file was generated on Sat Feb 16, 2013 21:06 (UTC+01) by REx v5.23 which is Copyright (c) 1979-2013 by Gunther Rademacher <grd@gmx.net>
  2. // REx command line: XQueryParser.ebnf -ll 2 -backtrack -tree -javascript -a xqlint
  3. // line 2 "XQueryParser.ebnf"
  4. /* ***** BEGIN LICENSE BLOCK *****
  5. * Distributed under the BSD license:
  6. *
  7. * Copyright (c) 2010, Ajax.org B.V.
  8. * All rights reserved.
  9. *
  10. * Redistribution and use in source and binary forms, with or without
  11. * modification, are permitted provided that the following conditions are met:
  12. * * Redistributions of source code must retain the above copyright
  13. * notice, this list of conditions and the following disclaimer.
  14. * * Redistributions in binary form must reproduce the above copyright
  15. * notice, this list of conditions and the following disclaimer in the
  16. * documentation and/or other materials provided with the distribution.
  17. * * Neither the name of Ajax.org B.V. nor the
  18. * names of its contributors may be used to endorse or promote products
  19. * derived from this software without specific prior written permission.
  20. *
  21. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
  22. * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
  23. * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  24. * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY
  25. * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
  26. * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
  27. * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  28. * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  29. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
  30. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  31. *
  32. * ***** END LICENSE BLOCK ***** */
  33. define(function(require, exports, module){
  34. var XQueryParser = exports.XQueryParser = function XQueryParser(string, parsingEventHandler)
  35. {
  36. init(string, parsingEventHandler);
  37. // line 40 "XQueryParser.js"
  38. var self = this;
  39. this.ParseException = function(b, e, s, o, x)
  40. {
  41. var
  42. begin = b,
  43. end = e,
  44. state = s,
  45. offending = o,
  46. expected = x;
  47. this.getBegin = function() {return begin;};
  48. this.getEnd = function() {return end;};
  49. this.getState = function() {return state;};
  50. this.getExpected = function() {return expected;};
  51. this.getOffending = function() {return offending;};
  52. this.getMessage = function()
  53. {
  54. return offending < 0 ? "lexical analysis failed" : "syntax error";
  55. };
  56. };
  57. function init(string, parsingEventHandler)
  58. {
  59. eventHandler = parsingEventHandler;
  60. input = string;
  61. size = string.length;
  62. reset(0, 0, 0);
  63. }
  64. this.getInput = function()
  65. {
  66. return input;
  67. };
  68. function reset(l, b, e)
  69. {
  70. b0 = b; e0 = b;
  71. l1 = l; b1 = b; e1 = e;
  72. l2 = 0;
  73. end = e;
  74. ex = -1;
  75. memo = {};
  76. eventHandler.reset(input);
  77. }
  78. this.getOffendingToken = function(e)
  79. {
  80. var o = e.getOffending();
  81. return o >= 0 ? XQueryParser.TOKEN[o] : null;
  82. };
  83. this.getExpectedTokenSet = function(e)
  84. {
  85. var expected;
  86. if (e.getExpected() < 0)
  87. {
  88. expected = XQueryParser.getTokenSet(- e.getState());
  89. }
  90. else
  91. {
  92. expected = [XQueryParser.TOKEN[e.getExpected()]];
  93. }
  94. return expected;
  95. };
  96. this.getErrorMessage = function(e)
  97. {
  98. var tokenSet = this.getExpectedTokenSet(e);
  99. var found = this.getOffendingToken(e);
  100. var prefix = input.substring(0, e.getBegin());
  101. var lines = prefix.split("\n");
  102. var line = lines.length;
  103. var column = lines[line - 1].length + 1;
  104. var size = e.getEnd() - e.getBegin();
  105. return e.getMessage()
  106. + (found == null ? "" : ", found " + found)
  107. + "\nwhile expecting "
  108. + (tokenSet.length == 1 ? tokenSet[0] : ("[" + tokenSet.join(", ") + "]"))
  109. + "\n"
  110. + (size == 0 || found != null ? "" : "after successfully scanning " + size + " characters beginning ")
  111. + "at line " + line + ", column " + column + ":\n..."
  112. + input.substring(e.getBegin(), Math.min(input.length, e.getBegin() + 64))
  113. + "...";
  114. };
  115. this.parse_XQuery = function()
  116. {
  117. eventHandler.startNonterminal("XQuery", e0);
  118. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  119. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  120. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  121. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  122. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  123. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  124. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  125. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  126. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  127. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  128. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  129. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  130. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  131. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  132. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  133. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  134. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  135. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  136. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  137. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  138. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  139. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  140. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  141. // 'xquery' | '{' | '{|'
  142. whitespace();
  143. parse_Module();
  144. shift(25); // EOF
  145. eventHandler.endNonterminal("XQuery", e0);
  146. };
  147. function parse_Module()
  148. {
  149. eventHandler.startNonterminal("Module", e0);
  150. switch (l1)
  151. {
  152. case 274: // 'xquery'
  153. lookahead2W(199); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  154. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  155. // 'castable' | 'contains' | 'div' | 'encoding' | 'eq' | 'except' | 'ge' | 'gt' |
  156. // 'idiv' | 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' |
  157. // 'to' | 'treat' | 'union' | 'version' | '|' | '||'
  158. break;
  159. default:
  160. lk = l1;
  161. }
  162. if (lk == 64274 // 'xquery' 'encoding'
  163. || lk == 134930) // 'xquery' 'version'
  164. {
  165. parse_VersionDecl();
  166. }
  167. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  168. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  169. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  170. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  171. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  172. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  173. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  174. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  175. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  176. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  177. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  178. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  179. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  180. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  181. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  182. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  183. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  184. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  185. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  186. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  187. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  188. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  189. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  190. // 'xquery' | '{' | '{|'
  191. switch (l1)
  192. {
  193. case 182: // 'module'
  194. lookahead2W(194); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  195. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  196. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  197. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'namespace' | 'ne' |
  198. // 'or' | 'to' | 'treat' | 'union' | '|' | '||'
  199. break;
  200. default:
  201. lk = l1;
  202. }
  203. switch (lk)
  204. {
  205. case 94390: // 'module' 'namespace'
  206. whitespace();
  207. parse_LibraryModule();
  208. break;
  209. default:
  210. whitespace();
  211. parse_MainModule();
  212. }
  213. eventHandler.endNonterminal("Module", e0);
  214. }
  215. function parse_VersionDecl()
  216. {
  217. eventHandler.startNonterminal("VersionDecl", e0);
  218. shift(274); // 'xquery'
  219. lookahead1W(116); // S^WS | '(:' | 'encoding' | 'version'
  220. switch (l1)
  221. {
  222. case 125: // 'encoding'
  223. shift(125); // 'encoding'
  224. lookahead1W(17); // StringLiteral | S^WS | '(:'
  225. shift(11); // StringLiteral
  226. break;
  227. default:
  228. shift(263); // 'version'
  229. lookahead1W(17); // StringLiteral | S^WS | '(:'
  230. shift(11); // StringLiteral
  231. lookahead1W(109); // S^WS | '(:' | ';' | 'encoding'
  232. if (l1 == 125) // 'encoding'
  233. {
  234. shift(125); // 'encoding'
  235. lookahead1W(17); // StringLiteral | S^WS | '(:'
  236. shift(11); // StringLiteral
  237. }
  238. }
  239. lookahead1W(28); // S^WS | '(:' | ';'
  240. whitespace();
  241. parse_Separator();
  242. eventHandler.endNonterminal("VersionDecl", e0);
  243. }
  244. function parse_LibraryModule()
  245. {
  246. eventHandler.startNonterminal("LibraryModule", e0);
  247. parse_ModuleDecl();
  248. lookahead1W(138); // S^WS | EOF | '(:' | 'declare' | 'import'
  249. whitespace();
  250. parse_Prolog();
  251. eventHandler.endNonterminal("LibraryModule", e0);
  252. }
  253. function parse_ModuleDecl()
  254. {
  255. eventHandler.startNonterminal("ModuleDecl", e0);
  256. shift(182); // 'module'
  257. lookahead1W(61); // S^WS | '(:' | 'namespace'
  258. shift(184); // 'namespace'
  259. lookahead1W(247); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  260. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  261. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  262. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  263. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  264. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  265. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  266. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  267. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  268. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  269. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  270. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  271. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  272. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  273. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  274. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  275. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  276. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  277. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  278. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  279. // 'xquery'
  280. whitespace();
  281. parse_NCName();
  282. lookahead1W(29); // S^WS | '(:' | '='
  283. shift(60); // '='
  284. lookahead1W(15); // URILiteral | S^WS | '(:'
  285. shift(7); // URILiteral
  286. lookahead1W(28); // S^WS | '(:' | ';'
  287. whitespace();
  288. parse_Separator();
  289. eventHandler.endNonterminal("ModuleDecl", e0);
  290. }
  291. function parse_Prolog()
  292. {
  293. eventHandler.startNonterminal("Prolog", e0);
  294. for (;;)
  295. {
  296. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  297. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  298. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  299. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  300. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  301. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  302. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  303. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  304. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  305. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  306. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  307. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  308. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  309. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  310. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  311. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  312. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  313. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  314. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  315. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  316. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  317. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  318. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  319. // 'xquery' | '{' | '{|'
  320. switch (l1)
  321. {
  322. case 108: // 'declare'
  323. lookahead2W(213); // S^WS | EOF | '!' | '!=' | '#' | '%' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  324. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' |
  325. // 'base-uri' | 'boundary-space' | 'cast' | 'castable' | 'collection' |
  326. // 'construction' | 'contains' | 'context' | 'copy-namespaces' | 'decimal-format' |
  327. // 'default' | 'div' | 'eq' | 'except' | 'ft-option' | 'function' | 'ge' | 'gt' |
  328. // 'idiv' | 'index' | 'instance' | 'integrity' | 'intersect' | 'is' | 'le' | 'lt' |
  329. // 'mod' | 'namespace' | 'ne' | 'option' | 'or' | 'ordering' | 'revalidation' |
  330. // 'to' | 'treat' | 'union' | 'updating' | 'variable' | '|' | '||'
  331. break;
  332. case 153: // 'import'
  333. lookahead2W(201); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  334. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  335. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  336. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'module' | 'ne' | 'or' |
  337. // 'schema' | 'to' | 'treat' | 'union' | '|' | '||'
  338. break;
  339. default:
  340. lk = l1;
  341. }
  342. if (lk != 42604 // 'declare' 'base-uri'
  343. && lk != 43628 // 'declare' 'boundary-space'
  344. && lk != 50284 // 'declare' 'construction'
  345. && lk != 53356 // 'declare' 'copy-namespaces'
  346. && lk != 54380 // 'declare' 'decimal-format'
  347. && lk != 55916 // 'declare' 'default'
  348. && lk != 72300 // 'declare' 'ft-option'
  349. && lk != 93337 // 'import' 'module'
  350. && lk != 94316 // 'declare' 'namespace'
  351. && lk != 104044 // 'declare' 'ordering'
  352. && lk != 113772 // 'declare' 'revalidation'
  353. && lk != 115353) // 'import' 'schema'
  354. {
  355. break;
  356. }
  357. switch (l1)
  358. {
  359. case 108: // 'declare'
  360. lookahead2W(178); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  361. // 'copy-namespaces' | 'decimal-format' | 'default' | 'ft-option' | 'namespace' |
  362. // 'ordering' | 'revalidation'
  363. break;
  364. default:
  365. lk = l1;
  366. }
  367. if (lk == 55916) // 'declare' 'default'
  368. {
  369. lk = memoized(0, e0);
  370. if (lk == 0)
  371. {
  372. var b0A = b0; var e0A = e0; var l1A = l1;
  373. var b1A = b1; var e1A = e1; var l2A = l2;
  374. var b2A = b2; var e2A = e2;
  375. try
  376. {
  377. try_DefaultNamespaceDecl();
  378. lk = -1;
  379. }
  380. catch (p1A)
  381. {
  382. lk = -2;
  383. }
  384. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  385. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  386. b2 = b2A; e2 = e2A; end = e2A; }}
  387. memoize(0, e0, lk);
  388. }
  389. }
  390. switch (lk)
  391. {
  392. case -1:
  393. whitespace();
  394. parse_DefaultNamespaceDecl();
  395. break;
  396. case 94316: // 'declare' 'namespace'
  397. whitespace();
  398. parse_NamespaceDecl();
  399. break;
  400. case 153: // 'import'
  401. whitespace();
  402. parse_Import();
  403. break;
  404. case 72300: // 'declare' 'ft-option'
  405. whitespace();
  406. parse_FTOptionDecl();
  407. break;
  408. default:
  409. whitespace();
  410. parse_Setter();
  411. }
  412. lookahead1W(28); // S^WS | '(:' | ';'
  413. whitespace();
  414. parse_Separator();
  415. }
  416. for (;;)
  417. {
  418. lookahead1W(268); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  419. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  420. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  421. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  422. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  423. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  424. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  425. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  426. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  427. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  428. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  429. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  430. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  431. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  432. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  433. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  434. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  435. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  436. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  437. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  438. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  439. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  440. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  441. // 'xquery' | '{' | '{|'
  442. switch (l1)
  443. {
  444. case 108: // 'declare'
  445. lookahead2W(210); // S^WS | EOF | '!' | '!=' | '#' | '%' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  446. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  447. // 'castable' | 'collection' | 'contains' | 'context' | 'div' | 'eq' | 'except' |
  448. // 'function' | 'ge' | 'gt' | 'idiv' | 'index' | 'instance' | 'integrity' |
  449. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'option' | 'or' | 'to' |
  450. // 'treat' | 'union' | 'updating' | 'variable' | '|' | '||'
  451. break;
  452. default:
  453. lk = l1;
  454. }
  455. if (lk != 16492 // 'declare' '%'
  456. && lk != 48748 // 'declare' 'collection'
  457. && lk != 51820 // 'declare' 'context'
  458. && lk != 74348 // 'declare' 'function'
  459. && lk != 79468 // 'declare' 'index'
  460. && lk != 82540 // 'declare' 'integrity'
  461. && lk != 101996 // 'declare' 'option'
  462. && lk != 131692 // 'declare' 'updating'
  463. && lk != 134252) // 'declare' 'variable'
  464. {
  465. break;
  466. }
  467. switch (l1)
  468. {
  469. case 108: // 'declare'
  470. lookahead2W(175); // S^WS | '%' | '(:' | 'collection' | 'context' | 'function' | 'index' |
  471. // 'integrity' | 'option' | 'updating' | 'variable'
  472. break;
  473. default:
  474. lk = l1;
  475. }
  476. switch (lk)
  477. {
  478. case 51820: // 'declare' 'context'
  479. whitespace();
  480. parse_ContextItemDecl();
  481. break;
  482. case 101996: // 'declare' 'option'
  483. whitespace();
  484. parse_OptionDecl();
  485. break;
  486. default:
  487. whitespace();
  488. parse_AnnotatedDecl();
  489. }
  490. lookahead1W(28); // S^WS | '(:' | ';'
  491. whitespace();
  492. parse_Separator();
  493. }
  494. eventHandler.endNonterminal("Prolog", e0);
  495. }
  496. function parse_Separator()
  497. {
  498. eventHandler.startNonterminal("Separator", e0);
  499. shift(53); // ';'
  500. eventHandler.endNonterminal("Separator", e0);
  501. }
  502. function parse_Setter()
  503. {
  504. eventHandler.startNonterminal("Setter", e0);
  505. switch (l1)
  506. {
  507. case 108: // 'declare'
  508. lookahead2W(172); // S^WS | '(:' | 'base-uri' | 'boundary-space' | 'construction' |
  509. // 'copy-namespaces' | 'decimal-format' | 'default' | 'ordering' | 'revalidation'
  510. break;
  511. default:
  512. lk = l1;
  513. }
  514. if (lk == 55916) // 'declare' 'default'
  515. {
  516. lk = memoized(1, e0);
  517. if (lk == 0)
  518. {
  519. var b0A = b0; var e0A = e0; var l1A = l1;
  520. var b1A = b1; var e1A = e1; var l2A = l2;
  521. var b2A = b2; var e2A = e2;
  522. try
  523. {
  524. try_DefaultCollationDecl();
  525. lk = -2;
  526. }
  527. catch (p2A)
  528. {
  529. try
  530. {
  531. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  532. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  533. b2 = b2A; e2 = e2A; end = e2A; }}
  534. try_EmptyOrderDecl();
  535. lk = -6;
  536. }
  537. catch (p6A)
  538. {
  539. lk = -9;
  540. }
  541. }
  542. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  543. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  544. b2 = b2A; e2 = e2A; end = e2A; }}
  545. memoize(1, e0, lk);
  546. }
  547. }
  548. switch (lk)
  549. {
  550. case 43628: // 'declare' 'boundary-space'
  551. parse_BoundarySpaceDecl();
  552. break;
  553. case -2:
  554. parse_DefaultCollationDecl();
  555. break;
  556. case 42604: // 'declare' 'base-uri'
  557. parse_BaseURIDecl();
  558. break;
  559. case 50284: // 'declare' 'construction'
  560. parse_ConstructionDecl();
  561. break;
  562. case 104044: // 'declare' 'ordering'
  563. parse_OrderingModeDecl();
  564. break;
  565. case -6:
  566. parse_EmptyOrderDecl();
  567. break;
  568. case 113772: // 'declare' 'revalidation'
  569. parse_RevalidationDecl();
  570. break;
  571. case 53356: // 'declare' 'copy-namespaces'
  572. parse_CopyNamespacesDecl();
  573. break;
  574. default:
  575. parse_DecimalFormatDecl();
  576. }
  577. eventHandler.endNonterminal("Setter", e0);
  578. }
  579. function parse_BoundarySpaceDecl()
  580. {
  581. eventHandler.startNonterminal("BoundarySpaceDecl", e0);
  582. shift(108); // 'declare'
  583. lookahead1W(33); // S^WS | '(:' | 'boundary-space'
  584. shift(85); // 'boundary-space'
  585. lookahead1W(133); // S^WS | '(:' | 'preserve' | 'strip'
  586. switch (l1)
  587. {
  588. case 214: // 'preserve'
  589. shift(214); // 'preserve'
  590. break;
  591. default:
  592. shift(241); // 'strip'
  593. }
  594. eventHandler.endNonterminal("BoundarySpaceDecl", e0);
  595. }
  596. function parse_DefaultCollationDecl()
  597. {
  598. eventHandler.startNonterminal("DefaultCollationDecl", e0);
  599. shift(108); // 'declare'
  600. lookahead1W(46); // S^WS | '(:' | 'default'
  601. shift(109); // 'default'
  602. lookahead1W(38); // S^WS | '(:' | 'collation'
  603. shift(94); // 'collation'
  604. lookahead1W(15); // URILiteral | S^WS | '(:'
  605. shift(7); // URILiteral
  606. eventHandler.endNonterminal("DefaultCollationDecl", e0);
  607. }
  608. function try_DefaultCollationDecl()
  609. {
  610. shiftT(108); // 'declare'
  611. lookahead1W(46); // S^WS | '(:' | 'default'
  612. shiftT(109); // 'default'
  613. lookahead1W(38); // S^WS | '(:' | 'collation'
  614. shiftT(94); // 'collation'
  615. lookahead1W(15); // URILiteral | S^WS | '(:'
  616. shiftT(7); // URILiteral
  617. }
  618. function parse_BaseURIDecl()
  619. {
  620. eventHandler.startNonterminal("BaseURIDecl", e0);
  621. shift(108); // 'declare'
  622. lookahead1W(32); // S^WS | '(:' | 'base-uri'
  623. shift(83); // 'base-uri'
  624. lookahead1W(15); // URILiteral | S^WS | '(:'
  625. shift(7); // URILiteral
  626. eventHandler.endNonterminal("BaseURIDecl", e0);
  627. }
  628. function parse_ConstructionDecl()
  629. {
  630. eventHandler.startNonterminal("ConstructionDecl", e0);
  631. shift(108); // 'declare'
  632. lookahead1W(41); // S^WS | '(:' | 'construction'
  633. shift(98); // 'construction'
  634. lookahead1W(133); // S^WS | '(:' | 'preserve' | 'strip'
  635. switch (l1)
  636. {
  637. case 241: // 'strip'
  638. shift(241); // 'strip'
  639. break;
  640. default:
  641. shift(214); // 'preserve'
  642. }
  643. eventHandler.endNonterminal("ConstructionDecl", e0);
  644. }
  645. function parse_OrderingModeDecl()
  646. {
  647. eventHandler.startNonterminal("OrderingModeDecl", e0);
  648. shift(108); // 'declare'
  649. lookahead1W(68); // S^WS | '(:' | 'ordering'
  650. shift(203); // 'ordering'
  651. lookahead1W(131); // S^WS | '(:' | 'ordered' | 'unordered'
  652. switch (l1)
  653. {
  654. case 202: // 'ordered'
  655. shift(202); // 'ordered'
  656. break;
  657. default:
  658. shift(256); // 'unordered'
  659. }
  660. eventHandler.endNonterminal("OrderingModeDecl", e0);
  661. }
  662. function parse_EmptyOrderDecl()
  663. {
  664. eventHandler.startNonterminal("EmptyOrderDecl", e0);
  665. shift(108); // 'declare'
  666. lookahead1W(46); // S^WS | '(:' | 'default'
  667. shift(109); // 'default'
  668. lookahead1W(67); // S^WS | '(:' | 'order'
  669. shift(201); // 'order'
  670. lookahead1W(49); // S^WS | '(:' | 'empty'
  671. shift(123); // 'empty'
  672. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  673. switch (l1)
  674. {
  675. case 147: // 'greatest'
  676. shift(147); // 'greatest'
  677. break;
  678. default:
  679. shift(173); // 'least'
  680. }
  681. eventHandler.endNonterminal("EmptyOrderDecl", e0);
  682. }
  683. function try_EmptyOrderDecl()
  684. {
  685. shiftT(108); // 'declare'
  686. lookahead1W(46); // S^WS | '(:' | 'default'
  687. shiftT(109); // 'default'
  688. lookahead1W(67); // S^WS | '(:' | 'order'
  689. shiftT(201); // 'order'
  690. lookahead1W(49); // S^WS | '(:' | 'empty'
  691. shiftT(123); // 'empty'
  692. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  693. switch (l1)
  694. {
  695. case 147: // 'greatest'
  696. shiftT(147); // 'greatest'
  697. break;
  698. default:
  699. shiftT(173); // 'least'
  700. }
  701. }
  702. function parse_CopyNamespacesDecl()
  703. {
  704. eventHandler.startNonterminal("CopyNamespacesDecl", e0);
  705. shift(108); // 'declare'
  706. lookahead1W(44); // S^WS | '(:' | 'copy-namespaces'
  707. shift(104); // 'copy-namespaces'
  708. lookahead1W(128); // S^WS | '(:' | 'no-preserve' | 'preserve'
  709. whitespace();
  710. parse_PreserveMode();
  711. lookahead1W(25); // S^WS | '(:' | ','
  712. shift(41); // ','
  713. lookahead1W(123); // S^WS | '(:' | 'inherit' | 'no-inherit'
  714. whitespace();
  715. parse_InheritMode();
  716. eventHandler.endNonterminal("CopyNamespacesDecl", e0);
  717. }
  718. function parse_PreserveMode()
  719. {
  720. eventHandler.startNonterminal("PreserveMode", e0);
  721. switch (l1)
  722. {
  723. case 214: // 'preserve'
  724. shift(214); // 'preserve'
  725. break;
  726. default:
  727. shift(190); // 'no-preserve'
  728. }
  729. eventHandler.endNonterminal("PreserveMode", e0);
  730. }
  731. function parse_InheritMode()
  732. {
  733. eventHandler.startNonterminal("InheritMode", e0);
  734. switch (l1)
  735. {
  736. case 157: // 'inherit'
  737. shift(157); // 'inherit'
  738. break;
  739. default:
  740. shift(189); // 'no-inherit'
  741. }
  742. eventHandler.endNonterminal("InheritMode", e0);
  743. }
  744. function parse_DecimalFormatDecl()
  745. {
  746. eventHandler.startNonterminal("DecimalFormatDecl", e0);
  747. shift(108); // 'declare'
  748. lookahead1W(114); // S^WS | '(:' | 'decimal-format' | 'default'
  749. switch (l1)
  750. {
  751. case 106: // 'decimal-format'
  752. shift(106); // 'decimal-format'
  753. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  754. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  755. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  756. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  757. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  758. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  759. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  760. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  761. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  762. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  763. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  764. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  765. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  766. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  767. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  768. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  769. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  770. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  771. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  772. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  773. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  774. // 'xquery'
  775. whitespace();
  776. parse_EQName();
  777. break;
  778. default:
  779. shift(109); // 'default'
  780. lookahead1W(45); // S^WS | '(:' | 'decimal-format'
  781. shift(106); // 'decimal-format'
  782. }
  783. for (;;)
  784. {
  785. lookahead1W(180); // S^WS | '(:' | ';' | 'NaN' | 'decimal-separator' | 'digit' |
  786. // 'grouping-separator' | 'infinity' | 'minus-sign' | 'pattern-separator' |
  787. // 'per-mille' | 'percent' | 'zero-digit'
  788. if (l1 == 53) // ';'
  789. {
  790. break;
  791. }
  792. whitespace();
  793. parse_DFPropertyName();
  794. lookahead1W(29); // S^WS | '(:' | '='
  795. shift(60); // '='
  796. lookahead1W(17); // StringLiteral | S^WS | '(:'
  797. shift(11); // StringLiteral
  798. }
  799. eventHandler.endNonterminal("DecimalFormatDecl", e0);
  800. }
  801. function parse_DFPropertyName()
  802. {
  803. eventHandler.startNonterminal("DFPropertyName", e0);
  804. switch (l1)
  805. {
  806. case 107: // 'decimal-separator'
  807. shift(107); // 'decimal-separator'
  808. break;
  809. case 149: // 'grouping-separator'
  810. shift(149); // 'grouping-separator'
  811. break;
  812. case 156: // 'infinity'
  813. shift(156); // 'infinity'
  814. break;
  815. case 179: // 'minus-sign'
  816. shift(179); // 'minus-sign'
  817. break;
  818. case 67: // 'NaN'
  819. shift(67); // 'NaN'
  820. break;
  821. case 209: // 'percent'
  822. shift(209); // 'percent'
  823. break;
  824. case 208: // 'per-mille'
  825. shift(208); // 'per-mille'
  826. break;
  827. case 275: // 'zero-digit'
  828. shift(275); // 'zero-digit'
  829. break;
  830. case 116: // 'digit'
  831. shift(116); // 'digit'
  832. break;
  833. default:
  834. shift(207); // 'pattern-separator'
  835. }
  836. eventHandler.endNonterminal("DFPropertyName", e0);
  837. }
  838. function parse_Import()
  839. {
  840. eventHandler.startNonterminal("Import", e0);
  841. switch (l1)
  842. {
  843. case 153: // 'import'
  844. lookahead2W(126); // S^WS | '(:' | 'module' | 'schema'
  845. break;
  846. default:
  847. lk = l1;
  848. }
  849. switch (lk)
  850. {
  851. case 115353: // 'import' 'schema'
  852. parse_SchemaImport();
  853. break;
  854. default:
  855. parse_ModuleImport();
  856. }
  857. eventHandler.endNonterminal("Import", e0);
  858. }
  859. function parse_SchemaImport()
  860. {
  861. eventHandler.startNonterminal("SchemaImport", e0);
  862. shift(153); // 'import'
  863. lookahead1W(73); // S^WS | '(:' | 'schema'
  864. shift(225); // 'schema'
  865. lookahead1W(137); // URILiteral | S^WS | '(:' | 'default' | 'namespace'
  866. if (l1 != 7) // URILiteral
  867. {
  868. whitespace();
  869. parse_SchemaPrefix();
  870. }
  871. lookahead1W(15); // URILiteral | S^WS | '(:'
  872. shift(7); // URILiteral
  873. lookahead1W(108); // S^WS | '(:' | ';' | 'at'
  874. if (l1 == 81) // 'at'
  875. {
  876. shift(81); // 'at'
  877. lookahead1W(15); // URILiteral | S^WS | '(:'
  878. shift(7); // URILiteral
  879. for (;;)
  880. {
  881. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  882. if (l1 != 41) // ','
  883. {
  884. break;
  885. }
  886. shift(41); // ','
  887. lookahead1W(15); // URILiteral | S^WS | '(:'
  888. shift(7); // URILiteral
  889. }
  890. }
  891. eventHandler.endNonterminal("SchemaImport", e0);
  892. }
  893. function parse_SchemaPrefix()
  894. {
  895. eventHandler.startNonterminal("SchemaPrefix", e0);
  896. switch (l1)
  897. {
  898. case 184: // 'namespace'
  899. shift(184); // 'namespace'
  900. lookahead1W(247); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  901. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  902. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  903. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  904. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  905. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  906. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  907. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  908. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  909. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  910. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  911. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  912. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  913. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  914. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  915. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  916. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  917. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  918. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  919. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  920. // 'xquery'
  921. whitespace();
  922. parse_NCName();
  923. lookahead1W(29); // S^WS | '(:' | '='
  924. shift(60); // '='
  925. break;
  926. default:
  927. shift(109); // 'default'
  928. lookahead1W(47); // S^WS | '(:' | 'element'
  929. shift(121); // 'element'
  930. lookahead1W(61); // S^WS | '(:' | 'namespace'
  931. shift(184); // 'namespace'
  932. }
  933. eventHandler.endNonterminal("SchemaPrefix", e0);
  934. }
  935. function parse_ModuleImport()
  936. {
  937. eventHandler.startNonterminal("ModuleImport", e0);
  938. shift(153); // 'import'
  939. lookahead1W(60); // S^WS | '(:' | 'module'
  940. shift(182); // 'module'
  941. lookahead1W(90); // URILiteral | S^WS | '(:' | 'namespace'
  942. if (l1 == 184) // 'namespace'
  943. {
  944. shift(184); // 'namespace'
  945. lookahead1W(247); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  946. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  947. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  948. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  949. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  950. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  951. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  952. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  953. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  954. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  955. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  956. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  957. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  958. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  959. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  960. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  961. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  962. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  963. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  964. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  965. // 'xquery'
  966. whitespace();
  967. parse_NCName();
  968. lookahead1W(29); // S^WS | '(:' | '='
  969. shift(60); // '='
  970. }
  971. lookahead1W(15); // URILiteral | S^WS | '(:'
  972. shift(7); // URILiteral
  973. lookahead1W(108); // S^WS | '(:' | ';' | 'at'
  974. if (l1 == 81) // 'at'
  975. {
  976. shift(81); // 'at'
  977. lookahead1W(15); // URILiteral | S^WS | '(:'
  978. shift(7); // URILiteral
  979. for (;;)
  980. {
  981. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  982. if (l1 != 41) // ','
  983. {
  984. break;
  985. }
  986. shift(41); // ','
  987. lookahead1W(15); // URILiteral | S^WS | '(:'
  988. shift(7); // URILiteral
  989. }
  990. }
  991. eventHandler.endNonterminal("ModuleImport", e0);
  992. }
  993. function parse_NamespaceDecl()
  994. {
  995. eventHandler.startNonterminal("NamespaceDecl", e0);
  996. shift(108); // 'declare'
  997. lookahead1W(61); // S^WS | '(:' | 'namespace'
  998. shift(184); // 'namespace'
  999. lookahead1W(247); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1000. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  1001. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1002. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1003. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1004. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1005. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1006. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1007. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1008. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1009. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1010. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  1011. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  1012. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  1013. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  1014. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  1015. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  1016. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  1017. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1018. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1019. // 'xquery'
  1020. whitespace();
  1021. parse_NCName();
  1022. lookahead1W(29); // S^WS | '(:' | '='
  1023. shift(60); // '='
  1024. lookahead1W(15); // URILiteral | S^WS | '(:'
  1025. shift(7); // URILiteral
  1026. eventHandler.endNonterminal("NamespaceDecl", e0);
  1027. }
  1028. function parse_DefaultNamespaceDecl()
  1029. {
  1030. eventHandler.startNonterminal("DefaultNamespaceDecl", e0);
  1031. shift(108); // 'declare'
  1032. lookahead1W(46); // S^WS | '(:' | 'default'
  1033. shift(109); // 'default'
  1034. lookahead1W(115); // S^WS | '(:' | 'element' | 'function'
  1035. switch (l1)
  1036. {
  1037. case 121: // 'element'
  1038. shift(121); // 'element'
  1039. break;
  1040. default:
  1041. shift(145); // 'function'
  1042. }
  1043. lookahead1W(61); // S^WS | '(:' | 'namespace'
  1044. shift(184); // 'namespace'
  1045. lookahead1W(15); // URILiteral | S^WS | '(:'
  1046. shift(7); // URILiteral
  1047. eventHandler.endNonterminal("DefaultNamespaceDecl", e0);
  1048. }
  1049. function try_DefaultNamespaceDecl()
  1050. {
  1051. shiftT(108); // 'declare'
  1052. lookahead1W(46); // S^WS | '(:' | 'default'
  1053. shiftT(109); // 'default'
  1054. lookahead1W(115); // S^WS | '(:' | 'element' | 'function'
  1055. switch (l1)
  1056. {
  1057. case 121: // 'element'
  1058. shiftT(121); // 'element'
  1059. break;
  1060. default:
  1061. shiftT(145); // 'function'
  1062. }
  1063. lookahead1W(61); // S^WS | '(:' | 'namespace'
  1064. shiftT(184); // 'namespace'
  1065. lookahead1W(15); // URILiteral | S^WS | '(:'
  1066. shiftT(7); // URILiteral
  1067. }
  1068. function parse_FTOptionDecl()
  1069. {
  1070. eventHandler.startNonterminal("FTOptionDecl", e0);
  1071. shift(108); // 'declare'
  1072. lookahead1W(52); // S^WS | '(:' | 'ft-option'
  1073. shift(141); // 'ft-option'
  1074. lookahead1W(81); // S^WS | '(:' | 'using'
  1075. whitespace();
  1076. parse_FTMatchOptions();
  1077. eventHandler.endNonterminal("FTOptionDecl", e0);
  1078. }
  1079. function parse_AnnotatedDecl()
  1080. {
  1081. eventHandler.startNonterminal("AnnotatedDecl", e0);
  1082. shift(108); // 'declare'
  1083. for (;;)
  1084. {
  1085. lookahead1W(170); // S^WS | '%' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  1086. // 'updating' | 'variable'
  1087. if (l1 != 32 // '%'
  1088. && l1 != 257) // 'updating'
  1089. {
  1090. break;
  1091. }
  1092. switch (l1)
  1093. {
  1094. case 257: // 'updating'
  1095. whitespace();
  1096. parse_CompatibilityAnnotation();
  1097. break;
  1098. default:
  1099. whitespace();
  1100. parse_Annotation();
  1101. }
  1102. }
  1103. switch (l1)
  1104. {
  1105. case 262: // 'variable'
  1106. whitespace();
  1107. parse_VarDecl();
  1108. break;
  1109. case 145: // 'function'
  1110. whitespace();
  1111. parse_FunctionDecl();
  1112. break;
  1113. case 95: // 'collection'
  1114. whitespace();
  1115. parse_CollectionDecl();
  1116. break;
  1117. case 155: // 'index'
  1118. whitespace();
  1119. parse_IndexDecl();
  1120. break;
  1121. default:
  1122. whitespace();
  1123. parse_ICDecl();
  1124. }
  1125. eventHandler.endNonterminal("AnnotatedDecl", e0);
  1126. }
  1127. function parse_CompatibilityAnnotation()
  1128. {
  1129. eventHandler.startNonterminal("CompatibilityAnnotation", e0);
  1130. shift(257); // 'updating'
  1131. eventHandler.endNonterminal("CompatibilityAnnotation", e0);
  1132. }
  1133. function parse_Annotation()
  1134. {
  1135. eventHandler.startNonterminal("Annotation", e0);
  1136. shift(32); // '%'
  1137. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1138. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1139. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1140. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1141. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1142. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1143. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1144. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1145. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1146. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1147. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1148. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1149. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1150. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1151. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1152. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1153. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1154. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1155. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1156. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1157. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1158. // 'xquery'
  1159. whitespace();
  1160. parse_EQName();
  1161. lookahead1W(171); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  1162. // 'updating' | 'variable'
  1163. if (l1 == 34) // '('
  1164. {
  1165. shift(34); // '('
  1166. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  1167. whitespace();
  1168. parse_Literal();
  1169. for (;;)
  1170. {
  1171. lookahead1W(101); // S^WS | '(:' | ')' | ','
  1172. if (l1 != 41) // ','
  1173. {
  1174. break;
  1175. }
  1176. shift(41); // ','
  1177. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  1178. whitespace();
  1179. parse_Literal();
  1180. }
  1181. shift(37); // ')'
  1182. }
  1183. eventHandler.endNonterminal("Annotation", e0);
  1184. }
  1185. function try_Annotation()
  1186. {
  1187. shiftT(32); // '%'
  1188. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1189. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1190. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1191. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1192. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1193. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1194. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1195. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1196. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1197. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1198. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1199. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1200. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1201. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1202. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1203. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1204. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1205. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1206. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1207. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1208. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1209. // 'xquery'
  1210. try_EQName();
  1211. lookahead1W(171); // S^WS | '%' | '(' | '(:' | 'collection' | 'function' | 'index' | 'integrity' |
  1212. // 'updating' | 'variable'
  1213. if (l1 == 34) // '('
  1214. {
  1215. shiftT(34); // '('
  1216. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  1217. try_Literal();
  1218. for (;;)
  1219. {
  1220. lookahead1W(101); // S^WS | '(:' | ')' | ','
  1221. if (l1 != 41) // ','
  1222. {
  1223. break;
  1224. }
  1225. shiftT(41); // ','
  1226. lookahead1W(154); // IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral | S^WS | '(:'
  1227. try_Literal();
  1228. }
  1229. shiftT(37); // ')'
  1230. }
  1231. }
  1232. function parse_VarDecl()
  1233. {
  1234. eventHandler.startNonterminal("VarDecl", e0);
  1235. shift(262); // 'variable'
  1236. lookahead1W(21); // S^WS | '$' | '(:'
  1237. shift(31); // '$'
  1238. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1239. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1240. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1241. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1242. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1243. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1244. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1245. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1246. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1247. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1248. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1249. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1250. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1251. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1252. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1253. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1254. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1255. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1256. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1257. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1258. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1259. // 'xquery'
  1260. whitespace();
  1261. parse_VarName();
  1262. lookahead1W(147); // S^WS | '(:' | ':=' | 'as' | 'external'
  1263. if (l1 == 79) // 'as'
  1264. {
  1265. whitespace();
  1266. parse_TypeDeclaration();
  1267. }
  1268. lookahead1W(106); // S^WS | '(:' | ':=' | 'external'
  1269. switch (l1)
  1270. {
  1271. case 52: // ':='
  1272. shift(52); // ':='
  1273. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1274. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1275. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1276. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1277. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1278. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1279. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1280. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1281. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1282. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1283. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1284. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1285. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1286. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1287. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1288. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1289. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1290. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1291. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1292. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1293. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1294. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1295. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1296. // 'xquery' | '{' | '{|'
  1297. whitespace();
  1298. parse_VarValue();
  1299. break;
  1300. default:
  1301. shift(133); // 'external'
  1302. lookahead1W(104); // S^WS | '(:' | ':=' | ';'
  1303. if (l1 == 52) // ':='
  1304. {
  1305. shift(52); // ':='
  1306. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1307. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1308. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1309. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1310. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1311. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1312. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1313. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1314. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1315. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1316. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1317. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1318. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1319. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1320. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1321. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1322. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1323. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1324. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1325. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1326. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1327. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1328. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1329. // 'xquery' | '{' | '{|'
  1330. whitespace();
  1331. parse_VarDefaultValue();
  1332. }
  1333. }
  1334. eventHandler.endNonterminal("VarDecl", e0);
  1335. }
  1336. function parse_VarValue()
  1337. {
  1338. eventHandler.startNonterminal("VarValue", e0);
  1339. parse_ExprSingle();
  1340. eventHandler.endNonterminal("VarValue", e0);
  1341. }
  1342. function parse_VarDefaultValue()
  1343. {
  1344. eventHandler.startNonterminal("VarDefaultValue", e0);
  1345. parse_ExprSingle();
  1346. eventHandler.endNonterminal("VarDefaultValue", e0);
  1347. }
  1348. function parse_ContextItemDecl()
  1349. {
  1350. eventHandler.startNonterminal("ContextItemDecl", e0);
  1351. shift(108); // 'declare'
  1352. lookahead1W(43); // S^WS | '(:' | 'context'
  1353. shift(101); // 'context'
  1354. lookahead1W(55); // S^WS | '(:' | 'item'
  1355. shift(165); // 'item'
  1356. lookahead1W(147); // S^WS | '(:' | ':=' | 'as' | 'external'
  1357. if (l1 == 79) // 'as'
  1358. {
  1359. shift(79); // 'as'
  1360. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  1361. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1362. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1363. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1364. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1365. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1366. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1367. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1368. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1369. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1370. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1371. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1372. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1373. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1374. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1375. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1376. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1377. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1378. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  1379. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  1380. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  1381. // 'with' | 'xquery'
  1382. whitespace();
  1383. parse_ItemType();
  1384. }
  1385. lookahead1W(106); // S^WS | '(:' | ':=' | 'external'
  1386. switch (l1)
  1387. {
  1388. case 52: // ':='
  1389. shift(52); // ':='
  1390. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1391. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1392. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1393. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1394. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1395. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1396. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1397. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1398. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1399. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1400. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1401. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1402. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1403. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1404. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1405. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1406. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1407. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1408. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1409. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1410. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1411. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1412. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1413. // 'xquery' | '{' | '{|'
  1414. whitespace();
  1415. parse_VarValue();
  1416. break;
  1417. default:
  1418. shift(133); // 'external'
  1419. lookahead1W(104); // S^WS | '(:' | ':=' | ';'
  1420. if (l1 == 52) // ':='
  1421. {
  1422. shift(52); // ':='
  1423. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1424. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1425. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1426. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1427. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1428. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1429. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1430. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1431. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1432. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1433. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1434. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1435. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1436. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1437. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1438. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1439. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1440. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1441. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1442. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1443. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1444. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1445. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1446. // 'xquery' | '{' | '{|'
  1447. whitespace();
  1448. parse_VarDefaultValue();
  1449. }
  1450. }
  1451. eventHandler.endNonterminal("ContextItemDecl", e0);
  1452. }
  1453. function parse_ParamList()
  1454. {
  1455. eventHandler.startNonterminal("ParamList", e0);
  1456. parse_Param();
  1457. for (;;)
  1458. {
  1459. lookahead1W(101); // S^WS | '(:' | ')' | ','
  1460. if (l1 != 41) // ','
  1461. {
  1462. break;
  1463. }
  1464. shift(41); // ','
  1465. lookahead1W(21); // S^WS | '$' | '(:'
  1466. whitespace();
  1467. parse_Param();
  1468. }
  1469. eventHandler.endNonterminal("ParamList", e0);
  1470. }
  1471. function try_ParamList()
  1472. {
  1473. try_Param();
  1474. for (;;)
  1475. {
  1476. lookahead1W(101); // S^WS | '(:' | ')' | ','
  1477. if (l1 != 41) // ','
  1478. {
  1479. break;
  1480. }
  1481. shiftT(41); // ','
  1482. lookahead1W(21); // S^WS | '$' | '(:'
  1483. try_Param();
  1484. }
  1485. }
  1486. function parse_Param()
  1487. {
  1488. eventHandler.startNonterminal("Param", e0);
  1489. shift(31); // '$'
  1490. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1491. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1492. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1493. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1494. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1495. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1496. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1497. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1498. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1499. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1500. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1501. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1502. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1503. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1504. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1505. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1506. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1507. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1508. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1509. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1510. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1511. // 'xquery'
  1512. whitespace();
  1513. parse_EQName();
  1514. lookahead1W(143); // S^WS | '(:' | ')' | ',' | 'as'
  1515. if (l1 == 79) // 'as'
  1516. {
  1517. whitespace();
  1518. parse_TypeDeclaration();
  1519. }
  1520. eventHandler.endNonterminal("Param", e0);
  1521. }
  1522. function try_Param()
  1523. {
  1524. shiftT(31); // '$'
  1525. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1526. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1527. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1528. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1529. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1530. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1531. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1532. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1533. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1534. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1535. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1536. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1537. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1538. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1539. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1540. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1541. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1542. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1543. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1544. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1545. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1546. // 'xquery'
  1547. try_EQName();
  1548. lookahead1W(143); // S^WS | '(:' | ')' | ',' | 'as'
  1549. if (l1 == 79) // 'as'
  1550. {
  1551. try_TypeDeclaration();
  1552. }
  1553. }
  1554. function parse_FunctionBody()
  1555. {
  1556. eventHandler.startNonterminal("FunctionBody", e0);
  1557. parse_EnclosedExpr();
  1558. eventHandler.endNonterminal("FunctionBody", e0);
  1559. }
  1560. function try_FunctionBody()
  1561. {
  1562. try_EnclosedExpr();
  1563. }
  1564. function parse_EnclosedExpr()
  1565. {
  1566. eventHandler.startNonterminal("EnclosedExpr", e0);
  1567. shift(276); // '{'
  1568. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1569. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1570. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1571. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1572. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1573. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1574. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1575. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1576. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1577. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1578. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1579. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1580. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1581. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1582. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1583. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1584. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1585. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1586. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1587. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1588. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1589. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1590. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1591. // 'xquery' | '{' | '{|'
  1592. whitespace();
  1593. parse_Expr();
  1594. shift(282); // '}'
  1595. eventHandler.endNonterminal("EnclosedExpr", e0);
  1596. }
  1597. function try_EnclosedExpr()
  1598. {
  1599. shiftT(276); // '{'
  1600. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1601. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1602. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1603. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1604. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1605. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1606. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1607. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1608. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1609. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1610. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1611. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1612. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1613. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1614. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1615. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1616. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1617. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1618. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1619. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1620. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1621. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1622. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1623. // 'xquery' | '{' | '{|'
  1624. try_Expr();
  1625. shiftT(282); // '}'
  1626. }
  1627. function parse_OptionDecl()
  1628. {
  1629. eventHandler.startNonterminal("OptionDecl", e0);
  1630. shift(108); // 'declare'
  1631. lookahead1W(66); // S^WS | '(:' | 'option'
  1632. shift(199); // 'option'
  1633. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1634. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1635. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1636. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1637. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1638. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1639. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1640. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1641. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1642. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1643. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1644. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1645. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1646. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1647. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1648. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1649. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1650. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1651. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1652. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1653. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1654. // 'xquery'
  1655. whitespace();
  1656. parse_EQName();
  1657. lookahead1W(17); // StringLiteral | S^WS | '(:'
  1658. shift(11); // StringLiteral
  1659. eventHandler.endNonterminal("OptionDecl", e0);
  1660. }
  1661. function parse_Expr()
  1662. {
  1663. eventHandler.startNonterminal("Expr", e0);
  1664. parse_ExprSingle();
  1665. for (;;)
  1666. {
  1667. if (l1 != 41) // ','
  1668. {
  1669. break;
  1670. }
  1671. shift(41); // ','
  1672. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1673. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1674. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1675. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1676. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1677. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1678. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1679. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1680. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1681. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1682. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1683. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1684. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1685. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1686. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1687. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1688. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1689. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1690. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1691. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1692. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1693. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1694. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1695. // 'xquery' | '{' | '{|'
  1696. whitespace();
  1697. parse_ExprSingle();
  1698. }
  1699. eventHandler.endNonterminal("Expr", e0);
  1700. }
  1701. function try_Expr()
  1702. {
  1703. try_ExprSingle();
  1704. for (;;)
  1705. {
  1706. if (l1 != 41) // ','
  1707. {
  1708. break;
  1709. }
  1710. shiftT(41); // ','
  1711. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1712. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1713. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1714. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1715. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1716. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1717. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1718. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1719. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1720. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1721. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1722. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1723. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1724. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1725. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1726. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1727. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1728. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1729. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1730. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1731. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1732. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1733. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1734. // 'xquery' | '{' | '{|'
  1735. try_ExprSingle();
  1736. }
  1737. }
  1738. function parse_FLWORExpr()
  1739. {
  1740. eventHandler.startNonterminal("FLWORExpr", e0);
  1741. parse_InitialClause();
  1742. for (;;)
  1743. {
  1744. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  1745. // 'where'
  1746. if (l1 == 220) // 'return'
  1747. {
  1748. break;
  1749. }
  1750. whitespace();
  1751. parse_IntermediateClause();
  1752. }
  1753. whitespace();
  1754. parse_ReturnClause();
  1755. eventHandler.endNonterminal("FLWORExpr", e0);
  1756. }
  1757. function try_FLWORExpr()
  1758. {
  1759. try_InitialClause();
  1760. for (;;)
  1761. {
  1762. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  1763. // 'where'
  1764. if (l1 == 220) // 'return'
  1765. {
  1766. break;
  1767. }
  1768. try_IntermediateClause();
  1769. }
  1770. try_ReturnClause();
  1771. }
  1772. function parse_InitialClause()
  1773. {
  1774. eventHandler.startNonterminal("InitialClause", e0);
  1775. switch (l1)
  1776. {
  1777. case 137: // 'for'
  1778. lookahead2W(141); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  1779. break;
  1780. default:
  1781. lk = l1;
  1782. }
  1783. switch (lk)
  1784. {
  1785. case 16009: // 'for' '$'
  1786. parse_ForClause();
  1787. break;
  1788. case 174: // 'let'
  1789. parse_LetClause();
  1790. break;
  1791. default:
  1792. parse_WindowClause();
  1793. }
  1794. eventHandler.endNonterminal("InitialClause", e0);
  1795. }
  1796. function try_InitialClause()
  1797. {
  1798. switch (l1)
  1799. {
  1800. case 137: // 'for'
  1801. lookahead2W(141); // S^WS | '$' | '(:' | 'sliding' | 'tumbling'
  1802. break;
  1803. default:
  1804. lk = l1;
  1805. }
  1806. switch (lk)
  1807. {
  1808. case 16009: // 'for' '$'
  1809. try_ForClause();
  1810. break;
  1811. case 174: // 'let'
  1812. try_LetClause();
  1813. break;
  1814. default:
  1815. try_WindowClause();
  1816. }
  1817. }
  1818. function parse_IntermediateClause()
  1819. {
  1820. eventHandler.startNonterminal("IntermediateClause", e0);
  1821. switch (l1)
  1822. {
  1823. case 137: // 'for'
  1824. case 174: // 'let'
  1825. parse_InitialClause();
  1826. break;
  1827. case 266: // 'where'
  1828. parse_WhereClause();
  1829. break;
  1830. case 148: // 'group'
  1831. parse_GroupByClause();
  1832. break;
  1833. case 105: // 'count'
  1834. parse_CountClause();
  1835. break;
  1836. default:
  1837. parse_OrderByClause();
  1838. }
  1839. eventHandler.endNonterminal("IntermediateClause", e0);
  1840. }
  1841. function try_IntermediateClause()
  1842. {
  1843. switch (l1)
  1844. {
  1845. case 137: // 'for'
  1846. case 174: // 'let'
  1847. try_InitialClause();
  1848. break;
  1849. case 266: // 'where'
  1850. try_WhereClause();
  1851. break;
  1852. case 148: // 'group'
  1853. try_GroupByClause();
  1854. break;
  1855. case 105: // 'count'
  1856. try_CountClause();
  1857. break;
  1858. default:
  1859. try_OrderByClause();
  1860. }
  1861. }
  1862. function parse_ForClause()
  1863. {
  1864. eventHandler.startNonterminal("ForClause", e0);
  1865. shift(137); // 'for'
  1866. lookahead1W(21); // S^WS | '$' | '(:'
  1867. whitespace();
  1868. parse_ForBinding();
  1869. for (;;)
  1870. {
  1871. if (l1 != 41) // ','
  1872. {
  1873. break;
  1874. }
  1875. shift(41); // ','
  1876. lookahead1W(21); // S^WS | '$' | '(:'
  1877. whitespace();
  1878. parse_ForBinding();
  1879. }
  1880. eventHandler.endNonterminal("ForClause", e0);
  1881. }
  1882. function try_ForClause()
  1883. {
  1884. shiftT(137); // 'for'
  1885. lookahead1W(21); // S^WS | '$' | '(:'
  1886. try_ForBinding();
  1887. for (;;)
  1888. {
  1889. if (l1 != 41) // ','
  1890. {
  1891. break;
  1892. }
  1893. shiftT(41); // ','
  1894. lookahead1W(21); // S^WS | '$' | '(:'
  1895. try_ForBinding();
  1896. }
  1897. }
  1898. function parse_ForBinding()
  1899. {
  1900. eventHandler.startNonterminal("ForBinding", e0);
  1901. shift(31); // '$'
  1902. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1903. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1904. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1905. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1906. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1907. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1908. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1909. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1910. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1911. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1912. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1913. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1914. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1915. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1916. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1917. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1918. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1919. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1920. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1921. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1922. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1923. // 'xquery'
  1924. whitespace();
  1925. parse_VarName();
  1926. lookahead1W(164); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  1927. if (l1 == 79) // 'as'
  1928. {
  1929. whitespace();
  1930. parse_TypeDeclaration();
  1931. }
  1932. lookahead1W(158); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  1933. if (l1 == 72) // 'allowing'
  1934. {
  1935. whitespace();
  1936. parse_AllowingEmpty();
  1937. }
  1938. lookahead1W(150); // S^WS | '(:' | 'at' | 'in' | 'score'
  1939. if (l1 == 81) // 'at'
  1940. {
  1941. whitespace();
  1942. parse_PositionalVar();
  1943. }
  1944. lookahead1W(122); // S^WS | '(:' | 'in' | 'score'
  1945. if (l1 == 228) // 'score'
  1946. {
  1947. whitespace();
  1948. parse_FTScoreVar();
  1949. }
  1950. lookahead1W(53); // S^WS | '(:' | 'in'
  1951. shift(154); // 'in'
  1952. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  1953. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  1954. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  1955. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  1956. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  1957. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  1958. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  1959. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  1960. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  1961. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  1962. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  1963. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  1964. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  1965. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  1966. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  1967. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  1968. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1969. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1970. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  1971. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  1972. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  1973. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  1974. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  1975. // 'xquery' | '{' | '{|'
  1976. whitespace();
  1977. parse_ExprSingle();
  1978. eventHandler.endNonterminal("ForBinding", e0);
  1979. }
  1980. function try_ForBinding()
  1981. {
  1982. shiftT(31); // '$'
  1983. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  1984. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  1985. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  1986. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  1987. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  1988. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  1989. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  1990. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  1991. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  1992. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  1993. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  1994. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  1995. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  1996. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  1997. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  1998. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  1999. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2000. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2001. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2002. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2003. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2004. // 'xquery'
  2005. try_VarName();
  2006. lookahead1W(164); // S^WS | '(:' | 'allowing' | 'as' | 'at' | 'in' | 'score'
  2007. if (l1 == 79) // 'as'
  2008. {
  2009. try_TypeDeclaration();
  2010. }
  2011. lookahead1W(158); // S^WS | '(:' | 'allowing' | 'at' | 'in' | 'score'
  2012. if (l1 == 72) // 'allowing'
  2013. {
  2014. try_AllowingEmpty();
  2015. }
  2016. lookahead1W(150); // S^WS | '(:' | 'at' | 'in' | 'score'
  2017. if (l1 == 81) // 'at'
  2018. {
  2019. try_PositionalVar();
  2020. }
  2021. lookahead1W(122); // S^WS | '(:' | 'in' | 'score'
  2022. if (l1 == 228) // 'score'
  2023. {
  2024. try_FTScoreVar();
  2025. }
  2026. lookahead1W(53); // S^WS | '(:' | 'in'
  2027. shiftT(154); // 'in'
  2028. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2029. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2030. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2031. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2032. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2033. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2034. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2035. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2036. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2037. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2038. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2039. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2040. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2041. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2042. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2043. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2044. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2045. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2046. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2047. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2048. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2049. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2050. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2051. // 'xquery' | '{' | '{|'
  2052. try_ExprSingle();
  2053. }
  2054. function parse_AllowingEmpty()
  2055. {
  2056. eventHandler.startNonterminal("AllowingEmpty", e0);
  2057. shift(72); // 'allowing'
  2058. lookahead1W(49); // S^WS | '(:' | 'empty'
  2059. shift(123); // 'empty'
  2060. eventHandler.endNonterminal("AllowingEmpty", e0);
  2061. }
  2062. function try_AllowingEmpty()
  2063. {
  2064. shiftT(72); // 'allowing'
  2065. lookahead1W(49); // S^WS | '(:' | 'empty'
  2066. shiftT(123); // 'empty'
  2067. }
  2068. function parse_PositionalVar()
  2069. {
  2070. eventHandler.startNonterminal("PositionalVar", e0);
  2071. shift(81); // 'at'
  2072. lookahead1W(21); // S^WS | '$' | '(:'
  2073. shift(31); // '$'
  2074. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2075. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2076. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2077. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2078. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2079. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2080. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2081. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2082. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2083. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2084. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2085. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2086. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2087. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2088. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2089. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2090. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2091. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2092. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2093. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2094. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2095. // 'xquery'
  2096. whitespace();
  2097. parse_VarName();
  2098. eventHandler.endNonterminal("PositionalVar", e0);
  2099. }
  2100. function try_PositionalVar()
  2101. {
  2102. shiftT(81); // 'at'
  2103. lookahead1W(21); // S^WS | '$' | '(:'
  2104. shiftT(31); // '$'
  2105. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2106. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2107. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2108. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2109. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2110. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2111. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2112. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2113. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2114. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2115. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2116. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2117. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2118. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2119. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2120. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2121. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2122. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2123. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2124. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2125. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2126. // 'xquery'
  2127. try_VarName();
  2128. }
  2129. function parse_FTScoreVar()
  2130. {
  2131. eventHandler.startNonterminal("FTScoreVar", e0);
  2132. shift(228); // 'score'
  2133. lookahead1W(21); // S^WS | '$' | '(:'
  2134. shift(31); // '$'
  2135. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2136. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2137. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2138. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2139. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2140. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2141. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2142. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2143. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2144. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2145. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2146. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2147. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2148. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2149. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2150. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2151. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2152. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2153. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2154. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2155. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2156. // 'xquery'
  2157. whitespace();
  2158. parse_VarName();
  2159. eventHandler.endNonterminal("FTScoreVar", e0);
  2160. }
  2161. function try_FTScoreVar()
  2162. {
  2163. shiftT(228); // 'score'
  2164. lookahead1W(21); // S^WS | '$' | '(:'
  2165. shiftT(31); // '$'
  2166. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2167. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2168. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2169. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2170. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2171. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2172. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2173. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2174. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2175. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2176. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2177. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2178. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2179. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2180. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2181. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2182. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2183. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2184. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2185. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2186. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2187. // 'xquery'
  2188. try_VarName();
  2189. }
  2190. function parse_LetClause()
  2191. {
  2192. eventHandler.startNonterminal("LetClause", e0);
  2193. shift(174); // 'let'
  2194. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  2195. whitespace();
  2196. parse_LetBinding();
  2197. for (;;)
  2198. {
  2199. if (l1 != 41) // ','
  2200. {
  2201. break;
  2202. }
  2203. shift(41); // ','
  2204. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  2205. whitespace();
  2206. parse_LetBinding();
  2207. }
  2208. eventHandler.endNonterminal("LetClause", e0);
  2209. }
  2210. function try_LetClause()
  2211. {
  2212. shiftT(174); // 'let'
  2213. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  2214. try_LetBinding();
  2215. for (;;)
  2216. {
  2217. if (l1 != 41) // ','
  2218. {
  2219. break;
  2220. }
  2221. shiftT(41); // ','
  2222. lookahead1W(96); // S^WS | '$' | '(:' | 'score'
  2223. try_LetBinding();
  2224. }
  2225. }
  2226. function parse_LetBinding()
  2227. {
  2228. eventHandler.startNonterminal("LetBinding", e0);
  2229. switch (l1)
  2230. {
  2231. case 31: // '$'
  2232. shift(31); // '$'
  2233. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2234. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2235. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2236. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2237. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2238. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2239. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2240. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2241. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2242. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2243. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2244. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2245. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2246. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2247. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2248. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2249. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2250. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2251. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2252. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2253. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2254. // 'xquery'
  2255. whitespace();
  2256. parse_VarName();
  2257. lookahead1W(105); // S^WS | '(:' | ':=' | 'as'
  2258. if (l1 == 79) // 'as'
  2259. {
  2260. whitespace();
  2261. parse_TypeDeclaration();
  2262. }
  2263. break;
  2264. default:
  2265. parse_FTScoreVar();
  2266. }
  2267. lookahead1W(27); // S^WS | '(:' | ':='
  2268. shift(52); // ':='
  2269. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2270. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2271. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2272. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2273. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2274. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2275. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2276. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2277. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2278. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2279. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2280. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2281. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2282. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2283. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2284. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2285. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2286. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2287. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2288. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2289. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2290. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2291. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2292. // 'xquery' | '{' | '{|'
  2293. whitespace();
  2294. parse_ExprSingle();
  2295. eventHandler.endNonterminal("LetBinding", e0);
  2296. }
  2297. function try_LetBinding()
  2298. {
  2299. switch (l1)
  2300. {
  2301. case 31: // '$'
  2302. shiftT(31); // '$'
  2303. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2304. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2305. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2306. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2307. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2308. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2309. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2310. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2311. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2312. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2313. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2314. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2315. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2316. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2317. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2318. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2319. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2320. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2321. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2322. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2323. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2324. // 'xquery'
  2325. try_VarName();
  2326. lookahead1W(105); // S^WS | '(:' | ':=' | 'as'
  2327. if (l1 == 79) // 'as'
  2328. {
  2329. try_TypeDeclaration();
  2330. }
  2331. break;
  2332. default:
  2333. try_FTScoreVar();
  2334. }
  2335. lookahead1W(27); // S^WS | '(:' | ':='
  2336. shiftT(52); // ':='
  2337. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2338. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2339. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2340. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2341. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2342. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2343. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2344. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2345. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2346. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2347. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2348. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2349. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2350. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2351. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2352. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2353. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2354. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2355. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2356. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2357. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2358. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2359. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2360. // 'xquery' | '{' | '{|'
  2361. try_ExprSingle();
  2362. }
  2363. function parse_WindowClause()
  2364. {
  2365. eventHandler.startNonterminal("WindowClause", e0);
  2366. shift(137); // 'for'
  2367. lookahead1W(135); // S^WS | '(:' | 'sliding' | 'tumbling'
  2368. switch (l1)
  2369. {
  2370. case 251: // 'tumbling'
  2371. whitespace();
  2372. parse_TumblingWindowClause();
  2373. break;
  2374. default:
  2375. whitespace();
  2376. parse_SlidingWindowClause();
  2377. }
  2378. eventHandler.endNonterminal("WindowClause", e0);
  2379. }
  2380. function try_WindowClause()
  2381. {
  2382. shiftT(137); // 'for'
  2383. lookahead1W(135); // S^WS | '(:' | 'sliding' | 'tumbling'
  2384. switch (l1)
  2385. {
  2386. case 251: // 'tumbling'
  2387. try_TumblingWindowClause();
  2388. break;
  2389. default:
  2390. try_SlidingWindowClause();
  2391. }
  2392. }
  2393. function parse_TumblingWindowClause()
  2394. {
  2395. eventHandler.startNonterminal("TumblingWindowClause", e0);
  2396. shift(251); // 'tumbling'
  2397. lookahead1W(85); // S^WS | '(:' | 'window'
  2398. shift(269); // 'window'
  2399. lookahead1W(21); // S^WS | '$' | '(:'
  2400. shift(31); // '$'
  2401. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2402. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2403. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2404. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2405. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2406. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2407. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2408. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2409. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2410. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2411. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2412. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2413. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2414. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2415. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2416. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2417. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2418. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2419. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2420. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2421. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2422. // 'xquery'
  2423. whitespace();
  2424. parse_VarName();
  2425. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  2426. if (l1 == 79) // 'as'
  2427. {
  2428. whitespace();
  2429. parse_TypeDeclaration();
  2430. }
  2431. lookahead1W(53); // S^WS | '(:' | 'in'
  2432. shift(154); // 'in'
  2433. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2434. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2435. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2436. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2437. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2438. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2439. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2440. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2441. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2442. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2443. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2444. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2445. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2446. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2447. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2448. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2449. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2450. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2451. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2452. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2453. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2454. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2455. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2456. // 'xquery' | '{' | '{|'
  2457. whitespace();
  2458. parse_ExprSingle();
  2459. whitespace();
  2460. parse_WindowStartCondition();
  2461. if (l1 == 126 // 'end'
  2462. || l1 == 198) // 'only'
  2463. {
  2464. whitespace();
  2465. parse_WindowEndCondition();
  2466. }
  2467. eventHandler.endNonterminal("TumblingWindowClause", e0);
  2468. }
  2469. function try_TumblingWindowClause()
  2470. {
  2471. shiftT(251); // 'tumbling'
  2472. lookahead1W(85); // S^WS | '(:' | 'window'
  2473. shiftT(269); // 'window'
  2474. lookahead1W(21); // S^WS | '$' | '(:'
  2475. shiftT(31); // '$'
  2476. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2477. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2478. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2479. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2480. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2481. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2482. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2483. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2484. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2485. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2486. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2487. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2488. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2489. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2490. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2491. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2492. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2493. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2494. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2495. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2496. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2497. // 'xquery'
  2498. try_VarName();
  2499. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  2500. if (l1 == 79) // 'as'
  2501. {
  2502. try_TypeDeclaration();
  2503. }
  2504. lookahead1W(53); // S^WS | '(:' | 'in'
  2505. shiftT(154); // 'in'
  2506. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2507. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2508. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2509. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2510. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2511. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2512. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2513. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2514. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2515. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2516. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2517. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2518. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2519. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2520. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2521. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2522. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2523. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2524. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2525. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2526. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2527. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2528. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2529. // 'xquery' | '{' | '{|'
  2530. try_ExprSingle();
  2531. try_WindowStartCondition();
  2532. if (l1 == 126 // 'end'
  2533. || l1 == 198) // 'only'
  2534. {
  2535. try_WindowEndCondition();
  2536. }
  2537. }
  2538. function parse_SlidingWindowClause()
  2539. {
  2540. eventHandler.startNonterminal("SlidingWindowClause", e0);
  2541. shift(234); // 'sliding'
  2542. lookahead1W(85); // S^WS | '(:' | 'window'
  2543. shift(269); // 'window'
  2544. lookahead1W(21); // S^WS | '$' | '(:'
  2545. shift(31); // '$'
  2546. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2547. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2548. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2549. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2550. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2551. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2552. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2553. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2554. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2555. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2556. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2557. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2558. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2559. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2560. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2561. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2562. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2563. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2564. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2565. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2566. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2567. // 'xquery'
  2568. whitespace();
  2569. parse_VarName();
  2570. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  2571. if (l1 == 79) // 'as'
  2572. {
  2573. whitespace();
  2574. parse_TypeDeclaration();
  2575. }
  2576. lookahead1W(53); // S^WS | '(:' | 'in'
  2577. shift(154); // 'in'
  2578. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2579. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2580. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2581. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2582. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2583. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2584. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2585. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2586. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2587. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2588. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2589. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2590. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2591. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2592. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2593. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2594. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2595. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2596. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2597. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2598. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2599. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2600. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2601. // 'xquery' | '{' | '{|'
  2602. whitespace();
  2603. parse_ExprSingle();
  2604. whitespace();
  2605. parse_WindowStartCondition();
  2606. whitespace();
  2607. parse_WindowEndCondition();
  2608. eventHandler.endNonterminal("SlidingWindowClause", e0);
  2609. }
  2610. function try_SlidingWindowClause()
  2611. {
  2612. shiftT(234); // 'sliding'
  2613. lookahead1W(85); // S^WS | '(:' | 'window'
  2614. shiftT(269); // 'window'
  2615. lookahead1W(21); // S^WS | '$' | '(:'
  2616. shiftT(31); // '$'
  2617. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2618. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2619. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2620. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2621. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2622. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2623. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2624. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2625. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2626. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2627. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2628. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2629. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2630. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2631. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2632. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2633. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2634. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2635. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2636. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2637. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2638. // 'xquery'
  2639. try_VarName();
  2640. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  2641. if (l1 == 79) // 'as'
  2642. {
  2643. try_TypeDeclaration();
  2644. }
  2645. lookahead1W(53); // S^WS | '(:' | 'in'
  2646. shiftT(154); // 'in'
  2647. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2648. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2649. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2650. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2651. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2652. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2653. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2654. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2655. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2656. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2657. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2658. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2659. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2660. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2661. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2662. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2663. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2664. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2665. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2666. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2667. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2668. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2669. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2670. // 'xquery' | '{' | '{|'
  2671. try_ExprSingle();
  2672. try_WindowStartCondition();
  2673. try_WindowEndCondition();
  2674. }
  2675. function parse_WindowStartCondition()
  2676. {
  2677. eventHandler.startNonterminal("WindowStartCondition", e0);
  2678. shift(237); // 'start'
  2679. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  2680. whitespace();
  2681. parse_WindowVars();
  2682. lookahead1W(83); // S^WS | '(:' | 'when'
  2683. shift(265); // 'when'
  2684. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2685. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2686. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2687. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2688. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2689. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2690. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2691. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2692. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2693. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2694. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2695. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2696. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2697. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2698. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2699. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2700. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2701. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2702. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2703. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2704. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2705. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2706. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2707. // 'xquery' | '{' | '{|'
  2708. whitespace();
  2709. parse_ExprSingle();
  2710. eventHandler.endNonterminal("WindowStartCondition", e0);
  2711. }
  2712. function try_WindowStartCondition()
  2713. {
  2714. shiftT(237); // 'start'
  2715. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  2716. try_WindowVars();
  2717. lookahead1W(83); // S^WS | '(:' | 'when'
  2718. shiftT(265); // 'when'
  2719. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2720. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2721. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2722. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2723. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2724. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2725. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2726. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2727. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2728. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2729. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2730. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2731. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2732. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2733. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2734. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2735. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2736. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2737. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2738. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2739. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2740. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2741. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2742. // 'xquery' | '{' | '{|'
  2743. try_ExprSingle();
  2744. }
  2745. function parse_WindowEndCondition()
  2746. {
  2747. eventHandler.startNonterminal("WindowEndCondition", e0);
  2748. if (l1 == 198) // 'only'
  2749. {
  2750. shift(198); // 'only'
  2751. }
  2752. lookahead1W(50); // S^WS | '(:' | 'end'
  2753. shift(126); // 'end'
  2754. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  2755. whitespace();
  2756. parse_WindowVars();
  2757. lookahead1W(83); // S^WS | '(:' | 'when'
  2758. shift(265); // 'when'
  2759. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2760. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2761. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2762. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2763. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2764. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2765. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2766. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2767. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2768. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2769. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2770. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2771. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2772. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2773. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2774. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2775. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2776. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2777. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2778. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2779. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2780. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2781. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2782. // 'xquery' | '{' | '{|'
  2783. whitespace();
  2784. parse_ExprSingle();
  2785. eventHandler.endNonterminal("WindowEndCondition", e0);
  2786. }
  2787. function try_WindowEndCondition()
  2788. {
  2789. if (l1 == 198) // 'only'
  2790. {
  2791. shiftT(198); // 'only'
  2792. }
  2793. lookahead1W(50); // S^WS | '(:' | 'end'
  2794. shiftT(126); // 'end'
  2795. lookahead1W(163); // S^WS | '$' | '(:' | 'at' | 'next' | 'previous' | 'when'
  2796. try_WindowVars();
  2797. lookahead1W(83); // S^WS | '(:' | 'when'
  2798. shiftT(265); // 'when'
  2799. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  2800. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  2801. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  2802. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  2803. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  2804. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  2805. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  2806. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  2807. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  2808. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  2809. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  2810. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  2811. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  2812. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  2813. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  2814. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  2815. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2816. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2817. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2818. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2819. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2820. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2821. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2822. // 'xquery' | '{' | '{|'
  2823. try_ExprSingle();
  2824. }
  2825. function parse_WindowVars()
  2826. {
  2827. eventHandler.startNonterminal("WindowVars", e0);
  2828. if (l1 == 31) // '$'
  2829. {
  2830. shift(31); // '$'
  2831. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2832. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2833. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2834. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2835. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2836. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2837. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2838. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2839. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2840. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2841. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2842. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2843. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2844. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2845. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2846. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2847. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2848. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2849. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2850. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2851. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2852. // 'xquery'
  2853. whitespace();
  2854. parse_CurrentItem();
  2855. }
  2856. lookahead1W(159); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  2857. if (l1 == 81) // 'at'
  2858. {
  2859. whitespace();
  2860. parse_PositionalVar();
  2861. }
  2862. lookahead1W(153); // S^WS | '(:' | 'next' | 'previous' | 'when'
  2863. if (l1 == 215) // 'previous'
  2864. {
  2865. shift(215); // 'previous'
  2866. lookahead1W(21); // S^WS | '$' | '(:'
  2867. shift(31); // '$'
  2868. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2869. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2870. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2871. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2872. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2873. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2874. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2875. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2876. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2877. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2878. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2879. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2880. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2881. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2882. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2883. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2884. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2885. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2886. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2887. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2888. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2889. // 'xquery'
  2890. whitespace();
  2891. parse_PreviousItem();
  2892. }
  2893. lookahead1W(127); // S^WS | '(:' | 'next' | 'when'
  2894. if (l1 == 187) // 'next'
  2895. {
  2896. shift(187); // 'next'
  2897. lookahead1W(21); // S^WS | '$' | '(:'
  2898. shift(31); // '$'
  2899. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2900. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2901. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2902. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2903. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2904. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2905. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2906. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2907. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2908. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2909. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2910. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2911. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2912. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2913. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2914. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2915. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2916. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2917. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2918. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2919. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2920. // 'xquery'
  2921. whitespace();
  2922. parse_NextItem();
  2923. }
  2924. eventHandler.endNonterminal("WindowVars", e0);
  2925. }
  2926. function try_WindowVars()
  2927. {
  2928. if (l1 == 31) // '$'
  2929. {
  2930. shiftT(31); // '$'
  2931. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2932. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2933. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2934. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2935. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2936. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2937. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2938. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2939. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2940. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2941. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2942. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2943. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2944. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2945. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2946. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2947. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2948. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2949. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2950. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2951. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2952. // 'xquery'
  2953. try_CurrentItem();
  2954. }
  2955. lookahead1W(159); // S^WS | '(:' | 'at' | 'next' | 'previous' | 'when'
  2956. if (l1 == 81) // 'at'
  2957. {
  2958. try_PositionalVar();
  2959. }
  2960. lookahead1W(153); // S^WS | '(:' | 'next' | 'previous' | 'when'
  2961. if (l1 == 215) // 'previous'
  2962. {
  2963. shiftT(215); // 'previous'
  2964. lookahead1W(21); // S^WS | '$' | '(:'
  2965. shiftT(31); // '$'
  2966. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2967. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2968. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2969. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  2970. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  2971. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  2972. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  2973. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  2974. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  2975. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  2976. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  2977. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  2978. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  2979. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  2980. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  2981. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  2982. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  2983. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  2984. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  2985. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  2986. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  2987. // 'xquery'
  2988. try_PreviousItem();
  2989. }
  2990. lookahead1W(127); // S^WS | '(:' | 'next' | 'when'
  2991. if (l1 == 187) // 'next'
  2992. {
  2993. shiftT(187); // 'next'
  2994. lookahead1W(21); // S^WS | '$' | '(:'
  2995. shiftT(31); // '$'
  2996. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  2997. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  2998. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  2999. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3000. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3001. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3002. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3003. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3004. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3005. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3006. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3007. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3008. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3009. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3010. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3011. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3012. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3013. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3014. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3015. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3016. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3017. // 'xquery'
  3018. try_NextItem();
  3019. }
  3020. }
  3021. function parse_CurrentItem()
  3022. {
  3023. eventHandler.startNonterminal("CurrentItem", e0);
  3024. parse_EQName();
  3025. eventHandler.endNonterminal("CurrentItem", e0);
  3026. }
  3027. function try_CurrentItem()
  3028. {
  3029. try_EQName();
  3030. }
  3031. function parse_PreviousItem()
  3032. {
  3033. eventHandler.startNonterminal("PreviousItem", e0);
  3034. parse_EQName();
  3035. eventHandler.endNonterminal("PreviousItem", e0);
  3036. }
  3037. function try_PreviousItem()
  3038. {
  3039. try_EQName();
  3040. }
  3041. function parse_NextItem()
  3042. {
  3043. eventHandler.startNonterminal("NextItem", e0);
  3044. parse_EQName();
  3045. eventHandler.endNonterminal("NextItem", e0);
  3046. }
  3047. function try_NextItem()
  3048. {
  3049. try_EQName();
  3050. }
  3051. function parse_CountClause()
  3052. {
  3053. eventHandler.startNonterminal("CountClause", e0);
  3054. shift(105); // 'count'
  3055. lookahead1W(21); // S^WS | '$' | '(:'
  3056. shift(31); // '$'
  3057. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3058. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3059. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3060. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3061. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3062. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3063. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3064. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3065. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3066. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3067. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3068. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3069. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3070. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3071. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3072. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3073. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3074. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3075. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3076. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3077. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3078. // 'xquery'
  3079. whitespace();
  3080. parse_VarName();
  3081. eventHandler.endNonterminal("CountClause", e0);
  3082. }
  3083. function try_CountClause()
  3084. {
  3085. shiftT(105); // 'count'
  3086. lookahead1W(21); // S^WS | '$' | '(:'
  3087. shiftT(31); // '$'
  3088. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3089. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3090. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3091. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3092. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3093. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3094. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3095. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3096. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3097. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3098. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3099. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3100. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3101. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3102. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3103. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3104. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3105. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3106. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3107. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3108. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3109. // 'xquery'
  3110. try_VarName();
  3111. }
  3112. function parse_WhereClause()
  3113. {
  3114. eventHandler.startNonterminal("WhereClause", e0);
  3115. shift(266); // 'where'
  3116. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3117. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3118. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3119. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3120. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3121. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3122. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3123. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3124. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3125. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3126. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3127. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3128. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3129. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3130. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3131. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3132. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3133. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3134. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3135. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3136. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3137. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3138. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3139. // 'xquery' | '{' | '{|'
  3140. whitespace();
  3141. parse_ExprSingle();
  3142. eventHandler.endNonterminal("WhereClause", e0);
  3143. }
  3144. function try_WhereClause()
  3145. {
  3146. shiftT(266); // 'where'
  3147. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3148. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3149. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3150. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3151. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3152. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3153. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3154. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3155. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3156. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3157. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3158. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3159. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3160. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3161. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3162. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3163. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3164. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3165. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3166. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3167. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3168. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3169. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3170. // 'xquery' | '{' | '{|'
  3171. try_ExprSingle();
  3172. }
  3173. function parse_GroupByClause()
  3174. {
  3175. eventHandler.startNonterminal("GroupByClause", e0);
  3176. shift(148); // 'group'
  3177. lookahead1W(34); // S^WS | '(:' | 'by'
  3178. shift(87); // 'by'
  3179. lookahead1W(21); // S^WS | '$' | '(:'
  3180. whitespace();
  3181. parse_GroupingSpecList();
  3182. eventHandler.endNonterminal("GroupByClause", e0);
  3183. }
  3184. function try_GroupByClause()
  3185. {
  3186. shiftT(148); // 'group'
  3187. lookahead1W(34); // S^WS | '(:' | 'by'
  3188. shiftT(87); // 'by'
  3189. lookahead1W(21); // S^WS | '$' | '(:'
  3190. try_GroupingSpecList();
  3191. }
  3192. function parse_GroupingSpecList()
  3193. {
  3194. eventHandler.startNonterminal("GroupingSpecList", e0);
  3195. parse_GroupingSpec();
  3196. for (;;)
  3197. {
  3198. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  3199. // 'stable' | 'where'
  3200. if (l1 != 41) // ','
  3201. {
  3202. break;
  3203. }
  3204. shift(41); // ','
  3205. lookahead1W(21); // S^WS | '$' | '(:'
  3206. whitespace();
  3207. parse_GroupingSpec();
  3208. }
  3209. eventHandler.endNonterminal("GroupingSpecList", e0);
  3210. }
  3211. function try_GroupingSpecList()
  3212. {
  3213. try_GroupingSpec();
  3214. for (;;)
  3215. {
  3216. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  3217. // 'stable' | 'where'
  3218. if (l1 != 41) // ','
  3219. {
  3220. break;
  3221. }
  3222. shiftT(41); // ','
  3223. lookahead1W(21); // S^WS | '$' | '(:'
  3224. try_GroupingSpec();
  3225. }
  3226. }
  3227. function parse_GroupingSpec()
  3228. {
  3229. eventHandler.startNonterminal("GroupingSpec", e0);
  3230. parse_GroupingVariable();
  3231. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  3232. // 'let' | 'order' | 'return' | 'stable' | 'where'
  3233. if (l1 == 52 // ':='
  3234. || l1 == 79) // 'as'
  3235. {
  3236. if (l1 == 79) // 'as'
  3237. {
  3238. whitespace();
  3239. parse_TypeDeclaration();
  3240. }
  3241. lookahead1W(27); // S^WS | '(:' | ':='
  3242. shift(52); // ':='
  3243. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3244. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3245. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3246. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3247. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3248. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3249. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3250. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3251. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3252. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3253. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3254. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3255. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3256. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3257. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3258. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3259. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3260. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3261. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3262. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3263. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3264. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3265. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3266. // 'xquery' | '{' | '{|'
  3267. whitespace();
  3268. parse_ExprSingle();
  3269. }
  3270. if (l1 == 94) // 'collation'
  3271. {
  3272. shift(94); // 'collation'
  3273. lookahead1W(15); // URILiteral | S^WS | '(:'
  3274. shift(7); // URILiteral
  3275. }
  3276. eventHandler.endNonterminal("GroupingSpec", e0);
  3277. }
  3278. function try_GroupingSpec()
  3279. {
  3280. try_GroupingVariable();
  3281. lookahead1W(182); // S^WS | '(:' | ',' | ':=' | 'as' | 'collation' | 'count' | 'for' | 'group' |
  3282. // 'let' | 'order' | 'return' | 'stable' | 'where'
  3283. if (l1 == 52 // ':='
  3284. || l1 == 79) // 'as'
  3285. {
  3286. if (l1 == 79) // 'as'
  3287. {
  3288. try_TypeDeclaration();
  3289. }
  3290. lookahead1W(27); // S^WS | '(:' | ':='
  3291. shiftT(52); // ':='
  3292. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3293. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3294. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3295. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3296. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3297. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3298. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3299. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3300. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3301. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3302. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3303. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3304. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3305. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3306. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3307. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3308. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3309. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3310. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3311. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3312. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3313. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3314. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3315. // 'xquery' | '{' | '{|'
  3316. try_ExprSingle();
  3317. }
  3318. if (l1 == 94) // 'collation'
  3319. {
  3320. shiftT(94); // 'collation'
  3321. lookahead1W(15); // URILiteral | S^WS | '(:'
  3322. shiftT(7); // URILiteral
  3323. }
  3324. }
  3325. function parse_GroupingVariable()
  3326. {
  3327. eventHandler.startNonterminal("GroupingVariable", e0);
  3328. shift(31); // '$'
  3329. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3330. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3331. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3332. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3333. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3334. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3335. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3336. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3337. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3338. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3339. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3340. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3341. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3342. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3343. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3344. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3345. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3346. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3347. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3348. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3349. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3350. // 'xquery'
  3351. whitespace();
  3352. parse_VarName();
  3353. eventHandler.endNonterminal("GroupingVariable", e0);
  3354. }
  3355. function try_GroupingVariable()
  3356. {
  3357. shiftT(31); // '$'
  3358. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3359. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3360. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3361. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3362. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3363. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3364. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3365. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3366. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3367. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3368. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3369. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3370. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3371. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3372. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3373. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3374. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3375. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3376. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3377. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3378. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3379. // 'xquery'
  3380. try_VarName();
  3381. }
  3382. function parse_OrderByClause()
  3383. {
  3384. eventHandler.startNonterminal("OrderByClause", e0);
  3385. switch (l1)
  3386. {
  3387. case 201: // 'order'
  3388. shift(201); // 'order'
  3389. lookahead1W(34); // S^WS | '(:' | 'by'
  3390. shift(87); // 'by'
  3391. break;
  3392. default:
  3393. shift(236); // 'stable'
  3394. lookahead1W(67); // S^WS | '(:' | 'order'
  3395. shift(201); // 'order'
  3396. lookahead1W(34); // S^WS | '(:' | 'by'
  3397. shift(87); // 'by'
  3398. }
  3399. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3400. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3401. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3402. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3403. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3404. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3405. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3406. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3407. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3408. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3409. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3410. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3411. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3412. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3413. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3414. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3415. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3416. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3417. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3418. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3419. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3420. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3421. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3422. // 'xquery' | '{' | '{|'
  3423. whitespace();
  3424. parse_OrderSpecList();
  3425. eventHandler.endNonterminal("OrderByClause", e0);
  3426. }
  3427. function try_OrderByClause()
  3428. {
  3429. switch (l1)
  3430. {
  3431. case 201: // 'order'
  3432. shiftT(201); // 'order'
  3433. lookahead1W(34); // S^WS | '(:' | 'by'
  3434. shiftT(87); // 'by'
  3435. break;
  3436. default:
  3437. shiftT(236); // 'stable'
  3438. lookahead1W(67); // S^WS | '(:' | 'order'
  3439. shiftT(201); // 'order'
  3440. lookahead1W(34); // S^WS | '(:' | 'by'
  3441. shiftT(87); // 'by'
  3442. }
  3443. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3444. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3445. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3446. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3447. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3448. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3449. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3450. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3451. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3452. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3453. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3454. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3455. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3456. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3457. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3458. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3459. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3460. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3461. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3462. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3463. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3464. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3465. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3466. // 'xquery' | '{' | '{|'
  3467. try_OrderSpecList();
  3468. }
  3469. function parse_OrderSpecList()
  3470. {
  3471. eventHandler.startNonterminal("OrderSpecList", e0);
  3472. parse_OrderSpec();
  3473. for (;;)
  3474. {
  3475. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  3476. // 'stable' | 'where'
  3477. if (l1 != 41) // ','
  3478. {
  3479. break;
  3480. }
  3481. shift(41); // ','
  3482. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3483. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3484. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3485. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3486. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3487. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3488. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3489. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3490. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3491. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3492. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3493. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3494. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3495. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3496. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3497. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3498. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3499. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3500. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3501. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3502. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3503. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3504. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3505. // 'xquery' | '{' | '{|'
  3506. whitespace();
  3507. parse_OrderSpec();
  3508. }
  3509. eventHandler.endNonterminal("OrderSpecList", e0);
  3510. }
  3511. function try_OrderSpecList()
  3512. {
  3513. try_OrderSpec();
  3514. for (;;)
  3515. {
  3516. lookahead1W(176); // S^WS | '(:' | ',' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' |
  3517. // 'stable' | 'where'
  3518. if (l1 != 41) // ','
  3519. {
  3520. break;
  3521. }
  3522. shiftT(41); // ','
  3523. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3524. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3525. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3526. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3527. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3528. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3529. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3530. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3531. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3532. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3533. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3534. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3535. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3536. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3537. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3538. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3539. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3540. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3541. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3542. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3543. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3544. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3545. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3546. // 'xquery' | '{' | '{|'
  3547. try_OrderSpec();
  3548. }
  3549. }
  3550. function parse_OrderSpec()
  3551. {
  3552. eventHandler.startNonterminal("OrderSpec", e0);
  3553. parse_ExprSingle();
  3554. whitespace();
  3555. parse_OrderModifier();
  3556. eventHandler.endNonterminal("OrderSpec", e0);
  3557. }
  3558. function try_OrderSpec()
  3559. {
  3560. try_ExprSingle();
  3561. try_OrderModifier();
  3562. }
  3563. function parse_OrderModifier()
  3564. {
  3565. eventHandler.startNonterminal("OrderModifier", e0);
  3566. if (l1 == 80 // 'ascending'
  3567. || l1 == 113) // 'descending'
  3568. {
  3569. switch (l1)
  3570. {
  3571. case 80: // 'ascending'
  3572. shift(80); // 'ascending'
  3573. break;
  3574. default:
  3575. shift(113); // 'descending'
  3576. }
  3577. }
  3578. lookahead1W(179); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  3579. // 'order' | 'return' | 'stable' | 'where'
  3580. if (l1 == 123) // 'empty'
  3581. {
  3582. shift(123); // 'empty'
  3583. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  3584. switch (l1)
  3585. {
  3586. case 147: // 'greatest'
  3587. shift(147); // 'greatest'
  3588. break;
  3589. default:
  3590. shift(173); // 'least'
  3591. }
  3592. }
  3593. lookahead1W(177); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  3594. // 'return' | 'stable' | 'where'
  3595. if (l1 == 94) // 'collation'
  3596. {
  3597. shift(94); // 'collation'
  3598. lookahead1W(15); // URILiteral | S^WS | '(:'
  3599. shift(7); // URILiteral
  3600. }
  3601. eventHandler.endNonterminal("OrderModifier", e0);
  3602. }
  3603. function try_OrderModifier()
  3604. {
  3605. if (l1 == 80 // 'ascending'
  3606. || l1 == 113) // 'descending'
  3607. {
  3608. switch (l1)
  3609. {
  3610. case 80: // 'ascending'
  3611. shiftT(80); // 'ascending'
  3612. break;
  3613. default:
  3614. shiftT(113); // 'descending'
  3615. }
  3616. }
  3617. lookahead1W(179); // S^WS | '(:' | ',' | 'collation' | 'count' | 'empty' | 'for' | 'group' | 'let' |
  3618. // 'order' | 'return' | 'stable' | 'where'
  3619. if (l1 == 123) // 'empty'
  3620. {
  3621. shiftT(123); // 'empty'
  3622. lookahead1W(121); // S^WS | '(:' | 'greatest' | 'least'
  3623. switch (l1)
  3624. {
  3625. case 147: // 'greatest'
  3626. shiftT(147); // 'greatest'
  3627. break;
  3628. default:
  3629. shiftT(173); // 'least'
  3630. }
  3631. }
  3632. lookahead1W(177); // S^WS | '(:' | ',' | 'collation' | 'count' | 'for' | 'group' | 'let' | 'order' |
  3633. // 'return' | 'stable' | 'where'
  3634. if (l1 == 94) // 'collation'
  3635. {
  3636. shiftT(94); // 'collation'
  3637. lookahead1W(15); // URILiteral | S^WS | '(:'
  3638. shiftT(7); // URILiteral
  3639. }
  3640. }
  3641. function parse_ReturnClause()
  3642. {
  3643. eventHandler.startNonterminal("ReturnClause", e0);
  3644. shift(220); // 'return'
  3645. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3646. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3647. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3648. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3649. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3650. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3651. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3652. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3653. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3654. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3655. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3656. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3657. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3658. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3659. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3660. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3661. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3662. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3663. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3664. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3665. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3666. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3667. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3668. // 'xquery' | '{' | '{|'
  3669. whitespace();
  3670. parse_ExprSingle();
  3671. eventHandler.endNonterminal("ReturnClause", e0);
  3672. }
  3673. function try_ReturnClause()
  3674. {
  3675. shiftT(220); // 'return'
  3676. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3677. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3678. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3679. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3680. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3681. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3682. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3683. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3684. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3685. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3686. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3687. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3688. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3689. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3690. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3691. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3692. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3693. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3694. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3695. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3696. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3697. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3698. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3699. // 'xquery' | '{' | '{|'
  3700. try_ExprSingle();
  3701. }
  3702. function parse_QuantifiedExpr()
  3703. {
  3704. eventHandler.startNonterminal("QuantifiedExpr", e0);
  3705. switch (l1)
  3706. {
  3707. case 235: // 'some'
  3708. shift(235); // 'some'
  3709. break;
  3710. default:
  3711. shift(129); // 'every'
  3712. }
  3713. lookahead1W(21); // S^WS | '$' | '(:'
  3714. shift(31); // '$'
  3715. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3716. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3717. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3718. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3719. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3720. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3721. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3722. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3723. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3724. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3725. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3726. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3727. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3728. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3729. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3730. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3731. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3732. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3733. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3734. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3735. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3736. // 'xquery'
  3737. whitespace();
  3738. parse_VarName();
  3739. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  3740. if (l1 == 79) // 'as'
  3741. {
  3742. whitespace();
  3743. parse_TypeDeclaration();
  3744. }
  3745. lookahead1W(53); // S^WS | '(:' | 'in'
  3746. shift(154); // 'in'
  3747. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3748. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3749. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3750. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3751. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3752. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3753. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3754. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3755. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3756. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3757. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3758. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3759. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3760. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3761. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3762. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3763. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3764. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3765. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3766. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3767. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3768. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3769. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3770. // 'xquery' | '{' | '{|'
  3771. whitespace();
  3772. parse_ExprSingle();
  3773. for (;;)
  3774. {
  3775. if (l1 != 41) // ','
  3776. {
  3777. break;
  3778. }
  3779. shift(41); // ','
  3780. lookahead1W(21); // S^WS | '$' | '(:'
  3781. shift(31); // '$'
  3782. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3783. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3784. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3785. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3786. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3787. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3788. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3789. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3790. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3791. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3792. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3793. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3794. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3795. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3796. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3797. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3798. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3799. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3800. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3801. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3802. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3803. // 'xquery'
  3804. whitespace();
  3805. parse_VarName();
  3806. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  3807. if (l1 == 79) // 'as'
  3808. {
  3809. whitespace();
  3810. parse_TypeDeclaration();
  3811. }
  3812. lookahead1W(53); // S^WS | '(:' | 'in'
  3813. shift(154); // 'in'
  3814. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3815. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3816. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3817. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3818. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3819. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3820. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3821. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3822. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3823. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3824. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3825. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3826. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3827. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3828. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3829. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3830. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3831. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3832. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3833. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3834. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3835. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3836. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3837. // 'xquery' | '{' | '{|'
  3838. whitespace();
  3839. parse_ExprSingle();
  3840. }
  3841. shift(224); // 'satisfies'
  3842. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3843. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3844. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3845. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3846. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3847. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3848. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3849. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3850. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3851. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3852. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3853. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3854. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3855. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3856. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3857. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3858. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3859. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3860. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3861. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3862. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3863. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3864. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3865. // 'xquery' | '{' | '{|'
  3866. whitespace();
  3867. parse_ExprSingle();
  3868. eventHandler.endNonterminal("QuantifiedExpr", e0);
  3869. }
  3870. function try_QuantifiedExpr()
  3871. {
  3872. switch (l1)
  3873. {
  3874. case 235: // 'some'
  3875. shiftT(235); // 'some'
  3876. break;
  3877. default:
  3878. shiftT(129); // 'every'
  3879. }
  3880. lookahead1W(21); // S^WS | '$' | '(:'
  3881. shiftT(31); // '$'
  3882. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3883. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3884. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3885. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3886. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3887. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3888. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3889. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3890. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3891. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3892. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3893. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3894. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3895. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3896. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3897. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3898. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3899. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3900. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3901. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3902. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3903. // 'xquery'
  3904. try_VarName();
  3905. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  3906. if (l1 == 79) // 'as'
  3907. {
  3908. try_TypeDeclaration();
  3909. }
  3910. lookahead1W(53); // S^WS | '(:' | 'in'
  3911. shiftT(154); // 'in'
  3912. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3913. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3914. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3915. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3916. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3917. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3918. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3919. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3920. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3921. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3922. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3923. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3924. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3925. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3926. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3927. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3928. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3929. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3930. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3931. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3932. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3933. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3934. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3935. // 'xquery' | '{' | '{|'
  3936. try_ExprSingle();
  3937. for (;;)
  3938. {
  3939. if (l1 != 41) // ','
  3940. {
  3941. break;
  3942. }
  3943. shiftT(41); // ','
  3944. lookahead1W(21); // S^WS | '$' | '(:'
  3945. shiftT(31); // '$'
  3946. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  3947. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  3948. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  3949. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  3950. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  3951. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  3952. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  3953. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  3954. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  3955. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  3956. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  3957. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  3958. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  3959. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  3960. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3961. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3962. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3963. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3964. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3965. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3966. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3967. // 'xquery'
  3968. try_VarName();
  3969. lookahead1W(110); // S^WS | '(:' | 'as' | 'in'
  3970. if (l1 == 79) // 'as'
  3971. {
  3972. try_TypeDeclaration();
  3973. }
  3974. lookahead1W(53); // S^WS | '(:' | 'in'
  3975. shiftT(154); // 'in'
  3976. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  3977. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  3978. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  3979. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  3980. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  3981. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  3982. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  3983. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  3984. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  3985. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  3986. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  3987. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  3988. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  3989. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  3990. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  3991. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  3992. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  3993. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  3994. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  3995. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  3996. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  3997. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  3998. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  3999. // 'xquery' | '{' | '{|'
  4000. try_ExprSingle();
  4001. }
  4002. shiftT(224); // 'satisfies'
  4003. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4004. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4005. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4006. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4007. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4008. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4009. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4010. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4011. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4012. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4013. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4014. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4015. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4016. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4017. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4018. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4019. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4020. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4021. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4022. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4023. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4024. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4025. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4026. // 'xquery' | '{' | '{|'
  4027. try_ExprSingle();
  4028. }
  4029. function parse_SwitchExpr()
  4030. {
  4031. eventHandler.startNonterminal("SwitchExpr", e0);
  4032. shift(243); // 'switch'
  4033. lookahead1W(22); // S^WS | '(' | '(:'
  4034. shift(34); // '('
  4035. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4036. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4037. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4038. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4039. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4040. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4041. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4042. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4043. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4044. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4045. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4046. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4047. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4048. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4049. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4050. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4051. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4052. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4053. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4054. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4055. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4056. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4057. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4058. // 'xquery' | '{' | '{|'
  4059. whitespace();
  4060. parse_Expr();
  4061. shift(37); // ')'
  4062. for (;;)
  4063. {
  4064. lookahead1W(35); // S^WS | '(:' | 'case'
  4065. whitespace();
  4066. parse_SwitchCaseClause();
  4067. if (l1 != 88) // 'case'
  4068. {
  4069. break;
  4070. }
  4071. }
  4072. shift(109); // 'default'
  4073. lookahead1W(70); // S^WS | '(:' | 'return'
  4074. shift(220); // 'return'
  4075. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4076. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4077. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4078. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4079. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4080. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4081. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4082. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4083. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4084. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4085. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4086. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4087. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4088. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4089. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4090. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4091. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4092. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4093. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4094. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4095. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4096. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4097. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4098. // 'xquery' | '{' | '{|'
  4099. whitespace();
  4100. parse_ExprSingle();
  4101. eventHandler.endNonterminal("SwitchExpr", e0);
  4102. }
  4103. function try_SwitchExpr()
  4104. {
  4105. shiftT(243); // 'switch'
  4106. lookahead1W(22); // S^WS | '(' | '(:'
  4107. shiftT(34); // '('
  4108. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4109. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4110. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4111. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4112. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4113. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4114. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4115. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4116. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4117. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4118. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4119. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4120. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4121. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4122. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4123. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4124. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4125. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4126. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4127. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4128. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4129. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4130. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4131. // 'xquery' | '{' | '{|'
  4132. try_Expr();
  4133. shiftT(37); // ')'
  4134. for (;;)
  4135. {
  4136. lookahead1W(35); // S^WS | '(:' | 'case'
  4137. try_SwitchCaseClause();
  4138. if (l1 != 88) // 'case'
  4139. {
  4140. break;
  4141. }
  4142. }
  4143. shiftT(109); // 'default'
  4144. lookahead1W(70); // S^WS | '(:' | 'return'
  4145. shiftT(220); // 'return'
  4146. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4147. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4148. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4149. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4150. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4151. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4152. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4153. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4154. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4155. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4156. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4157. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4158. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4159. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4160. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4161. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4162. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4163. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4164. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4165. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4166. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4167. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4168. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4169. // 'xquery' | '{' | '{|'
  4170. try_ExprSingle();
  4171. }
  4172. function parse_SwitchCaseClause()
  4173. {
  4174. eventHandler.startNonterminal("SwitchCaseClause", e0);
  4175. for (;;)
  4176. {
  4177. shift(88); // 'case'
  4178. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4179. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4180. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4181. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4182. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4183. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4184. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4185. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4186. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4187. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4188. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4189. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4190. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4191. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4192. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4193. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4194. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4195. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4196. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4197. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4198. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4199. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4200. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4201. // 'xquery' | '{' | '{|'
  4202. whitespace();
  4203. parse_SwitchCaseOperand();
  4204. if (l1 != 88) // 'case'
  4205. {
  4206. break;
  4207. }
  4208. }
  4209. shift(220); // 'return'
  4210. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4211. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4212. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4213. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4214. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4215. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4216. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4217. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4218. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4219. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4220. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4221. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4222. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4223. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4224. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4225. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4226. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4227. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4228. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4229. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4230. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4231. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4232. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4233. // 'xquery' | '{' | '{|'
  4234. whitespace();
  4235. parse_ExprSingle();
  4236. eventHandler.endNonterminal("SwitchCaseClause", e0);
  4237. }
  4238. function try_SwitchCaseClause()
  4239. {
  4240. for (;;)
  4241. {
  4242. shiftT(88); // 'case'
  4243. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4244. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4245. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4246. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4247. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4248. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4249. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4250. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4251. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4252. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4253. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4254. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4255. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4256. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4257. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4258. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4259. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4260. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4261. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4262. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4263. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4264. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4265. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4266. // 'xquery' | '{' | '{|'
  4267. try_SwitchCaseOperand();
  4268. if (l1 != 88) // 'case'
  4269. {
  4270. break;
  4271. }
  4272. }
  4273. shiftT(220); // 'return'
  4274. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4275. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4276. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4277. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4278. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4279. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4280. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4281. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4282. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4283. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4284. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4285. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4286. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4287. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4288. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4289. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4290. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4291. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4292. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4293. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4294. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4295. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4296. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4297. // 'xquery' | '{' | '{|'
  4298. try_ExprSingle();
  4299. }
  4300. function parse_SwitchCaseOperand()
  4301. {
  4302. eventHandler.startNonterminal("SwitchCaseOperand", e0);
  4303. parse_ExprSingle();
  4304. eventHandler.endNonterminal("SwitchCaseOperand", e0);
  4305. }
  4306. function try_SwitchCaseOperand()
  4307. {
  4308. try_ExprSingle();
  4309. }
  4310. function parse_TypeswitchExpr()
  4311. {
  4312. eventHandler.startNonterminal("TypeswitchExpr", e0);
  4313. shift(253); // 'typeswitch'
  4314. lookahead1W(22); // S^WS | '(' | '(:'
  4315. shift(34); // '('
  4316. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4317. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4318. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4319. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4320. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4321. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4322. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4323. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4324. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4325. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4326. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4327. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4328. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4329. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4330. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4331. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4332. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4333. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4334. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4335. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4336. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4337. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4338. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4339. // 'xquery' | '{' | '{|'
  4340. whitespace();
  4341. parse_Expr();
  4342. shift(37); // ')'
  4343. for (;;)
  4344. {
  4345. lookahead1W(35); // S^WS | '(:' | 'case'
  4346. whitespace();
  4347. parse_CaseClause();
  4348. if (l1 != 88) // 'case'
  4349. {
  4350. break;
  4351. }
  4352. }
  4353. shift(109); // 'default'
  4354. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  4355. if (l1 == 31) // '$'
  4356. {
  4357. shift(31); // '$'
  4358. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  4359. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4360. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4361. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4362. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4363. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4364. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4365. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4366. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4367. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4368. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4369. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4370. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4371. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4372. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4373. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4374. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4375. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4376. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4377. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4378. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4379. // 'xquery'
  4380. whitespace();
  4381. parse_VarName();
  4382. }
  4383. lookahead1W(70); // S^WS | '(:' | 'return'
  4384. shift(220); // 'return'
  4385. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4386. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4387. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4388. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4389. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4390. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4391. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4392. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4393. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4394. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4395. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4396. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4397. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4398. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4399. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4400. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4401. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4402. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4403. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4404. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4405. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4406. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4407. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4408. // 'xquery' | '{' | '{|'
  4409. whitespace();
  4410. parse_ExprSingle();
  4411. eventHandler.endNonterminal("TypeswitchExpr", e0);
  4412. }
  4413. function try_TypeswitchExpr()
  4414. {
  4415. shiftT(253); // 'typeswitch'
  4416. lookahead1W(22); // S^WS | '(' | '(:'
  4417. shiftT(34); // '('
  4418. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4419. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4420. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4421. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4422. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4423. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4424. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4425. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4426. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4427. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4428. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4429. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4430. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4431. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4432. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4433. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4434. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4435. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4436. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4437. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4438. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4439. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4440. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4441. // 'xquery' | '{' | '{|'
  4442. try_Expr();
  4443. shiftT(37); // ')'
  4444. for (;;)
  4445. {
  4446. lookahead1W(35); // S^WS | '(:' | 'case'
  4447. try_CaseClause();
  4448. if (l1 != 88) // 'case'
  4449. {
  4450. break;
  4451. }
  4452. }
  4453. shiftT(109); // 'default'
  4454. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  4455. if (l1 == 31) // '$'
  4456. {
  4457. shiftT(31); // '$'
  4458. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  4459. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4460. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4461. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4462. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4463. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4464. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4465. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4466. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4467. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4468. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4469. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4470. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4471. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4472. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4473. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4474. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4475. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4476. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4477. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4478. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4479. // 'xquery'
  4480. try_VarName();
  4481. }
  4482. lookahead1W(70); // S^WS | '(:' | 'return'
  4483. shiftT(220); // 'return'
  4484. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4485. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4486. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4487. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4488. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4489. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4490. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4491. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4492. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4493. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4494. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4495. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4496. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4497. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4498. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4499. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4500. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4501. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4502. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4503. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4504. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4505. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4506. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4507. // 'xquery' | '{' | '{|'
  4508. try_ExprSingle();
  4509. }
  4510. function parse_CaseClause()
  4511. {
  4512. eventHandler.startNonterminal("CaseClause", e0);
  4513. shift(88); // 'case'
  4514. lookahead1W(260); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  4515. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  4516. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  4517. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  4518. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4519. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4520. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4521. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4522. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4523. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4524. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4525. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4526. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4527. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4528. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4529. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4530. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4531. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4532. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4533. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4534. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4535. // 'with' | 'xquery'
  4536. if (l1 == 31) // '$'
  4537. {
  4538. shift(31); // '$'
  4539. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  4540. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4541. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4542. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4543. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4544. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4545. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4546. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4547. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4548. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4549. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4550. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4551. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4552. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4553. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4554. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4555. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4556. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4557. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4558. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4559. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4560. // 'xquery'
  4561. whitespace();
  4562. parse_VarName();
  4563. lookahead1W(30); // S^WS | '(:' | 'as'
  4564. shift(79); // 'as'
  4565. }
  4566. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  4567. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4568. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4569. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4570. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4571. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4572. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4573. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4574. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4575. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4576. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4577. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4578. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4579. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4580. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4581. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4582. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4583. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4584. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4585. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4586. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4587. // 'with' | 'xquery'
  4588. whitespace();
  4589. parse_SequenceTypeUnion();
  4590. shift(220); // 'return'
  4591. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4592. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4593. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4594. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4595. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4596. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4597. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4598. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4599. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4600. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4601. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4602. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4603. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4604. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4605. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4606. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4607. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4608. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4609. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4610. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4611. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4612. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4613. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4614. // 'xquery' | '{' | '{|'
  4615. whitespace();
  4616. parse_ExprSingle();
  4617. eventHandler.endNonterminal("CaseClause", e0);
  4618. }
  4619. function try_CaseClause()
  4620. {
  4621. shiftT(88); // 'case'
  4622. lookahead1W(260); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  4623. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  4624. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  4625. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  4626. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4627. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4628. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4629. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4630. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4631. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4632. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4633. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4634. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4635. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4636. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4637. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4638. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4639. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4640. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4641. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4642. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4643. // 'with' | 'xquery'
  4644. if (l1 == 31) // '$'
  4645. {
  4646. shiftT(31); // '$'
  4647. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  4648. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4649. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4650. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4651. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4652. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4653. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4654. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4655. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4656. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4657. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4658. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4659. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4660. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4661. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4662. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4663. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4664. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4665. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4666. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4667. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4668. // 'xquery'
  4669. try_VarName();
  4670. lookahead1W(30); // S^WS | '(:' | 'as'
  4671. shiftT(79); // 'as'
  4672. }
  4673. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  4674. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4675. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4676. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4677. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4678. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4679. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4680. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4681. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4682. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4683. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4684. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4685. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4686. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4687. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4688. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4689. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4690. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4691. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4692. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4693. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4694. // 'with' | 'xquery'
  4695. try_SequenceTypeUnion();
  4696. shiftT(220); // 'return'
  4697. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4698. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4699. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4700. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4701. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4702. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4703. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4704. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4705. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4706. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4707. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4708. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4709. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4710. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4711. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4712. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4713. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4714. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4715. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4716. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4717. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4718. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4719. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4720. // 'xquery' | '{' | '{|'
  4721. try_ExprSingle();
  4722. }
  4723. function parse_SequenceTypeUnion()
  4724. {
  4725. eventHandler.startNonterminal("SequenceTypeUnion", e0);
  4726. parse_SequenceType();
  4727. for (;;)
  4728. {
  4729. lookahead1W(134); // S^WS | '(:' | 'return' | '|'
  4730. if (l1 != 279) // '|'
  4731. {
  4732. break;
  4733. }
  4734. shift(279); // '|'
  4735. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  4736. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4737. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4738. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4739. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4740. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4741. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4742. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4743. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4744. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4745. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4746. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4747. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4748. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4749. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4750. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4751. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4752. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4753. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4754. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4755. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4756. // 'with' | 'xquery'
  4757. whitespace();
  4758. parse_SequenceType();
  4759. }
  4760. eventHandler.endNonterminal("SequenceTypeUnion", e0);
  4761. }
  4762. function try_SequenceTypeUnion()
  4763. {
  4764. try_SequenceType();
  4765. for (;;)
  4766. {
  4767. lookahead1W(134); // S^WS | '(:' | 'return' | '|'
  4768. if (l1 != 279) // '|'
  4769. {
  4770. break;
  4771. }
  4772. shiftT(279); // '|'
  4773. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  4774. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  4775. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  4776. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  4777. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  4778. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  4779. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  4780. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  4781. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  4782. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  4783. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  4784. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  4785. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  4786. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  4787. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4788. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4789. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4790. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4791. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  4792. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  4793. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  4794. // 'with' | 'xquery'
  4795. try_SequenceType();
  4796. }
  4797. }
  4798. function parse_IfExpr()
  4799. {
  4800. eventHandler.startNonterminal("IfExpr", e0);
  4801. shift(152); // 'if'
  4802. lookahead1W(22); // S^WS | '(' | '(:'
  4803. shift(34); // '('
  4804. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4805. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4806. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4807. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4808. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4809. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4810. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4811. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4812. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4813. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4814. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4815. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4816. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4817. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4818. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4819. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4820. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4821. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4822. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4823. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4824. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4825. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4826. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4827. // 'xquery' | '{' | '{|'
  4828. whitespace();
  4829. parse_Expr();
  4830. shift(37); // ')'
  4831. lookahead1W(77); // S^WS | '(:' | 'then'
  4832. shift(245); // 'then'
  4833. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4834. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4835. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4836. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4837. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4838. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4839. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4840. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4841. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4842. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4843. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4844. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4845. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4846. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4847. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4848. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4849. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4850. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4851. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4852. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4853. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4854. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4855. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4856. // 'xquery' | '{' | '{|'
  4857. whitespace();
  4858. parse_ExprSingle();
  4859. shift(122); // 'else'
  4860. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4861. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4862. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4863. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4864. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4865. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4866. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4867. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4868. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4869. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4870. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4871. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4872. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4873. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4874. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4875. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4876. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4877. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4878. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4879. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4880. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4881. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4882. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4883. // 'xquery' | '{' | '{|'
  4884. whitespace();
  4885. parse_ExprSingle();
  4886. eventHandler.endNonterminal("IfExpr", e0);
  4887. }
  4888. function try_IfExpr()
  4889. {
  4890. shiftT(152); // 'if'
  4891. lookahead1W(22); // S^WS | '(' | '(:'
  4892. shiftT(34); // '('
  4893. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4894. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4895. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4896. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4897. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4898. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4899. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4900. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4901. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4902. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4903. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4904. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4905. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4906. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4907. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4908. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4909. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4910. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4911. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4912. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4913. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4914. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4915. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4916. // 'xquery' | '{' | '{|'
  4917. try_Expr();
  4918. shiftT(37); // ')'
  4919. lookahead1W(77); // S^WS | '(:' | 'then'
  4920. shiftT(245); // 'then'
  4921. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4922. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4923. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4924. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4925. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4926. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4927. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4928. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4929. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4930. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4931. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4932. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4933. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4934. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4935. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4936. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4937. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4938. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4939. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4940. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4941. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4942. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4943. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4944. // 'xquery' | '{' | '{|'
  4945. try_ExprSingle();
  4946. shiftT(122); // 'else'
  4947. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  4948. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  4949. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  4950. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  4951. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  4952. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  4953. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  4954. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  4955. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  4956. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  4957. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  4958. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  4959. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  4960. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  4961. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  4962. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  4963. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  4964. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  4965. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  4966. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  4967. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  4968. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  4969. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  4970. // 'xquery' | '{' | '{|'
  4971. try_ExprSingle();
  4972. }
  4973. function parse_TryCatchExpr()
  4974. {
  4975. eventHandler.startNonterminal("TryCatchExpr", e0);
  4976. parse_TryClause();
  4977. for (;;)
  4978. {
  4979. lookahead1W(36); // S^WS | '(:' | 'catch'
  4980. whitespace();
  4981. parse_CatchClause();
  4982. lookahead1W(184); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  4983. // 'at' | 'before' | 'case' | 'catch' | 'collation' | 'count' | 'default' |
  4984. // 'descending' | 'else' | 'empty' | 'end' | 'for' | 'group' | 'into' | 'let' |
  4985. // 'modify' | 'only' | 'order' | 'return' | 'satisfies' | 'stable' | 'start' |
  4986. // 'where' | 'with' | '|}' | '}'
  4987. if (l1 != 91) // 'catch'
  4988. {
  4989. break;
  4990. }
  4991. }
  4992. eventHandler.endNonterminal("TryCatchExpr", e0);
  4993. }
  4994. function try_TryCatchExpr()
  4995. {
  4996. try_TryClause();
  4997. for (;;)
  4998. {
  4999. lookahead1W(36); // S^WS | '(:' | 'catch'
  5000. try_CatchClause();
  5001. lookahead1W(184); // S^WS | EOF | '(:' | ')' | ',' | ':' | ';' | ']' | 'after' | 'as' | 'ascending' |
  5002. // 'at' | 'before' | 'case' | 'catch' | 'collation' | 'count' | 'default' |
  5003. // 'descending' | 'else' | 'empty' | 'end' | 'for' | 'group' | 'into' | 'let' |
  5004. // 'modify' | 'only' | 'order' | 'return' | 'satisfies' | 'stable' | 'start' |
  5005. // 'where' | 'with' | '|}' | '}'
  5006. if (l1 != 91) // 'catch'
  5007. {
  5008. break;
  5009. }
  5010. }
  5011. }
  5012. function parse_TryClause()
  5013. {
  5014. eventHandler.startNonterminal("TryClause", e0);
  5015. shift(250); // 'try'
  5016. lookahead1W(87); // S^WS | '(:' | '{'
  5017. shift(276); // '{'
  5018. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5019. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5020. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5021. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  5022. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  5023. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  5024. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5025. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5026. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5027. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5028. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5029. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5030. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5031. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5032. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5033. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5034. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5035. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5036. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5037. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5038. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5039. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5040. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5041. // 'xquery' | '{' | '{|'
  5042. whitespace();
  5043. parse_TryTargetExpr();
  5044. shift(282); // '}'
  5045. eventHandler.endNonterminal("TryClause", e0);
  5046. }
  5047. function try_TryClause()
  5048. {
  5049. shiftT(250); // 'try'
  5050. lookahead1W(87); // S^WS | '(:' | '{'
  5051. shiftT(276); // '{'
  5052. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5053. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5054. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5055. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  5056. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  5057. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  5058. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5059. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5060. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5061. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5062. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5063. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5064. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5065. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5066. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5067. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5068. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5069. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5070. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5071. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5072. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5073. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5074. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5075. // 'xquery' | '{' | '{|'
  5076. try_TryTargetExpr();
  5077. shiftT(282); // '}'
  5078. }
  5079. function parse_TryTargetExpr()
  5080. {
  5081. eventHandler.startNonterminal("TryTargetExpr", e0);
  5082. parse_Expr();
  5083. eventHandler.endNonterminal("TryTargetExpr", e0);
  5084. }
  5085. function try_TryTargetExpr()
  5086. {
  5087. try_Expr();
  5088. }
  5089. function parse_CatchClause()
  5090. {
  5091. eventHandler.startNonterminal("CatchClause", e0);
  5092. shift(91); // 'catch'
  5093. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  5094. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  5095. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  5096. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  5097. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  5098. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  5099. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  5100. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  5101. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  5102. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  5103. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  5104. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  5105. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  5106. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  5107. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5108. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5109. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5110. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5111. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5112. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5113. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5114. // 'xquery'
  5115. whitespace();
  5116. parse_CatchErrorList();
  5117. shift(276); // '{'
  5118. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5119. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5120. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5121. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  5122. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  5123. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  5124. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5125. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5126. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5127. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5128. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5129. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5130. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5131. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5132. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5133. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5134. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5135. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5136. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5137. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5138. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5139. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5140. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5141. // 'xquery' | '{' | '{|'
  5142. whitespace();
  5143. parse_Expr();
  5144. shift(282); // '}'
  5145. eventHandler.endNonterminal("CatchClause", e0);
  5146. }
  5147. function try_CatchClause()
  5148. {
  5149. shiftT(91); // 'catch'
  5150. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  5151. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  5152. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  5153. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  5154. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  5155. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  5156. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  5157. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  5158. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  5159. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  5160. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  5161. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  5162. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  5163. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  5164. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5165. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5166. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5167. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5168. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5169. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5170. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5171. // 'xquery'
  5172. try_CatchErrorList();
  5173. shiftT(276); // '{'
  5174. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5175. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5176. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5177. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  5178. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  5179. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  5180. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5181. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5182. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5183. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5184. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5185. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5186. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5187. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5188. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5189. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5190. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5191. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5192. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5193. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5194. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5195. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5196. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5197. // 'xquery' | '{' | '{|'
  5198. try_Expr();
  5199. shiftT(282); // '}'
  5200. }
  5201. function parse_CatchErrorList()
  5202. {
  5203. eventHandler.startNonterminal("CatchErrorList", e0);
  5204. parse_NameTest();
  5205. for (;;)
  5206. {
  5207. lookahead1W(136); // S^WS | '(:' | '{' | '|'
  5208. if (l1 != 279) // '|'
  5209. {
  5210. break;
  5211. }
  5212. shift(279); // '|'
  5213. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  5214. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  5215. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  5216. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  5217. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  5218. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  5219. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  5220. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  5221. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  5222. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  5223. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  5224. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  5225. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  5226. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  5227. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5228. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5229. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5230. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5231. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5232. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5233. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5234. // 'xquery'
  5235. whitespace();
  5236. parse_NameTest();
  5237. }
  5238. eventHandler.endNonterminal("CatchErrorList", e0);
  5239. }
  5240. function try_CatchErrorList()
  5241. {
  5242. try_NameTest();
  5243. for (;;)
  5244. {
  5245. lookahead1W(136); // S^WS | '(:' | '{' | '|'
  5246. if (l1 != 279) // '|'
  5247. {
  5248. break;
  5249. }
  5250. shiftT(279); // '|'
  5251. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  5252. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  5253. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  5254. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  5255. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  5256. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  5257. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  5258. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  5259. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  5260. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  5261. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  5262. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  5263. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  5264. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  5265. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5266. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5267. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5268. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5269. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5270. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5271. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5272. // 'xquery'
  5273. try_NameTest();
  5274. }
  5275. }
  5276. function parse_OrExpr()
  5277. {
  5278. eventHandler.startNonterminal("OrExpr", e0);
  5279. parse_AndExpr();
  5280. for (;;)
  5281. {
  5282. if (l1 != 200) // 'or'
  5283. {
  5284. break;
  5285. }
  5286. shift(200); // 'or'
  5287. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5288. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5289. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5290. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5291. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5292. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5293. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5294. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5295. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5296. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5297. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5298. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5299. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5300. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5301. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5302. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5303. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5304. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5305. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5306. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5307. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5308. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5309. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5310. // 'xquery' | '{' | '{|'
  5311. whitespace();
  5312. parse_AndExpr();
  5313. }
  5314. eventHandler.endNonterminal("OrExpr", e0);
  5315. }
  5316. function try_OrExpr()
  5317. {
  5318. try_AndExpr();
  5319. for (;;)
  5320. {
  5321. if (l1 != 200) // 'or'
  5322. {
  5323. break;
  5324. }
  5325. shiftT(200); // 'or'
  5326. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5327. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5328. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5329. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5330. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5331. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5332. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5333. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5334. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5335. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5336. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5337. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5338. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5339. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5340. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5341. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5342. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5343. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5344. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5345. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5346. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5347. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5348. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5349. // 'xquery' | '{' | '{|'
  5350. try_AndExpr();
  5351. }
  5352. }
  5353. function parse_AndExpr()
  5354. {
  5355. eventHandler.startNonterminal("AndExpr", e0);
  5356. parse_ComparisonExpr();
  5357. for (;;)
  5358. {
  5359. if (l1 != 75) // 'and'
  5360. {
  5361. break;
  5362. }
  5363. shift(75); // 'and'
  5364. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5365. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5366. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5367. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5368. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5369. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5370. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5371. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5372. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5373. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5374. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5375. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5376. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5377. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5378. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5379. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5380. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5381. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5382. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5383. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5384. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5385. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5386. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5387. // 'xquery' | '{' | '{|'
  5388. whitespace();
  5389. parse_ComparisonExpr();
  5390. }
  5391. eventHandler.endNonterminal("AndExpr", e0);
  5392. }
  5393. function try_AndExpr()
  5394. {
  5395. try_ComparisonExpr();
  5396. for (;;)
  5397. {
  5398. if (l1 != 75) // 'and'
  5399. {
  5400. break;
  5401. }
  5402. shiftT(75); // 'and'
  5403. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5404. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5405. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5406. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5407. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5408. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5409. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5410. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5411. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5412. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5413. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5414. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5415. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5416. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5417. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5418. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5419. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5420. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5421. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5422. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5423. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5424. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5425. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5426. // 'xquery' | '{' | '{|'
  5427. try_ComparisonExpr();
  5428. }
  5429. }
  5430. function parse_ComparisonExpr()
  5431. {
  5432. eventHandler.startNonterminal("ComparisonExpr", e0);
  5433. parse_FTContainsExpr();
  5434. if (l1 == 27 // '!='
  5435. || l1 == 54 // '<'
  5436. || l1 == 57 // '<<'
  5437. || l1 == 58 // '<='
  5438. || l1 == 60 // '='
  5439. || l1 == 61 // '>'
  5440. || l1 == 62 // '>='
  5441. || l1 == 63 // '>>'
  5442. || l1 == 128 // 'eq'
  5443. || l1 == 146 // 'ge'
  5444. || l1 == 150 // 'gt'
  5445. || l1 == 164 // 'is'
  5446. || l1 == 172 // 'le'
  5447. || l1 == 178 // 'lt'
  5448. || l1 == 186) // 'ne'
  5449. {
  5450. switch (l1)
  5451. {
  5452. case 128: // 'eq'
  5453. case 146: // 'ge'
  5454. case 150: // 'gt'
  5455. case 172: // 'le'
  5456. case 178: // 'lt'
  5457. case 186: // 'ne'
  5458. whitespace();
  5459. parse_ValueComp();
  5460. break;
  5461. case 57: // '<<'
  5462. case 63: // '>>'
  5463. case 164: // 'is'
  5464. whitespace();
  5465. parse_NodeComp();
  5466. break;
  5467. default:
  5468. whitespace();
  5469. parse_GeneralComp();
  5470. }
  5471. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5472. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5473. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5474. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5475. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5476. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5477. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5478. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5479. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5480. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5481. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5482. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5483. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5484. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5485. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5486. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5487. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5488. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5489. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5490. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5491. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5492. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5493. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5494. // 'xquery' | '{' | '{|'
  5495. whitespace();
  5496. parse_FTContainsExpr();
  5497. }
  5498. eventHandler.endNonterminal("ComparisonExpr", e0);
  5499. }
  5500. function try_ComparisonExpr()
  5501. {
  5502. try_FTContainsExpr();
  5503. if (l1 == 27 // '!='
  5504. || l1 == 54 // '<'
  5505. || l1 == 57 // '<<'
  5506. || l1 == 58 // '<='
  5507. || l1 == 60 // '='
  5508. || l1 == 61 // '>'
  5509. || l1 == 62 // '>='
  5510. || l1 == 63 // '>>'
  5511. || l1 == 128 // 'eq'
  5512. || l1 == 146 // 'ge'
  5513. || l1 == 150 // 'gt'
  5514. || l1 == 164 // 'is'
  5515. || l1 == 172 // 'le'
  5516. || l1 == 178 // 'lt'
  5517. || l1 == 186) // 'ne'
  5518. {
  5519. switch (l1)
  5520. {
  5521. case 128: // 'eq'
  5522. case 146: // 'ge'
  5523. case 150: // 'gt'
  5524. case 172: // 'le'
  5525. case 178: // 'lt'
  5526. case 186: // 'ne'
  5527. try_ValueComp();
  5528. break;
  5529. case 57: // '<<'
  5530. case 63: // '>>'
  5531. case 164: // 'is'
  5532. try_NodeComp();
  5533. break;
  5534. default:
  5535. try_GeneralComp();
  5536. }
  5537. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5538. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5539. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5540. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5541. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5542. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5543. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5544. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5545. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5546. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5547. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5548. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5549. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5550. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5551. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5552. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5553. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5554. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5555. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5556. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5557. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5558. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5559. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5560. // 'xquery' | '{' | '{|'
  5561. try_FTContainsExpr();
  5562. }
  5563. }
  5564. function parse_FTContainsExpr()
  5565. {
  5566. eventHandler.startNonterminal("FTContainsExpr", e0);
  5567. parse_StringConcatExpr();
  5568. if (l1 == 99) // 'contains'
  5569. {
  5570. shift(99); // 'contains'
  5571. lookahead1W(76); // S^WS | '(:' | 'text'
  5572. shift(244); // 'text'
  5573. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  5574. whitespace();
  5575. parse_FTSelection();
  5576. if (l1 == 271) // 'without'
  5577. {
  5578. whitespace();
  5579. parse_FTIgnoreOption();
  5580. }
  5581. }
  5582. eventHandler.endNonterminal("FTContainsExpr", e0);
  5583. }
  5584. function try_FTContainsExpr()
  5585. {
  5586. try_StringConcatExpr();
  5587. if (l1 == 99) // 'contains'
  5588. {
  5589. shiftT(99); // 'contains'
  5590. lookahead1W(76); // S^WS | '(:' | 'text'
  5591. shiftT(244); // 'text'
  5592. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  5593. try_FTSelection();
  5594. if (l1 == 271) // 'without'
  5595. {
  5596. try_FTIgnoreOption();
  5597. }
  5598. }
  5599. }
  5600. function parse_StringConcatExpr()
  5601. {
  5602. eventHandler.startNonterminal("StringConcatExpr", e0);
  5603. parse_RangeExpr();
  5604. for (;;)
  5605. {
  5606. if (l1 != 280) // '||'
  5607. {
  5608. break;
  5609. }
  5610. shift(280); // '||'
  5611. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5612. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5613. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5614. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5615. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5616. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5617. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5618. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5619. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5620. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5621. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5622. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5623. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5624. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5625. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5626. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5627. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5628. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5629. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5630. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5631. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5632. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5633. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5634. // 'xquery' | '{' | '{|'
  5635. whitespace();
  5636. parse_RangeExpr();
  5637. }
  5638. eventHandler.endNonterminal("StringConcatExpr", e0);
  5639. }
  5640. function try_StringConcatExpr()
  5641. {
  5642. try_RangeExpr();
  5643. for (;;)
  5644. {
  5645. if (l1 != 280) // '||'
  5646. {
  5647. break;
  5648. }
  5649. shiftT(280); // '||'
  5650. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5651. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5652. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5653. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5654. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5655. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5656. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5657. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5658. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5659. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5660. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5661. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5662. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5663. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5664. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5665. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5666. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5667. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5668. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5669. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5670. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5671. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5672. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5673. // 'xquery' | '{' | '{|'
  5674. try_RangeExpr();
  5675. }
  5676. }
  5677. function parse_RangeExpr()
  5678. {
  5679. eventHandler.startNonterminal("RangeExpr", e0);
  5680. parse_AdditiveExpr();
  5681. if (l1 == 248) // 'to'
  5682. {
  5683. shift(248); // 'to'
  5684. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5685. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5686. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5687. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5688. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5689. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5690. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5691. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5692. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5693. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5694. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5695. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5696. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5697. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5698. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5699. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5700. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5701. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5702. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5703. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5704. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5705. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5706. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5707. // 'xquery' | '{' | '{|'
  5708. whitespace();
  5709. parse_AdditiveExpr();
  5710. }
  5711. eventHandler.endNonterminal("RangeExpr", e0);
  5712. }
  5713. function try_RangeExpr()
  5714. {
  5715. try_AdditiveExpr();
  5716. if (l1 == 248) // 'to'
  5717. {
  5718. shiftT(248); // 'to'
  5719. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5720. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5721. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5722. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5723. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5724. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5725. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5726. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5727. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5728. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5729. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5730. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5731. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5732. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5733. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5734. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5735. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5736. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5737. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5738. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5739. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5740. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5741. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5742. // 'xquery' | '{' | '{|'
  5743. try_AdditiveExpr();
  5744. }
  5745. }
  5746. function parse_AdditiveExpr()
  5747. {
  5748. eventHandler.startNonterminal("AdditiveExpr", e0);
  5749. parse_MultiplicativeExpr();
  5750. for (;;)
  5751. {
  5752. if (l1 != 40 // '+'
  5753. && l1 != 42) // '-'
  5754. {
  5755. break;
  5756. }
  5757. switch (l1)
  5758. {
  5759. case 40: // '+'
  5760. shift(40); // '+'
  5761. break;
  5762. default:
  5763. shift(42); // '-'
  5764. }
  5765. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5766. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5767. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5768. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5769. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5770. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5771. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5772. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5773. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5774. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5775. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5776. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5777. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5778. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5779. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5780. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5781. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5782. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5783. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5784. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5785. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5786. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5787. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5788. // 'xquery' | '{' | '{|'
  5789. whitespace();
  5790. parse_MultiplicativeExpr();
  5791. }
  5792. eventHandler.endNonterminal("AdditiveExpr", e0);
  5793. }
  5794. function try_AdditiveExpr()
  5795. {
  5796. try_MultiplicativeExpr();
  5797. for (;;)
  5798. {
  5799. if (l1 != 40 // '+'
  5800. && l1 != 42) // '-'
  5801. {
  5802. break;
  5803. }
  5804. switch (l1)
  5805. {
  5806. case 40: // '+'
  5807. shiftT(40); // '+'
  5808. break;
  5809. default:
  5810. shiftT(42); // '-'
  5811. }
  5812. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5813. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5814. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5815. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5816. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5817. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5818. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5819. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5820. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5821. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5822. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5823. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5824. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5825. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5826. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5827. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5828. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5829. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5830. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5831. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5832. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5833. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5834. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5835. // 'xquery' | '{' | '{|'
  5836. try_MultiplicativeExpr();
  5837. }
  5838. }
  5839. function parse_MultiplicativeExpr()
  5840. {
  5841. eventHandler.startNonterminal("MultiplicativeExpr", e0);
  5842. parse_UnionExpr();
  5843. for (;;)
  5844. {
  5845. if (l1 != 38 // '*'
  5846. && l1 != 118 // 'div'
  5847. && l1 != 151 // 'idiv'
  5848. && l1 != 180) // 'mod'
  5849. {
  5850. break;
  5851. }
  5852. switch (l1)
  5853. {
  5854. case 38: // '*'
  5855. shift(38); // '*'
  5856. break;
  5857. case 118: // 'div'
  5858. shift(118); // 'div'
  5859. break;
  5860. case 151: // 'idiv'
  5861. shift(151); // 'idiv'
  5862. break;
  5863. default:
  5864. shift(180); // 'mod'
  5865. }
  5866. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5867. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5868. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5869. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5870. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5871. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5872. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5873. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5874. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5875. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5876. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5877. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5878. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5879. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5880. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5881. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5882. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5883. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5884. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5885. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5886. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5887. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5888. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5889. // 'xquery' | '{' | '{|'
  5890. whitespace();
  5891. parse_UnionExpr();
  5892. }
  5893. eventHandler.endNonterminal("MultiplicativeExpr", e0);
  5894. }
  5895. function try_MultiplicativeExpr()
  5896. {
  5897. try_UnionExpr();
  5898. for (;;)
  5899. {
  5900. if (l1 != 38 // '*'
  5901. && l1 != 118 // 'div'
  5902. && l1 != 151 // 'idiv'
  5903. && l1 != 180) // 'mod'
  5904. {
  5905. break;
  5906. }
  5907. switch (l1)
  5908. {
  5909. case 38: // '*'
  5910. shiftT(38); // '*'
  5911. break;
  5912. case 118: // 'div'
  5913. shiftT(118); // 'div'
  5914. break;
  5915. case 151: // 'idiv'
  5916. shiftT(151); // 'idiv'
  5917. break;
  5918. default:
  5919. shiftT(180); // 'mod'
  5920. }
  5921. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5922. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5923. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5924. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5925. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5926. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5927. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5928. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5929. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5930. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5931. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5932. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5933. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5934. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5935. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5936. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5937. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5938. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5939. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5940. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5941. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5942. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5943. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5944. // 'xquery' | '{' | '{|'
  5945. try_UnionExpr();
  5946. }
  5947. }
  5948. function parse_UnionExpr()
  5949. {
  5950. eventHandler.startNonterminal("UnionExpr", e0);
  5951. parse_IntersectExceptExpr();
  5952. for (;;)
  5953. {
  5954. if (l1 != 254 // 'union'
  5955. && l1 != 279) // '|'
  5956. {
  5957. break;
  5958. }
  5959. switch (l1)
  5960. {
  5961. case 254: // 'union'
  5962. shift(254); // 'union'
  5963. break;
  5964. default:
  5965. shift(279); // '|'
  5966. }
  5967. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  5968. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  5969. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  5970. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  5971. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  5972. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  5973. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  5974. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  5975. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  5976. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  5977. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  5978. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  5979. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  5980. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  5981. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  5982. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  5983. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  5984. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  5985. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  5986. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  5987. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  5988. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  5989. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  5990. // 'xquery' | '{' | '{|'
  5991. whitespace();
  5992. parse_IntersectExceptExpr();
  5993. }
  5994. eventHandler.endNonterminal("UnionExpr", e0);
  5995. }
  5996. function try_UnionExpr()
  5997. {
  5998. try_IntersectExceptExpr();
  5999. for (;;)
  6000. {
  6001. if (l1 != 254 // 'union'
  6002. && l1 != 279) // '|'
  6003. {
  6004. break;
  6005. }
  6006. switch (l1)
  6007. {
  6008. case 254: // 'union'
  6009. shiftT(254); // 'union'
  6010. break;
  6011. default:
  6012. shiftT(279); // '|'
  6013. }
  6014. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6015. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6016. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6017. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  6018. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  6019. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  6020. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6021. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6022. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6023. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6024. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6025. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6026. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6027. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6028. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6029. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6030. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6031. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6032. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6033. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6034. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6035. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6036. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6037. // 'xquery' | '{' | '{|'
  6038. try_IntersectExceptExpr();
  6039. }
  6040. }
  6041. function parse_IntersectExceptExpr()
  6042. {
  6043. eventHandler.startNonterminal("IntersectExceptExpr", e0);
  6044. parse_InstanceofExpr();
  6045. for (;;)
  6046. {
  6047. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6048. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6049. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6050. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6051. // 'ge' | 'group' | 'gt' | 'idiv' | 'intersect' | 'into' | 'is' | 'le' | 'let' |
  6052. // 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' |
  6053. // 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  6054. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  6055. if (l1 != 131 // 'except'
  6056. && l1 != 162) // 'intersect'
  6057. {
  6058. break;
  6059. }
  6060. switch (l1)
  6061. {
  6062. case 162: // 'intersect'
  6063. shift(162); // 'intersect'
  6064. break;
  6065. default:
  6066. shift(131); // 'except'
  6067. }
  6068. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6069. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6070. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6071. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  6072. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  6073. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  6074. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6075. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6076. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6077. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6078. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6079. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6080. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6081. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6082. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6083. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6084. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6085. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6086. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6087. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6088. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6089. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6090. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6091. // 'xquery' | '{' | '{|'
  6092. whitespace();
  6093. parse_InstanceofExpr();
  6094. }
  6095. eventHandler.endNonterminal("IntersectExceptExpr", e0);
  6096. }
  6097. function try_IntersectExceptExpr()
  6098. {
  6099. try_InstanceofExpr();
  6100. for (;;)
  6101. {
  6102. lookahead1W(222); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6103. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6104. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6105. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6106. // 'ge' | 'group' | 'gt' | 'idiv' | 'intersect' | 'into' | 'is' | 'le' | 'let' |
  6107. // 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' |
  6108. // 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  6109. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  6110. if (l1 != 131 // 'except'
  6111. && l1 != 162) // 'intersect'
  6112. {
  6113. break;
  6114. }
  6115. switch (l1)
  6116. {
  6117. case 162: // 'intersect'
  6118. shiftT(162); // 'intersect'
  6119. break;
  6120. default:
  6121. shiftT(131); // 'except'
  6122. }
  6123. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6124. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6125. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6126. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  6127. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  6128. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  6129. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6130. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6131. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6132. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6133. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6134. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6135. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6136. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6137. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6138. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6139. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6140. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6141. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6142. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6143. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6144. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6145. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6146. // 'xquery' | '{' | '{|'
  6147. try_InstanceofExpr();
  6148. }
  6149. }
  6150. function parse_InstanceofExpr()
  6151. {
  6152. eventHandler.startNonterminal("InstanceofExpr", e0);
  6153. parse_TreatExpr();
  6154. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6155. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6156. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6157. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6158. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  6159. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6160. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6161. // 'times' | 'to' | 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  6162. if (l1 == 160) // 'instance'
  6163. {
  6164. shift(160); // 'instance'
  6165. lookahead1W(64); // S^WS | '(:' | 'of'
  6166. shift(196); // 'of'
  6167. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  6168. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6169. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6170. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6171. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6172. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6173. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6174. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6175. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6176. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6177. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6178. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6179. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6180. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6181. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6182. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6183. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6184. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6185. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  6186. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  6187. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  6188. // 'with' | 'xquery'
  6189. whitespace();
  6190. parse_SequenceType();
  6191. }
  6192. eventHandler.endNonterminal("InstanceofExpr", e0);
  6193. }
  6194. function try_InstanceofExpr()
  6195. {
  6196. try_TreatExpr();
  6197. lookahead1W(223); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6198. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6199. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6200. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6201. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  6202. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6203. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6204. // 'times' | 'to' | 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  6205. if (l1 == 160) // 'instance'
  6206. {
  6207. shiftT(160); // 'instance'
  6208. lookahead1W(64); // S^WS | '(:' | 'of'
  6209. shiftT(196); // 'of'
  6210. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  6211. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6212. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6213. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6214. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6215. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6216. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6217. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6218. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6219. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6220. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6221. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6222. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6223. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6224. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6225. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6226. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6227. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6228. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  6229. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  6230. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  6231. // 'with' | 'xquery'
  6232. try_SequenceType();
  6233. }
  6234. }
  6235. function parse_TreatExpr()
  6236. {
  6237. eventHandler.startNonterminal("TreatExpr", e0);
  6238. parse_CastableExpr();
  6239. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6240. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6241. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6242. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6243. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  6244. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6245. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6246. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  6247. // '|}' | '}'
  6248. if (l1 == 249) // 'treat'
  6249. {
  6250. shift(249); // 'treat'
  6251. lookahead1W(30); // S^WS | '(:' | 'as'
  6252. shift(79); // 'as'
  6253. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  6254. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6255. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6256. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6257. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6258. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6259. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6260. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6261. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6262. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6263. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6264. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6265. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6266. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6267. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6268. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6269. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6270. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6271. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  6272. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  6273. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  6274. // 'with' | 'xquery'
  6275. whitespace();
  6276. parse_SequenceType();
  6277. }
  6278. eventHandler.endNonterminal("TreatExpr", e0);
  6279. }
  6280. function try_TreatExpr()
  6281. {
  6282. try_CastableExpr();
  6283. lookahead1W(224); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6284. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6285. // 'at' | 'before' | 'case' | 'collation' | 'contains' | 'count' | 'default' |
  6286. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  6287. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  6288. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6289. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6290. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  6291. // '|}' | '}'
  6292. if (l1 == 249) // 'treat'
  6293. {
  6294. shiftT(249); // 'treat'
  6295. lookahead1W(30); // S^WS | '(:' | 'as'
  6296. shiftT(79); // 'as'
  6297. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  6298. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6299. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6300. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6301. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6302. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6303. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6304. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6305. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6306. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6307. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6308. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6309. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6310. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6311. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6312. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6313. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6314. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6315. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  6316. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  6317. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  6318. // 'with' | 'xquery'
  6319. try_SequenceType();
  6320. }
  6321. }
  6322. function parse_CastableExpr()
  6323. {
  6324. eventHandler.startNonterminal("CastableExpr", e0);
  6325. parse_CastExpr();
  6326. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6327. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6328. // 'at' | 'before' | 'case' | 'castable' | 'collation' | 'contains' | 'count' |
  6329. // 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' |
  6330. // 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' |
  6331. // 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6332. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6333. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  6334. // '|}' | '}'
  6335. if (l1 == 90) // 'castable'
  6336. {
  6337. shift(90); // 'castable'
  6338. lookahead1W(30); // S^WS | '(:' | 'as'
  6339. shift(79); // 'as'
  6340. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6341. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6342. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6343. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6344. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6345. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6346. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6347. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6348. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6349. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6350. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6351. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6352. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6353. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6354. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6355. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6356. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6357. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6358. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6359. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6360. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6361. // 'xquery'
  6362. whitespace();
  6363. parse_SingleType();
  6364. }
  6365. eventHandler.endNonterminal("CastableExpr", e0);
  6366. }
  6367. function try_CastableExpr()
  6368. {
  6369. try_CastExpr();
  6370. lookahead1W(225); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6371. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6372. // 'at' | 'before' | 'case' | 'castable' | 'collation' | 'contains' | 'count' |
  6373. // 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' |
  6374. // 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' |
  6375. // 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  6376. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  6377. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  6378. // '|}' | '}'
  6379. if (l1 == 90) // 'castable'
  6380. {
  6381. shiftT(90); // 'castable'
  6382. lookahead1W(30); // S^WS | '(:' | 'as'
  6383. shiftT(79); // 'as'
  6384. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6385. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6386. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6387. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6388. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6389. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6390. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6391. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6392. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6393. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6394. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6395. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6396. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6397. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6398. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6399. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6400. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6401. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6402. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6403. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6404. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6405. // 'xquery'
  6406. try_SingleType();
  6407. }
  6408. }
  6409. function parse_CastExpr()
  6410. {
  6411. eventHandler.startNonterminal("CastExpr", e0);
  6412. parse_UnaryExpr();
  6413. lookahead1W(227); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6414. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6415. // 'at' | 'before' | 'case' | 'cast' | 'castable' | 'collation' | 'contains' |
  6416. // 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' |
  6417. // 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' |
  6418. // 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' |
  6419. // 'order' | 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' |
  6420. // 'start' | 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' |
  6421. // '||' | '|}' | '}'
  6422. if (l1 == 89) // 'cast'
  6423. {
  6424. shift(89); // 'cast'
  6425. lookahead1W(30); // S^WS | '(:' | 'as'
  6426. shift(79); // 'as'
  6427. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6428. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6429. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6430. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6431. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6432. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6433. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6434. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6435. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6436. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6437. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6438. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6439. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6440. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6441. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6442. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6443. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6444. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6445. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6446. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6447. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6448. // 'xquery'
  6449. whitespace();
  6450. parse_SingleType();
  6451. }
  6452. eventHandler.endNonterminal("CastExpr", e0);
  6453. }
  6454. function try_CastExpr()
  6455. {
  6456. try_UnaryExpr();
  6457. lookahead1W(227); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  6458. // '<=' | '=' | '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' |
  6459. // 'at' | 'before' | 'case' | 'cast' | 'castable' | 'collation' | 'contains' |
  6460. // 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' |
  6461. // 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' |
  6462. // 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' |
  6463. // 'order' | 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' |
  6464. // 'start' | 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' |
  6465. // '||' | '|}' | '}'
  6466. if (l1 == 89) // 'cast'
  6467. {
  6468. shiftT(89); // 'cast'
  6469. lookahead1W(30); // S^WS | '(:' | 'as'
  6470. shiftT(79); // 'as'
  6471. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6472. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6473. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6474. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6475. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6476. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6477. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6478. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6479. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6480. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6481. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6482. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6483. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6484. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6485. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6486. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6487. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6488. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6489. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6490. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6491. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6492. // 'xquery'
  6493. try_SingleType();
  6494. }
  6495. }
  6496. function parse_UnaryExpr()
  6497. {
  6498. eventHandler.startNonterminal("UnaryExpr", e0);
  6499. for (;;)
  6500. {
  6501. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6502. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6503. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6504. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  6505. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  6506. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  6507. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6508. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6509. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6510. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6511. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6512. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6513. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6514. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6515. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6516. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6517. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6518. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6519. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6520. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6521. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6522. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6523. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6524. // 'xquery' | '{' | '{|'
  6525. if (l1 != 40 // '+'
  6526. && l1 != 42) // '-'
  6527. {
  6528. break;
  6529. }
  6530. switch (l1)
  6531. {
  6532. case 42: // '-'
  6533. shift(42); // '-'
  6534. break;
  6535. default:
  6536. shift(40); // '+'
  6537. }
  6538. }
  6539. whitespace();
  6540. parse_ValueExpr();
  6541. eventHandler.endNonterminal("UnaryExpr", e0);
  6542. }
  6543. function try_UnaryExpr()
  6544. {
  6545. for (;;)
  6546. {
  6547. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6548. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6549. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6550. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  6551. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  6552. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  6553. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6554. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6555. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6556. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6557. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6558. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6559. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6560. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6561. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6562. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6563. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6564. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6565. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6566. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6567. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6568. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6569. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6570. // 'xquery' | '{' | '{|'
  6571. if (l1 != 40 // '+'
  6572. && l1 != 42) // '-'
  6573. {
  6574. break;
  6575. }
  6576. switch (l1)
  6577. {
  6578. case 42: // '-'
  6579. shiftT(42); // '-'
  6580. break;
  6581. default:
  6582. shiftT(40); // '+'
  6583. }
  6584. }
  6585. try_ValueExpr();
  6586. }
  6587. function parse_ValueExpr()
  6588. {
  6589. eventHandler.startNonterminal("ValueExpr", e0);
  6590. switch (l1)
  6591. {
  6592. case 260: // 'validate'
  6593. lookahead2W(246); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  6594. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  6595. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  6596. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  6597. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  6598. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'lax' | 'le' | 'let' |
  6599. // 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' |
  6600. // 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' | 'strict' | 'times' |
  6601. // 'to' | 'treat' | 'type' | 'union' | 'where' | 'with' | 'words' | '{' | '|' |
  6602. // '||' | '|}' | '}'
  6603. break;
  6604. default:
  6605. lk = l1;
  6606. }
  6607. switch (lk)
  6608. {
  6609. case 87812: // 'validate' 'lax'
  6610. case 123140: // 'validate' 'strict'
  6611. case 129284: // 'validate' 'type'
  6612. case 141572: // 'validate' '{'
  6613. parse_ValidateExpr();
  6614. break;
  6615. case 35: // '(#'
  6616. parse_ExtensionExpr();
  6617. break;
  6618. default:
  6619. parse_SimpleMapExpr();
  6620. }
  6621. eventHandler.endNonterminal("ValueExpr", e0);
  6622. }
  6623. function try_ValueExpr()
  6624. {
  6625. switch (l1)
  6626. {
  6627. case 260: // 'validate'
  6628. lookahead2W(246); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  6629. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  6630. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  6631. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  6632. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  6633. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'lax' | 'le' | 'let' |
  6634. // 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' |
  6635. // 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' | 'strict' | 'times' |
  6636. // 'to' | 'treat' | 'type' | 'union' | 'where' | 'with' | 'words' | '{' | '|' |
  6637. // '||' | '|}' | '}'
  6638. break;
  6639. default:
  6640. lk = l1;
  6641. }
  6642. switch (lk)
  6643. {
  6644. case 87812: // 'validate' 'lax'
  6645. case 123140: // 'validate' 'strict'
  6646. case 129284: // 'validate' 'type'
  6647. case 141572: // 'validate' '{'
  6648. try_ValidateExpr();
  6649. break;
  6650. case 35: // '(#'
  6651. try_ExtensionExpr();
  6652. break;
  6653. default:
  6654. try_SimpleMapExpr();
  6655. }
  6656. }
  6657. function parse_SimpleMapExpr()
  6658. {
  6659. eventHandler.startNonterminal("SimpleMapExpr", e0);
  6660. parse_PathExpr();
  6661. for (;;)
  6662. {
  6663. if (l1 != 26) // '!'
  6664. {
  6665. break;
  6666. }
  6667. shift(26); // '!'
  6668. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6669. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  6670. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  6671. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6672. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6673. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6674. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6675. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6676. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6677. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6678. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6679. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6680. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6681. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6682. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6683. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6684. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6685. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6686. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6687. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6688. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6689. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6690. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6691. // 'xquery' | '{' | '{|'
  6692. whitespace();
  6693. parse_PathExpr();
  6694. }
  6695. eventHandler.endNonterminal("SimpleMapExpr", e0);
  6696. }
  6697. function try_SimpleMapExpr()
  6698. {
  6699. try_PathExpr();
  6700. for (;;)
  6701. {
  6702. if (l1 != 26) // '!'
  6703. {
  6704. break;
  6705. }
  6706. shiftT(26); // '!'
  6707. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6708. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  6709. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  6710. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6711. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6712. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6713. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6714. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6715. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6716. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6717. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6718. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6719. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6720. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6721. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6722. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6723. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6724. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6725. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6726. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6727. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6728. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6729. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6730. // 'xquery' | '{' | '{|'
  6731. try_PathExpr();
  6732. }
  6733. }
  6734. function parse_GeneralComp()
  6735. {
  6736. eventHandler.startNonterminal("GeneralComp", e0);
  6737. switch (l1)
  6738. {
  6739. case 60: // '='
  6740. shift(60); // '='
  6741. break;
  6742. case 27: // '!='
  6743. shift(27); // '!='
  6744. break;
  6745. case 54: // '<'
  6746. shift(54); // '<'
  6747. break;
  6748. case 58: // '<='
  6749. shift(58); // '<='
  6750. break;
  6751. case 61: // '>'
  6752. shift(61); // '>'
  6753. break;
  6754. default:
  6755. shift(62); // '>='
  6756. }
  6757. eventHandler.endNonterminal("GeneralComp", e0);
  6758. }
  6759. function try_GeneralComp()
  6760. {
  6761. switch (l1)
  6762. {
  6763. case 60: // '='
  6764. shiftT(60); // '='
  6765. break;
  6766. case 27: // '!='
  6767. shiftT(27); // '!='
  6768. break;
  6769. case 54: // '<'
  6770. shiftT(54); // '<'
  6771. break;
  6772. case 58: // '<='
  6773. shiftT(58); // '<='
  6774. break;
  6775. case 61: // '>'
  6776. shiftT(61); // '>'
  6777. break;
  6778. default:
  6779. shiftT(62); // '>='
  6780. }
  6781. }
  6782. function parse_ValueComp()
  6783. {
  6784. eventHandler.startNonterminal("ValueComp", e0);
  6785. switch (l1)
  6786. {
  6787. case 128: // 'eq'
  6788. shift(128); // 'eq'
  6789. break;
  6790. case 186: // 'ne'
  6791. shift(186); // 'ne'
  6792. break;
  6793. case 178: // 'lt'
  6794. shift(178); // 'lt'
  6795. break;
  6796. case 172: // 'le'
  6797. shift(172); // 'le'
  6798. break;
  6799. case 150: // 'gt'
  6800. shift(150); // 'gt'
  6801. break;
  6802. default:
  6803. shift(146); // 'ge'
  6804. }
  6805. eventHandler.endNonterminal("ValueComp", e0);
  6806. }
  6807. function try_ValueComp()
  6808. {
  6809. switch (l1)
  6810. {
  6811. case 128: // 'eq'
  6812. shiftT(128); // 'eq'
  6813. break;
  6814. case 186: // 'ne'
  6815. shiftT(186); // 'ne'
  6816. break;
  6817. case 178: // 'lt'
  6818. shiftT(178); // 'lt'
  6819. break;
  6820. case 172: // 'le'
  6821. shiftT(172); // 'le'
  6822. break;
  6823. case 150: // 'gt'
  6824. shiftT(150); // 'gt'
  6825. break;
  6826. default:
  6827. shiftT(146); // 'ge'
  6828. }
  6829. }
  6830. function parse_NodeComp()
  6831. {
  6832. eventHandler.startNonterminal("NodeComp", e0);
  6833. switch (l1)
  6834. {
  6835. case 164: // 'is'
  6836. shift(164); // 'is'
  6837. break;
  6838. case 57: // '<<'
  6839. shift(57); // '<<'
  6840. break;
  6841. default:
  6842. shift(63); // '>>'
  6843. }
  6844. eventHandler.endNonterminal("NodeComp", e0);
  6845. }
  6846. function try_NodeComp()
  6847. {
  6848. switch (l1)
  6849. {
  6850. case 164: // 'is'
  6851. shiftT(164); // 'is'
  6852. break;
  6853. case 57: // '<<'
  6854. shiftT(57); // '<<'
  6855. break;
  6856. default:
  6857. shiftT(63); // '>>'
  6858. }
  6859. }
  6860. function parse_ValidateExpr()
  6861. {
  6862. eventHandler.startNonterminal("ValidateExpr", e0);
  6863. shift(260); // 'validate'
  6864. lookahead1W(160); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  6865. if (l1 != 276) // '{'
  6866. {
  6867. switch (l1)
  6868. {
  6869. case 252: // 'type'
  6870. shift(252); // 'type'
  6871. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6872. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6873. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6874. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6875. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6876. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6877. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6878. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6879. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6880. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6881. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6882. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6883. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6884. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6885. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6886. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6887. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6888. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6889. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6890. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6891. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6892. // 'xquery'
  6893. whitespace();
  6894. parse_TypeName();
  6895. break;
  6896. default:
  6897. whitespace();
  6898. parse_ValidationMode();
  6899. }
  6900. }
  6901. lookahead1W(87); // S^WS | '(:' | '{'
  6902. shift(276); // '{'
  6903. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6904. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6905. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6906. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  6907. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  6908. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  6909. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6910. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6911. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6912. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6913. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6914. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6915. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6916. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6917. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6918. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6919. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6920. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6921. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6922. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6923. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6924. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6925. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6926. // 'xquery' | '{' | '{|'
  6927. whitespace();
  6928. parse_Expr();
  6929. shift(282); // '}'
  6930. eventHandler.endNonterminal("ValidateExpr", e0);
  6931. }
  6932. function try_ValidateExpr()
  6933. {
  6934. shiftT(260); // 'validate'
  6935. lookahead1W(160); // S^WS | '(:' | 'lax' | 'strict' | 'type' | '{'
  6936. if (l1 != 276) // '{'
  6937. {
  6938. switch (l1)
  6939. {
  6940. case 252: // 'type'
  6941. shiftT(252); // 'type'
  6942. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  6943. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  6944. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  6945. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  6946. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  6947. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  6948. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  6949. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  6950. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  6951. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  6952. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  6953. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  6954. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  6955. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  6956. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6957. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6958. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6959. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6960. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6961. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6962. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6963. // 'xquery'
  6964. try_TypeName();
  6965. break;
  6966. default:
  6967. try_ValidationMode();
  6968. }
  6969. }
  6970. lookahead1W(87); // S^WS | '(:' | '{'
  6971. shiftT(276); // '{'
  6972. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  6973. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  6974. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  6975. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  6976. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  6977. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  6978. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  6979. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  6980. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  6981. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  6982. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  6983. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  6984. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  6985. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  6986. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  6987. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  6988. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  6989. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  6990. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  6991. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  6992. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  6993. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  6994. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  6995. // 'xquery' | '{' | '{|'
  6996. try_Expr();
  6997. shiftT(282); // '}'
  6998. }
  6999. function parse_ValidationMode()
  7000. {
  7001. eventHandler.startNonterminal("ValidationMode", e0);
  7002. switch (l1)
  7003. {
  7004. case 171: // 'lax'
  7005. shift(171); // 'lax'
  7006. break;
  7007. default:
  7008. shift(240); // 'strict'
  7009. }
  7010. eventHandler.endNonterminal("ValidationMode", e0);
  7011. }
  7012. function try_ValidationMode()
  7013. {
  7014. switch (l1)
  7015. {
  7016. case 171: // 'lax'
  7017. shiftT(171); // 'lax'
  7018. break;
  7019. default:
  7020. shiftT(240); // 'strict'
  7021. }
  7022. }
  7023. function parse_ExtensionExpr()
  7024. {
  7025. eventHandler.startNonterminal("ExtensionExpr", e0);
  7026. for (;;)
  7027. {
  7028. whitespace();
  7029. parse_Pragma();
  7030. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  7031. if (l1 != 35) // '(#'
  7032. {
  7033. break;
  7034. }
  7035. }
  7036. shift(276); // '{'
  7037. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7038. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  7039. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  7040. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  7041. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  7042. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  7043. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  7044. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  7045. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  7046. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  7047. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  7048. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  7049. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  7050. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  7051. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  7052. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  7053. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  7054. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  7055. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7056. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  7057. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  7058. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  7059. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  7060. // 'xquery' | '{' | '{|' | '}'
  7061. if (l1 != 282) // '}'
  7062. {
  7063. whitespace();
  7064. parse_Expr();
  7065. }
  7066. shift(282); // '}'
  7067. eventHandler.endNonterminal("ExtensionExpr", e0);
  7068. }
  7069. function try_ExtensionExpr()
  7070. {
  7071. for (;;)
  7072. {
  7073. try_Pragma();
  7074. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  7075. if (l1 != 35) // '(#'
  7076. {
  7077. break;
  7078. }
  7079. }
  7080. shiftT(276); // '{'
  7081. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7082. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  7083. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  7084. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  7085. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  7086. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  7087. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  7088. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  7089. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  7090. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  7091. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  7092. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  7093. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  7094. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  7095. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  7096. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  7097. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  7098. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  7099. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7100. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  7101. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  7102. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  7103. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  7104. // 'xquery' | '{' | '{|' | '}'
  7105. if (l1 != 282) // '}'
  7106. {
  7107. try_Expr();
  7108. }
  7109. shiftT(282); // '}'
  7110. }
  7111. function parse_Pragma()
  7112. {
  7113. eventHandler.startNonterminal("Pragma", e0);
  7114. shift(35); // '(#'
  7115. lookahead1(250); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7116. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7117. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7118. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7119. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7120. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7121. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7122. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7123. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7124. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7125. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7126. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7127. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7128. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7129. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7130. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7131. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7132. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7133. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7134. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7135. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  7136. if (l1 == 21) // S
  7137. {
  7138. shift(21); // S
  7139. }
  7140. parse_EQName();
  7141. lookahead1(10); // S | '#)'
  7142. if (l1 == 21) // S
  7143. {
  7144. shift(21); // S
  7145. lookahead1(0); // PragmaContents
  7146. shift(1); // PragmaContents
  7147. }
  7148. lookahead1(5); // '#)'
  7149. shift(30); // '#)'
  7150. eventHandler.endNonterminal("Pragma", e0);
  7151. }
  7152. function try_Pragma()
  7153. {
  7154. shiftT(35); // '(#'
  7155. lookahead1(250); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7156. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7157. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7158. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7159. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7160. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7161. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7162. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7163. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7164. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7165. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7166. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7167. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7168. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7169. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7170. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7171. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7172. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7173. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7174. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7175. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  7176. if (l1 == 21) // S
  7177. {
  7178. shiftT(21); // S
  7179. }
  7180. try_EQName();
  7181. lookahead1(10); // S | '#)'
  7182. if (l1 == 21) // S
  7183. {
  7184. shiftT(21); // S
  7185. lookahead1(0); // PragmaContents
  7186. shiftT(1); // PragmaContents
  7187. }
  7188. lookahead1(5); // '#)'
  7189. shiftT(30); // '#)'
  7190. }
  7191. function parse_PathExpr()
  7192. {
  7193. eventHandler.startNonterminal("PathExpr", e0);
  7194. switch (l1)
  7195. {
  7196. case 46: // '/'
  7197. shift(46); // '/'
  7198. lookahead1W(283); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7199. // StringLiteral | S^WS | EOF | '!' | '!=' | '$' | '%' | '(' | '(:' | ')' | '*' |
  7200. // '+' | ',' | '-' | '.' | '..' | ':' | ';' | '<' | '<!--' | '<<' | '<=' | '<?' |
  7201. // '=' | '>' | '>=' | '>>' | '@' | '[' | ']' | 'after' | 'allowing' | 'ancestor' |
  7202. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  7203. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' |
  7204. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  7205. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  7206. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  7207. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  7208. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  7209. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  7210. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  7211. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  7212. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  7213. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  7214. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  7215. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' |
  7216. // 'preceding' | 'preceding-sibling' | 'processing-instruction' | 'rename' |
  7217. // 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7218. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  7219. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  7220. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  7221. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  7222. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '{|' | '|' | '||' |
  7223. // '|}' | '}'
  7224. switch (l1)
  7225. {
  7226. case 25: // EOF
  7227. case 26: // '!'
  7228. case 27: // '!='
  7229. case 37: // ')'
  7230. case 38: // '*'
  7231. case 40: // '+'
  7232. case 41: // ','
  7233. case 42: // '-'
  7234. case 49: // ':'
  7235. case 53: // ';'
  7236. case 57: // '<<'
  7237. case 58: // '<='
  7238. case 60: // '='
  7239. case 61: // '>'
  7240. case 62: // '>='
  7241. case 63: // '>>'
  7242. case 69: // ']'
  7243. case 87: // 'by'
  7244. case 99: // 'contains'
  7245. case 205: // 'paragraphs'
  7246. case 232: // 'sentences'
  7247. case 247: // 'times'
  7248. case 273: // 'words'
  7249. case 279: // '|'
  7250. case 280: // '||'
  7251. case 281: // '|}'
  7252. case 282: // '}'
  7253. break;
  7254. default:
  7255. whitespace();
  7256. parse_RelativePathExpr();
  7257. }
  7258. break;
  7259. case 47: // '//'
  7260. shift(47); // '//'
  7261. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7262. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7263. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7264. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7265. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7266. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7267. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7268. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7269. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7270. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7271. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7272. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7273. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7274. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7275. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7276. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7277. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7278. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7279. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7280. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7281. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7282. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7283. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7284. whitespace();
  7285. parse_RelativePathExpr();
  7286. break;
  7287. default:
  7288. parse_RelativePathExpr();
  7289. }
  7290. eventHandler.endNonterminal("PathExpr", e0);
  7291. }
  7292. function try_PathExpr()
  7293. {
  7294. switch (l1)
  7295. {
  7296. case 46: // '/'
  7297. shiftT(46); // '/'
  7298. lookahead1W(283); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7299. // StringLiteral | S^WS | EOF | '!' | '!=' | '$' | '%' | '(' | '(:' | ')' | '*' |
  7300. // '+' | ',' | '-' | '.' | '..' | ':' | ';' | '<' | '<!--' | '<<' | '<=' | '<?' |
  7301. // '=' | '>' | '>=' | '>>' | '@' | '[' | ']' | 'after' | 'allowing' | 'ancestor' |
  7302. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  7303. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' |
  7304. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  7305. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  7306. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  7307. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  7308. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  7309. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  7310. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  7311. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  7312. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  7313. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  7314. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  7315. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' |
  7316. // 'preceding' | 'preceding-sibling' | 'processing-instruction' | 'rename' |
  7317. // 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7318. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  7319. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  7320. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  7321. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  7322. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '{|' | '|' | '||' |
  7323. // '|}' | '}'
  7324. switch (l1)
  7325. {
  7326. case 25: // EOF
  7327. case 26: // '!'
  7328. case 27: // '!='
  7329. case 37: // ')'
  7330. case 38: // '*'
  7331. case 40: // '+'
  7332. case 41: // ','
  7333. case 42: // '-'
  7334. case 49: // ':'
  7335. case 53: // ';'
  7336. case 57: // '<<'
  7337. case 58: // '<='
  7338. case 60: // '='
  7339. case 61: // '>'
  7340. case 62: // '>='
  7341. case 63: // '>>'
  7342. case 69: // ']'
  7343. case 87: // 'by'
  7344. case 99: // 'contains'
  7345. case 205: // 'paragraphs'
  7346. case 232: // 'sentences'
  7347. case 247: // 'times'
  7348. case 273: // 'words'
  7349. case 279: // '|'
  7350. case 280: // '||'
  7351. case 281: // '|}'
  7352. case 282: // '}'
  7353. break;
  7354. default:
  7355. try_RelativePathExpr();
  7356. }
  7357. break;
  7358. case 47: // '//'
  7359. shiftT(47); // '//'
  7360. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7361. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7362. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7363. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7364. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7365. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7366. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7367. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7368. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7369. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7370. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7371. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7372. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7373. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7374. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7375. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7376. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7377. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7378. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7379. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7380. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7381. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7382. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7383. try_RelativePathExpr();
  7384. break;
  7385. default:
  7386. try_RelativePathExpr();
  7387. }
  7388. }
  7389. function parse_RelativePathExpr()
  7390. {
  7391. eventHandler.startNonterminal("RelativePathExpr", e0);
  7392. parse_StepExpr();
  7393. for (;;)
  7394. {
  7395. switch (l1)
  7396. {
  7397. case 26: // '!'
  7398. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7399. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  7400. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  7401. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  7402. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  7403. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  7404. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  7405. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  7406. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  7407. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  7408. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  7409. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  7410. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  7411. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  7412. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  7413. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  7414. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  7415. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  7416. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7417. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  7418. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  7419. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  7420. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  7421. // 'xquery' | '{' | '{|'
  7422. break;
  7423. default:
  7424. lk = l1;
  7425. }
  7426. if (lk != 25 // EOF
  7427. && lk != 27 // '!='
  7428. && lk != 37 // ')'
  7429. && lk != 38 // '*'
  7430. && lk != 40 // '+'
  7431. && lk != 41 // ','
  7432. && lk != 42 // '-'
  7433. && lk != 46 // '/'
  7434. && lk != 47 // '//'
  7435. && lk != 49 // ':'
  7436. && lk != 53 // ';'
  7437. && lk != 54 // '<'
  7438. && lk != 57 // '<<'
  7439. && lk != 58 // '<='
  7440. && lk != 60 // '='
  7441. && lk != 61 // '>'
  7442. && lk != 62 // '>='
  7443. && lk != 63 // '>>'
  7444. && lk != 69 // ']'
  7445. && lk != 70 // 'after'
  7446. && lk != 75 // 'and'
  7447. && lk != 79 // 'as'
  7448. && lk != 80 // 'ascending'
  7449. && lk != 81 // 'at'
  7450. && lk != 84 // 'before'
  7451. && lk != 87 // 'by'
  7452. && lk != 88 // 'case'
  7453. && lk != 89 // 'cast'
  7454. && lk != 90 // 'castable'
  7455. && lk != 94 // 'collation'
  7456. && lk != 99 // 'contains'
  7457. && lk != 105 // 'count'
  7458. && lk != 109 // 'default'
  7459. && lk != 113 // 'descending'
  7460. && lk != 118 // 'div'
  7461. && lk != 122 // 'else'
  7462. && lk != 123 // 'empty'
  7463. && lk != 126 // 'end'
  7464. && lk != 128 // 'eq'
  7465. && lk != 131 // 'except'
  7466. && lk != 137 // 'for'
  7467. && lk != 146 // 'ge'
  7468. && lk != 148 // 'group'
  7469. && lk != 150 // 'gt'
  7470. && lk != 151 // 'idiv'
  7471. && lk != 160 // 'instance'
  7472. && lk != 162 // 'intersect'
  7473. && lk != 163 // 'into'
  7474. && lk != 164 // 'is'
  7475. && lk != 172 // 'le'
  7476. && lk != 174 // 'let'
  7477. && lk != 178 // 'lt'
  7478. && lk != 180 // 'mod'
  7479. && lk != 181 // 'modify'
  7480. && lk != 186 // 'ne'
  7481. && lk != 198 // 'only'
  7482. && lk != 200 // 'or'
  7483. && lk != 201 // 'order'
  7484. && lk != 205 // 'paragraphs'
  7485. && lk != 220 // 'return'
  7486. && lk != 224 // 'satisfies'
  7487. && lk != 232 // 'sentences'
  7488. && lk != 236 // 'stable'
  7489. && lk != 237 // 'start'
  7490. && lk != 247 // 'times'
  7491. && lk != 248 // 'to'
  7492. && lk != 249 // 'treat'
  7493. && lk != 254 // 'union'
  7494. && lk != 266 // 'where'
  7495. && lk != 270 // 'with'
  7496. && lk != 273 // 'words'
  7497. && lk != 279 // '|'
  7498. && lk != 280 // '||'
  7499. && lk != 281 // '|}'
  7500. && lk != 282 // '}'
  7501. && lk != 23578 // '!' '/'
  7502. && lk != 24090) // '!' '//'
  7503. {
  7504. lk = memoized(2, e0);
  7505. if (lk == 0)
  7506. {
  7507. var b0A = b0; var e0A = e0; var l1A = l1;
  7508. var b1A = b1; var e1A = e1; var l2A = l2;
  7509. var b2A = b2; var e2A = e2;
  7510. try
  7511. {
  7512. switch (l1)
  7513. {
  7514. case 46: // '/'
  7515. shiftT(46); // '/'
  7516. break;
  7517. case 47: // '//'
  7518. shiftT(47); // '//'
  7519. break;
  7520. default:
  7521. shiftT(26); // '!'
  7522. }
  7523. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7524. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7525. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7526. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7527. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7528. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7529. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7530. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7531. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7532. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7533. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7534. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7535. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7536. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7537. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7538. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7539. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7540. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7541. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7542. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7543. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7544. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7545. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7546. try_StepExpr();
  7547. lk = -1;
  7548. }
  7549. catch (p1A)
  7550. {
  7551. lk = -2;
  7552. }
  7553. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  7554. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  7555. b2 = b2A; e2 = e2A; end = e2A; }}
  7556. memoize(2, e0, lk);
  7557. }
  7558. }
  7559. if (lk != -1
  7560. && lk != 46 // '/'
  7561. && lk != 47) // '//'
  7562. {
  7563. break;
  7564. }
  7565. switch (l1)
  7566. {
  7567. case 46: // '/'
  7568. shift(46); // '/'
  7569. break;
  7570. case 47: // '//'
  7571. shift(47); // '//'
  7572. break;
  7573. default:
  7574. shift(26); // '!'
  7575. }
  7576. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7577. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7578. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7579. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7580. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7581. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7582. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7583. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7584. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7585. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7586. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7587. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7588. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7589. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7590. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7591. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7592. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7593. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7594. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7595. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7596. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7597. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7598. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7599. whitespace();
  7600. parse_StepExpr();
  7601. }
  7602. eventHandler.endNonterminal("RelativePathExpr", e0);
  7603. }
  7604. function try_RelativePathExpr()
  7605. {
  7606. try_StepExpr();
  7607. for (;;)
  7608. {
  7609. switch (l1)
  7610. {
  7611. case 26: // '!'
  7612. lookahead2W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7613. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  7614. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  7615. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  7616. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  7617. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  7618. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  7619. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  7620. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  7621. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  7622. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  7623. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  7624. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  7625. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  7626. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  7627. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  7628. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  7629. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  7630. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7631. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  7632. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  7633. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  7634. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  7635. // 'xquery' | '{' | '{|'
  7636. break;
  7637. default:
  7638. lk = l1;
  7639. }
  7640. if (lk != 25 // EOF
  7641. && lk != 27 // '!='
  7642. && lk != 37 // ')'
  7643. && lk != 38 // '*'
  7644. && lk != 40 // '+'
  7645. && lk != 41 // ','
  7646. && lk != 42 // '-'
  7647. && lk != 46 // '/'
  7648. && lk != 47 // '//'
  7649. && lk != 49 // ':'
  7650. && lk != 53 // ';'
  7651. && lk != 54 // '<'
  7652. && lk != 57 // '<<'
  7653. && lk != 58 // '<='
  7654. && lk != 60 // '='
  7655. && lk != 61 // '>'
  7656. && lk != 62 // '>='
  7657. && lk != 63 // '>>'
  7658. && lk != 69 // ']'
  7659. && lk != 70 // 'after'
  7660. && lk != 75 // 'and'
  7661. && lk != 79 // 'as'
  7662. && lk != 80 // 'ascending'
  7663. && lk != 81 // 'at'
  7664. && lk != 84 // 'before'
  7665. && lk != 87 // 'by'
  7666. && lk != 88 // 'case'
  7667. && lk != 89 // 'cast'
  7668. && lk != 90 // 'castable'
  7669. && lk != 94 // 'collation'
  7670. && lk != 99 // 'contains'
  7671. && lk != 105 // 'count'
  7672. && lk != 109 // 'default'
  7673. && lk != 113 // 'descending'
  7674. && lk != 118 // 'div'
  7675. && lk != 122 // 'else'
  7676. && lk != 123 // 'empty'
  7677. && lk != 126 // 'end'
  7678. && lk != 128 // 'eq'
  7679. && lk != 131 // 'except'
  7680. && lk != 137 // 'for'
  7681. && lk != 146 // 'ge'
  7682. && lk != 148 // 'group'
  7683. && lk != 150 // 'gt'
  7684. && lk != 151 // 'idiv'
  7685. && lk != 160 // 'instance'
  7686. && lk != 162 // 'intersect'
  7687. && lk != 163 // 'into'
  7688. && lk != 164 // 'is'
  7689. && lk != 172 // 'le'
  7690. && lk != 174 // 'let'
  7691. && lk != 178 // 'lt'
  7692. && lk != 180 // 'mod'
  7693. && lk != 181 // 'modify'
  7694. && lk != 186 // 'ne'
  7695. && lk != 198 // 'only'
  7696. && lk != 200 // 'or'
  7697. && lk != 201 // 'order'
  7698. && lk != 205 // 'paragraphs'
  7699. && lk != 220 // 'return'
  7700. && lk != 224 // 'satisfies'
  7701. && lk != 232 // 'sentences'
  7702. && lk != 236 // 'stable'
  7703. && lk != 237 // 'start'
  7704. && lk != 247 // 'times'
  7705. && lk != 248 // 'to'
  7706. && lk != 249 // 'treat'
  7707. && lk != 254 // 'union'
  7708. && lk != 266 // 'where'
  7709. && lk != 270 // 'with'
  7710. && lk != 273 // 'words'
  7711. && lk != 279 // '|'
  7712. && lk != 280 // '||'
  7713. && lk != 281 // '|}'
  7714. && lk != 282 // '}'
  7715. && lk != 23578 // '!' '/'
  7716. && lk != 24090) // '!' '//'
  7717. {
  7718. lk = memoized(2, e0);
  7719. if (lk == 0)
  7720. {
  7721. var b0A = b0; var e0A = e0; var l1A = l1;
  7722. var b1A = b1; var e1A = e1; var l2A = l2;
  7723. var b2A = b2; var e2A = e2;
  7724. try
  7725. {
  7726. switch (l1)
  7727. {
  7728. case 46: // '/'
  7729. shiftT(46); // '/'
  7730. break;
  7731. case 47: // '//'
  7732. shiftT(47); // '//'
  7733. break;
  7734. default:
  7735. shiftT(26); // '!'
  7736. }
  7737. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7738. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7739. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7740. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7741. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7742. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7743. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7744. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7745. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7746. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7747. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7748. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7749. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7750. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7751. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7752. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7753. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7754. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7755. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7756. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7757. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7758. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7759. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7760. try_StepExpr();
  7761. memoize(2, e0A, -1);
  7762. continue;
  7763. }
  7764. catch (p1A)
  7765. {
  7766. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  7767. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  7768. b2 = b2A; e2 = e2A; end = e2A; }}
  7769. memoize(2, e0A, -2);
  7770. break;
  7771. }
  7772. }
  7773. }
  7774. if (lk != -1
  7775. && lk != 46 // '/'
  7776. && lk != 47) // '//'
  7777. {
  7778. break;
  7779. }
  7780. switch (l1)
  7781. {
  7782. case 46: // '/'
  7783. shiftT(46); // '/'
  7784. break;
  7785. case 47: // '//'
  7786. shiftT(47); // '//'
  7787. break;
  7788. default:
  7789. shiftT(26); // '!'
  7790. }
  7791. lookahead1W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  7792. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  7793. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7794. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7795. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  7796. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  7797. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  7798. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  7799. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  7800. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  7801. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  7802. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  7803. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  7804. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  7805. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  7806. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  7807. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  7808. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7809. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7810. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  7811. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  7812. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  7813. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  7814. try_StepExpr();
  7815. }
  7816. }
  7817. function parse_StepExpr()
  7818. {
  7819. eventHandler.startNonterminal("StepExpr", e0);
  7820. switch (l1)
  7821. {
  7822. case 82: // 'attribute'
  7823. lookahead2W(282); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  7824. // ',' | '-' | '/' | '//' | ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' |
  7825. // '>=' | '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' |
  7826. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  7827. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' |
  7828. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  7829. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  7830. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  7831. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  7832. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  7833. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  7834. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  7835. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  7836. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  7837. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  7838. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  7839. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' |
  7840. // 'preceding' | 'preceding-sibling' | 'processing-instruction' | 'rename' |
  7841. // 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7842. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  7843. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  7844. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  7845. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  7846. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '|' | '||' | '|}' | '}'
  7847. break;
  7848. case 121: // 'element'
  7849. lookahead2W(280); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  7850. // ',' | '-' | '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  7851. // '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7852. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  7853. // 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' | 'castable' |
  7854. // 'catch' | 'child' | 'collation' | 'comment' | 'constraint' | 'construction' |
  7855. // 'contains' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  7856. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  7857. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  7858. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  7859. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  7860. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  7861. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  7862. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  7863. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  7864. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  7865. // 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' | 'preceding' |
  7866. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  7867. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  7868. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  7869. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  7870. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  7871. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  7872. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '|' | '||' | '|}' | '}'
  7873. break;
  7874. case 184: // 'namespace'
  7875. case 216: // 'processing-instruction'
  7876. lookahead2W(279); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  7877. // ',' | '-' | '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  7878. // '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  7879. // 'and' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  7880. // 'boundary-space' | 'break' | 'by' | 'case' | 'cast' | 'castable' | 'catch' |
  7881. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  7882. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  7883. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  7884. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  7885. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  7886. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  7887. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  7888. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  7889. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  7890. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  7891. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  7892. // 'paragraphs' | 'parent' | 'preceding' | 'preceding-sibling' |
  7893. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  7894. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  7895. // 'score' | 'self' | 'sentences' | 'sliding' | 'some' | 'stable' | 'start' |
  7896. // 'strict' | 'switch' | 'text' | 'times' | 'to' | 'treat' | 'try' | 'tumbling' |
  7897. // 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' | 'validate' |
  7898. // 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' | 'words' |
  7899. // 'xquery' | '{' | '|' | '||' | '|}' | '}'
  7900. break;
  7901. case 96: // 'comment'
  7902. case 119: // 'document'
  7903. case 202: // 'ordered'
  7904. case 244: // 'text'
  7905. case 256: // 'unordered'
  7906. lookahead2W(245); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  7907. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  7908. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  7909. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  7910. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  7911. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  7912. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  7913. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  7914. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  7915. break;
  7916. case 124: // 'empty-sequence'
  7917. case 152: // 'if'
  7918. case 165: // 'item'
  7919. case 243: // 'switch'
  7920. case 253: // 'typeswitch'
  7921. lookahead2W(238); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  7922. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  7923. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  7924. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  7925. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  7926. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  7927. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  7928. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  7929. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  7930. break;
  7931. case 73: // 'ancestor'
  7932. case 74: // 'ancestor-or-self'
  7933. case 93: // 'child'
  7934. case 111: // 'descendant'
  7935. case 112: // 'descendant-or-self'
  7936. case 135: // 'following'
  7937. case 136: // 'following-sibling'
  7938. case 206: // 'parent'
  7939. case 212: // 'preceding'
  7940. case 213: // 'preceding-sibling'
  7941. case 229: // 'self'
  7942. lookahead2W(244); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  7943. // '//' | ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  7944. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' |
  7945. // 'cast' | 'castable' | 'collation' | 'contains' | 'count' | 'default' |
  7946. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  7947. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  7948. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  7949. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  7950. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  7951. // '|}' | '}'
  7952. break;
  7953. case 6: // EQName^Token
  7954. case 70: // 'after'
  7955. case 72: // 'allowing'
  7956. case 75: // 'and'
  7957. case 78: // 'array'
  7958. case 79: // 'as'
  7959. case 80: // 'ascending'
  7960. case 81: // 'at'
  7961. case 83: // 'base-uri'
  7962. case 84: // 'before'
  7963. case 85: // 'boundary-space'
  7964. case 86: // 'break'
  7965. case 88: // 'case'
  7966. case 89: // 'cast'
  7967. case 90: // 'castable'
  7968. case 91: // 'catch'
  7969. case 94: // 'collation'
  7970. case 97: // 'constraint'
  7971. case 98: // 'construction'
  7972. case 101: // 'context'
  7973. case 102: // 'continue'
  7974. case 103: // 'copy'
  7975. case 104: // 'copy-namespaces'
  7976. case 105: // 'count'
  7977. case 106: // 'decimal-format'
  7978. case 108: // 'declare'
  7979. case 109: // 'default'
  7980. case 110: // 'delete'
  7981. case 113: // 'descending'
  7982. case 118: // 'div'
  7983. case 120: // 'document-node'
  7984. case 122: // 'else'
  7985. case 123: // 'empty'
  7986. case 125: // 'encoding'
  7987. case 126: // 'end'
  7988. case 128: // 'eq'
  7989. case 129: // 'every'
  7990. case 131: // 'except'
  7991. case 132: // 'exit'
  7992. case 133: // 'external'
  7993. case 134: // 'first'
  7994. case 137: // 'for'
  7995. case 141: // 'ft-option'
  7996. case 145: // 'function'
  7997. case 146: // 'ge'
  7998. case 148: // 'group'
  7999. case 150: // 'gt'
  8000. case 151: // 'idiv'
  8001. case 153: // 'import'
  8002. case 154: // 'in'
  8003. case 155: // 'index'
  8004. case 159: // 'insert'
  8005. case 160: // 'instance'
  8006. case 161: // 'integrity'
  8007. case 162: // 'intersect'
  8008. case 163: // 'into'
  8009. case 164: // 'is'
  8010. case 167: // 'json-item'
  8011. case 170: // 'last'
  8012. case 171: // 'lax'
  8013. case 172: // 'le'
  8014. case 174: // 'let'
  8015. case 176: // 'loop'
  8016. case 178: // 'lt'
  8017. case 180: // 'mod'
  8018. case 181: // 'modify'
  8019. case 182: // 'module'
  8020. case 185: // 'namespace-node'
  8021. case 186: // 'ne'
  8022. case 191: // 'node'
  8023. case 192: // 'nodes'
  8024. case 194: // 'object'
  8025. case 198: // 'only'
  8026. case 199: // 'option'
  8027. case 200: // 'or'
  8028. case 201: // 'order'
  8029. case 203: // 'ordering'
  8030. case 218: // 'rename'
  8031. case 219: // 'replace'
  8032. case 220: // 'return'
  8033. case 221: // 'returning'
  8034. case 222: // 'revalidation'
  8035. case 224: // 'satisfies'
  8036. case 225: // 'schema'
  8037. case 226: // 'schema-attribute'
  8038. case 227: // 'schema-element'
  8039. case 228: // 'score'
  8040. case 234: // 'sliding'
  8041. case 235: // 'some'
  8042. case 236: // 'stable'
  8043. case 237: // 'start'
  8044. case 240: // 'strict'
  8045. case 248: // 'to'
  8046. case 249: // 'treat'
  8047. case 250: // 'try'
  8048. case 251: // 'tumbling'
  8049. case 252: // 'type'
  8050. case 254: // 'union'
  8051. case 257: // 'updating'
  8052. case 260: // 'validate'
  8053. case 261: // 'value'
  8054. case 262: // 'variable'
  8055. case 263: // 'version'
  8056. case 266: // 'where'
  8057. case 267: // 'while'
  8058. case 270: // 'with'
  8059. case 274: // 'xquery'
  8060. lookahead2W(242); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  8061. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  8062. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  8063. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  8064. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  8065. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  8066. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  8067. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  8068. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  8069. break;
  8070. default:
  8071. lk = l1;
  8072. }
  8073. if (lk == 17486 // 'array' '('
  8074. || lk == 17575 // 'json-item' '('
  8075. || lk == 17602 // 'object' '('
  8076. || lk == 35922 // 'attribute' 'after'
  8077. || lk == 35961 // 'element' 'after'
  8078. || lk == 36024 // 'namespace' 'after'
  8079. || lk == 36056 // 'processing-instruction' 'after'
  8080. || lk == 38482 // 'attribute' 'and'
  8081. || lk == 38521 // 'element' 'and'
  8082. || lk == 38584 // 'namespace' 'and'
  8083. || lk == 38616 // 'processing-instruction' 'and'
  8084. || lk == 40530 // 'attribute' 'as'
  8085. || lk == 40569 // 'element' 'as'
  8086. || lk == 40632 // 'namespace' 'as'
  8087. || lk == 40664 // 'processing-instruction' 'as'
  8088. || lk == 41042 // 'attribute' 'ascending'
  8089. || lk == 41081 // 'element' 'ascending'
  8090. || lk == 41144 // 'namespace' 'ascending'
  8091. || lk == 41176 // 'processing-instruction' 'ascending'
  8092. || lk == 41554 // 'attribute' 'at'
  8093. || lk == 41593 // 'element' 'at'
  8094. || lk == 41656 // 'namespace' 'at'
  8095. || lk == 41688 // 'processing-instruction' 'at'
  8096. || lk == 43090 // 'attribute' 'before'
  8097. || lk == 43129 // 'element' 'before'
  8098. || lk == 43192 // 'namespace' 'before'
  8099. || lk == 43224 // 'processing-instruction' 'before'
  8100. || lk == 45138 // 'attribute' 'case'
  8101. || lk == 45177 // 'element' 'case'
  8102. || lk == 45240 // 'namespace' 'case'
  8103. || lk == 45272 // 'processing-instruction' 'case'
  8104. || lk == 45650 // 'attribute' 'cast'
  8105. || lk == 45689 // 'element' 'cast'
  8106. || lk == 45752 // 'namespace' 'cast'
  8107. || lk == 45784 // 'processing-instruction' 'cast'
  8108. || lk == 46162 // 'attribute' 'castable'
  8109. || lk == 46201 // 'element' 'castable'
  8110. || lk == 46264 // 'namespace' 'castable'
  8111. || lk == 46296 // 'processing-instruction' 'castable'
  8112. || lk == 48210 // 'attribute' 'collation'
  8113. || lk == 48249 // 'element' 'collation'
  8114. || lk == 48312 // 'namespace' 'collation'
  8115. || lk == 48344 // 'processing-instruction' 'collation'
  8116. || lk == 53842 // 'attribute' 'count'
  8117. || lk == 53881 // 'element' 'count'
  8118. || lk == 53944 // 'namespace' 'count'
  8119. || lk == 53976 // 'processing-instruction' 'count'
  8120. || lk == 55890 // 'attribute' 'default'
  8121. || lk == 55929 // 'element' 'default'
  8122. || lk == 55992 // 'namespace' 'default'
  8123. || lk == 56024 // 'processing-instruction' 'default'
  8124. || lk == 57938 // 'attribute' 'descending'
  8125. || lk == 57977 // 'element' 'descending'
  8126. || lk == 58040 // 'namespace' 'descending'
  8127. || lk == 58072 // 'processing-instruction' 'descending'
  8128. || lk == 60498 // 'attribute' 'div'
  8129. || lk == 60537 // 'element' 'div'
  8130. || lk == 60600 // 'namespace' 'div'
  8131. || lk == 60632 // 'processing-instruction' 'div'
  8132. || lk == 62546 // 'attribute' 'else'
  8133. || lk == 62585 // 'element' 'else'
  8134. || lk == 62648 // 'namespace' 'else'
  8135. || lk == 62680 // 'processing-instruction' 'else'
  8136. || lk == 63058 // 'attribute' 'empty'
  8137. || lk == 63097 // 'element' 'empty'
  8138. || lk == 63160 // 'namespace' 'empty'
  8139. || lk == 63192 // 'processing-instruction' 'empty'
  8140. || lk == 64594 // 'attribute' 'end'
  8141. || lk == 64633 // 'element' 'end'
  8142. || lk == 64696 // 'namespace' 'end'
  8143. || lk == 64728 // 'processing-instruction' 'end'
  8144. || lk == 65618 // 'attribute' 'eq'
  8145. || lk == 65657 // 'element' 'eq'
  8146. || lk == 65720 // 'namespace' 'eq'
  8147. || lk == 65752 // 'processing-instruction' 'eq'
  8148. || lk == 67154 // 'attribute' 'except'
  8149. || lk == 67193 // 'element' 'except'
  8150. || lk == 67256 // 'namespace' 'except'
  8151. || lk == 67288 // 'processing-instruction' 'except'
  8152. || lk == 70226 // 'attribute' 'for'
  8153. || lk == 70265 // 'element' 'for'
  8154. || lk == 70328 // 'namespace' 'for'
  8155. || lk == 70360 // 'processing-instruction' 'for'
  8156. || lk == 74834 // 'attribute' 'ge'
  8157. || lk == 74873 // 'element' 'ge'
  8158. || lk == 74936 // 'namespace' 'ge'
  8159. || lk == 74968 // 'processing-instruction' 'ge'
  8160. || lk == 75858 // 'attribute' 'group'
  8161. || lk == 75897 // 'element' 'group'
  8162. || lk == 75960 // 'namespace' 'group'
  8163. || lk == 75992 // 'processing-instruction' 'group'
  8164. || lk == 76882 // 'attribute' 'gt'
  8165. || lk == 76921 // 'element' 'gt'
  8166. || lk == 76984 // 'namespace' 'gt'
  8167. || lk == 77016 // 'processing-instruction' 'gt'
  8168. || lk == 77394 // 'attribute' 'idiv'
  8169. || lk == 77433 // 'element' 'idiv'
  8170. || lk == 77496 // 'namespace' 'idiv'
  8171. || lk == 77528 // 'processing-instruction' 'idiv'
  8172. || lk == 82002 // 'attribute' 'instance'
  8173. || lk == 82041 // 'element' 'instance'
  8174. || lk == 82104 // 'namespace' 'instance'
  8175. || lk == 82136 // 'processing-instruction' 'instance'
  8176. || lk == 83026 // 'attribute' 'intersect'
  8177. || lk == 83065 // 'element' 'intersect'
  8178. || lk == 83128 // 'namespace' 'intersect'
  8179. || lk == 83160 // 'processing-instruction' 'intersect'
  8180. || lk == 83538 // 'attribute' 'into'
  8181. || lk == 83577 // 'element' 'into'
  8182. || lk == 83640 // 'namespace' 'into'
  8183. || lk == 83672 // 'processing-instruction' 'into'
  8184. || lk == 84050 // 'attribute' 'is'
  8185. || lk == 84089 // 'element' 'is'
  8186. || lk == 84152 // 'namespace' 'is'
  8187. || lk == 84184 // 'processing-instruction' 'is'
  8188. || lk == 88146 // 'attribute' 'le'
  8189. || lk == 88185 // 'element' 'le'
  8190. || lk == 88248 // 'namespace' 'le'
  8191. || lk == 88280 // 'processing-instruction' 'le'
  8192. || lk == 89170 // 'attribute' 'let'
  8193. || lk == 89209 // 'element' 'let'
  8194. || lk == 89272 // 'namespace' 'let'
  8195. || lk == 89304 // 'processing-instruction' 'let'
  8196. || lk == 91218 // 'attribute' 'lt'
  8197. || lk == 91257 // 'element' 'lt'
  8198. || lk == 91320 // 'namespace' 'lt'
  8199. || lk == 91352 // 'processing-instruction' 'lt'
  8200. || lk == 92242 // 'attribute' 'mod'
  8201. || lk == 92281 // 'element' 'mod'
  8202. || lk == 92344 // 'namespace' 'mod'
  8203. || lk == 92376 // 'processing-instruction' 'mod'
  8204. || lk == 92754 // 'attribute' 'modify'
  8205. || lk == 92793 // 'element' 'modify'
  8206. || lk == 92856 // 'namespace' 'modify'
  8207. || lk == 92888 // 'processing-instruction' 'modify'
  8208. || lk == 95314 // 'attribute' 'ne'
  8209. || lk == 95353 // 'element' 'ne'
  8210. || lk == 95416 // 'namespace' 'ne'
  8211. || lk == 95448 // 'processing-instruction' 'ne'
  8212. || lk == 101458 // 'attribute' 'only'
  8213. || lk == 101497 // 'element' 'only'
  8214. || lk == 101560 // 'namespace' 'only'
  8215. || lk == 101592 // 'processing-instruction' 'only'
  8216. || lk == 102482 // 'attribute' 'or'
  8217. || lk == 102521 // 'element' 'or'
  8218. || lk == 102584 // 'namespace' 'or'
  8219. || lk == 102616 // 'processing-instruction' 'or'
  8220. || lk == 102994 // 'attribute' 'order'
  8221. || lk == 103033 // 'element' 'order'
  8222. || lk == 103096 // 'namespace' 'order'
  8223. || lk == 103128 // 'processing-instruction' 'order'
  8224. || lk == 112722 // 'attribute' 'return'
  8225. || lk == 112761 // 'element' 'return'
  8226. || lk == 112824 // 'namespace' 'return'
  8227. || lk == 112856 // 'processing-instruction' 'return'
  8228. || lk == 114770 // 'attribute' 'satisfies'
  8229. || lk == 114809 // 'element' 'satisfies'
  8230. || lk == 114872 // 'namespace' 'satisfies'
  8231. || lk == 114904 // 'processing-instruction' 'satisfies'
  8232. || lk == 120914 // 'attribute' 'stable'
  8233. || lk == 120953 // 'element' 'stable'
  8234. || lk == 121016 // 'namespace' 'stable'
  8235. || lk == 121048 // 'processing-instruction' 'stable'
  8236. || lk == 121426 // 'attribute' 'start'
  8237. || lk == 121465 // 'element' 'start'
  8238. || lk == 121528 // 'namespace' 'start'
  8239. || lk == 121560 // 'processing-instruction' 'start'
  8240. || lk == 127058 // 'attribute' 'to'
  8241. || lk == 127097 // 'element' 'to'
  8242. || lk == 127160 // 'namespace' 'to'
  8243. || lk == 127192 // 'processing-instruction' 'to'
  8244. || lk == 127570 // 'attribute' 'treat'
  8245. || lk == 127609 // 'element' 'treat'
  8246. || lk == 127672 // 'namespace' 'treat'
  8247. || lk == 127704 // 'processing-instruction' 'treat'
  8248. || lk == 130130 // 'attribute' 'union'
  8249. || lk == 130169 // 'element' 'union'
  8250. || lk == 130232 // 'namespace' 'union'
  8251. || lk == 130264 // 'processing-instruction' 'union'
  8252. || lk == 136274 // 'attribute' 'where'
  8253. || lk == 136313 // 'element' 'where'
  8254. || lk == 136376 // 'namespace' 'where'
  8255. || lk == 136408 // 'processing-instruction' 'where'
  8256. || lk == 138322 // 'attribute' 'with'
  8257. || lk == 138361 // 'element' 'with'
  8258. || lk == 138424 // 'namespace' 'with'
  8259. || lk == 138456) // 'processing-instruction' 'with'
  8260. {
  8261. lk = memoized(3, e0);
  8262. if (lk == 0)
  8263. {
  8264. var b0A = b0; var e0A = e0; var l1A = l1;
  8265. var b1A = b1; var e1A = e1; var l2A = l2;
  8266. var b2A = b2; var e2A = e2;
  8267. try
  8268. {
  8269. try_PostfixExpr();
  8270. lk = -1;
  8271. }
  8272. catch (p1A)
  8273. {
  8274. lk = -2;
  8275. }
  8276. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  8277. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  8278. b2 = b2A; e2 = e2A; end = e2A; }}
  8279. memoize(3, e0, lk);
  8280. }
  8281. }
  8282. switch (lk)
  8283. {
  8284. case -1:
  8285. case 8: // IntegerLiteral
  8286. case 9: // DecimalLiteral
  8287. case 10: // DoubleLiteral
  8288. case 11: // StringLiteral
  8289. case 31: // '$'
  8290. case 32: // '%'
  8291. case 34: // '('
  8292. case 44: // '.'
  8293. case 54: // '<'
  8294. case 55: // '<!--'
  8295. case 59: // '<?'
  8296. case 68: // '['
  8297. case 276: // '{'
  8298. case 278: // '{|'
  8299. case 3154: // 'attribute' EQName^Token
  8300. case 3193: // 'element' EQName^Token
  8301. case 9912: // 'namespace' NCName^Token
  8302. case 9944: // 'processing-instruction' NCName^Token
  8303. case 14854: // EQName^Token '#'
  8304. case 14918: // 'after' '#'
  8305. case 14920: // 'allowing' '#'
  8306. case 14921: // 'ancestor' '#'
  8307. case 14922: // 'ancestor-or-self' '#'
  8308. case 14923: // 'and' '#'
  8309. case 14926: // 'array' '#'
  8310. case 14927: // 'as' '#'
  8311. case 14928: // 'ascending' '#'
  8312. case 14929: // 'at' '#'
  8313. case 14930: // 'attribute' '#'
  8314. case 14931: // 'base-uri' '#'
  8315. case 14932: // 'before' '#'
  8316. case 14933: // 'boundary-space' '#'
  8317. case 14934: // 'break' '#'
  8318. case 14936: // 'case' '#'
  8319. case 14937: // 'cast' '#'
  8320. case 14938: // 'castable' '#'
  8321. case 14939: // 'catch' '#'
  8322. case 14941: // 'child' '#'
  8323. case 14942: // 'collation' '#'
  8324. case 14944: // 'comment' '#'
  8325. case 14945: // 'constraint' '#'
  8326. case 14946: // 'construction' '#'
  8327. case 14949: // 'context' '#'
  8328. case 14950: // 'continue' '#'
  8329. case 14951: // 'copy' '#'
  8330. case 14952: // 'copy-namespaces' '#'
  8331. case 14953: // 'count' '#'
  8332. case 14954: // 'decimal-format' '#'
  8333. case 14956: // 'declare' '#'
  8334. case 14957: // 'default' '#'
  8335. case 14958: // 'delete' '#'
  8336. case 14959: // 'descendant' '#'
  8337. case 14960: // 'descendant-or-self' '#'
  8338. case 14961: // 'descending' '#'
  8339. case 14966: // 'div' '#'
  8340. case 14967: // 'document' '#'
  8341. case 14968: // 'document-node' '#'
  8342. case 14969: // 'element' '#'
  8343. case 14970: // 'else' '#'
  8344. case 14971: // 'empty' '#'
  8345. case 14972: // 'empty-sequence' '#'
  8346. case 14973: // 'encoding' '#'
  8347. case 14974: // 'end' '#'
  8348. case 14976: // 'eq' '#'
  8349. case 14977: // 'every' '#'
  8350. case 14979: // 'except' '#'
  8351. case 14980: // 'exit' '#'
  8352. case 14981: // 'external' '#'
  8353. case 14982: // 'first' '#'
  8354. case 14983: // 'following' '#'
  8355. case 14984: // 'following-sibling' '#'
  8356. case 14985: // 'for' '#'
  8357. case 14989: // 'ft-option' '#'
  8358. case 14993: // 'function' '#'
  8359. case 14994: // 'ge' '#'
  8360. case 14996: // 'group' '#'
  8361. case 14998: // 'gt' '#'
  8362. case 14999: // 'idiv' '#'
  8363. case 15000: // 'if' '#'
  8364. case 15001: // 'import' '#'
  8365. case 15002: // 'in' '#'
  8366. case 15003: // 'index' '#'
  8367. case 15007: // 'insert' '#'
  8368. case 15008: // 'instance' '#'
  8369. case 15009: // 'integrity' '#'
  8370. case 15010: // 'intersect' '#'
  8371. case 15011: // 'into' '#'
  8372. case 15012: // 'is' '#'
  8373. case 15013: // 'item' '#'
  8374. case 15015: // 'json-item' '#'
  8375. case 15018: // 'last' '#'
  8376. case 15019: // 'lax' '#'
  8377. case 15020: // 'le' '#'
  8378. case 15022: // 'let' '#'
  8379. case 15024: // 'loop' '#'
  8380. case 15026: // 'lt' '#'
  8381. case 15028: // 'mod' '#'
  8382. case 15029: // 'modify' '#'
  8383. case 15030: // 'module' '#'
  8384. case 15032: // 'namespace' '#'
  8385. case 15033: // 'namespace-node' '#'
  8386. case 15034: // 'ne' '#'
  8387. case 15039: // 'node' '#'
  8388. case 15040: // 'nodes' '#'
  8389. case 15042: // 'object' '#'
  8390. case 15046: // 'only' '#'
  8391. case 15047: // 'option' '#'
  8392. case 15048: // 'or' '#'
  8393. case 15049: // 'order' '#'
  8394. case 15050: // 'ordered' '#'
  8395. case 15051: // 'ordering' '#'
  8396. case 15054: // 'parent' '#'
  8397. case 15060: // 'preceding' '#'
  8398. case 15061: // 'preceding-sibling' '#'
  8399. case 15064: // 'processing-instruction' '#'
  8400. case 15066: // 'rename' '#'
  8401. case 15067: // 'replace' '#'
  8402. case 15068: // 'return' '#'
  8403. case 15069: // 'returning' '#'
  8404. case 15070: // 'revalidation' '#'
  8405. case 15072: // 'satisfies' '#'
  8406. case 15073: // 'schema' '#'
  8407. case 15074: // 'schema-attribute' '#'
  8408. case 15075: // 'schema-element' '#'
  8409. case 15076: // 'score' '#'
  8410. case 15077: // 'self' '#'
  8411. case 15082: // 'sliding' '#'
  8412. case 15083: // 'some' '#'
  8413. case 15084: // 'stable' '#'
  8414. case 15085: // 'start' '#'
  8415. case 15088: // 'strict' '#'
  8416. case 15091: // 'switch' '#'
  8417. case 15092: // 'text' '#'
  8418. case 15096: // 'to' '#'
  8419. case 15097: // 'treat' '#'
  8420. case 15098: // 'try' '#'
  8421. case 15099: // 'tumbling' '#'
  8422. case 15100: // 'type' '#'
  8423. case 15101: // 'typeswitch' '#'
  8424. case 15102: // 'union' '#'
  8425. case 15104: // 'unordered' '#'
  8426. case 15105: // 'updating' '#'
  8427. case 15108: // 'validate' '#'
  8428. case 15109: // 'value' '#'
  8429. case 15110: // 'variable' '#'
  8430. case 15111: // 'version' '#'
  8431. case 15114: // 'where' '#'
  8432. case 15115: // 'while' '#'
  8433. case 15118: // 'with' '#'
  8434. case 15122: // 'xquery' '#'
  8435. case 17414: // EQName^Token '('
  8436. case 17478: // 'after' '('
  8437. case 17480: // 'allowing' '('
  8438. case 17481: // 'ancestor' '('
  8439. case 17482: // 'ancestor-or-self' '('
  8440. case 17483: // 'and' '('
  8441. case 17487: // 'as' '('
  8442. case 17488: // 'ascending' '('
  8443. case 17489: // 'at' '('
  8444. case 17491: // 'base-uri' '('
  8445. case 17492: // 'before' '('
  8446. case 17493: // 'boundary-space' '('
  8447. case 17494: // 'break' '('
  8448. case 17496: // 'case' '('
  8449. case 17497: // 'cast' '('
  8450. case 17498: // 'castable' '('
  8451. case 17499: // 'catch' '('
  8452. case 17501: // 'child' '('
  8453. case 17502: // 'collation' '('
  8454. case 17505: // 'constraint' '('
  8455. case 17506: // 'construction' '('
  8456. case 17509: // 'context' '('
  8457. case 17510: // 'continue' '('
  8458. case 17511: // 'copy' '('
  8459. case 17512: // 'copy-namespaces' '('
  8460. case 17513: // 'count' '('
  8461. case 17514: // 'decimal-format' '('
  8462. case 17516: // 'declare' '('
  8463. case 17517: // 'default' '('
  8464. case 17518: // 'delete' '('
  8465. case 17519: // 'descendant' '('
  8466. case 17520: // 'descendant-or-self' '('
  8467. case 17521: // 'descending' '('
  8468. case 17526: // 'div' '('
  8469. case 17527: // 'document' '('
  8470. case 17530: // 'else' '('
  8471. case 17531: // 'empty' '('
  8472. case 17533: // 'encoding' '('
  8473. case 17534: // 'end' '('
  8474. case 17536: // 'eq' '('
  8475. case 17537: // 'every' '('
  8476. case 17539: // 'except' '('
  8477. case 17540: // 'exit' '('
  8478. case 17541: // 'external' '('
  8479. case 17542: // 'first' '('
  8480. case 17543: // 'following' '('
  8481. case 17544: // 'following-sibling' '('
  8482. case 17545: // 'for' '('
  8483. case 17549: // 'ft-option' '('
  8484. case 17553: // 'function' '('
  8485. case 17554: // 'ge' '('
  8486. case 17556: // 'group' '('
  8487. case 17558: // 'gt' '('
  8488. case 17559: // 'idiv' '('
  8489. case 17561: // 'import' '('
  8490. case 17562: // 'in' '('
  8491. case 17563: // 'index' '('
  8492. case 17567: // 'insert' '('
  8493. case 17568: // 'instance' '('
  8494. case 17569: // 'integrity' '('
  8495. case 17570: // 'intersect' '('
  8496. case 17571: // 'into' '('
  8497. case 17572: // 'is' '('
  8498. case 17578: // 'last' '('
  8499. case 17579: // 'lax' '('
  8500. case 17580: // 'le' '('
  8501. case 17582: // 'let' '('
  8502. case 17584: // 'loop' '('
  8503. case 17586: // 'lt' '('
  8504. case 17588: // 'mod' '('
  8505. case 17589: // 'modify' '('
  8506. case 17590: // 'module' '('
  8507. case 17592: // 'namespace' '('
  8508. case 17594: // 'ne' '('
  8509. case 17600: // 'nodes' '('
  8510. case 17606: // 'only' '('
  8511. case 17607: // 'option' '('
  8512. case 17608: // 'or' '('
  8513. case 17609: // 'order' '('
  8514. case 17610: // 'ordered' '('
  8515. case 17611: // 'ordering' '('
  8516. case 17614: // 'parent' '('
  8517. case 17620: // 'preceding' '('
  8518. case 17621: // 'preceding-sibling' '('
  8519. case 17626: // 'rename' '('
  8520. case 17627: // 'replace' '('
  8521. case 17628: // 'return' '('
  8522. case 17629: // 'returning' '('
  8523. case 17630: // 'revalidation' '('
  8524. case 17632: // 'satisfies' '('
  8525. case 17633: // 'schema' '('
  8526. case 17636: // 'score' '('
  8527. case 17637: // 'self' '('
  8528. case 17642: // 'sliding' '('
  8529. case 17643: // 'some' '('
  8530. case 17644: // 'stable' '('
  8531. case 17645: // 'start' '('
  8532. case 17648: // 'strict' '('
  8533. case 17656: // 'to' '('
  8534. case 17657: // 'treat' '('
  8535. case 17658: // 'try' '('
  8536. case 17659: // 'tumbling' '('
  8537. case 17660: // 'type' '('
  8538. case 17662: // 'union' '('
  8539. case 17664: // 'unordered' '('
  8540. case 17665: // 'updating' '('
  8541. case 17668: // 'validate' '('
  8542. case 17669: // 'value' '('
  8543. case 17670: // 'variable' '('
  8544. case 17671: // 'version' '('
  8545. case 17674: // 'where' '('
  8546. case 17675: // 'while' '('
  8547. case 17678: // 'with' '('
  8548. case 17682: // 'xquery' '('
  8549. case 36946: // 'attribute' 'allowing'
  8550. case 36985: // 'element' 'allowing'
  8551. case 37048: // 'namespace' 'allowing'
  8552. case 37080: // 'processing-instruction' 'allowing'
  8553. case 37458: // 'attribute' 'ancestor'
  8554. case 37497: // 'element' 'ancestor'
  8555. case 37560: // 'namespace' 'ancestor'
  8556. case 37592: // 'processing-instruction' 'ancestor'
  8557. case 37970: // 'attribute' 'ancestor-or-self'
  8558. case 38009: // 'element' 'ancestor-or-self'
  8559. case 38072: // 'namespace' 'ancestor-or-self'
  8560. case 38104: // 'processing-instruction' 'ancestor-or-self'
  8561. case 40018: // 'attribute' 'array'
  8562. case 40057: // 'element' 'array'
  8563. case 42066: // 'attribute' 'attribute'
  8564. case 42105: // 'element' 'attribute'
  8565. case 42168: // 'namespace' 'attribute'
  8566. case 42200: // 'processing-instruction' 'attribute'
  8567. case 42578: // 'attribute' 'base-uri'
  8568. case 42617: // 'element' 'base-uri'
  8569. case 42680: // 'namespace' 'base-uri'
  8570. case 42712: // 'processing-instruction' 'base-uri'
  8571. case 43602: // 'attribute' 'boundary-space'
  8572. case 43641: // 'element' 'boundary-space'
  8573. case 43704: // 'namespace' 'boundary-space'
  8574. case 43736: // 'processing-instruction' 'boundary-space'
  8575. case 44114: // 'attribute' 'break'
  8576. case 44153: // 'element' 'break'
  8577. case 44216: // 'namespace' 'break'
  8578. case 44248: // 'processing-instruction' 'break'
  8579. case 46674: // 'attribute' 'catch'
  8580. case 46713: // 'element' 'catch'
  8581. case 46776: // 'namespace' 'catch'
  8582. case 46808: // 'processing-instruction' 'catch'
  8583. case 47698: // 'attribute' 'child'
  8584. case 47737: // 'element' 'child'
  8585. case 47800: // 'namespace' 'child'
  8586. case 47832: // 'processing-instruction' 'child'
  8587. case 49234: // 'attribute' 'comment'
  8588. case 49273: // 'element' 'comment'
  8589. case 49336: // 'namespace' 'comment'
  8590. case 49368: // 'processing-instruction' 'comment'
  8591. case 49746: // 'attribute' 'constraint'
  8592. case 49785: // 'element' 'constraint'
  8593. case 49848: // 'namespace' 'constraint'
  8594. case 49880: // 'processing-instruction' 'constraint'
  8595. case 50258: // 'attribute' 'construction'
  8596. case 50297: // 'element' 'construction'
  8597. case 50360: // 'namespace' 'construction'
  8598. case 50392: // 'processing-instruction' 'construction'
  8599. case 51794: // 'attribute' 'context'
  8600. case 51833: // 'element' 'context'
  8601. case 51896: // 'namespace' 'context'
  8602. case 51928: // 'processing-instruction' 'context'
  8603. case 52306: // 'attribute' 'continue'
  8604. case 52345: // 'element' 'continue'
  8605. case 52408: // 'namespace' 'continue'
  8606. case 52440: // 'processing-instruction' 'continue'
  8607. case 52818: // 'attribute' 'copy'
  8608. case 52857: // 'element' 'copy'
  8609. case 52920: // 'namespace' 'copy'
  8610. case 52952: // 'processing-instruction' 'copy'
  8611. case 53330: // 'attribute' 'copy-namespaces'
  8612. case 53369: // 'element' 'copy-namespaces'
  8613. case 53432: // 'namespace' 'copy-namespaces'
  8614. case 53464: // 'processing-instruction' 'copy-namespaces'
  8615. case 54354: // 'attribute' 'decimal-format'
  8616. case 54393: // 'element' 'decimal-format'
  8617. case 54456: // 'namespace' 'decimal-format'
  8618. case 54488: // 'processing-instruction' 'decimal-format'
  8619. case 55378: // 'attribute' 'declare'
  8620. case 55417: // 'element' 'declare'
  8621. case 55480: // 'namespace' 'declare'
  8622. case 55512: // 'processing-instruction' 'declare'
  8623. case 56402: // 'attribute' 'delete'
  8624. case 56441: // 'element' 'delete'
  8625. case 56504: // 'namespace' 'delete'
  8626. case 56536: // 'processing-instruction' 'delete'
  8627. case 56914: // 'attribute' 'descendant'
  8628. case 56953: // 'element' 'descendant'
  8629. case 57016: // 'namespace' 'descendant'
  8630. case 57048: // 'processing-instruction' 'descendant'
  8631. case 57426: // 'attribute' 'descendant-or-self'
  8632. case 57465: // 'element' 'descendant-or-self'
  8633. case 57528: // 'namespace' 'descendant-or-self'
  8634. case 57560: // 'processing-instruction' 'descendant-or-self'
  8635. case 61010: // 'attribute' 'document'
  8636. case 61049: // 'element' 'document'
  8637. case 61112: // 'namespace' 'document'
  8638. case 61144: // 'processing-instruction' 'document'
  8639. case 61522: // 'attribute' 'document-node'
  8640. case 61561: // 'element' 'document-node'
  8641. case 61624: // 'namespace' 'document-node'
  8642. case 61656: // 'processing-instruction' 'document-node'
  8643. case 62034: // 'attribute' 'element'
  8644. case 62073: // 'element' 'element'
  8645. case 62136: // 'namespace' 'element'
  8646. case 62168: // 'processing-instruction' 'element'
  8647. case 63570: // 'attribute' 'empty-sequence'
  8648. case 63609: // 'element' 'empty-sequence'
  8649. case 63672: // 'namespace' 'empty-sequence'
  8650. case 63704: // 'processing-instruction' 'empty-sequence'
  8651. case 64082: // 'attribute' 'encoding'
  8652. case 64121: // 'element' 'encoding'
  8653. case 64184: // 'namespace' 'encoding'
  8654. case 64216: // 'processing-instruction' 'encoding'
  8655. case 66130: // 'attribute' 'every'
  8656. case 66169: // 'element' 'every'
  8657. case 66232: // 'namespace' 'every'
  8658. case 66264: // 'processing-instruction' 'every'
  8659. case 67666: // 'attribute' 'exit'
  8660. case 67705: // 'element' 'exit'
  8661. case 67768: // 'namespace' 'exit'
  8662. case 67800: // 'processing-instruction' 'exit'
  8663. case 68178: // 'attribute' 'external'
  8664. case 68217: // 'element' 'external'
  8665. case 68280: // 'namespace' 'external'
  8666. case 68312: // 'processing-instruction' 'external'
  8667. case 68690: // 'attribute' 'first'
  8668. case 68729: // 'element' 'first'
  8669. case 68792: // 'namespace' 'first'
  8670. case 68824: // 'processing-instruction' 'first'
  8671. case 69202: // 'attribute' 'following'
  8672. case 69241: // 'element' 'following'
  8673. case 69304: // 'namespace' 'following'
  8674. case 69336: // 'processing-instruction' 'following'
  8675. case 69714: // 'attribute' 'following-sibling'
  8676. case 69753: // 'element' 'following-sibling'
  8677. case 69816: // 'namespace' 'following-sibling'
  8678. case 69848: // 'processing-instruction' 'following-sibling'
  8679. case 72274: // 'attribute' 'ft-option'
  8680. case 72313: // 'element' 'ft-option'
  8681. case 72376: // 'namespace' 'ft-option'
  8682. case 72408: // 'processing-instruction' 'ft-option'
  8683. case 74322: // 'attribute' 'function'
  8684. case 74361: // 'element' 'function'
  8685. case 74424: // 'namespace' 'function'
  8686. case 74456: // 'processing-instruction' 'function'
  8687. case 77906: // 'attribute' 'if'
  8688. case 77945: // 'element' 'if'
  8689. case 78008: // 'namespace' 'if'
  8690. case 78040: // 'processing-instruction' 'if'
  8691. case 78418: // 'attribute' 'import'
  8692. case 78457: // 'element' 'import'
  8693. case 78520: // 'namespace' 'import'
  8694. case 78552: // 'processing-instruction' 'import'
  8695. case 78930: // 'attribute' 'in'
  8696. case 78969: // 'element' 'in'
  8697. case 79032: // 'namespace' 'in'
  8698. case 79064: // 'processing-instruction' 'in'
  8699. case 79442: // 'attribute' 'index'
  8700. case 79481: // 'element' 'index'
  8701. case 79544: // 'namespace' 'index'
  8702. case 79576: // 'processing-instruction' 'index'
  8703. case 81490: // 'attribute' 'insert'
  8704. case 81529: // 'element' 'insert'
  8705. case 81592: // 'namespace' 'insert'
  8706. case 81624: // 'processing-instruction' 'insert'
  8707. case 82514: // 'attribute' 'integrity'
  8708. case 82553: // 'element' 'integrity'
  8709. case 82616: // 'namespace' 'integrity'
  8710. case 82648: // 'processing-instruction' 'integrity'
  8711. case 84562: // 'attribute' 'item'
  8712. case 84601: // 'element' 'item'
  8713. case 84664: // 'namespace' 'item'
  8714. case 84696: // 'processing-instruction' 'item'
  8715. case 85586: // 'attribute' 'json-item'
  8716. case 85625: // 'element' 'json-item'
  8717. case 87122: // 'attribute' 'last'
  8718. case 87161: // 'element' 'last'
  8719. case 87224: // 'namespace' 'last'
  8720. case 87256: // 'processing-instruction' 'last'
  8721. case 87634: // 'attribute' 'lax'
  8722. case 87673: // 'element' 'lax'
  8723. case 87736: // 'namespace' 'lax'
  8724. case 87768: // 'processing-instruction' 'lax'
  8725. case 90194: // 'attribute' 'loop'
  8726. case 90233: // 'element' 'loop'
  8727. case 90296: // 'namespace' 'loop'
  8728. case 90328: // 'processing-instruction' 'loop'
  8729. case 93266: // 'attribute' 'module'
  8730. case 93305: // 'element' 'module'
  8731. case 93368: // 'namespace' 'module'
  8732. case 93400: // 'processing-instruction' 'module'
  8733. case 94290: // 'attribute' 'namespace'
  8734. case 94329: // 'element' 'namespace'
  8735. case 94392: // 'namespace' 'namespace'
  8736. case 94424: // 'processing-instruction' 'namespace'
  8737. case 94802: // 'attribute' 'namespace-node'
  8738. case 94841: // 'element' 'namespace-node'
  8739. case 94904: // 'namespace' 'namespace-node'
  8740. case 94936: // 'processing-instruction' 'namespace-node'
  8741. case 97874: // 'attribute' 'node'
  8742. case 97913: // 'element' 'node'
  8743. case 97976: // 'namespace' 'node'
  8744. case 98008: // 'processing-instruction' 'node'
  8745. case 98386: // 'attribute' 'nodes'
  8746. case 98425: // 'element' 'nodes'
  8747. case 98488: // 'namespace' 'nodes'
  8748. case 98520: // 'processing-instruction' 'nodes'
  8749. case 99410: // 'attribute' 'object'
  8750. case 99449: // 'element' 'object'
  8751. case 101970: // 'attribute' 'option'
  8752. case 102009: // 'element' 'option'
  8753. case 102072: // 'namespace' 'option'
  8754. case 102104: // 'processing-instruction' 'option'
  8755. case 103506: // 'attribute' 'ordered'
  8756. case 103545: // 'element' 'ordered'
  8757. case 103608: // 'namespace' 'ordered'
  8758. case 103640: // 'processing-instruction' 'ordered'
  8759. case 104018: // 'attribute' 'ordering'
  8760. case 104057: // 'element' 'ordering'
  8761. case 104120: // 'namespace' 'ordering'
  8762. case 104152: // 'processing-instruction' 'ordering'
  8763. case 105554: // 'attribute' 'parent'
  8764. case 105593: // 'element' 'parent'
  8765. case 105656: // 'namespace' 'parent'
  8766. case 105688: // 'processing-instruction' 'parent'
  8767. case 108626: // 'attribute' 'preceding'
  8768. case 108665: // 'element' 'preceding'
  8769. case 108728: // 'namespace' 'preceding'
  8770. case 108760: // 'processing-instruction' 'preceding'
  8771. case 109138: // 'attribute' 'preceding-sibling'
  8772. case 109177: // 'element' 'preceding-sibling'
  8773. case 109240: // 'namespace' 'preceding-sibling'
  8774. case 109272: // 'processing-instruction' 'preceding-sibling'
  8775. case 110674: // 'attribute' 'processing-instruction'
  8776. case 110713: // 'element' 'processing-instruction'
  8777. case 110776: // 'namespace' 'processing-instruction'
  8778. case 110808: // 'processing-instruction' 'processing-instruction'
  8779. case 111698: // 'attribute' 'rename'
  8780. case 111737: // 'element' 'rename'
  8781. case 111800: // 'namespace' 'rename'
  8782. case 111832: // 'processing-instruction' 'rename'
  8783. case 112210: // 'attribute' 'replace'
  8784. case 112249: // 'element' 'replace'
  8785. case 112312: // 'namespace' 'replace'
  8786. case 112344: // 'processing-instruction' 'replace'
  8787. case 113234: // 'attribute' 'returning'
  8788. case 113273: // 'element' 'returning'
  8789. case 113336: // 'namespace' 'returning'
  8790. case 113368: // 'processing-instruction' 'returning'
  8791. case 113746: // 'attribute' 'revalidation'
  8792. case 113785: // 'element' 'revalidation'
  8793. case 113848: // 'namespace' 'revalidation'
  8794. case 113880: // 'processing-instruction' 'revalidation'
  8795. case 115282: // 'attribute' 'schema'
  8796. case 115321: // 'element' 'schema'
  8797. case 115384: // 'namespace' 'schema'
  8798. case 115416: // 'processing-instruction' 'schema'
  8799. case 115794: // 'attribute' 'schema-attribute'
  8800. case 115833: // 'element' 'schema-attribute'
  8801. case 115896: // 'namespace' 'schema-attribute'
  8802. case 115928: // 'processing-instruction' 'schema-attribute'
  8803. case 116306: // 'attribute' 'schema-element'
  8804. case 116345: // 'element' 'schema-element'
  8805. case 116408: // 'namespace' 'schema-element'
  8806. case 116440: // 'processing-instruction' 'schema-element'
  8807. case 116818: // 'attribute' 'score'
  8808. case 116857: // 'element' 'score'
  8809. case 116920: // 'namespace' 'score'
  8810. case 116952: // 'processing-instruction' 'score'
  8811. case 117330: // 'attribute' 'self'
  8812. case 117369: // 'element' 'self'
  8813. case 117432: // 'namespace' 'self'
  8814. case 117464: // 'processing-instruction' 'self'
  8815. case 119890: // 'attribute' 'sliding'
  8816. case 119929: // 'element' 'sliding'
  8817. case 119992: // 'namespace' 'sliding'
  8818. case 120024: // 'processing-instruction' 'sliding'
  8819. case 120402: // 'attribute' 'some'
  8820. case 120441: // 'element' 'some'
  8821. case 120504: // 'namespace' 'some'
  8822. case 120536: // 'processing-instruction' 'some'
  8823. case 122962: // 'attribute' 'strict'
  8824. case 123001: // 'element' 'strict'
  8825. case 123064: // 'namespace' 'strict'
  8826. case 123096: // 'processing-instruction' 'strict'
  8827. case 124498: // 'attribute' 'switch'
  8828. case 124537: // 'element' 'switch'
  8829. case 124600: // 'namespace' 'switch'
  8830. case 124632: // 'processing-instruction' 'switch'
  8831. case 125010: // 'attribute' 'text'
  8832. case 125049: // 'element' 'text'
  8833. case 125112: // 'namespace' 'text'
  8834. case 125144: // 'processing-instruction' 'text'
  8835. case 128082: // 'attribute' 'try'
  8836. case 128121: // 'element' 'try'
  8837. case 128184: // 'namespace' 'try'
  8838. case 128216: // 'processing-instruction' 'try'
  8839. case 128594: // 'attribute' 'tumbling'
  8840. case 128633: // 'element' 'tumbling'
  8841. case 128696: // 'namespace' 'tumbling'
  8842. case 128728: // 'processing-instruction' 'tumbling'
  8843. case 129106: // 'attribute' 'type'
  8844. case 129145: // 'element' 'type'
  8845. case 129208: // 'namespace' 'type'
  8846. case 129240: // 'processing-instruction' 'type'
  8847. case 129618: // 'attribute' 'typeswitch'
  8848. case 129657: // 'element' 'typeswitch'
  8849. case 129720: // 'namespace' 'typeswitch'
  8850. case 129752: // 'processing-instruction' 'typeswitch'
  8851. case 131154: // 'attribute' 'unordered'
  8852. case 131193: // 'element' 'unordered'
  8853. case 131256: // 'namespace' 'unordered'
  8854. case 131288: // 'processing-instruction' 'unordered'
  8855. case 131666: // 'attribute' 'updating'
  8856. case 131705: // 'element' 'updating'
  8857. case 131768: // 'namespace' 'updating'
  8858. case 131800: // 'processing-instruction' 'updating'
  8859. case 133202: // 'attribute' 'validate'
  8860. case 133241: // 'element' 'validate'
  8861. case 133304: // 'namespace' 'validate'
  8862. case 133336: // 'processing-instruction' 'validate'
  8863. case 133714: // 'attribute' 'value'
  8864. case 133753: // 'element' 'value'
  8865. case 133816: // 'namespace' 'value'
  8866. case 133848: // 'processing-instruction' 'value'
  8867. case 134226: // 'attribute' 'variable'
  8868. case 134265: // 'element' 'variable'
  8869. case 134328: // 'namespace' 'variable'
  8870. case 134360: // 'processing-instruction' 'variable'
  8871. case 134738: // 'attribute' 'version'
  8872. case 134777: // 'element' 'version'
  8873. case 134840: // 'namespace' 'version'
  8874. case 134872: // 'processing-instruction' 'version'
  8875. case 136786: // 'attribute' 'while'
  8876. case 136825: // 'element' 'while'
  8877. case 136888: // 'namespace' 'while'
  8878. case 136920: // 'processing-instruction' 'while'
  8879. case 140370: // 'attribute' 'xquery'
  8880. case 140409: // 'element' 'xquery'
  8881. case 140472: // 'namespace' 'xquery'
  8882. case 140504: // 'processing-instruction' 'xquery'
  8883. case 141394: // 'attribute' '{'
  8884. case 141408: // 'comment' '{'
  8885. case 141431: // 'document' '{'
  8886. case 141433: // 'element' '{'
  8887. case 141496: // 'namespace' '{'
  8888. case 141514: // 'ordered' '{'
  8889. case 141528: // 'processing-instruction' '{'
  8890. case 141556: // 'text' '{'
  8891. case 141568: // 'unordered' '{'
  8892. parse_PostfixExpr();
  8893. break;
  8894. default:
  8895. parse_AxisStep();
  8896. }
  8897. eventHandler.endNonterminal("StepExpr", e0);
  8898. }
  8899. function try_StepExpr()
  8900. {
  8901. switch (l1)
  8902. {
  8903. case 82: // 'attribute'
  8904. lookahead2W(282); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  8905. // ',' | '-' | '/' | '//' | ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' |
  8906. // '>=' | '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' |
  8907. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  8908. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' |
  8909. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  8910. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  8911. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  8912. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  8913. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  8914. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  8915. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  8916. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  8917. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  8918. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  8919. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  8920. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' |
  8921. // 'preceding' | 'preceding-sibling' | 'processing-instruction' | 'rename' |
  8922. // 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  8923. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  8924. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  8925. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  8926. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  8927. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '|' | '||' | '|}' | '}'
  8928. break;
  8929. case 121: // 'element'
  8930. lookahead2W(280); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  8931. // ',' | '-' | '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  8932. // '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  8933. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  8934. // 'before' | 'boundary-space' | 'break' | 'by' | 'case' | 'cast' | 'castable' |
  8935. // 'catch' | 'child' | 'collation' | 'comment' | 'constraint' | 'construction' |
  8936. // 'contains' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  8937. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  8938. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  8939. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  8940. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  8941. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  8942. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  8943. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  8944. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  8945. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  8946. // 'or' | 'order' | 'ordered' | 'ordering' | 'paragraphs' | 'parent' | 'preceding' |
  8947. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  8948. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  8949. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sentences' |
  8950. // 'sliding' | 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' |
  8951. // 'times' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' |
  8952. // 'unordered' | 'updating' | 'validate' | 'value' | 'variable' | 'version' |
  8953. // 'where' | 'while' | 'with' | 'words' | 'xquery' | '{' | '|' | '||' | '|}' | '}'
  8954. break;
  8955. case 184: // 'namespace'
  8956. case 216: // 'processing-instruction'
  8957. lookahead2W(279); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' |
  8958. // ',' | '-' | '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  8959. // '>>' | '[' | ']' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  8960. // 'and' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  8961. // 'boundary-space' | 'break' | 'by' | 'case' | 'cast' | 'castable' | 'catch' |
  8962. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  8963. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  8964. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  8965. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  8966. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  8967. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  8968. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  8969. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  8970. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  8971. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  8972. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  8973. // 'paragraphs' | 'parent' | 'preceding' | 'preceding-sibling' |
  8974. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  8975. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  8976. // 'score' | 'self' | 'sentences' | 'sliding' | 'some' | 'stable' | 'start' |
  8977. // 'strict' | 'switch' | 'text' | 'times' | 'to' | 'treat' | 'try' | 'tumbling' |
  8978. // 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' | 'validate' |
  8979. // 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' | 'words' |
  8980. // 'xquery' | '{' | '|' | '||' | '|}' | '}'
  8981. break;
  8982. case 96: // 'comment'
  8983. case 119: // 'document'
  8984. case 202: // 'ordered'
  8985. case 244: // 'text'
  8986. case 256: // 'unordered'
  8987. lookahead2W(245); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  8988. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  8989. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  8990. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  8991. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  8992. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  8993. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  8994. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  8995. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  8996. break;
  8997. case 124: // 'empty-sequence'
  8998. case 152: // 'if'
  8999. case 165: // 'item'
  9000. case 243: // 'switch'
  9001. case 253: // 'typeswitch'
  9002. lookahead2W(238); // S^WS | EOF | '!' | '!=' | '#' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  9003. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  9004. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  9005. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  9006. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  9007. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  9008. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  9009. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  9010. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  9011. break;
  9012. case 73: // 'ancestor'
  9013. case 74: // 'ancestor-or-self'
  9014. case 93: // 'child'
  9015. case 111: // 'descendant'
  9016. case 112: // 'descendant-or-self'
  9017. case 135: // 'following'
  9018. case 136: // 'following-sibling'
  9019. case 206: // 'parent'
  9020. case 212: // 'preceding'
  9021. case 213: // 'preceding-sibling'
  9022. case 229: // 'self'
  9023. lookahead2W(244); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  9024. // '//' | ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  9025. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' |
  9026. // 'cast' | 'castable' | 'collation' | 'contains' | 'count' | 'default' |
  9027. // 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' |
  9028. // 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' |
  9029. // 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' |
  9030. // 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' | 'start' |
  9031. // 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' | '||' |
  9032. // '|}' | '}'
  9033. break;
  9034. case 6: // EQName^Token
  9035. case 70: // 'after'
  9036. case 72: // 'allowing'
  9037. case 75: // 'and'
  9038. case 78: // 'array'
  9039. case 79: // 'as'
  9040. case 80: // 'ascending'
  9041. case 81: // 'at'
  9042. case 83: // 'base-uri'
  9043. case 84: // 'before'
  9044. case 85: // 'boundary-space'
  9045. case 86: // 'break'
  9046. case 88: // 'case'
  9047. case 89: // 'cast'
  9048. case 90: // 'castable'
  9049. case 91: // 'catch'
  9050. case 94: // 'collation'
  9051. case 97: // 'constraint'
  9052. case 98: // 'construction'
  9053. case 101: // 'context'
  9054. case 102: // 'continue'
  9055. case 103: // 'copy'
  9056. case 104: // 'copy-namespaces'
  9057. case 105: // 'count'
  9058. case 106: // 'decimal-format'
  9059. case 108: // 'declare'
  9060. case 109: // 'default'
  9061. case 110: // 'delete'
  9062. case 113: // 'descending'
  9063. case 118: // 'div'
  9064. case 120: // 'document-node'
  9065. case 122: // 'else'
  9066. case 123: // 'empty'
  9067. case 125: // 'encoding'
  9068. case 126: // 'end'
  9069. case 128: // 'eq'
  9070. case 129: // 'every'
  9071. case 131: // 'except'
  9072. case 132: // 'exit'
  9073. case 133: // 'external'
  9074. case 134: // 'first'
  9075. case 137: // 'for'
  9076. case 141: // 'ft-option'
  9077. case 145: // 'function'
  9078. case 146: // 'ge'
  9079. case 148: // 'group'
  9080. case 150: // 'gt'
  9081. case 151: // 'idiv'
  9082. case 153: // 'import'
  9083. case 154: // 'in'
  9084. case 155: // 'index'
  9085. case 159: // 'insert'
  9086. case 160: // 'instance'
  9087. case 161: // 'integrity'
  9088. case 162: // 'intersect'
  9089. case 163: // 'into'
  9090. case 164: // 'is'
  9091. case 167: // 'json-item'
  9092. case 170: // 'last'
  9093. case 171: // 'lax'
  9094. case 172: // 'le'
  9095. case 174: // 'let'
  9096. case 176: // 'loop'
  9097. case 178: // 'lt'
  9098. case 180: // 'mod'
  9099. case 181: // 'modify'
  9100. case 182: // 'module'
  9101. case 185: // 'namespace-node'
  9102. case 186: // 'ne'
  9103. case 191: // 'node'
  9104. case 192: // 'nodes'
  9105. case 194: // 'object'
  9106. case 198: // 'only'
  9107. case 199: // 'option'
  9108. case 200: // 'or'
  9109. case 201: // 'order'
  9110. case 203: // 'ordering'
  9111. case 218: // 'rename'
  9112. case 219: // 'replace'
  9113. case 220: // 'return'
  9114. case 221: // 'returning'
  9115. case 222: // 'revalidation'
  9116. case 224: // 'satisfies'
  9117. case 225: // 'schema'
  9118. case 226: // 'schema-attribute'
  9119. case 227: // 'schema-element'
  9120. case 228: // 'score'
  9121. case 234: // 'sliding'
  9122. case 235: // 'some'
  9123. case 236: // 'stable'
  9124. case 237: // 'start'
  9125. case 240: // 'strict'
  9126. case 248: // 'to'
  9127. case 249: // 'treat'
  9128. case 250: // 'try'
  9129. case 251: // 'tumbling'
  9130. case 252: // 'type'
  9131. case 254: // 'union'
  9132. case 257: // 'updating'
  9133. case 260: // 'validate'
  9134. case 261: // 'value'
  9135. case 262: // 'variable'
  9136. case 263: // 'version'
  9137. case 266: // 'where'
  9138. case 267: // 'while'
  9139. case 270: // 'with'
  9140. case 274: // 'xquery'
  9141. lookahead2W(242); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  9142. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  9143. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  9144. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  9145. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  9146. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  9147. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  9148. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  9149. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  9150. break;
  9151. default:
  9152. lk = l1;
  9153. }
  9154. if (lk == 17486 // 'array' '('
  9155. || lk == 17575 // 'json-item' '('
  9156. || lk == 17602 // 'object' '('
  9157. || lk == 35922 // 'attribute' 'after'
  9158. || lk == 35961 // 'element' 'after'
  9159. || lk == 36024 // 'namespace' 'after'
  9160. || lk == 36056 // 'processing-instruction' 'after'
  9161. || lk == 38482 // 'attribute' 'and'
  9162. || lk == 38521 // 'element' 'and'
  9163. || lk == 38584 // 'namespace' 'and'
  9164. || lk == 38616 // 'processing-instruction' 'and'
  9165. || lk == 40530 // 'attribute' 'as'
  9166. || lk == 40569 // 'element' 'as'
  9167. || lk == 40632 // 'namespace' 'as'
  9168. || lk == 40664 // 'processing-instruction' 'as'
  9169. || lk == 41042 // 'attribute' 'ascending'
  9170. || lk == 41081 // 'element' 'ascending'
  9171. || lk == 41144 // 'namespace' 'ascending'
  9172. || lk == 41176 // 'processing-instruction' 'ascending'
  9173. || lk == 41554 // 'attribute' 'at'
  9174. || lk == 41593 // 'element' 'at'
  9175. || lk == 41656 // 'namespace' 'at'
  9176. || lk == 41688 // 'processing-instruction' 'at'
  9177. || lk == 43090 // 'attribute' 'before'
  9178. || lk == 43129 // 'element' 'before'
  9179. || lk == 43192 // 'namespace' 'before'
  9180. || lk == 43224 // 'processing-instruction' 'before'
  9181. || lk == 45138 // 'attribute' 'case'
  9182. || lk == 45177 // 'element' 'case'
  9183. || lk == 45240 // 'namespace' 'case'
  9184. || lk == 45272 // 'processing-instruction' 'case'
  9185. || lk == 45650 // 'attribute' 'cast'
  9186. || lk == 45689 // 'element' 'cast'
  9187. || lk == 45752 // 'namespace' 'cast'
  9188. || lk == 45784 // 'processing-instruction' 'cast'
  9189. || lk == 46162 // 'attribute' 'castable'
  9190. || lk == 46201 // 'element' 'castable'
  9191. || lk == 46264 // 'namespace' 'castable'
  9192. || lk == 46296 // 'processing-instruction' 'castable'
  9193. || lk == 48210 // 'attribute' 'collation'
  9194. || lk == 48249 // 'element' 'collation'
  9195. || lk == 48312 // 'namespace' 'collation'
  9196. || lk == 48344 // 'processing-instruction' 'collation'
  9197. || lk == 53842 // 'attribute' 'count'
  9198. || lk == 53881 // 'element' 'count'
  9199. || lk == 53944 // 'namespace' 'count'
  9200. || lk == 53976 // 'processing-instruction' 'count'
  9201. || lk == 55890 // 'attribute' 'default'
  9202. || lk == 55929 // 'element' 'default'
  9203. || lk == 55992 // 'namespace' 'default'
  9204. || lk == 56024 // 'processing-instruction' 'default'
  9205. || lk == 57938 // 'attribute' 'descending'
  9206. || lk == 57977 // 'element' 'descending'
  9207. || lk == 58040 // 'namespace' 'descending'
  9208. || lk == 58072 // 'processing-instruction' 'descending'
  9209. || lk == 60498 // 'attribute' 'div'
  9210. || lk == 60537 // 'element' 'div'
  9211. || lk == 60600 // 'namespace' 'div'
  9212. || lk == 60632 // 'processing-instruction' 'div'
  9213. || lk == 62546 // 'attribute' 'else'
  9214. || lk == 62585 // 'element' 'else'
  9215. || lk == 62648 // 'namespace' 'else'
  9216. || lk == 62680 // 'processing-instruction' 'else'
  9217. || lk == 63058 // 'attribute' 'empty'
  9218. || lk == 63097 // 'element' 'empty'
  9219. || lk == 63160 // 'namespace' 'empty'
  9220. || lk == 63192 // 'processing-instruction' 'empty'
  9221. || lk == 64594 // 'attribute' 'end'
  9222. || lk == 64633 // 'element' 'end'
  9223. || lk == 64696 // 'namespace' 'end'
  9224. || lk == 64728 // 'processing-instruction' 'end'
  9225. || lk == 65618 // 'attribute' 'eq'
  9226. || lk == 65657 // 'element' 'eq'
  9227. || lk == 65720 // 'namespace' 'eq'
  9228. || lk == 65752 // 'processing-instruction' 'eq'
  9229. || lk == 67154 // 'attribute' 'except'
  9230. || lk == 67193 // 'element' 'except'
  9231. || lk == 67256 // 'namespace' 'except'
  9232. || lk == 67288 // 'processing-instruction' 'except'
  9233. || lk == 70226 // 'attribute' 'for'
  9234. || lk == 70265 // 'element' 'for'
  9235. || lk == 70328 // 'namespace' 'for'
  9236. || lk == 70360 // 'processing-instruction' 'for'
  9237. || lk == 74834 // 'attribute' 'ge'
  9238. || lk == 74873 // 'element' 'ge'
  9239. || lk == 74936 // 'namespace' 'ge'
  9240. || lk == 74968 // 'processing-instruction' 'ge'
  9241. || lk == 75858 // 'attribute' 'group'
  9242. || lk == 75897 // 'element' 'group'
  9243. || lk == 75960 // 'namespace' 'group'
  9244. || lk == 75992 // 'processing-instruction' 'group'
  9245. || lk == 76882 // 'attribute' 'gt'
  9246. || lk == 76921 // 'element' 'gt'
  9247. || lk == 76984 // 'namespace' 'gt'
  9248. || lk == 77016 // 'processing-instruction' 'gt'
  9249. || lk == 77394 // 'attribute' 'idiv'
  9250. || lk == 77433 // 'element' 'idiv'
  9251. || lk == 77496 // 'namespace' 'idiv'
  9252. || lk == 77528 // 'processing-instruction' 'idiv'
  9253. || lk == 82002 // 'attribute' 'instance'
  9254. || lk == 82041 // 'element' 'instance'
  9255. || lk == 82104 // 'namespace' 'instance'
  9256. || lk == 82136 // 'processing-instruction' 'instance'
  9257. || lk == 83026 // 'attribute' 'intersect'
  9258. || lk == 83065 // 'element' 'intersect'
  9259. || lk == 83128 // 'namespace' 'intersect'
  9260. || lk == 83160 // 'processing-instruction' 'intersect'
  9261. || lk == 83538 // 'attribute' 'into'
  9262. || lk == 83577 // 'element' 'into'
  9263. || lk == 83640 // 'namespace' 'into'
  9264. || lk == 83672 // 'processing-instruction' 'into'
  9265. || lk == 84050 // 'attribute' 'is'
  9266. || lk == 84089 // 'element' 'is'
  9267. || lk == 84152 // 'namespace' 'is'
  9268. || lk == 84184 // 'processing-instruction' 'is'
  9269. || lk == 88146 // 'attribute' 'le'
  9270. || lk == 88185 // 'element' 'le'
  9271. || lk == 88248 // 'namespace' 'le'
  9272. || lk == 88280 // 'processing-instruction' 'le'
  9273. || lk == 89170 // 'attribute' 'let'
  9274. || lk == 89209 // 'element' 'let'
  9275. || lk == 89272 // 'namespace' 'let'
  9276. || lk == 89304 // 'processing-instruction' 'let'
  9277. || lk == 91218 // 'attribute' 'lt'
  9278. || lk == 91257 // 'element' 'lt'
  9279. || lk == 91320 // 'namespace' 'lt'
  9280. || lk == 91352 // 'processing-instruction' 'lt'
  9281. || lk == 92242 // 'attribute' 'mod'
  9282. || lk == 92281 // 'element' 'mod'
  9283. || lk == 92344 // 'namespace' 'mod'
  9284. || lk == 92376 // 'processing-instruction' 'mod'
  9285. || lk == 92754 // 'attribute' 'modify'
  9286. || lk == 92793 // 'element' 'modify'
  9287. || lk == 92856 // 'namespace' 'modify'
  9288. || lk == 92888 // 'processing-instruction' 'modify'
  9289. || lk == 95314 // 'attribute' 'ne'
  9290. || lk == 95353 // 'element' 'ne'
  9291. || lk == 95416 // 'namespace' 'ne'
  9292. || lk == 95448 // 'processing-instruction' 'ne'
  9293. || lk == 101458 // 'attribute' 'only'
  9294. || lk == 101497 // 'element' 'only'
  9295. || lk == 101560 // 'namespace' 'only'
  9296. || lk == 101592 // 'processing-instruction' 'only'
  9297. || lk == 102482 // 'attribute' 'or'
  9298. || lk == 102521 // 'element' 'or'
  9299. || lk == 102584 // 'namespace' 'or'
  9300. || lk == 102616 // 'processing-instruction' 'or'
  9301. || lk == 102994 // 'attribute' 'order'
  9302. || lk == 103033 // 'element' 'order'
  9303. || lk == 103096 // 'namespace' 'order'
  9304. || lk == 103128 // 'processing-instruction' 'order'
  9305. || lk == 112722 // 'attribute' 'return'
  9306. || lk == 112761 // 'element' 'return'
  9307. || lk == 112824 // 'namespace' 'return'
  9308. || lk == 112856 // 'processing-instruction' 'return'
  9309. || lk == 114770 // 'attribute' 'satisfies'
  9310. || lk == 114809 // 'element' 'satisfies'
  9311. || lk == 114872 // 'namespace' 'satisfies'
  9312. || lk == 114904 // 'processing-instruction' 'satisfies'
  9313. || lk == 120914 // 'attribute' 'stable'
  9314. || lk == 120953 // 'element' 'stable'
  9315. || lk == 121016 // 'namespace' 'stable'
  9316. || lk == 121048 // 'processing-instruction' 'stable'
  9317. || lk == 121426 // 'attribute' 'start'
  9318. || lk == 121465 // 'element' 'start'
  9319. || lk == 121528 // 'namespace' 'start'
  9320. || lk == 121560 // 'processing-instruction' 'start'
  9321. || lk == 127058 // 'attribute' 'to'
  9322. || lk == 127097 // 'element' 'to'
  9323. || lk == 127160 // 'namespace' 'to'
  9324. || lk == 127192 // 'processing-instruction' 'to'
  9325. || lk == 127570 // 'attribute' 'treat'
  9326. || lk == 127609 // 'element' 'treat'
  9327. || lk == 127672 // 'namespace' 'treat'
  9328. || lk == 127704 // 'processing-instruction' 'treat'
  9329. || lk == 130130 // 'attribute' 'union'
  9330. || lk == 130169 // 'element' 'union'
  9331. || lk == 130232 // 'namespace' 'union'
  9332. || lk == 130264 // 'processing-instruction' 'union'
  9333. || lk == 136274 // 'attribute' 'where'
  9334. || lk == 136313 // 'element' 'where'
  9335. || lk == 136376 // 'namespace' 'where'
  9336. || lk == 136408 // 'processing-instruction' 'where'
  9337. || lk == 138322 // 'attribute' 'with'
  9338. || lk == 138361 // 'element' 'with'
  9339. || lk == 138424 // 'namespace' 'with'
  9340. || lk == 138456) // 'processing-instruction' 'with'
  9341. {
  9342. lk = memoized(3, e0);
  9343. if (lk == 0)
  9344. {
  9345. var b0A = b0; var e0A = e0; var l1A = l1;
  9346. var b1A = b1; var e1A = e1; var l2A = l2;
  9347. var b2A = b2; var e2A = e2;
  9348. try
  9349. {
  9350. try_PostfixExpr();
  9351. memoize(3, e0A, -1);
  9352. lk = -3;
  9353. }
  9354. catch (p1A)
  9355. {
  9356. lk = -2;
  9357. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  9358. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  9359. b2 = b2A; e2 = e2A; end = e2A; }}
  9360. memoize(3, e0A, -2);
  9361. }
  9362. }
  9363. }
  9364. switch (lk)
  9365. {
  9366. case -1:
  9367. case 8: // IntegerLiteral
  9368. case 9: // DecimalLiteral
  9369. case 10: // DoubleLiteral
  9370. case 11: // StringLiteral
  9371. case 31: // '$'
  9372. case 32: // '%'
  9373. case 34: // '('
  9374. case 44: // '.'
  9375. case 54: // '<'
  9376. case 55: // '<!--'
  9377. case 59: // '<?'
  9378. case 68: // '['
  9379. case 276: // '{'
  9380. case 278: // '{|'
  9381. case 3154: // 'attribute' EQName^Token
  9382. case 3193: // 'element' EQName^Token
  9383. case 9912: // 'namespace' NCName^Token
  9384. case 9944: // 'processing-instruction' NCName^Token
  9385. case 14854: // EQName^Token '#'
  9386. case 14918: // 'after' '#'
  9387. case 14920: // 'allowing' '#'
  9388. case 14921: // 'ancestor' '#'
  9389. case 14922: // 'ancestor-or-self' '#'
  9390. case 14923: // 'and' '#'
  9391. case 14926: // 'array' '#'
  9392. case 14927: // 'as' '#'
  9393. case 14928: // 'ascending' '#'
  9394. case 14929: // 'at' '#'
  9395. case 14930: // 'attribute' '#'
  9396. case 14931: // 'base-uri' '#'
  9397. case 14932: // 'before' '#'
  9398. case 14933: // 'boundary-space' '#'
  9399. case 14934: // 'break' '#'
  9400. case 14936: // 'case' '#'
  9401. case 14937: // 'cast' '#'
  9402. case 14938: // 'castable' '#'
  9403. case 14939: // 'catch' '#'
  9404. case 14941: // 'child' '#'
  9405. case 14942: // 'collation' '#'
  9406. case 14944: // 'comment' '#'
  9407. case 14945: // 'constraint' '#'
  9408. case 14946: // 'construction' '#'
  9409. case 14949: // 'context' '#'
  9410. case 14950: // 'continue' '#'
  9411. case 14951: // 'copy' '#'
  9412. case 14952: // 'copy-namespaces' '#'
  9413. case 14953: // 'count' '#'
  9414. case 14954: // 'decimal-format' '#'
  9415. case 14956: // 'declare' '#'
  9416. case 14957: // 'default' '#'
  9417. case 14958: // 'delete' '#'
  9418. case 14959: // 'descendant' '#'
  9419. case 14960: // 'descendant-or-self' '#'
  9420. case 14961: // 'descending' '#'
  9421. case 14966: // 'div' '#'
  9422. case 14967: // 'document' '#'
  9423. case 14968: // 'document-node' '#'
  9424. case 14969: // 'element' '#'
  9425. case 14970: // 'else' '#'
  9426. case 14971: // 'empty' '#'
  9427. case 14972: // 'empty-sequence' '#'
  9428. case 14973: // 'encoding' '#'
  9429. case 14974: // 'end' '#'
  9430. case 14976: // 'eq' '#'
  9431. case 14977: // 'every' '#'
  9432. case 14979: // 'except' '#'
  9433. case 14980: // 'exit' '#'
  9434. case 14981: // 'external' '#'
  9435. case 14982: // 'first' '#'
  9436. case 14983: // 'following' '#'
  9437. case 14984: // 'following-sibling' '#'
  9438. case 14985: // 'for' '#'
  9439. case 14989: // 'ft-option' '#'
  9440. case 14993: // 'function' '#'
  9441. case 14994: // 'ge' '#'
  9442. case 14996: // 'group' '#'
  9443. case 14998: // 'gt' '#'
  9444. case 14999: // 'idiv' '#'
  9445. case 15000: // 'if' '#'
  9446. case 15001: // 'import' '#'
  9447. case 15002: // 'in' '#'
  9448. case 15003: // 'index' '#'
  9449. case 15007: // 'insert' '#'
  9450. case 15008: // 'instance' '#'
  9451. case 15009: // 'integrity' '#'
  9452. case 15010: // 'intersect' '#'
  9453. case 15011: // 'into' '#'
  9454. case 15012: // 'is' '#'
  9455. case 15013: // 'item' '#'
  9456. case 15015: // 'json-item' '#'
  9457. case 15018: // 'last' '#'
  9458. case 15019: // 'lax' '#'
  9459. case 15020: // 'le' '#'
  9460. case 15022: // 'let' '#'
  9461. case 15024: // 'loop' '#'
  9462. case 15026: // 'lt' '#'
  9463. case 15028: // 'mod' '#'
  9464. case 15029: // 'modify' '#'
  9465. case 15030: // 'module' '#'
  9466. case 15032: // 'namespace' '#'
  9467. case 15033: // 'namespace-node' '#'
  9468. case 15034: // 'ne' '#'
  9469. case 15039: // 'node' '#'
  9470. case 15040: // 'nodes' '#'
  9471. case 15042: // 'object' '#'
  9472. case 15046: // 'only' '#'
  9473. case 15047: // 'option' '#'
  9474. case 15048: // 'or' '#'
  9475. case 15049: // 'order' '#'
  9476. case 15050: // 'ordered' '#'
  9477. case 15051: // 'ordering' '#'
  9478. case 15054: // 'parent' '#'
  9479. case 15060: // 'preceding' '#'
  9480. case 15061: // 'preceding-sibling' '#'
  9481. case 15064: // 'processing-instruction' '#'
  9482. case 15066: // 'rename' '#'
  9483. case 15067: // 'replace' '#'
  9484. case 15068: // 'return' '#'
  9485. case 15069: // 'returning' '#'
  9486. case 15070: // 'revalidation' '#'
  9487. case 15072: // 'satisfies' '#'
  9488. case 15073: // 'schema' '#'
  9489. case 15074: // 'schema-attribute' '#'
  9490. case 15075: // 'schema-element' '#'
  9491. case 15076: // 'score' '#'
  9492. case 15077: // 'self' '#'
  9493. case 15082: // 'sliding' '#'
  9494. case 15083: // 'some' '#'
  9495. case 15084: // 'stable' '#'
  9496. case 15085: // 'start' '#'
  9497. case 15088: // 'strict' '#'
  9498. case 15091: // 'switch' '#'
  9499. case 15092: // 'text' '#'
  9500. case 15096: // 'to' '#'
  9501. case 15097: // 'treat' '#'
  9502. case 15098: // 'try' '#'
  9503. case 15099: // 'tumbling' '#'
  9504. case 15100: // 'type' '#'
  9505. case 15101: // 'typeswitch' '#'
  9506. case 15102: // 'union' '#'
  9507. case 15104: // 'unordered' '#'
  9508. case 15105: // 'updating' '#'
  9509. case 15108: // 'validate' '#'
  9510. case 15109: // 'value' '#'
  9511. case 15110: // 'variable' '#'
  9512. case 15111: // 'version' '#'
  9513. case 15114: // 'where' '#'
  9514. case 15115: // 'while' '#'
  9515. case 15118: // 'with' '#'
  9516. case 15122: // 'xquery' '#'
  9517. case 17414: // EQName^Token '('
  9518. case 17478: // 'after' '('
  9519. case 17480: // 'allowing' '('
  9520. case 17481: // 'ancestor' '('
  9521. case 17482: // 'ancestor-or-self' '('
  9522. case 17483: // 'and' '('
  9523. case 17487: // 'as' '('
  9524. case 17488: // 'ascending' '('
  9525. case 17489: // 'at' '('
  9526. case 17491: // 'base-uri' '('
  9527. case 17492: // 'before' '('
  9528. case 17493: // 'boundary-space' '('
  9529. case 17494: // 'break' '('
  9530. case 17496: // 'case' '('
  9531. case 17497: // 'cast' '('
  9532. case 17498: // 'castable' '('
  9533. case 17499: // 'catch' '('
  9534. case 17501: // 'child' '('
  9535. case 17502: // 'collation' '('
  9536. case 17505: // 'constraint' '('
  9537. case 17506: // 'construction' '('
  9538. case 17509: // 'context' '('
  9539. case 17510: // 'continue' '('
  9540. case 17511: // 'copy' '('
  9541. case 17512: // 'copy-namespaces' '('
  9542. case 17513: // 'count' '('
  9543. case 17514: // 'decimal-format' '('
  9544. case 17516: // 'declare' '('
  9545. case 17517: // 'default' '('
  9546. case 17518: // 'delete' '('
  9547. case 17519: // 'descendant' '('
  9548. case 17520: // 'descendant-or-self' '('
  9549. case 17521: // 'descending' '('
  9550. case 17526: // 'div' '('
  9551. case 17527: // 'document' '('
  9552. case 17530: // 'else' '('
  9553. case 17531: // 'empty' '('
  9554. case 17533: // 'encoding' '('
  9555. case 17534: // 'end' '('
  9556. case 17536: // 'eq' '('
  9557. case 17537: // 'every' '('
  9558. case 17539: // 'except' '('
  9559. case 17540: // 'exit' '('
  9560. case 17541: // 'external' '('
  9561. case 17542: // 'first' '('
  9562. case 17543: // 'following' '('
  9563. case 17544: // 'following-sibling' '('
  9564. case 17545: // 'for' '('
  9565. case 17549: // 'ft-option' '('
  9566. case 17553: // 'function' '('
  9567. case 17554: // 'ge' '('
  9568. case 17556: // 'group' '('
  9569. case 17558: // 'gt' '('
  9570. case 17559: // 'idiv' '('
  9571. case 17561: // 'import' '('
  9572. case 17562: // 'in' '('
  9573. case 17563: // 'index' '('
  9574. case 17567: // 'insert' '('
  9575. case 17568: // 'instance' '('
  9576. case 17569: // 'integrity' '('
  9577. case 17570: // 'intersect' '('
  9578. case 17571: // 'into' '('
  9579. case 17572: // 'is' '('
  9580. case 17578: // 'last' '('
  9581. case 17579: // 'lax' '('
  9582. case 17580: // 'le' '('
  9583. case 17582: // 'let' '('
  9584. case 17584: // 'loop' '('
  9585. case 17586: // 'lt' '('
  9586. case 17588: // 'mod' '('
  9587. case 17589: // 'modify' '('
  9588. case 17590: // 'module' '('
  9589. case 17592: // 'namespace' '('
  9590. case 17594: // 'ne' '('
  9591. case 17600: // 'nodes' '('
  9592. case 17606: // 'only' '('
  9593. case 17607: // 'option' '('
  9594. case 17608: // 'or' '('
  9595. case 17609: // 'order' '('
  9596. case 17610: // 'ordered' '('
  9597. case 17611: // 'ordering' '('
  9598. case 17614: // 'parent' '('
  9599. case 17620: // 'preceding' '('
  9600. case 17621: // 'preceding-sibling' '('
  9601. case 17626: // 'rename' '('
  9602. case 17627: // 'replace' '('
  9603. case 17628: // 'return' '('
  9604. case 17629: // 'returning' '('
  9605. case 17630: // 'revalidation' '('
  9606. case 17632: // 'satisfies' '('
  9607. case 17633: // 'schema' '('
  9608. case 17636: // 'score' '('
  9609. case 17637: // 'self' '('
  9610. case 17642: // 'sliding' '('
  9611. case 17643: // 'some' '('
  9612. case 17644: // 'stable' '('
  9613. case 17645: // 'start' '('
  9614. case 17648: // 'strict' '('
  9615. case 17656: // 'to' '('
  9616. case 17657: // 'treat' '('
  9617. case 17658: // 'try' '('
  9618. case 17659: // 'tumbling' '('
  9619. case 17660: // 'type' '('
  9620. case 17662: // 'union' '('
  9621. case 17664: // 'unordered' '('
  9622. case 17665: // 'updating' '('
  9623. case 17668: // 'validate' '('
  9624. case 17669: // 'value' '('
  9625. case 17670: // 'variable' '('
  9626. case 17671: // 'version' '('
  9627. case 17674: // 'where' '('
  9628. case 17675: // 'while' '('
  9629. case 17678: // 'with' '('
  9630. case 17682: // 'xquery' '('
  9631. case 36946: // 'attribute' 'allowing'
  9632. case 36985: // 'element' 'allowing'
  9633. case 37048: // 'namespace' 'allowing'
  9634. case 37080: // 'processing-instruction' 'allowing'
  9635. case 37458: // 'attribute' 'ancestor'
  9636. case 37497: // 'element' 'ancestor'
  9637. case 37560: // 'namespace' 'ancestor'
  9638. case 37592: // 'processing-instruction' 'ancestor'
  9639. case 37970: // 'attribute' 'ancestor-or-self'
  9640. case 38009: // 'element' 'ancestor-or-self'
  9641. case 38072: // 'namespace' 'ancestor-or-self'
  9642. case 38104: // 'processing-instruction' 'ancestor-or-self'
  9643. case 40018: // 'attribute' 'array'
  9644. case 40057: // 'element' 'array'
  9645. case 42066: // 'attribute' 'attribute'
  9646. case 42105: // 'element' 'attribute'
  9647. case 42168: // 'namespace' 'attribute'
  9648. case 42200: // 'processing-instruction' 'attribute'
  9649. case 42578: // 'attribute' 'base-uri'
  9650. case 42617: // 'element' 'base-uri'
  9651. case 42680: // 'namespace' 'base-uri'
  9652. case 42712: // 'processing-instruction' 'base-uri'
  9653. case 43602: // 'attribute' 'boundary-space'
  9654. case 43641: // 'element' 'boundary-space'
  9655. case 43704: // 'namespace' 'boundary-space'
  9656. case 43736: // 'processing-instruction' 'boundary-space'
  9657. case 44114: // 'attribute' 'break'
  9658. case 44153: // 'element' 'break'
  9659. case 44216: // 'namespace' 'break'
  9660. case 44248: // 'processing-instruction' 'break'
  9661. case 46674: // 'attribute' 'catch'
  9662. case 46713: // 'element' 'catch'
  9663. case 46776: // 'namespace' 'catch'
  9664. case 46808: // 'processing-instruction' 'catch'
  9665. case 47698: // 'attribute' 'child'
  9666. case 47737: // 'element' 'child'
  9667. case 47800: // 'namespace' 'child'
  9668. case 47832: // 'processing-instruction' 'child'
  9669. case 49234: // 'attribute' 'comment'
  9670. case 49273: // 'element' 'comment'
  9671. case 49336: // 'namespace' 'comment'
  9672. case 49368: // 'processing-instruction' 'comment'
  9673. case 49746: // 'attribute' 'constraint'
  9674. case 49785: // 'element' 'constraint'
  9675. case 49848: // 'namespace' 'constraint'
  9676. case 49880: // 'processing-instruction' 'constraint'
  9677. case 50258: // 'attribute' 'construction'
  9678. case 50297: // 'element' 'construction'
  9679. case 50360: // 'namespace' 'construction'
  9680. case 50392: // 'processing-instruction' 'construction'
  9681. case 51794: // 'attribute' 'context'
  9682. case 51833: // 'element' 'context'
  9683. case 51896: // 'namespace' 'context'
  9684. case 51928: // 'processing-instruction' 'context'
  9685. case 52306: // 'attribute' 'continue'
  9686. case 52345: // 'element' 'continue'
  9687. case 52408: // 'namespace' 'continue'
  9688. case 52440: // 'processing-instruction' 'continue'
  9689. case 52818: // 'attribute' 'copy'
  9690. case 52857: // 'element' 'copy'
  9691. case 52920: // 'namespace' 'copy'
  9692. case 52952: // 'processing-instruction' 'copy'
  9693. case 53330: // 'attribute' 'copy-namespaces'
  9694. case 53369: // 'element' 'copy-namespaces'
  9695. case 53432: // 'namespace' 'copy-namespaces'
  9696. case 53464: // 'processing-instruction' 'copy-namespaces'
  9697. case 54354: // 'attribute' 'decimal-format'
  9698. case 54393: // 'element' 'decimal-format'
  9699. case 54456: // 'namespace' 'decimal-format'
  9700. case 54488: // 'processing-instruction' 'decimal-format'
  9701. case 55378: // 'attribute' 'declare'
  9702. case 55417: // 'element' 'declare'
  9703. case 55480: // 'namespace' 'declare'
  9704. case 55512: // 'processing-instruction' 'declare'
  9705. case 56402: // 'attribute' 'delete'
  9706. case 56441: // 'element' 'delete'
  9707. case 56504: // 'namespace' 'delete'
  9708. case 56536: // 'processing-instruction' 'delete'
  9709. case 56914: // 'attribute' 'descendant'
  9710. case 56953: // 'element' 'descendant'
  9711. case 57016: // 'namespace' 'descendant'
  9712. case 57048: // 'processing-instruction' 'descendant'
  9713. case 57426: // 'attribute' 'descendant-or-self'
  9714. case 57465: // 'element' 'descendant-or-self'
  9715. case 57528: // 'namespace' 'descendant-or-self'
  9716. case 57560: // 'processing-instruction' 'descendant-or-self'
  9717. case 61010: // 'attribute' 'document'
  9718. case 61049: // 'element' 'document'
  9719. case 61112: // 'namespace' 'document'
  9720. case 61144: // 'processing-instruction' 'document'
  9721. case 61522: // 'attribute' 'document-node'
  9722. case 61561: // 'element' 'document-node'
  9723. case 61624: // 'namespace' 'document-node'
  9724. case 61656: // 'processing-instruction' 'document-node'
  9725. case 62034: // 'attribute' 'element'
  9726. case 62073: // 'element' 'element'
  9727. case 62136: // 'namespace' 'element'
  9728. case 62168: // 'processing-instruction' 'element'
  9729. case 63570: // 'attribute' 'empty-sequence'
  9730. case 63609: // 'element' 'empty-sequence'
  9731. case 63672: // 'namespace' 'empty-sequence'
  9732. case 63704: // 'processing-instruction' 'empty-sequence'
  9733. case 64082: // 'attribute' 'encoding'
  9734. case 64121: // 'element' 'encoding'
  9735. case 64184: // 'namespace' 'encoding'
  9736. case 64216: // 'processing-instruction' 'encoding'
  9737. case 66130: // 'attribute' 'every'
  9738. case 66169: // 'element' 'every'
  9739. case 66232: // 'namespace' 'every'
  9740. case 66264: // 'processing-instruction' 'every'
  9741. case 67666: // 'attribute' 'exit'
  9742. case 67705: // 'element' 'exit'
  9743. case 67768: // 'namespace' 'exit'
  9744. case 67800: // 'processing-instruction' 'exit'
  9745. case 68178: // 'attribute' 'external'
  9746. case 68217: // 'element' 'external'
  9747. case 68280: // 'namespace' 'external'
  9748. case 68312: // 'processing-instruction' 'external'
  9749. case 68690: // 'attribute' 'first'
  9750. case 68729: // 'element' 'first'
  9751. case 68792: // 'namespace' 'first'
  9752. case 68824: // 'processing-instruction' 'first'
  9753. case 69202: // 'attribute' 'following'
  9754. case 69241: // 'element' 'following'
  9755. case 69304: // 'namespace' 'following'
  9756. case 69336: // 'processing-instruction' 'following'
  9757. case 69714: // 'attribute' 'following-sibling'
  9758. case 69753: // 'element' 'following-sibling'
  9759. case 69816: // 'namespace' 'following-sibling'
  9760. case 69848: // 'processing-instruction' 'following-sibling'
  9761. case 72274: // 'attribute' 'ft-option'
  9762. case 72313: // 'element' 'ft-option'
  9763. case 72376: // 'namespace' 'ft-option'
  9764. case 72408: // 'processing-instruction' 'ft-option'
  9765. case 74322: // 'attribute' 'function'
  9766. case 74361: // 'element' 'function'
  9767. case 74424: // 'namespace' 'function'
  9768. case 74456: // 'processing-instruction' 'function'
  9769. case 77906: // 'attribute' 'if'
  9770. case 77945: // 'element' 'if'
  9771. case 78008: // 'namespace' 'if'
  9772. case 78040: // 'processing-instruction' 'if'
  9773. case 78418: // 'attribute' 'import'
  9774. case 78457: // 'element' 'import'
  9775. case 78520: // 'namespace' 'import'
  9776. case 78552: // 'processing-instruction' 'import'
  9777. case 78930: // 'attribute' 'in'
  9778. case 78969: // 'element' 'in'
  9779. case 79032: // 'namespace' 'in'
  9780. case 79064: // 'processing-instruction' 'in'
  9781. case 79442: // 'attribute' 'index'
  9782. case 79481: // 'element' 'index'
  9783. case 79544: // 'namespace' 'index'
  9784. case 79576: // 'processing-instruction' 'index'
  9785. case 81490: // 'attribute' 'insert'
  9786. case 81529: // 'element' 'insert'
  9787. case 81592: // 'namespace' 'insert'
  9788. case 81624: // 'processing-instruction' 'insert'
  9789. case 82514: // 'attribute' 'integrity'
  9790. case 82553: // 'element' 'integrity'
  9791. case 82616: // 'namespace' 'integrity'
  9792. case 82648: // 'processing-instruction' 'integrity'
  9793. case 84562: // 'attribute' 'item'
  9794. case 84601: // 'element' 'item'
  9795. case 84664: // 'namespace' 'item'
  9796. case 84696: // 'processing-instruction' 'item'
  9797. case 85586: // 'attribute' 'json-item'
  9798. case 85625: // 'element' 'json-item'
  9799. case 87122: // 'attribute' 'last'
  9800. case 87161: // 'element' 'last'
  9801. case 87224: // 'namespace' 'last'
  9802. case 87256: // 'processing-instruction' 'last'
  9803. case 87634: // 'attribute' 'lax'
  9804. case 87673: // 'element' 'lax'
  9805. case 87736: // 'namespace' 'lax'
  9806. case 87768: // 'processing-instruction' 'lax'
  9807. case 90194: // 'attribute' 'loop'
  9808. case 90233: // 'element' 'loop'
  9809. case 90296: // 'namespace' 'loop'
  9810. case 90328: // 'processing-instruction' 'loop'
  9811. case 93266: // 'attribute' 'module'
  9812. case 93305: // 'element' 'module'
  9813. case 93368: // 'namespace' 'module'
  9814. case 93400: // 'processing-instruction' 'module'
  9815. case 94290: // 'attribute' 'namespace'
  9816. case 94329: // 'element' 'namespace'
  9817. case 94392: // 'namespace' 'namespace'
  9818. case 94424: // 'processing-instruction' 'namespace'
  9819. case 94802: // 'attribute' 'namespace-node'
  9820. case 94841: // 'element' 'namespace-node'
  9821. case 94904: // 'namespace' 'namespace-node'
  9822. case 94936: // 'processing-instruction' 'namespace-node'
  9823. case 97874: // 'attribute' 'node'
  9824. case 97913: // 'element' 'node'
  9825. case 97976: // 'namespace' 'node'
  9826. case 98008: // 'processing-instruction' 'node'
  9827. case 98386: // 'attribute' 'nodes'
  9828. case 98425: // 'element' 'nodes'
  9829. case 98488: // 'namespace' 'nodes'
  9830. case 98520: // 'processing-instruction' 'nodes'
  9831. case 99410: // 'attribute' 'object'
  9832. case 99449: // 'element' 'object'
  9833. case 101970: // 'attribute' 'option'
  9834. case 102009: // 'element' 'option'
  9835. case 102072: // 'namespace' 'option'
  9836. case 102104: // 'processing-instruction' 'option'
  9837. case 103506: // 'attribute' 'ordered'
  9838. case 103545: // 'element' 'ordered'
  9839. case 103608: // 'namespace' 'ordered'
  9840. case 103640: // 'processing-instruction' 'ordered'
  9841. case 104018: // 'attribute' 'ordering'
  9842. case 104057: // 'element' 'ordering'
  9843. case 104120: // 'namespace' 'ordering'
  9844. case 104152: // 'processing-instruction' 'ordering'
  9845. case 105554: // 'attribute' 'parent'
  9846. case 105593: // 'element' 'parent'
  9847. case 105656: // 'namespace' 'parent'
  9848. case 105688: // 'processing-instruction' 'parent'
  9849. case 108626: // 'attribute' 'preceding'
  9850. case 108665: // 'element' 'preceding'
  9851. case 108728: // 'namespace' 'preceding'
  9852. case 108760: // 'processing-instruction' 'preceding'
  9853. case 109138: // 'attribute' 'preceding-sibling'
  9854. case 109177: // 'element' 'preceding-sibling'
  9855. case 109240: // 'namespace' 'preceding-sibling'
  9856. case 109272: // 'processing-instruction' 'preceding-sibling'
  9857. case 110674: // 'attribute' 'processing-instruction'
  9858. case 110713: // 'element' 'processing-instruction'
  9859. case 110776: // 'namespace' 'processing-instruction'
  9860. case 110808: // 'processing-instruction' 'processing-instruction'
  9861. case 111698: // 'attribute' 'rename'
  9862. case 111737: // 'element' 'rename'
  9863. case 111800: // 'namespace' 'rename'
  9864. case 111832: // 'processing-instruction' 'rename'
  9865. case 112210: // 'attribute' 'replace'
  9866. case 112249: // 'element' 'replace'
  9867. case 112312: // 'namespace' 'replace'
  9868. case 112344: // 'processing-instruction' 'replace'
  9869. case 113234: // 'attribute' 'returning'
  9870. case 113273: // 'element' 'returning'
  9871. case 113336: // 'namespace' 'returning'
  9872. case 113368: // 'processing-instruction' 'returning'
  9873. case 113746: // 'attribute' 'revalidation'
  9874. case 113785: // 'element' 'revalidation'
  9875. case 113848: // 'namespace' 'revalidation'
  9876. case 113880: // 'processing-instruction' 'revalidation'
  9877. case 115282: // 'attribute' 'schema'
  9878. case 115321: // 'element' 'schema'
  9879. case 115384: // 'namespace' 'schema'
  9880. case 115416: // 'processing-instruction' 'schema'
  9881. case 115794: // 'attribute' 'schema-attribute'
  9882. case 115833: // 'element' 'schema-attribute'
  9883. case 115896: // 'namespace' 'schema-attribute'
  9884. case 115928: // 'processing-instruction' 'schema-attribute'
  9885. case 116306: // 'attribute' 'schema-element'
  9886. case 116345: // 'element' 'schema-element'
  9887. case 116408: // 'namespace' 'schema-element'
  9888. case 116440: // 'processing-instruction' 'schema-element'
  9889. case 116818: // 'attribute' 'score'
  9890. case 116857: // 'element' 'score'
  9891. case 116920: // 'namespace' 'score'
  9892. case 116952: // 'processing-instruction' 'score'
  9893. case 117330: // 'attribute' 'self'
  9894. case 117369: // 'element' 'self'
  9895. case 117432: // 'namespace' 'self'
  9896. case 117464: // 'processing-instruction' 'self'
  9897. case 119890: // 'attribute' 'sliding'
  9898. case 119929: // 'element' 'sliding'
  9899. case 119992: // 'namespace' 'sliding'
  9900. case 120024: // 'processing-instruction' 'sliding'
  9901. case 120402: // 'attribute' 'some'
  9902. case 120441: // 'element' 'some'
  9903. case 120504: // 'namespace' 'some'
  9904. case 120536: // 'processing-instruction' 'some'
  9905. case 122962: // 'attribute' 'strict'
  9906. case 123001: // 'element' 'strict'
  9907. case 123064: // 'namespace' 'strict'
  9908. case 123096: // 'processing-instruction' 'strict'
  9909. case 124498: // 'attribute' 'switch'
  9910. case 124537: // 'element' 'switch'
  9911. case 124600: // 'namespace' 'switch'
  9912. case 124632: // 'processing-instruction' 'switch'
  9913. case 125010: // 'attribute' 'text'
  9914. case 125049: // 'element' 'text'
  9915. case 125112: // 'namespace' 'text'
  9916. case 125144: // 'processing-instruction' 'text'
  9917. case 128082: // 'attribute' 'try'
  9918. case 128121: // 'element' 'try'
  9919. case 128184: // 'namespace' 'try'
  9920. case 128216: // 'processing-instruction' 'try'
  9921. case 128594: // 'attribute' 'tumbling'
  9922. case 128633: // 'element' 'tumbling'
  9923. case 128696: // 'namespace' 'tumbling'
  9924. case 128728: // 'processing-instruction' 'tumbling'
  9925. case 129106: // 'attribute' 'type'
  9926. case 129145: // 'element' 'type'
  9927. case 129208: // 'namespace' 'type'
  9928. case 129240: // 'processing-instruction' 'type'
  9929. case 129618: // 'attribute' 'typeswitch'
  9930. case 129657: // 'element' 'typeswitch'
  9931. case 129720: // 'namespace' 'typeswitch'
  9932. case 129752: // 'processing-instruction' 'typeswitch'
  9933. case 131154: // 'attribute' 'unordered'
  9934. case 131193: // 'element' 'unordered'
  9935. case 131256: // 'namespace' 'unordered'
  9936. case 131288: // 'processing-instruction' 'unordered'
  9937. case 131666: // 'attribute' 'updating'
  9938. case 131705: // 'element' 'updating'
  9939. case 131768: // 'namespace' 'updating'
  9940. case 131800: // 'processing-instruction' 'updating'
  9941. case 133202: // 'attribute' 'validate'
  9942. case 133241: // 'element' 'validate'
  9943. case 133304: // 'namespace' 'validate'
  9944. case 133336: // 'processing-instruction' 'validate'
  9945. case 133714: // 'attribute' 'value'
  9946. case 133753: // 'element' 'value'
  9947. case 133816: // 'namespace' 'value'
  9948. case 133848: // 'processing-instruction' 'value'
  9949. case 134226: // 'attribute' 'variable'
  9950. case 134265: // 'element' 'variable'
  9951. case 134328: // 'namespace' 'variable'
  9952. case 134360: // 'processing-instruction' 'variable'
  9953. case 134738: // 'attribute' 'version'
  9954. case 134777: // 'element' 'version'
  9955. case 134840: // 'namespace' 'version'
  9956. case 134872: // 'processing-instruction' 'version'
  9957. case 136786: // 'attribute' 'while'
  9958. case 136825: // 'element' 'while'
  9959. case 136888: // 'namespace' 'while'
  9960. case 136920: // 'processing-instruction' 'while'
  9961. case 140370: // 'attribute' 'xquery'
  9962. case 140409: // 'element' 'xquery'
  9963. case 140472: // 'namespace' 'xquery'
  9964. case 140504: // 'processing-instruction' 'xquery'
  9965. case 141394: // 'attribute' '{'
  9966. case 141408: // 'comment' '{'
  9967. case 141431: // 'document' '{'
  9968. case 141433: // 'element' '{'
  9969. case 141496: // 'namespace' '{'
  9970. case 141514: // 'ordered' '{'
  9971. case 141528: // 'processing-instruction' '{'
  9972. case 141556: // 'text' '{'
  9973. case 141568: // 'unordered' '{'
  9974. try_PostfixExpr();
  9975. break;
  9976. case -3:
  9977. break;
  9978. default:
  9979. try_AxisStep();
  9980. }
  9981. }
  9982. function parse_AxisStep()
  9983. {
  9984. eventHandler.startNonterminal("AxisStep", e0);
  9985. switch (l1)
  9986. {
  9987. case 73: // 'ancestor'
  9988. case 74: // 'ancestor-or-self'
  9989. case 206: // 'parent'
  9990. case 212: // 'preceding'
  9991. case 213: // 'preceding-sibling'
  9992. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  9993. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  9994. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  9995. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  9996. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  9997. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  9998. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  9999. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10000. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10001. break;
  10002. default:
  10003. lk = l1;
  10004. }
  10005. switch (lk)
  10006. {
  10007. case 45: // '..'
  10008. case 26185: // 'ancestor' '::'
  10009. case 26186: // 'ancestor-or-self' '::'
  10010. case 26318: // 'parent' '::'
  10011. case 26324: // 'preceding' '::'
  10012. case 26325: // 'preceding-sibling' '::'
  10013. parse_ReverseStep();
  10014. break;
  10015. default:
  10016. parse_ForwardStep();
  10017. }
  10018. lookahead1W(236); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10019. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' | 'and' |
  10020. // 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' | 'castable' |
  10021. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  10022. // 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  10023. // 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  10024. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10025. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10026. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10027. whitespace();
  10028. parse_PredicateList();
  10029. eventHandler.endNonterminal("AxisStep", e0);
  10030. }
  10031. function try_AxisStep()
  10032. {
  10033. switch (l1)
  10034. {
  10035. case 73: // 'ancestor'
  10036. case 74: // 'ancestor-or-self'
  10037. case 206: // 'parent'
  10038. case 212: // 'preceding'
  10039. case 213: // 'preceding-sibling'
  10040. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10041. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10042. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10043. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10044. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10045. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10046. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10047. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10048. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10049. break;
  10050. default:
  10051. lk = l1;
  10052. }
  10053. switch (lk)
  10054. {
  10055. case 45: // '..'
  10056. case 26185: // 'ancestor' '::'
  10057. case 26186: // 'ancestor-or-self' '::'
  10058. case 26318: // 'parent' '::'
  10059. case 26324: // 'preceding' '::'
  10060. case 26325: // 'preceding-sibling' '::'
  10061. try_ReverseStep();
  10062. break;
  10063. default:
  10064. try_ForwardStep();
  10065. }
  10066. lookahead1W(236); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10067. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' | 'and' |
  10068. // 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' | 'castable' |
  10069. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  10070. // 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  10071. // 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  10072. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10073. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10074. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10075. try_PredicateList();
  10076. }
  10077. function parse_ForwardStep()
  10078. {
  10079. eventHandler.startNonterminal("ForwardStep", e0);
  10080. switch (l1)
  10081. {
  10082. case 82: // 'attribute'
  10083. lookahead2W(243); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10084. // ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  10085. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10086. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10087. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10088. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10089. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10090. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10091. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10092. break;
  10093. case 93: // 'child'
  10094. case 111: // 'descendant'
  10095. case 112: // 'descendant-or-self'
  10096. case 135: // 'following'
  10097. case 136: // 'following-sibling'
  10098. case 229: // 'self'
  10099. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10100. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10101. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10102. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10103. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10104. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10105. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10106. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10107. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10108. break;
  10109. default:
  10110. lk = l1;
  10111. }
  10112. switch (lk)
  10113. {
  10114. case 26194: // 'attribute' '::'
  10115. case 26205: // 'child' '::'
  10116. case 26223: // 'descendant' '::'
  10117. case 26224: // 'descendant-or-self' '::'
  10118. case 26247: // 'following' '::'
  10119. case 26248: // 'following-sibling' '::'
  10120. case 26341: // 'self' '::'
  10121. parse_ForwardAxis();
  10122. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10123. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10124. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10125. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10126. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10127. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10128. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10129. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10130. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10131. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10132. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10133. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10134. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10135. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10136. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10137. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10138. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10139. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10140. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10141. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10142. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10143. // 'xquery'
  10144. whitespace();
  10145. parse_NodeTest();
  10146. break;
  10147. default:
  10148. parse_AbbrevForwardStep();
  10149. }
  10150. eventHandler.endNonterminal("ForwardStep", e0);
  10151. }
  10152. function try_ForwardStep()
  10153. {
  10154. switch (l1)
  10155. {
  10156. case 82: // 'attribute'
  10157. lookahead2W(243); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10158. // ':' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  10159. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10160. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10161. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10162. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10163. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10164. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10165. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10166. break;
  10167. case 93: // 'child'
  10168. case 111: // 'descendant'
  10169. case 112: // 'descendant-or-self'
  10170. case 135: // 'following'
  10171. case 136: // 'following-sibling'
  10172. case 229: // 'self'
  10173. lookahead2W(240); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10174. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10175. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10176. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10177. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10178. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10179. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10180. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10181. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10182. break;
  10183. default:
  10184. lk = l1;
  10185. }
  10186. switch (lk)
  10187. {
  10188. case 26194: // 'attribute' '::'
  10189. case 26205: // 'child' '::'
  10190. case 26223: // 'descendant' '::'
  10191. case 26224: // 'descendant-or-self' '::'
  10192. case 26247: // 'following' '::'
  10193. case 26248: // 'following-sibling' '::'
  10194. case 26341: // 'self' '::'
  10195. try_ForwardAxis();
  10196. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10197. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10198. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10199. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10200. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10201. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10202. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10203. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10204. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10205. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10206. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10207. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10208. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10209. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10210. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10211. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10212. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10213. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10214. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10215. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10216. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10217. // 'xquery'
  10218. try_NodeTest();
  10219. break;
  10220. default:
  10221. try_AbbrevForwardStep();
  10222. }
  10223. }
  10224. function parse_ForwardAxis()
  10225. {
  10226. eventHandler.startNonterminal("ForwardAxis", e0);
  10227. switch (l1)
  10228. {
  10229. case 93: // 'child'
  10230. shift(93); // 'child'
  10231. lookahead1W(26); // S^WS | '(:' | '::'
  10232. shift(51); // '::'
  10233. break;
  10234. case 111: // 'descendant'
  10235. shift(111); // 'descendant'
  10236. lookahead1W(26); // S^WS | '(:' | '::'
  10237. shift(51); // '::'
  10238. break;
  10239. case 82: // 'attribute'
  10240. shift(82); // 'attribute'
  10241. lookahead1W(26); // S^WS | '(:' | '::'
  10242. shift(51); // '::'
  10243. break;
  10244. case 229: // 'self'
  10245. shift(229); // 'self'
  10246. lookahead1W(26); // S^WS | '(:' | '::'
  10247. shift(51); // '::'
  10248. break;
  10249. case 112: // 'descendant-or-self'
  10250. shift(112); // 'descendant-or-self'
  10251. lookahead1W(26); // S^WS | '(:' | '::'
  10252. shift(51); // '::'
  10253. break;
  10254. case 136: // 'following-sibling'
  10255. shift(136); // 'following-sibling'
  10256. lookahead1W(26); // S^WS | '(:' | '::'
  10257. shift(51); // '::'
  10258. break;
  10259. default:
  10260. shift(135); // 'following'
  10261. lookahead1W(26); // S^WS | '(:' | '::'
  10262. shift(51); // '::'
  10263. }
  10264. eventHandler.endNonterminal("ForwardAxis", e0);
  10265. }
  10266. function try_ForwardAxis()
  10267. {
  10268. switch (l1)
  10269. {
  10270. case 93: // 'child'
  10271. shiftT(93); // 'child'
  10272. lookahead1W(26); // S^WS | '(:' | '::'
  10273. shiftT(51); // '::'
  10274. break;
  10275. case 111: // 'descendant'
  10276. shiftT(111); // 'descendant'
  10277. lookahead1W(26); // S^WS | '(:' | '::'
  10278. shiftT(51); // '::'
  10279. break;
  10280. case 82: // 'attribute'
  10281. shiftT(82); // 'attribute'
  10282. lookahead1W(26); // S^WS | '(:' | '::'
  10283. shiftT(51); // '::'
  10284. break;
  10285. case 229: // 'self'
  10286. shiftT(229); // 'self'
  10287. lookahead1W(26); // S^WS | '(:' | '::'
  10288. shiftT(51); // '::'
  10289. break;
  10290. case 112: // 'descendant-or-self'
  10291. shiftT(112); // 'descendant-or-self'
  10292. lookahead1W(26); // S^WS | '(:' | '::'
  10293. shiftT(51); // '::'
  10294. break;
  10295. case 136: // 'following-sibling'
  10296. shiftT(136); // 'following-sibling'
  10297. lookahead1W(26); // S^WS | '(:' | '::'
  10298. shiftT(51); // '::'
  10299. break;
  10300. default:
  10301. shiftT(135); // 'following'
  10302. lookahead1W(26); // S^WS | '(:' | '::'
  10303. shiftT(51); // '::'
  10304. }
  10305. }
  10306. function parse_AbbrevForwardStep()
  10307. {
  10308. eventHandler.startNonterminal("AbbrevForwardStep", e0);
  10309. if (l1 == 66) // '@'
  10310. {
  10311. shift(66); // '@'
  10312. }
  10313. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10314. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10315. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10316. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10317. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10318. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10319. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10320. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10321. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10322. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10323. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10324. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10325. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10326. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10327. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10328. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10329. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10330. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10331. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10332. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10333. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10334. // 'xquery'
  10335. whitespace();
  10336. parse_NodeTest();
  10337. eventHandler.endNonterminal("AbbrevForwardStep", e0);
  10338. }
  10339. function try_AbbrevForwardStep()
  10340. {
  10341. if (l1 == 66) // '@'
  10342. {
  10343. shiftT(66); // '@'
  10344. }
  10345. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10346. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10347. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10348. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10349. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10350. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10351. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10352. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10353. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10354. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10355. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10356. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10357. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10358. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10359. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10360. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10361. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10362. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10363. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10364. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10365. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10366. // 'xquery'
  10367. try_NodeTest();
  10368. }
  10369. function parse_ReverseStep()
  10370. {
  10371. eventHandler.startNonterminal("ReverseStep", e0);
  10372. switch (l1)
  10373. {
  10374. case 45: // '..'
  10375. parse_AbbrevReverseStep();
  10376. break;
  10377. default:
  10378. parse_ReverseAxis();
  10379. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10380. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10381. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10382. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10383. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10384. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10385. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10386. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10387. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10388. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10389. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10390. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10391. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10392. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10393. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10394. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10395. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10396. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10397. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10398. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10399. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10400. // 'xquery'
  10401. whitespace();
  10402. parse_NodeTest();
  10403. }
  10404. eventHandler.endNonterminal("ReverseStep", e0);
  10405. }
  10406. function try_ReverseStep()
  10407. {
  10408. switch (l1)
  10409. {
  10410. case 45: // '..'
  10411. try_AbbrevReverseStep();
  10412. break;
  10413. default:
  10414. try_ReverseAxis();
  10415. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  10416. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  10417. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  10418. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  10419. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  10420. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  10421. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  10422. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  10423. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  10424. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  10425. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  10426. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  10427. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  10428. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  10429. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10430. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10431. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10432. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10433. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10434. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10435. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10436. // 'xquery'
  10437. try_NodeTest();
  10438. }
  10439. }
  10440. function parse_ReverseAxis()
  10441. {
  10442. eventHandler.startNonterminal("ReverseAxis", e0);
  10443. switch (l1)
  10444. {
  10445. case 206: // 'parent'
  10446. shift(206); // 'parent'
  10447. lookahead1W(26); // S^WS | '(:' | '::'
  10448. shift(51); // '::'
  10449. break;
  10450. case 73: // 'ancestor'
  10451. shift(73); // 'ancestor'
  10452. lookahead1W(26); // S^WS | '(:' | '::'
  10453. shift(51); // '::'
  10454. break;
  10455. case 213: // 'preceding-sibling'
  10456. shift(213); // 'preceding-sibling'
  10457. lookahead1W(26); // S^WS | '(:' | '::'
  10458. shift(51); // '::'
  10459. break;
  10460. case 212: // 'preceding'
  10461. shift(212); // 'preceding'
  10462. lookahead1W(26); // S^WS | '(:' | '::'
  10463. shift(51); // '::'
  10464. break;
  10465. default:
  10466. shift(74); // 'ancestor-or-self'
  10467. lookahead1W(26); // S^WS | '(:' | '::'
  10468. shift(51); // '::'
  10469. }
  10470. eventHandler.endNonterminal("ReverseAxis", e0);
  10471. }
  10472. function try_ReverseAxis()
  10473. {
  10474. switch (l1)
  10475. {
  10476. case 206: // 'parent'
  10477. shiftT(206); // 'parent'
  10478. lookahead1W(26); // S^WS | '(:' | '::'
  10479. shiftT(51); // '::'
  10480. break;
  10481. case 73: // 'ancestor'
  10482. shiftT(73); // 'ancestor'
  10483. lookahead1W(26); // S^WS | '(:' | '::'
  10484. shiftT(51); // '::'
  10485. break;
  10486. case 213: // 'preceding-sibling'
  10487. shiftT(213); // 'preceding-sibling'
  10488. lookahead1W(26); // S^WS | '(:' | '::'
  10489. shiftT(51); // '::'
  10490. break;
  10491. case 212: // 'preceding'
  10492. shiftT(212); // 'preceding'
  10493. lookahead1W(26); // S^WS | '(:' | '::'
  10494. shiftT(51); // '::'
  10495. break;
  10496. default:
  10497. shiftT(74); // 'ancestor-or-self'
  10498. lookahead1W(26); // S^WS | '(:' | '::'
  10499. shiftT(51); // '::'
  10500. }
  10501. }
  10502. function parse_AbbrevReverseStep()
  10503. {
  10504. eventHandler.startNonterminal("AbbrevReverseStep", e0);
  10505. shift(45); // '..'
  10506. eventHandler.endNonterminal("AbbrevReverseStep", e0);
  10507. }
  10508. function try_AbbrevReverseStep()
  10509. {
  10510. shiftT(45); // '..'
  10511. }
  10512. function parse_NodeTest()
  10513. {
  10514. eventHandler.startNonterminal("NodeTest", e0);
  10515. switch (l1)
  10516. {
  10517. case 78: // 'array'
  10518. case 82: // 'attribute'
  10519. case 96: // 'comment'
  10520. case 120: // 'document-node'
  10521. case 121: // 'element'
  10522. case 167: // 'json-item'
  10523. case 185: // 'namespace-node'
  10524. case 191: // 'node'
  10525. case 194: // 'object'
  10526. case 216: // 'processing-instruction'
  10527. case 226: // 'schema-attribute'
  10528. case 227: // 'schema-element'
  10529. case 244: // 'text'
  10530. lookahead2W(239); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10531. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10532. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10533. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10534. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10535. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10536. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10537. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10538. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10539. break;
  10540. default:
  10541. lk = l1;
  10542. }
  10543. switch (lk)
  10544. {
  10545. case 17486: // 'array' '('
  10546. case 17490: // 'attribute' '('
  10547. case 17504: // 'comment' '('
  10548. case 17528: // 'document-node' '('
  10549. case 17529: // 'element' '('
  10550. case 17575: // 'json-item' '('
  10551. case 17593: // 'namespace-node' '('
  10552. case 17599: // 'node' '('
  10553. case 17602: // 'object' '('
  10554. case 17624: // 'processing-instruction' '('
  10555. case 17634: // 'schema-attribute' '('
  10556. case 17635: // 'schema-element' '('
  10557. case 17652: // 'text' '('
  10558. parse_KindTest();
  10559. break;
  10560. default:
  10561. parse_NameTest();
  10562. }
  10563. eventHandler.endNonterminal("NodeTest", e0);
  10564. }
  10565. function try_NodeTest()
  10566. {
  10567. switch (l1)
  10568. {
  10569. case 78: // 'array'
  10570. case 82: // 'attribute'
  10571. case 96: // 'comment'
  10572. case 120: // 'document-node'
  10573. case 121: // 'element'
  10574. case 167: // 'json-item'
  10575. case 185: // 'namespace-node'
  10576. case 191: // 'node'
  10577. case 194: // 'object'
  10578. case 216: // 'processing-instruction'
  10579. case 226: // 'schema-attribute'
  10580. case 227: // 'schema-element'
  10581. case 244: // 'text'
  10582. lookahead2W(239); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10583. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10584. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10585. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10586. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10587. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10588. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10589. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10590. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10591. break;
  10592. default:
  10593. lk = l1;
  10594. }
  10595. switch (lk)
  10596. {
  10597. case 17486: // 'array' '('
  10598. case 17490: // 'attribute' '('
  10599. case 17504: // 'comment' '('
  10600. case 17528: // 'document-node' '('
  10601. case 17529: // 'element' '('
  10602. case 17575: // 'json-item' '('
  10603. case 17593: // 'namespace-node' '('
  10604. case 17599: // 'node' '('
  10605. case 17602: // 'object' '('
  10606. case 17624: // 'processing-instruction' '('
  10607. case 17634: // 'schema-attribute' '('
  10608. case 17635: // 'schema-element' '('
  10609. case 17652: // 'text' '('
  10610. try_KindTest();
  10611. break;
  10612. default:
  10613. try_NameTest();
  10614. }
  10615. }
  10616. function parse_NameTest()
  10617. {
  10618. eventHandler.startNonterminal("NameTest", e0);
  10619. switch (l1)
  10620. {
  10621. case 5: // Wildcard
  10622. shift(5); // Wildcard
  10623. break;
  10624. default:
  10625. parse_EQName();
  10626. }
  10627. eventHandler.endNonterminal("NameTest", e0);
  10628. }
  10629. function try_NameTest()
  10630. {
  10631. switch (l1)
  10632. {
  10633. case 5: // Wildcard
  10634. shiftT(5); // Wildcard
  10635. break;
  10636. default:
  10637. try_EQName();
  10638. }
  10639. }
  10640. function parse_PostfixExpr()
  10641. {
  10642. eventHandler.startNonterminal("PostfixExpr", e0);
  10643. parse_PrimaryExpr();
  10644. for (;;)
  10645. {
  10646. lookahead1W(239); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10647. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10648. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10649. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10650. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10651. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10652. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10653. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10654. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10655. if (l1 != 34 // '('
  10656. && l1 != 68) // '['
  10657. {
  10658. break;
  10659. }
  10660. switch (l1)
  10661. {
  10662. case 68: // '['
  10663. whitespace();
  10664. parse_Predicate();
  10665. break;
  10666. default:
  10667. whitespace();
  10668. parse_ArgumentList();
  10669. }
  10670. }
  10671. eventHandler.endNonterminal("PostfixExpr", e0);
  10672. }
  10673. function try_PostfixExpr()
  10674. {
  10675. try_PrimaryExpr();
  10676. for (;;)
  10677. {
  10678. lookahead1W(239); // S^WS | EOF | '!' | '!=' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' |
  10679. // ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' |
  10680. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' |
  10681. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  10682. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  10683. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  10684. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10685. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10686. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10687. if (l1 != 34 // '('
  10688. && l1 != 68) // '['
  10689. {
  10690. break;
  10691. }
  10692. switch (l1)
  10693. {
  10694. case 68: // '['
  10695. try_Predicate();
  10696. break;
  10697. default:
  10698. try_ArgumentList();
  10699. }
  10700. }
  10701. }
  10702. function parse_ArgumentList()
  10703. {
  10704. eventHandler.startNonterminal("ArgumentList", e0);
  10705. shift(34); // '('
  10706. lookahead1W(275); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10707. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  10708. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '?' | '@' | '[' | 'after' |
  10709. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' |
  10710. // 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  10711. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  10712. // 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  10713. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  10714. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  10715. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  10716. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  10717. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  10718. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  10719. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  10720. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  10721. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  10722. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  10723. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  10724. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  10725. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  10726. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  10727. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  10728. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  10729. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  10730. if (l1 != 37) // ')'
  10731. {
  10732. whitespace();
  10733. parse_Argument();
  10734. for (;;)
  10735. {
  10736. lookahead1W(101); // S^WS | '(:' | ')' | ','
  10737. if (l1 != 41) // ','
  10738. {
  10739. break;
  10740. }
  10741. shift(41); // ','
  10742. lookahead1W(270); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10743. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  10744. // '/' | '//' | '<' | '<!--' | '<?' | '?' | '@' | '[' | 'after' | 'allowing' |
  10745. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  10746. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  10747. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  10748. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  10749. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  10750. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  10751. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  10752. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  10753. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  10754. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  10755. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  10756. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  10757. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  10758. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10759. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10760. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10761. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10762. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10763. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10764. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10765. // 'xquery' | '{' | '{|'
  10766. whitespace();
  10767. parse_Argument();
  10768. }
  10769. }
  10770. shift(37); // ')'
  10771. eventHandler.endNonterminal("ArgumentList", e0);
  10772. }
  10773. function try_ArgumentList()
  10774. {
  10775. shiftT(34); // '('
  10776. lookahead1W(275); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10777. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  10778. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '?' | '@' | '[' | 'after' |
  10779. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' |
  10780. // 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  10781. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  10782. // 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  10783. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  10784. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  10785. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  10786. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  10787. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  10788. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  10789. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  10790. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  10791. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  10792. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  10793. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  10794. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  10795. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  10796. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  10797. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  10798. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  10799. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  10800. if (l1 != 37) // ')'
  10801. {
  10802. try_Argument();
  10803. for (;;)
  10804. {
  10805. lookahead1W(101); // S^WS | '(:' | ')' | ','
  10806. if (l1 != 41) // ','
  10807. {
  10808. break;
  10809. }
  10810. shiftT(41); // ','
  10811. lookahead1W(270); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10812. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  10813. // '/' | '//' | '<' | '<!--' | '<?' | '?' | '@' | '[' | 'after' | 'allowing' |
  10814. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  10815. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  10816. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  10817. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  10818. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  10819. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  10820. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  10821. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  10822. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  10823. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  10824. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  10825. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  10826. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  10827. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10828. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10829. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10830. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10831. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10832. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10833. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10834. // 'xquery' | '{' | '{|'
  10835. try_Argument();
  10836. }
  10837. }
  10838. shiftT(37); // ')'
  10839. }
  10840. function parse_PredicateList()
  10841. {
  10842. eventHandler.startNonterminal("PredicateList", e0);
  10843. for (;;)
  10844. {
  10845. lookahead1W(236); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10846. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' | 'and' |
  10847. // 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' | 'castable' |
  10848. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  10849. // 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  10850. // 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  10851. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10852. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10853. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10854. if (l1 != 68) // '['
  10855. {
  10856. break;
  10857. }
  10858. whitespace();
  10859. parse_Predicate();
  10860. }
  10861. eventHandler.endNonterminal("PredicateList", e0);
  10862. }
  10863. function try_PredicateList()
  10864. {
  10865. for (;;)
  10866. {
  10867. lookahead1W(236); // S^WS | EOF | '!' | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' | '//' | ':' |
  10868. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' | 'after' | 'and' |
  10869. // 'as' | 'ascending' | 'at' | 'before' | 'by' | 'case' | 'cast' | 'castable' |
  10870. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  10871. // 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  10872. // 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  10873. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  10874. // 'satisfies' | 'sentences' | 'stable' | 'start' | 'times' | 'to' | 'treat' |
  10875. // 'union' | 'where' | 'with' | 'words' | '|' | '||' | '|}' | '}'
  10876. if (l1 != 68) // '['
  10877. {
  10878. break;
  10879. }
  10880. try_Predicate();
  10881. }
  10882. }
  10883. function parse_Predicate()
  10884. {
  10885. eventHandler.startNonterminal("Predicate", e0);
  10886. shift(68); // '['
  10887. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10888. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  10889. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  10890. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  10891. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  10892. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  10893. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  10894. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  10895. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  10896. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  10897. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  10898. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  10899. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  10900. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  10901. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  10902. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  10903. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10904. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10905. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10906. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10907. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10908. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10909. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10910. // 'xquery' | '{' | '{|'
  10911. whitespace();
  10912. parse_Expr();
  10913. shift(69); // ']'
  10914. eventHandler.endNonterminal("Predicate", e0);
  10915. }
  10916. function try_Predicate()
  10917. {
  10918. shiftT(68); // '['
  10919. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  10920. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  10921. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  10922. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  10923. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  10924. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  10925. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  10926. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  10927. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  10928. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  10929. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  10930. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  10931. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  10932. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  10933. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  10934. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  10935. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  10936. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  10937. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  10938. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  10939. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  10940. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  10941. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  10942. // 'xquery' | '{' | '{|'
  10943. try_Expr();
  10944. shiftT(69); // ']'
  10945. }
  10946. function parse_Literal()
  10947. {
  10948. eventHandler.startNonterminal("Literal", e0);
  10949. switch (l1)
  10950. {
  10951. case 11: // StringLiteral
  10952. shift(11); // StringLiteral
  10953. break;
  10954. default:
  10955. parse_NumericLiteral();
  10956. }
  10957. eventHandler.endNonterminal("Literal", e0);
  10958. }
  10959. function try_Literal()
  10960. {
  10961. switch (l1)
  10962. {
  10963. case 11: // StringLiteral
  10964. shiftT(11); // StringLiteral
  10965. break;
  10966. default:
  10967. try_NumericLiteral();
  10968. }
  10969. }
  10970. function parse_NumericLiteral()
  10971. {
  10972. eventHandler.startNonterminal("NumericLiteral", e0);
  10973. switch (l1)
  10974. {
  10975. case 8: // IntegerLiteral
  10976. shift(8); // IntegerLiteral
  10977. break;
  10978. case 9: // DecimalLiteral
  10979. shift(9); // DecimalLiteral
  10980. break;
  10981. default:
  10982. shift(10); // DoubleLiteral
  10983. }
  10984. eventHandler.endNonterminal("NumericLiteral", e0);
  10985. }
  10986. function try_NumericLiteral()
  10987. {
  10988. switch (l1)
  10989. {
  10990. case 8: // IntegerLiteral
  10991. shiftT(8); // IntegerLiteral
  10992. break;
  10993. case 9: // DecimalLiteral
  10994. shiftT(9); // DecimalLiteral
  10995. break;
  10996. default:
  10997. shiftT(10); // DoubleLiteral
  10998. }
  10999. }
  11000. function parse_VarRef()
  11001. {
  11002. eventHandler.startNonterminal("VarRef", e0);
  11003. shift(31); // '$'
  11004. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11005. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  11006. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  11007. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  11008. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  11009. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  11010. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  11011. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  11012. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  11013. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  11014. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  11015. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  11016. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  11017. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  11018. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11019. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11020. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11021. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11022. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11023. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11024. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11025. // 'xquery'
  11026. whitespace();
  11027. parse_VarName();
  11028. eventHandler.endNonterminal("VarRef", e0);
  11029. }
  11030. function try_VarRef()
  11031. {
  11032. shiftT(31); // '$'
  11033. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11034. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  11035. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  11036. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  11037. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  11038. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  11039. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  11040. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  11041. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  11042. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  11043. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  11044. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  11045. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  11046. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  11047. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11048. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11049. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11050. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11051. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11052. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11053. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11054. // 'xquery'
  11055. try_VarName();
  11056. }
  11057. function parse_VarName()
  11058. {
  11059. eventHandler.startNonterminal("VarName", e0);
  11060. parse_EQName();
  11061. eventHandler.endNonterminal("VarName", e0);
  11062. }
  11063. function try_VarName()
  11064. {
  11065. try_EQName();
  11066. }
  11067. function parse_ParenthesizedExpr()
  11068. {
  11069. eventHandler.startNonterminal("ParenthesizedExpr", e0);
  11070. shift(34); // '('
  11071. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11072. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  11073. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11074. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11075. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11076. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11077. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11078. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11079. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11080. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11081. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11082. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11083. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11084. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11085. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11086. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11087. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11088. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11089. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11090. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11091. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11092. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11093. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11094. // 'xquery' | '{' | '{|'
  11095. if (l1 != 37) // ')'
  11096. {
  11097. whitespace();
  11098. parse_Expr();
  11099. }
  11100. shift(37); // ')'
  11101. eventHandler.endNonterminal("ParenthesizedExpr", e0);
  11102. }
  11103. function try_ParenthesizedExpr()
  11104. {
  11105. shiftT(34); // '('
  11106. lookahead1W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11107. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  11108. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11109. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11110. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11111. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11112. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11113. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11114. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11115. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11116. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11117. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11118. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11119. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11120. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11121. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11122. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11123. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11124. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11125. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11126. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11127. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11128. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11129. // 'xquery' | '{' | '{|'
  11130. if (l1 != 37) // ')'
  11131. {
  11132. try_Expr();
  11133. }
  11134. shiftT(37); // ')'
  11135. }
  11136. function parse_ContextItemExpr()
  11137. {
  11138. eventHandler.startNonterminal("ContextItemExpr", e0);
  11139. shift(44); // '.'
  11140. eventHandler.endNonterminal("ContextItemExpr", e0);
  11141. }
  11142. function try_ContextItemExpr()
  11143. {
  11144. shiftT(44); // '.'
  11145. }
  11146. function parse_OrderedExpr()
  11147. {
  11148. eventHandler.startNonterminal("OrderedExpr", e0);
  11149. shift(202); // 'ordered'
  11150. lookahead1W(87); // S^WS | '(:' | '{'
  11151. shift(276); // '{'
  11152. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11153. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11154. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11155. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11156. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11157. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11158. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11159. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11160. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11161. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11162. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11163. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11164. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11165. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11166. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11167. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11168. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11169. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11170. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11171. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11172. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11173. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11174. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11175. // 'xquery' | '{' | '{|'
  11176. whitespace();
  11177. parse_Expr();
  11178. shift(282); // '}'
  11179. eventHandler.endNonterminal("OrderedExpr", e0);
  11180. }
  11181. function try_OrderedExpr()
  11182. {
  11183. shiftT(202); // 'ordered'
  11184. lookahead1W(87); // S^WS | '(:' | '{'
  11185. shiftT(276); // '{'
  11186. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11187. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11188. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11189. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11190. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11191. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11192. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11193. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11194. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11195. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11196. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11197. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11198. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11199. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11200. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11201. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11202. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11203. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11204. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11205. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11206. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11207. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11208. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11209. // 'xquery' | '{' | '{|'
  11210. try_Expr();
  11211. shiftT(282); // '}'
  11212. }
  11213. function parse_UnorderedExpr()
  11214. {
  11215. eventHandler.startNonterminal("UnorderedExpr", e0);
  11216. shift(256); // 'unordered'
  11217. lookahead1W(87); // S^WS | '(:' | '{'
  11218. shift(276); // '{'
  11219. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11220. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11221. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11222. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11223. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11224. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11225. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11226. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11227. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11228. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11229. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11230. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11231. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11232. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11233. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11234. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11235. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11236. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11237. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11238. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11239. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11240. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11241. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11242. // 'xquery' | '{' | '{|'
  11243. whitespace();
  11244. parse_Expr();
  11245. shift(282); // '}'
  11246. eventHandler.endNonterminal("UnorderedExpr", e0);
  11247. }
  11248. function try_UnorderedExpr()
  11249. {
  11250. shiftT(256); // 'unordered'
  11251. lookahead1W(87); // S^WS | '(:' | '{'
  11252. shiftT(276); // '{'
  11253. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11254. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11255. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11256. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11257. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11258. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11259. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11260. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11261. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11262. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11263. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11264. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11265. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11266. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11267. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11268. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11269. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11270. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11271. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11272. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11273. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11274. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11275. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11276. // 'xquery' | '{' | '{|'
  11277. try_Expr();
  11278. shiftT(282); // '}'
  11279. }
  11280. function parse_FunctionCall()
  11281. {
  11282. eventHandler.startNonterminal("FunctionCall", e0);
  11283. parse_FunctionName();
  11284. lookahead1W(22); // S^WS | '(' | '(:'
  11285. whitespace();
  11286. parse_ArgumentList();
  11287. eventHandler.endNonterminal("FunctionCall", e0);
  11288. }
  11289. function try_FunctionCall()
  11290. {
  11291. try_FunctionName();
  11292. lookahead1W(22); // S^WS | '(' | '(:'
  11293. try_ArgumentList();
  11294. }
  11295. function parse_Argument()
  11296. {
  11297. eventHandler.startNonterminal("Argument", e0);
  11298. switch (l1)
  11299. {
  11300. case 64: // '?'
  11301. parse_ArgumentPlaceholder();
  11302. break;
  11303. default:
  11304. parse_ExprSingle();
  11305. }
  11306. eventHandler.endNonterminal("Argument", e0);
  11307. }
  11308. function try_Argument()
  11309. {
  11310. switch (l1)
  11311. {
  11312. case 64: // '?'
  11313. try_ArgumentPlaceholder();
  11314. break;
  11315. default:
  11316. try_ExprSingle();
  11317. }
  11318. }
  11319. function parse_ArgumentPlaceholder()
  11320. {
  11321. eventHandler.startNonterminal("ArgumentPlaceholder", e0);
  11322. shift(64); // '?'
  11323. eventHandler.endNonterminal("ArgumentPlaceholder", e0);
  11324. }
  11325. function try_ArgumentPlaceholder()
  11326. {
  11327. shiftT(64); // '?'
  11328. }
  11329. function parse_Constructor()
  11330. {
  11331. eventHandler.startNonterminal("Constructor", e0);
  11332. switch (l1)
  11333. {
  11334. case 54: // '<'
  11335. case 55: // '<!--'
  11336. case 59: // '<?'
  11337. parse_DirectConstructor();
  11338. break;
  11339. default:
  11340. parse_ComputedConstructor();
  11341. }
  11342. eventHandler.endNonterminal("Constructor", e0);
  11343. }
  11344. function try_Constructor()
  11345. {
  11346. switch (l1)
  11347. {
  11348. case 54: // '<'
  11349. case 55: // '<!--'
  11350. case 59: // '<?'
  11351. try_DirectConstructor();
  11352. break;
  11353. default:
  11354. try_ComputedConstructor();
  11355. }
  11356. }
  11357. function parse_DirectConstructor()
  11358. {
  11359. eventHandler.startNonterminal("DirectConstructor", e0);
  11360. switch (l1)
  11361. {
  11362. case 54: // '<'
  11363. parse_DirElemConstructor();
  11364. break;
  11365. case 55: // '<!--'
  11366. parse_DirCommentConstructor();
  11367. break;
  11368. default:
  11369. parse_DirPIConstructor();
  11370. }
  11371. eventHandler.endNonterminal("DirectConstructor", e0);
  11372. }
  11373. function try_DirectConstructor()
  11374. {
  11375. switch (l1)
  11376. {
  11377. case 54: // '<'
  11378. try_DirElemConstructor();
  11379. break;
  11380. case 55: // '<!--'
  11381. try_DirCommentConstructor();
  11382. break;
  11383. default:
  11384. try_DirPIConstructor();
  11385. }
  11386. }
  11387. function parse_DirElemConstructor()
  11388. {
  11389. eventHandler.startNonterminal("DirElemConstructor", e0);
  11390. shift(54); // '<'
  11391. lookahead1(4); // QName
  11392. shift(20); // QName
  11393. parse_DirAttributeList();
  11394. switch (l1)
  11395. {
  11396. case 48: // '/>'
  11397. shift(48); // '/>'
  11398. break;
  11399. default:
  11400. shift(61); // '>'
  11401. for (;;)
  11402. {
  11403. lookahead1(174); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  11404. // '<!--' | '</' | '<?' | '{' | '{{' | '}}'
  11405. if (l1 == 56) // '</'
  11406. {
  11407. break;
  11408. }
  11409. parse_DirElemContent();
  11410. }
  11411. shift(56); // '</'
  11412. lookahead1(4); // QName
  11413. shift(20); // QName
  11414. lookahead1(12); // S | '>'
  11415. if (l1 == 21) // S
  11416. {
  11417. shift(21); // S
  11418. }
  11419. lookahead1(8); // '>'
  11420. shift(61); // '>'
  11421. }
  11422. eventHandler.endNonterminal("DirElemConstructor", e0);
  11423. }
  11424. function try_DirElemConstructor()
  11425. {
  11426. shiftT(54); // '<'
  11427. lookahead1(4); // QName
  11428. shiftT(20); // QName
  11429. try_DirAttributeList();
  11430. switch (l1)
  11431. {
  11432. case 48: // '/>'
  11433. shiftT(48); // '/>'
  11434. break;
  11435. default:
  11436. shiftT(61); // '>'
  11437. for (;;)
  11438. {
  11439. lookahead1(174); // CDataSection | PredefinedEntityRef | ElementContentChar | CharRef | '<' |
  11440. // '<!--' | '</' | '<?' | '{' | '{{' | '}}'
  11441. if (l1 == 56) // '</'
  11442. {
  11443. break;
  11444. }
  11445. try_DirElemContent();
  11446. }
  11447. shiftT(56); // '</'
  11448. lookahead1(4); // QName
  11449. shiftT(20); // QName
  11450. lookahead1(12); // S | '>'
  11451. if (l1 == 21) // S
  11452. {
  11453. shiftT(21); // S
  11454. }
  11455. lookahead1(8); // '>'
  11456. shiftT(61); // '>'
  11457. }
  11458. }
  11459. function parse_DirAttributeList()
  11460. {
  11461. eventHandler.startNonterminal("DirAttributeList", e0);
  11462. for (;;)
  11463. {
  11464. lookahead1(19); // S | '/>' | '>'
  11465. if (l1 != 21) // S
  11466. {
  11467. break;
  11468. }
  11469. shift(21); // S
  11470. lookahead1(91); // QName | S | '/>' | '>'
  11471. if (l1 == 20) // QName
  11472. {
  11473. shift(20); // QName
  11474. lookahead1(11); // S | '='
  11475. if (l1 == 21) // S
  11476. {
  11477. shift(21); // S
  11478. }
  11479. lookahead1(7); // '='
  11480. shift(60); // '='
  11481. lookahead1(18); // S | '"' | "'"
  11482. if (l1 == 21) // S
  11483. {
  11484. shift(21); // S
  11485. }
  11486. parse_DirAttributeValue();
  11487. }
  11488. }
  11489. eventHandler.endNonterminal("DirAttributeList", e0);
  11490. }
  11491. function try_DirAttributeList()
  11492. {
  11493. for (;;)
  11494. {
  11495. lookahead1(19); // S | '/>' | '>'
  11496. if (l1 != 21) // S
  11497. {
  11498. break;
  11499. }
  11500. shiftT(21); // S
  11501. lookahead1(91); // QName | S | '/>' | '>'
  11502. if (l1 == 20) // QName
  11503. {
  11504. shiftT(20); // QName
  11505. lookahead1(11); // S | '='
  11506. if (l1 == 21) // S
  11507. {
  11508. shiftT(21); // S
  11509. }
  11510. lookahead1(7); // '='
  11511. shiftT(60); // '='
  11512. lookahead1(18); // S | '"' | "'"
  11513. if (l1 == 21) // S
  11514. {
  11515. shiftT(21); // S
  11516. }
  11517. try_DirAttributeValue();
  11518. }
  11519. }
  11520. }
  11521. function parse_DirAttributeValue()
  11522. {
  11523. eventHandler.startNonterminal("DirAttributeValue", e0);
  11524. lookahead1(14); // '"' | "'"
  11525. switch (l1)
  11526. {
  11527. case 28: // '"'
  11528. shift(28); // '"'
  11529. for (;;)
  11530. {
  11531. lookahead1(167); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  11532. // '{{' | '}}'
  11533. if (l1 == 28) // '"'
  11534. {
  11535. break;
  11536. }
  11537. switch (l1)
  11538. {
  11539. case 13: // EscapeQuot
  11540. shift(13); // EscapeQuot
  11541. break;
  11542. default:
  11543. parse_QuotAttrValueContent();
  11544. }
  11545. }
  11546. shift(28); // '"'
  11547. break;
  11548. default:
  11549. shift(33); // "'"
  11550. for (;;)
  11551. {
  11552. lookahead1(168); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  11553. // '{{' | '}}'
  11554. if (l1 == 33) // "'"
  11555. {
  11556. break;
  11557. }
  11558. switch (l1)
  11559. {
  11560. case 14: // EscapeApos
  11561. shift(14); // EscapeApos
  11562. break;
  11563. default:
  11564. parse_AposAttrValueContent();
  11565. }
  11566. }
  11567. shift(33); // "'"
  11568. }
  11569. eventHandler.endNonterminal("DirAttributeValue", e0);
  11570. }
  11571. function try_DirAttributeValue()
  11572. {
  11573. lookahead1(14); // '"' | "'"
  11574. switch (l1)
  11575. {
  11576. case 28: // '"'
  11577. shiftT(28); // '"'
  11578. for (;;)
  11579. {
  11580. lookahead1(167); // PredefinedEntityRef | EscapeQuot | QuotAttrContentChar | CharRef | '"' | '{' |
  11581. // '{{' | '}}'
  11582. if (l1 == 28) // '"'
  11583. {
  11584. break;
  11585. }
  11586. switch (l1)
  11587. {
  11588. case 13: // EscapeQuot
  11589. shiftT(13); // EscapeQuot
  11590. break;
  11591. default:
  11592. try_QuotAttrValueContent();
  11593. }
  11594. }
  11595. shiftT(28); // '"'
  11596. break;
  11597. default:
  11598. shiftT(33); // "'"
  11599. for (;;)
  11600. {
  11601. lookahead1(168); // PredefinedEntityRef | EscapeApos | AposAttrContentChar | CharRef | "'" | '{' |
  11602. // '{{' | '}}'
  11603. if (l1 == 33) // "'"
  11604. {
  11605. break;
  11606. }
  11607. switch (l1)
  11608. {
  11609. case 14: // EscapeApos
  11610. shiftT(14); // EscapeApos
  11611. break;
  11612. default:
  11613. try_AposAttrValueContent();
  11614. }
  11615. }
  11616. shiftT(33); // "'"
  11617. }
  11618. }
  11619. function parse_QuotAttrValueContent()
  11620. {
  11621. eventHandler.startNonterminal("QuotAttrValueContent", e0);
  11622. switch (l1)
  11623. {
  11624. case 16: // QuotAttrContentChar
  11625. shift(16); // QuotAttrContentChar
  11626. break;
  11627. default:
  11628. parse_CommonContent();
  11629. }
  11630. eventHandler.endNonterminal("QuotAttrValueContent", e0);
  11631. }
  11632. function try_QuotAttrValueContent()
  11633. {
  11634. switch (l1)
  11635. {
  11636. case 16: // QuotAttrContentChar
  11637. shiftT(16); // QuotAttrContentChar
  11638. break;
  11639. default:
  11640. try_CommonContent();
  11641. }
  11642. }
  11643. function parse_AposAttrValueContent()
  11644. {
  11645. eventHandler.startNonterminal("AposAttrValueContent", e0);
  11646. switch (l1)
  11647. {
  11648. case 17: // AposAttrContentChar
  11649. shift(17); // AposAttrContentChar
  11650. break;
  11651. default:
  11652. parse_CommonContent();
  11653. }
  11654. eventHandler.endNonterminal("AposAttrValueContent", e0);
  11655. }
  11656. function try_AposAttrValueContent()
  11657. {
  11658. switch (l1)
  11659. {
  11660. case 17: // AposAttrContentChar
  11661. shiftT(17); // AposAttrContentChar
  11662. break;
  11663. default:
  11664. try_CommonContent();
  11665. }
  11666. }
  11667. function parse_DirElemContent()
  11668. {
  11669. eventHandler.startNonterminal("DirElemContent", e0);
  11670. switch (l1)
  11671. {
  11672. case 54: // '<'
  11673. case 55: // '<!--'
  11674. case 59: // '<?'
  11675. parse_DirectConstructor();
  11676. break;
  11677. case 4: // CDataSection
  11678. shift(4); // CDataSection
  11679. break;
  11680. case 15: // ElementContentChar
  11681. shift(15); // ElementContentChar
  11682. break;
  11683. default:
  11684. parse_CommonContent();
  11685. }
  11686. eventHandler.endNonterminal("DirElemContent", e0);
  11687. }
  11688. function try_DirElemContent()
  11689. {
  11690. switch (l1)
  11691. {
  11692. case 54: // '<'
  11693. case 55: // '<!--'
  11694. case 59: // '<?'
  11695. try_DirectConstructor();
  11696. break;
  11697. case 4: // CDataSection
  11698. shiftT(4); // CDataSection
  11699. break;
  11700. case 15: // ElementContentChar
  11701. shiftT(15); // ElementContentChar
  11702. break;
  11703. default:
  11704. try_CommonContent();
  11705. }
  11706. }
  11707. function parse_DirCommentConstructor()
  11708. {
  11709. eventHandler.startNonterminal("DirCommentConstructor", e0);
  11710. shift(55); // '<!--'
  11711. lookahead1(1); // DirCommentContents
  11712. shift(2); // DirCommentContents
  11713. lookahead1(6); // '-->'
  11714. shift(43); // '-->'
  11715. eventHandler.endNonterminal("DirCommentConstructor", e0);
  11716. }
  11717. function try_DirCommentConstructor()
  11718. {
  11719. shiftT(55); // '<!--'
  11720. lookahead1(1); // DirCommentContents
  11721. shiftT(2); // DirCommentContents
  11722. lookahead1(6); // '-->'
  11723. shiftT(43); // '-->'
  11724. }
  11725. function parse_DirPIConstructor()
  11726. {
  11727. eventHandler.startNonterminal("DirPIConstructor", e0);
  11728. shift(59); // '<?'
  11729. lookahead1(3); // PITarget
  11730. shift(18); // PITarget
  11731. lookahead1(13); // S | '?>'
  11732. if (l1 == 21) // S
  11733. {
  11734. shift(21); // S
  11735. lookahead1(2); // DirPIContents
  11736. shift(3); // DirPIContents
  11737. }
  11738. lookahead1(9); // '?>'
  11739. shift(65); // '?>'
  11740. eventHandler.endNonterminal("DirPIConstructor", e0);
  11741. }
  11742. function try_DirPIConstructor()
  11743. {
  11744. shiftT(59); // '<?'
  11745. lookahead1(3); // PITarget
  11746. shiftT(18); // PITarget
  11747. lookahead1(13); // S | '?>'
  11748. if (l1 == 21) // S
  11749. {
  11750. shiftT(21); // S
  11751. lookahead1(2); // DirPIContents
  11752. shiftT(3); // DirPIContents
  11753. }
  11754. lookahead1(9); // '?>'
  11755. shiftT(65); // '?>'
  11756. }
  11757. function parse_ComputedConstructor()
  11758. {
  11759. eventHandler.startNonterminal("ComputedConstructor", e0);
  11760. switch (l1)
  11761. {
  11762. case 119: // 'document'
  11763. parse_CompDocConstructor();
  11764. break;
  11765. case 121: // 'element'
  11766. parse_CompElemConstructor();
  11767. break;
  11768. case 82: // 'attribute'
  11769. parse_CompAttrConstructor();
  11770. break;
  11771. case 184: // 'namespace'
  11772. parse_CompNamespaceConstructor();
  11773. break;
  11774. case 244: // 'text'
  11775. parse_CompTextConstructor();
  11776. break;
  11777. case 96: // 'comment'
  11778. parse_CompCommentConstructor();
  11779. break;
  11780. default:
  11781. parse_CompPIConstructor();
  11782. }
  11783. eventHandler.endNonterminal("ComputedConstructor", e0);
  11784. }
  11785. function try_ComputedConstructor()
  11786. {
  11787. switch (l1)
  11788. {
  11789. case 119: // 'document'
  11790. try_CompDocConstructor();
  11791. break;
  11792. case 121: // 'element'
  11793. try_CompElemConstructor();
  11794. break;
  11795. case 82: // 'attribute'
  11796. try_CompAttrConstructor();
  11797. break;
  11798. case 184: // 'namespace'
  11799. try_CompNamespaceConstructor();
  11800. break;
  11801. case 244: // 'text'
  11802. try_CompTextConstructor();
  11803. break;
  11804. case 96: // 'comment'
  11805. try_CompCommentConstructor();
  11806. break;
  11807. default:
  11808. try_CompPIConstructor();
  11809. }
  11810. }
  11811. function parse_CompElemConstructor()
  11812. {
  11813. eventHandler.startNonterminal("CompElemConstructor", e0);
  11814. shift(121); // 'element'
  11815. lookahead1W(256); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11816. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  11817. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  11818. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  11819. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  11820. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  11821. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  11822. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  11823. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  11824. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  11825. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  11826. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  11827. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  11828. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  11829. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11830. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11831. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11832. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11833. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11834. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11835. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11836. // 'xquery' | '{'
  11837. switch (l1)
  11838. {
  11839. case 276: // '{'
  11840. shift(276); // '{'
  11841. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11842. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11843. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11844. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11845. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11846. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11847. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11848. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11849. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11850. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11851. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11852. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11853. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11854. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11855. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11856. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11857. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11858. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11859. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11860. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11861. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11862. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11863. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11864. // 'xquery' | '{' | '{|'
  11865. whitespace();
  11866. parse_Expr();
  11867. shift(282); // '}'
  11868. break;
  11869. default:
  11870. whitespace();
  11871. parse_EQName();
  11872. }
  11873. lookahead1W(87); // S^WS | '(:' | '{'
  11874. shift(276); // '{'
  11875. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11876. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11877. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11878. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11879. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11880. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11881. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11882. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11883. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11884. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11885. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11886. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11887. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11888. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11889. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11890. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11891. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11892. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11893. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11894. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11895. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11896. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11897. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11898. // 'xquery' | '{' | '{|' | '}'
  11899. if (l1 != 282) // '}'
  11900. {
  11901. whitespace();
  11902. parse_ContentExpr();
  11903. }
  11904. shift(282); // '}'
  11905. eventHandler.endNonterminal("CompElemConstructor", e0);
  11906. }
  11907. function try_CompElemConstructor()
  11908. {
  11909. shiftT(121); // 'element'
  11910. lookahead1W(256); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  11911. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  11912. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  11913. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  11914. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  11915. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  11916. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  11917. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  11918. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  11919. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  11920. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  11921. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  11922. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  11923. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  11924. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11925. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11926. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11927. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11928. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11929. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11930. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11931. // 'xquery' | '{'
  11932. switch (l1)
  11933. {
  11934. case 276: // '{'
  11935. shiftT(276); // '{'
  11936. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11937. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11938. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11939. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11940. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11941. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11942. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11943. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11944. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11945. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11946. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11947. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11948. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11949. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11950. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11951. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11952. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11953. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11954. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11955. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11956. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11957. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11958. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11959. // 'xquery' | '{' | '{|'
  11960. try_Expr();
  11961. shiftT(282); // '}'
  11962. break;
  11963. default:
  11964. try_EQName();
  11965. }
  11966. lookahead1W(87); // S^WS | '(:' | '{'
  11967. shiftT(276); // '{'
  11968. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  11969. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  11970. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  11971. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  11972. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  11973. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  11974. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  11975. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  11976. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  11977. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  11978. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  11979. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  11980. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  11981. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  11982. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  11983. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  11984. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  11985. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  11986. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  11987. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  11988. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  11989. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  11990. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  11991. // 'xquery' | '{' | '{|' | '}'
  11992. if (l1 != 282) // '}'
  11993. {
  11994. try_ContentExpr();
  11995. }
  11996. shiftT(282); // '}'
  11997. }
  11998. function parse_CompNamespaceConstructor()
  11999. {
  12000. eventHandler.startNonterminal("CompNamespaceConstructor", e0);
  12001. shift(184); // 'namespace'
  12002. lookahead1W(249); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12003. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  12004. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12005. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12006. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12007. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12008. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12009. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12010. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12011. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12012. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12013. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  12014. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  12015. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  12016. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  12017. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  12018. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  12019. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  12020. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12021. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12022. // 'xquery' | '{'
  12023. switch (l1)
  12024. {
  12025. case 276: // '{'
  12026. shift(276); // '{'
  12027. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  12028. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  12029. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  12030. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  12031. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  12032. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  12033. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  12034. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  12035. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  12036. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  12037. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  12038. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  12039. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  12040. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  12041. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  12042. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  12043. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12044. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12045. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12046. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12047. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  12048. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12049. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12050. // 'xquery' | '{' | '{|'
  12051. whitespace();
  12052. parse_PrefixExpr();
  12053. shift(282); // '}'
  12054. break;
  12055. default:
  12056. whitespace();
  12057. parse_Prefix();
  12058. }
  12059. lookahead1W(87); // S^WS | '(:' | '{'
  12060. shift(276); // '{'
  12061. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  12062. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  12063. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  12064. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  12065. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  12066. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  12067. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  12068. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  12069. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  12070. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  12071. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  12072. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  12073. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  12074. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  12075. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  12076. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  12077. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12078. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12079. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12080. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12081. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  12082. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12083. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12084. // 'xquery' | '{' | '{|'
  12085. whitespace();
  12086. parse_URIExpr();
  12087. shift(282); // '}'
  12088. eventHandler.endNonterminal("CompNamespaceConstructor", e0);
  12089. }
  12090. function try_CompNamespaceConstructor()
  12091. {
  12092. shiftT(184); // 'namespace'
  12093. lookahead1W(249); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  12094. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  12095. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12096. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12097. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12098. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12099. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12100. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12101. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12102. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12103. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12104. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  12105. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  12106. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  12107. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  12108. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  12109. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  12110. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  12111. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12112. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12113. // 'xquery' | '{'
  12114. switch (l1)
  12115. {
  12116. case 276: // '{'
  12117. shiftT(276); // '{'
  12118. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  12119. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  12120. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  12121. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  12122. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  12123. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  12124. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  12125. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  12126. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  12127. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  12128. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  12129. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  12130. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  12131. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  12132. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  12133. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  12134. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12135. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12136. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12137. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12138. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  12139. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12140. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12141. // 'xquery' | '{' | '{|'
  12142. try_PrefixExpr();
  12143. shiftT(282); // '}'
  12144. break;
  12145. default:
  12146. try_Prefix();
  12147. }
  12148. lookahead1W(87); // S^WS | '(:' | '{'
  12149. shiftT(276); // '{'
  12150. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  12151. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  12152. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  12153. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  12154. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  12155. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  12156. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  12157. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  12158. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  12159. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  12160. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  12161. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  12162. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  12163. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  12164. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  12165. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  12166. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12167. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12168. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12169. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12170. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  12171. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  12172. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  12173. // 'xquery' | '{' | '{|'
  12174. try_URIExpr();
  12175. shiftT(282); // '}'
  12176. }
  12177. function parse_Prefix()
  12178. {
  12179. eventHandler.startNonterminal("Prefix", e0);
  12180. parse_NCName();
  12181. eventHandler.endNonterminal("Prefix", e0);
  12182. }
  12183. function try_Prefix()
  12184. {
  12185. try_NCName();
  12186. }
  12187. function parse_PrefixExpr()
  12188. {
  12189. eventHandler.startNonterminal("PrefixExpr", e0);
  12190. parse_Expr();
  12191. eventHandler.endNonterminal("PrefixExpr", e0);
  12192. }
  12193. function try_PrefixExpr()
  12194. {
  12195. try_Expr();
  12196. }
  12197. function parse_URIExpr()
  12198. {
  12199. eventHandler.startNonterminal("URIExpr", e0);
  12200. parse_Expr();
  12201. eventHandler.endNonterminal("URIExpr", e0);
  12202. }
  12203. function try_URIExpr()
  12204. {
  12205. try_Expr();
  12206. }
  12207. function parse_FunctionItemExpr()
  12208. {
  12209. eventHandler.startNonterminal("FunctionItemExpr", e0);
  12210. switch (l1)
  12211. {
  12212. case 145: // 'function'
  12213. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  12214. break;
  12215. default:
  12216. lk = l1;
  12217. }
  12218. switch (lk)
  12219. {
  12220. case 32: // '%'
  12221. case 17553: // 'function' '('
  12222. parse_InlineFunctionExpr();
  12223. break;
  12224. default:
  12225. parse_NamedFunctionRef();
  12226. }
  12227. eventHandler.endNonterminal("FunctionItemExpr", e0);
  12228. }
  12229. function try_FunctionItemExpr()
  12230. {
  12231. switch (l1)
  12232. {
  12233. case 145: // 'function'
  12234. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  12235. break;
  12236. default:
  12237. lk = l1;
  12238. }
  12239. switch (lk)
  12240. {
  12241. case 32: // '%'
  12242. case 17553: // 'function' '('
  12243. try_InlineFunctionExpr();
  12244. break;
  12245. default:
  12246. try_NamedFunctionRef();
  12247. }
  12248. }
  12249. function parse_NamedFunctionRef()
  12250. {
  12251. eventHandler.startNonterminal("NamedFunctionRef", e0);
  12252. parse_EQName();
  12253. lookahead1W(20); // S^WS | '#' | '(:'
  12254. shift(29); // '#'
  12255. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  12256. shift(8); // IntegerLiteral
  12257. eventHandler.endNonterminal("NamedFunctionRef", e0);
  12258. }
  12259. function try_NamedFunctionRef()
  12260. {
  12261. try_EQName();
  12262. lookahead1W(20); // S^WS | '#' | '(:'
  12263. shiftT(29); // '#'
  12264. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  12265. shiftT(8); // IntegerLiteral
  12266. }
  12267. function parse_InlineFunctionExpr()
  12268. {
  12269. eventHandler.startNonterminal("InlineFunctionExpr", e0);
  12270. for (;;)
  12271. {
  12272. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  12273. if (l1 != 32) // '%'
  12274. {
  12275. break;
  12276. }
  12277. whitespace();
  12278. parse_Annotation();
  12279. }
  12280. shift(145); // 'function'
  12281. lookahead1W(22); // S^WS | '(' | '(:'
  12282. shift(34); // '('
  12283. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  12284. if (l1 == 31) // '$'
  12285. {
  12286. whitespace();
  12287. parse_ParamList();
  12288. }
  12289. shift(37); // ')'
  12290. lookahead1W(111); // S^WS | '(:' | 'as' | '{'
  12291. if (l1 == 79) // 'as'
  12292. {
  12293. shift(79); // 'as'
  12294. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  12295. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  12296. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12297. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12298. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12299. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12300. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12301. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12302. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12303. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12304. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12305. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  12306. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  12307. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  12308. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12309. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12310. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12311. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12312. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  12313. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  12314. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  12315. // 'with' | 'xquery'
  12316. whitespace();
  12317. parse_SequenceType();
  12318. }
  12319. lookahead1W(87); // S^WS | '(:' | '{'
  12320. whitespace();
  12321. parse_FunctionBody();
  12322. eventHandler.endNonterminal("InlineFunctionExpr", e0);
  12323. }
  12324. function try_InlineFunctionExpr()
  12325. {
  12326. for (;;)
  12327. {
  12328. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  12329. if (l1 != 32) // '%'
  12330. {
  12331. break;
  12332. }
  12333. try_Annotation();
  12334. }
  12335. shiftT(145); // 'function'
  12336. lookahead1W(22); // S^WS | '(' | '(:'
  12337. shiftT(34); // '('
  12338. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  12339. if (l1 == 31) // '$'
  12340. {
  12341. try_ParamList();
  12342. }
  12343. shiftT(37); // ')'
  12344. lookahead1W(111); // S^WS | '(:' | 'as' | '{'
  12345. if (l1 == 79) // 'as'
  12346. {
  12347. shiftT(79); // 'as'
  12348. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  12349. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  12350. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12351. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12352. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12353. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12354. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12355. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12356. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12357. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12358. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12359. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  12360. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  12361. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  12362. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12363. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12364. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12365. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12366. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  12367. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  12368. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  12369. // 'with' | 'xquery'
  12370. try_SequenceType();
  12371. }
  12372. lookahead1W(87); // S^WS | '(:' | '{'
  12373. try_FunctionBody();
  12374. }
  12375. function parse_SingleType()
  12376. {
  12377. eventHandler.startNonterminal("SingleType", e0);
  12378. parse_SimpleTypeName();
  12379. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  12380. // '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' | 'and' | 'as' |
  12381. // 'ascending' | 'at' | 'before' | 'case' | 'castable' | 'collation' | 'contains' |
  12382. // 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' |
  12383. // 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' |
  12384. // 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' |
  12385. // 'order' | 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' |
  12386. // 'start' | 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' |
  12387. // '||' | '|}' | '}'
  12388. if (l1 == 64) // '?'
  12389. {
  12390. shift(64); // '?'
  12391. }
  12392. eventHandler.endNonterminal("SingleType", e0);
  12393. }
  12394. function try_SingleType()
  12395. {
  12396. try_SimpleTypeName();
  12397. lookahead1W(226); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '+' | ',' | '-' | ':' | ';' | '<' | '<<' |
  12398. // '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' | 'and' | 'as' |
  12399. // 'ascending' | 'at' | 'before' | 'case' | 'castable' | 'collation' | 'contains' |
  12400. // 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' | 'end' | 'eq' |
  12401. // 'except' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' | 'instance' | 'intersect' |
  12402. // 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'only' | 'or' |
  12403. // 'order' | 'paragraphs' | 'return' | 'satisfies' | 'sentences' | 'stable' |
  12404. // 'start' | 'times' | 'to' | 'treat' | 'union' | 'where' | 'with' | 'words' | '|' |
  12405. // '||' | '|}' | '}'
  12406. if (l1 == 64) // '?'
  12407. {
  12408. shiftT(64); // '?'
  12409. }
  12410. }
  12411. function parse_TypeDeclaration()
  12412. {
  12413. eventHandler.startNonterminal("TypeDeclaration", e0);
  12414. shift(79); // 'as'
  12415. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  12416. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  12417. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12418. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12419. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12420. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12421. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12422. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12423. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12424. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12425. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12426. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  12427. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  12428. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  12429. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12430. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12431. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12432. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12433. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  12434. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  12435. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  12436. // 'with' | 'xquery'
  12437. whitespace();
  12438. parse_SequenceType();
  12439. eventHandler.endNonterminal("TypeDeclaration", e0);
  12440. }
  12441. function try_TypeDeclaration()
  12442. {
  12443. shiftT(79); // 'as'
  12444. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  12445. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  12446. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  12447. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  12448. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  12449. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  12450. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  12451. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  12452. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  12453. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  12454. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  12455. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  12456. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  12457. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  12458. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  12459. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  12460. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  12461. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  12462. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  12463. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  12464. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  12465. // 'with' | 'xquery'
  12466. try_SequenceType();
  12467. }
  12468. function parse_SequenceType()
  12469. {
  12470. eventHandler.startNonterminal("SequenceType", e0);
  12471. switch (l1)
  12472. {
  12473. case 124: // 'empty-sequence'
  12474. lookahead2W(241); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  12475. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' |
  12476. // 'allowing' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' |
  12477. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  12478. // 'empty' | 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' |
  12479. // 'idiv' | 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  12480. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12481. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12482. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12483. break;
  12484. default:
  12485. lk = l1;
  12486. }
  12487. switch (lk)
  12488. {
  12489. case 17532: // 'empty-sequence' '('
  12490. shift(124); // 'empty-sequence'
  12491. lookahead1W(22); // S^WS | '(' | '(:'
  12492. shift(34); // '('
  12493. lookahead1W(23); // S^WS | '(:' | ')'
  12494. shift(37); // ')'
  12495. break;
  12496. default:
  12497. parse_ItemType();
  12498. lookahead1W(237); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  12499. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' | 'allowing' |
  12500. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'collation' |
  12501. // 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' |
  12502. // 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  12503. // 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  12504. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12505. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12506. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12507. switch (l1)
  12508. {
  12509. case 39: // '*'
  12510. case 40: // '+'
  12511. case 64: // '?'
  12512. whitespace();
  12513. parse_OccurrenceIndicator();
  12514. break;
  12515. default:
  12516. break;
  12517. }
  12518. }
  12519. eventHandler.endNonterminal("SequenceType", e0);
  12520. }
  12521. function try_SequenceType()
  12522. {
  12523. switch (l1)
  12524. {
  12525. case 124: // 'empty-sequence'
  12526. lookahead2W(241); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  12527. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' |
  12528. // 'allowing' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' |
  12529. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  12530. // 'empty' | 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' |
  12531. // 'idiv' | 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  12532. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12533. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12534. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12535. break;
  12536. default:
  12537. lk = l1;
  12538. }
  12539. switch (lk)
  12540. {
  12541. case 17532: // 'empty-sequence' '('
  12542. shiftT(124); // 'empty-sequence'
  12543. lookahead1W(22); // S^WS | '(' | '(:'
  12544. shiftT(34); // '('
  12545. lookahead1W(23); // S^WS | '(:' | ')'
  12546. shiftT(37); // ')'
  12547. break;
  12548. default:
  12549. try_ItemType();
  12550. lookahead1W(237); // S^WS | EOF | '!=' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' | ';' |
  12551. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' | 'allowing' |
  12552. // 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'collation' |
  12553. // 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' | 'empty' |
  12554. // 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' | 'idiv' |
  12555. // 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'mod' |
  12556. // 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12557. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12558. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12559. switch (l1)
  12560. {
  12561. case 39: // '*'
  12562. case 40: // '+'
  12563. case 64: // '?'
  12564. try_OccurrenceIndicator();
  12565. break;
  12566. default:
  12567. break;
  12568. }
  12569. }
  12570. }
  12571. function parse_OccurrenceIndicator()
  12572. {
  12573. eventHandler.startNonterminal("OccurrenceIndicator", e0);
  12574. switch (l1)
  12575. {
  12576. case 64: // '?'
  12577. shift(64); // '?'
  12578. break;
  12579. case 39: // '*'
  12580. shift(39); // '*'
  12581. break;
  12582. default:
  12583. shift(40); // '+'
  12584. }
  12585. eventHandler.endNonterminal("OccurrenceIndicator", e0);
  12586. }
  12587. function try_OccurrenceIndicator()
  12588. {
  12589. switch (l1)
  12590. {
  12591. case 64: // '?'
  12592. shiftT(64); // '?'
  12593. break;
  12594. case 39: // '*'
  12595. shiftT(39); // '*'
  12596. break;
  12597. default:
  12598. shiftT(40); // '+'
  12599. }
  12600. }
  12601. function parse_ItemType()
  12602. {
  12603. eventHandler.startNonterminal("ItemType", e0);
  12604. switch (l1)
  12605. {
  12606. case 78: // 'array'
  12607. case 82: // 'attribute'
  12608. case 96: // 'comment'
  12609. case 120: // 'document-node'
  12610. case 121: // 'element'
  12611. case 145: // 'function'
  12612. case 165: // 'item'
  12613. case 167: // 'json-item'
  12614. case 185: // 'namespace-node'
  12615. case 191: // 'node'
  12616. case 194: // 'object'
  12617. case 216: // 'processing-instruction'
  12618. case 226: // 'schema-attribute'
  12619. case 227: // 'schema-element'
  12620. case 244: // 'text'
  12621. lookahead2W(241); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  12622. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' |
  12623. // 'allowing' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' |
  12624. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  12625. // 'empty' | 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' |
  12626. // 'idiv' | 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  12627. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12628. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12629. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12630. break;
  12631. default:
  12632. lk = l1;
  12633. }
  12634. if (lk == 17486 // 'array' '('
  12635. || lk == 17575 // 'json-item' '('
  12636. || lk == 17602) // 'object' '('
  12637. {
  12638. lk = memoized(4, e0);
  12639. if (lk == 0)
  12640. {
  12641. var b0A = b0; var e0A = e0; var l1A = l1;
  12642. var b1A = b1; var e1A = e1; var l2A = l2;
  12643. var b2A = b2; var e2A = e2;
  12644. try
  12645. {
  12646. try_KindTest();
  12647. lk = -1;
  12648. }
  12649. catch (p1A)
  12650. {
  12651. lk = -6;
  12652. }
  12653. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  12654. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  12655. b2 = b2A; e2 = e2A; end = e2A; }}
  12656. memoize(4, e0, lk);
  12657. }
  12658. }
  12659. switch (lk)
  12660. {
  12661. case -1:
  12662. case 17490: // 'attribute' '('
  12663. case 17504: // 'comment' '('
  12664. case 17528: // 'document-node' '('
  12665. case 17529: // 'element' '('
  12666. case 17593: // 'namespace-node' '('
  12667. case 17599: // 'node' '('
  12668. case 17624: // 'processing-instruction' '('
  12669. case 17634: // 'schema-attribute' '('
  12670. case 17635: // 'schema-element' '('
  12671. case 17652: // 'text' '('
  12672. parse_KindTest();
  12673. break;
  12674. case 17573: // 'item' '('
  12675. shift(165); // 'item'
  12676. lookahead1W(22); // S^WS | '(' | '(:'
  12677. shift(34); // '('
  12678. lookahead1W(23); // S^WS | '(:' | ')'
  12679. shift(37); // ')'
  12680. break;
  12681. case 32: // '%'
  12682. case 17553: // 'function' '('
  12683. parse_FunctionTest();
  12684. break;
  12685. case 34: // '('
  12686. parse_ParenthesizedItemType();
  12687. break;
  12688. case -6:
  12689. parse_JSONTest();
  12690. break;
  12691. case 242: // 'structured-item'
  12692. parse_StructuredItemTest();
  12693. break;
  12694. default:
  12695. parse_AtomicOrUnionType();
  12696. }
  12697. eventHandler.endNonterminal("ItemType", e0);
  12698. }
  12699. function try_ItemType()
  12700. {
  12701. switch (l1)
  12702. {
  12703. case 78: // 'array'
  12704. case 82: // 'attribute'
  12705. case 96: // 'comment'
  12706. case 120: // 'document-node'
  12707. case 121: // 'element'
  12708. case 145: // 'function'
  12709. case 165: // 'item'
  12710. case 167: // 'json-item'
  12711. case 185: // 'namespace-node'
  12712. case 191: // 'node'
  12713. case 194: // 'object'
  12714. case 216: // 'processing-instruction'
  12715. case 226: // 'schema-attribute'
  12716. case 227: // 'schema-element'
  12717. case 244: // 'text'
  12718. lookahead2W(241); // S^WS | EOF | '!=' | '(' | '(:' | ')' | '*' | '*' | '+' | ',' | '-' | ':' | ':=' |
  12719. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '?' | ']' | 'after' |
  12720. // 'allowing' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' |
  12721. // 'collation' | 'contains' | 'count' | 'default' | 'descending' | 'div' | 'else' |
  12722. // 'empty' | 'end' | 'eq' | 'except' | 'external' | 'for' | 'ge' | 'group' | 'gt' |
  12723. // 'idiv' | 'in' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  12724. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'paragraphs' | 'return' |
  12725. // 'satisfies' | 'score' | 'sentences' | 'stable' | 'start' | 'times' | 'to' |
  12726. // 'union' | 'where' | 'with' | 'words' | '{' | '|' | '||' | '|}' | '}'
  12727. break;
  12728. default:
  12729. lk = l1;
  12730. }
  12731. if (lk == 17486 // 'array' '('
  12732. || lk == 17575 // 'json-item' '('
  12733. || lk == 17602) // 'object' '('
  12734. {
  12735. lk = memoized(4, e0);
  12736. if (lk == 0)
  12737. {
  12738. var b0A = b0; var e0A = e0; var l1A = l1;
  12739. var b1A = b1; var e1A = e1; var l2A = l2;
  12740. var b2A = b2; var e2A = e2;
  12741. try
  12742. {
  12743. try_KindTest();
  12744. memoize(4, e0A, -1);
  12745. lk = -8;
  12746. }
  12747. catch (p1A)
  12748. {
  12749. lk = -6;
  12750. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  12751. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  12752. b2 = b2A; e2 = e2A; end = e2A; }}
  12753. memoize(4, e0A, -6);
  12754. }
  12755. }
  12756. }
  12757. switch (lk)
  12758. {
  12759. case -1:
  12760. case 17490: // 'attribute' '('
  12761. case 17504: // 'comment' '('
  12762. case 17528: // 'document-node' '('
  12763. case 17529: // 'element' '('
  12764. case 17593: // 'namespace-node' '('
  12765. case 17599: // 'node' '('
  12766. case 17624: // 'processing-instruction' '('
  12767. case 17634: // 'schema-attribute' '('
  12768. case 17635: // 'schema-element' '('
  12769. case 17652: // 'text' '('
  12770. try_KindTest();
  12771. break;
  12772. case 17573: // 'item' '('
  12773. shiftT(165); // 'item'
  12774. lookahead1W(22); // S^WS | '(' | '(:'
  12775. shiftT(34); // '('
  12776. lookahead1W(23); // S^WS | '(:' | ')'
  12777. shiftT(37); // ')'
  12778. break;
  12779. case 32: // '%'
  12780. case 17553: // 'function' '('
  12781. try_FunctionTest();
  12782. break;
  12783. case 34: // '('
  12784. try_ParenthesizedItemType();
  12785. break;
  12786. case -6:
  12787. try_JSONTest();
  12788. break;
  12789. case 242: // 'structured-item'
  12790. try_StructuredItemTest();
  12791. break;
  12792. case -8:
  12793. break;
  12794. default:
  12795. try_AtomicOrUnionType();
  12796. }
  12797. }
  12798. function parse_JSONTest()
  12799. {
  12800. eventHandler.startNonterminal("JSONTest", e0);
  12801. switch (l1)
  12802. {
  12803. case 167: // 'json-item'
  12804. parse_JSONItemTest();
  12805. break;
  12806. case 194: // 'object'
  12807. parse_JSONObjectTest();
  12808. break;
  12809. default:
  12810. parse_JSONArrayTest();
  12811. }
  12812. eventHandler.endNonterminal("JSONTest", e0);
  12813. }
  12814. function try_JSONTest()
  12815. {
  12816. switch (l1)
  12817. {
  12818. case 167: // 'json-item'
  12819. try_JSONItemTest();
  12820. break;
  12821. case 194: // 'object'
  12822. try_JSONObjectTest();
  12823. break;
  12824. default:
  12825. try_JSONArrayTest();
  12826. }
  12827. }
  12828. function parse_StructuredItemTest()
  12829. {
  12830. eventHandler.startNonterminal("StructuredItemTest", e0);
  12831. shift(242); // 'structured-item'
  12832. lookahead1W(22); // S^WS | '(' | '(:'
  12833. shift(34); // '('
  12834. lookahead1W(23); // S^WS | '(:' | ')'
  12835. shift(37); // ')'
  12836. eventHandler.endNonterminal("StructuredItemTest", e0);
  12837. }
  12838. function try_StructuredItemTest()
  12839. {
  12840. shiftT(242); // 'structured-item'
  12841. lookahead1W(22); // S^WS | '(' | '(:'
  12842. shiftT(34); // '('
  12843. lookahead1W(23); // S^WS | '(:' | ')'
  12844. shiftT(37); // ')'
  12845. }
  12846. function parse_JSONItemTest()
  12847. {
  12848. eventHandler.startNonterminal("JSONItemTest", e0);
  12849. shift(167); // 'json-item'
  12850. lookahead1W(22); // S^WS | '(' | '(:'
  12851. shift(34); // '('
  12852. lookahead1W(23); // S^WS | '(:' | ')'
  12853. shift(37); // ')'
  12854. eventHandler.endNonterminal("JSONItemTest", e0);
  12855. }
  12856. function try_JSONItemTest()
  12857. {
  12858. shiftT(167); // 'json-item'
  12859. lookahead1W(22); // S^WS | '(' | '(:'
  12860. shiftT(34); // '('
  12861. lookahead1W(23); // S^WS | '(:' | ')'
  12862. shiftT(37); // ')'
  12863. }
  12864. function parse_JSONObjectTest()
  12865. {
  12866. eventHandler.startNonterminal("JSONObjectTest", e0);
  12867. shift(194); // 'object'
  12868. lookahead1W(22); // S^WS | '(' | '(:'
  12869. shift(34); // '('
  12870. lookahead1W(23); // S^WS | '(:' | ')'
  12871. shift(37); // ')'
  12872. eventHandler.endNonterminal("JSONObjectTest", e0);
  12873. }
  12874. function try_JSONObjectTest()
  12875. {
  12876. shiftT(194); // 'object'
  12877. lookahead1W(22); // S^WS | '(' | '(:'
  12878. shiftT(34); // '('
  12879. lookahead1W(23); // S^WS | '(:' | ')'
  12880. shiftT(37); // ')'
  12881. }
  12882. function parse_JSONArrayTest()
  12883. {
  12884. eventHandler.startNonterminal("JSONArrayTest", e0);
  12885. shift(78); // 'array'
  12886. lookahead1W(22); // S^WS | '(' | '(:'
  12887. shift(34); // '('
  12888. lookahead1W(23); // S^WS | '(:' | ')'
  12889. shift(37); // ')'
  12890. eventHandler.endNonterminal("JSONArrayTest", e0);
  12891. }
  12892. function try_JSONArrayTest()
  12893. {
  12894. shiftT(78); // 'array'
  12895. lookahead1W(22); // S^WS | '(' | '(:'
  12896. shiftT(34); // '('
  12897. lookahead1W(23); // S^WS | '(:' | ')'
  12898. shiftT(37); // ')'
  12899. }
  12900. function parse_AtomicOrUnionType()
  12901. {
  12902. eventHandler.startNonterminal("AtomicOrUnionType", e0);
  12903. parse_EQName();
  12904. eventHandler.endNonterminal("AtomicOrUnionType", e0);
  12905. }
  12906. function try_AtomicOrUnionType()
  12907. {
  12908. try_EQName();
  12909. }
  12910. function parse_KindTest()
  12911. {
  12912. eventHandler.startNonterminal("KindTest", e0);
  12913. switch (l1)
  12914. {
  12915. case 120: // 'document-node'
  12916. parse_DocumentTest();
  12917. break;
  12918. case 121: // 'element'
  12919. parse_ElementTest();
  12920. break;
  12921. case 82: // 'attribute'
  12922. parse_AttributeTest();
  12923. break;
  12924. case 227: // 'schema-element'
  12925. parse_SchemaElementTest();
  12926. break;
  12927. case 226: // 'schema-attribute'
  12928. parse_SchemaAttributeTest();
  12929. break;
  12930. case 216: // 'processing-instruction'
  12931. parse_PITest();
  12932. break;
  12933. case 96: // 'comment'
  12934. parse_CommentTest();
  12935. break;
  12936. case 244: // 'text'
  12937. parse_TextTest();
  12938. break;
  12939. case 185: // 'namespace-node'
  12940. parse_NamespaceNodeTest();
  12941. break;
  12942. case 191: // 'node'
  12943. parse_AnyKindTest();
  12944. break;
  12945. default:
  12946. parse_JSONTest();
  12947. }
  12948. eventHandler.endNonterminal("KindTest", e0);
  12949. }
  12950. function try_KindTest()
  12951. {
  12952. switch (l1)
  12953. {
  12954. case 120: // 'document-node'
  12955. try_DocumentTest();
  12956. break;
  12957. case 121: // 'element'
  12958. try_ElementTest();
  12959. break;
  12960. case 82: // 'attribute'
  12961. try_AttributeTest();
  12962. break;
  12963. case 227: // 'schema-element'
  12964. try_SchemaElementTest();
  12965. break;
  12966. case 226: // 'schema-attribute'
  12967. try_SchemaAttributeTest();
  12968. break;
  12969. case 216: // 'processing-instruction'
  12970. try_PITest();
  12971. break;
  12972. case 96: // 'comment'
  12973. try_CommentTest();
  12974. break;
  12975. case 244: // 'text'
  12976. try_TextTest();
  12977. break;
  12978. case 185: // 'namespace-node'
  12979. try_NamespaceNodeTest();
  12980. break;
  12981. case 191: // 'node'
  12982. try_AnyKindTest();
  12983. break;
  12984. default:
  12985. try_JSONTest();
  12986. }
  12987. }
  12988. function parse_AnyKindTest()
  12989. {
  12990. eventHandler.startNonterminal("AnyKindTest", e0);
  12991. shift(191); // 'node'
  12992. lookahead1W(22); // S^WS | '(' | '(:'
  12993. shift(34); // '('
  12994. lookahead1W(23); // S^WS | '(:' | ')'
  12995. shift(37); // ')'
  12996. eventHandler.endNonterminal("AnyKindTest", e0);
  12997. }
  12998. function try_AnyKindTest()
  12999. {
  13000. shiftT(191); // 'node'
  13001. lookahead1W(22); // S^WS | '(' | '(:'
  13002. shiftT(34); // '('
  13003. lookahead1W(23); // S^WS | '(:' | ')'
  13004. shiftT(37); // ')'
  13005. }
  13006. function parse_DocumentTest()
  13007. {
  13008. eventHandler.startNonterminal("DocumentTest", e0);
  13009. shift(120); // 'document-node'
  13010. lookahead1W(22); // S^WS | '(' | '(:'
  13011. shift(34); // '('
  13012. lookahead1W(144); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  13013. if (l1 != 37) // ')'
  13014. {
  13015. switch (l1)
  13016. {
  13017. case 121: // 'element'
  13018. whitespace();
  13019. parse_ElementTest();
  13020. break;
  13021. default:
  13022. whitespace();
  13023. parse_SchemaElementTest();
  13024. }
  13025. }
  13026. lookahead1W(23); // S^WS | '(:' | ')'
  13027. shift(37); // ')'
  13028. eventHandler.endNonterminal("DocumentTest", e0);
  13029. }
  13030. function try_DocumentTest()
  13031. {
  13032. shiftT(120); // 'document-node'
  13033. lookahead1W(22); // S^WS | '(' | '(:'
  13034. shiftT(34); // '('
  13035. lookahead1W(144); // S^WS | '(:' | ')' | 'element' | 'schema-element'
  13036. if (l1 != 37) // ')'
  13037. {
  13038. switch (l1)
  13039. {
  13040. case 121: // 'element'
  13041. try_ElementTest();
  13042. break;
  13043. default:
  13044. try_SchemaElementTest();
  13045. }
  13046. }
  13047. lookahead1W(23); // S^WS | '(:' | ')'
  13048. shiftT(37); // ')'
  13049. }
  13050. function parse_TextTest()
  13051. {
  13052. eventHandler.startNonterminal("TextTest", e0);
  13053. shift(244); // 'text'
  13054. lookahead1W(22); // S^WS | '(' | '(:'
  13055. shift(34); // '('
  13056. lookahead1W(23); // S^WS | '(:' | ')'
  13057. shift(37); // ')'
  13058. eventHandler.endNonterminal("TextTest", e0);
  13059. }
  13060. function try_TextTest()
  13061. {
  13062. shiftT(244); // 'text'
  13063. lookahead1W(22); // S^WS | '(' | '(:'
  13064. shiftT(34); // '('
  13065. lookahead1W(23); // S^WS | '(:' | ')'
  13066. shiftT(37); // ')'
  13067. }
  13068. function parse_CommentTest()
  13069. {
  13070. eventHandler.startNonterminal("CommentTest", e0);
  13071. shift(96); // 'comment'
  13072. lookahead1W(22); // S^WS | '(' | '(:'
  13073. shift(34); // '('
  13074. lookahead1W(23); // S^WS | '(:' | ')'
  13075. shift(37); // ')'
  13076. eventHandler.endNonterminal("CommentTest", e0);
  13077. }
  13078. function try_CommentTest()
  13079. {
  13080. shiftT(96); // 'comment'
  13081. lookahead1W(22); // S^WS | '(' | '(:'
  13082. shiftT(34); // '('
  13083. lookahead1W(23); // S^WS | '(:' | ')'
  13084. shiftT(37); // ')'
  13085. }
  13086. function parse_NamespaceNodeTest()
  13087. {
  13088. eventHandler.startNonterminal("NamespaceNodeTest", e0);
  13089. shift(185); // 'namespace-node'
  13090. lookahead1W(22); // S^WS | '(' | '(:'
  13091. shift(34); // '('
  13092. lookahead1W(23); // S^WS | '(:' | ')'
  13093. shift(37); // ')'
  13094. eventHandler.endNonterminal("NamespaceNodeTest", e0);
  13095. }
  13096. function try_NamespaceNodeTest()
  13097. {
  13098. shiftT(185); // 'namespace-node'
  13099. lookahead1W(22); // S^WS | '(' | '(:'
  13100. shiftT(34); // '('
  13101. lookahead1W(23); // S^WS | '(:' | ')'
  13102. shiftT(37); // ')'
  13103. }
  13104. function parse_PITest()
  13105. {
  13106. eventHandler.startNonterminal("PITest", e0);
  13107. shift(216); // 'processing-instruction'
  13108. lookahead1W(22); // S^WS | '(' | '(:'
  13109. shift(34); // '('
  13110. lookahead1W(251); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  13111. // 'ancestor' | 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' |
  13112. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  13113. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  13114. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  13115. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  13116. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  13117. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  13118. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  13119. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  13120. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  13121. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'last' |
  13122. // 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  13123. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'only' | 'option' |
  13124. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13125. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13126. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13127. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13128. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13129. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13130. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13131. // 'xquery'
  13132. if (l1 != 37) // ')'
  13133. {
  13134. switch (l1)
  13135. {
  13136. case 11: // StringLiteral
  13137. shift(11); // StringLiteral
  13138. break;
  13139. default:
  13140. whitespace();
  13141. parse_NCName();
  13142. }
  13143. }
  13144. lookahead1W(23); // S^WS | '(:' | ')'
  13145. shift(37); // ')'
  13146. eventHandler.endNonterminal("PITest", e0);
  13147. }
  13148. function try_PITest()
  13149. {
  13150. shiftT(216); // 'processing-instruction'
  13151. lookahead1W(22); // S^WS | '(' | '(:'
  13152. shiftT(34); // '('
  13153. lookahead1W(251); // StringLiteral | NCName^Token | S^WS | '(:' | ')' | 'after' | 'allowing' |
  13154. // 'ancestor' | 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' |
  13155. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  13156. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  13157. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  13158. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  13159. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  13160. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  13161. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  13162. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  13163. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  13164. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'last' |
  13165. // 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  13166. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'only' | 'option' |
  13167. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13168. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13169. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13170. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13171. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13172. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13173. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13174. // 'xquery'
  13175. if (l1 != 37) // ')'
  13176. {
  13177. switch (l1)
  13178. {
  13179. case 11: // StringLiteral
  13180. shiftT(11); // StringLiteral
  13181. break;
  13182. default:
  13183. try_NCName();
  13184. }
  13185. }
  13186. lookahead1W(23); // S^WS | '(:' | ')'
  13187. shiftT(37); // ')'
  13188. }
  13189. function parse_AttributeTest()
  13190. {
  13191. eventHandler.startNonterminal("AttributeTest", e0);
  13192. shift(82); // 'attribute'
  13193. lookahead1W(22); // S^WS | '(' | '(:'
  13194. shift(34); // '('
  13195. lookahead1W(258); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  13196. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13197. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13198. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13199. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13200. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13201. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13202. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13203. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13204. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13205. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13206. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13207. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13208. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13209. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13210. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13211. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13212. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13213. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13214. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13215. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13216. // 'xquery'
  13217. if (l1 != 37) // ')'
  13218. {
  13219. whitespace();
  13220. parse_AttribNameOrWildcard();
  13221. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13222. if (l1 == 41) // ','
  13223. {
  13224. shift(41); // ','
  13225. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13226. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13227. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13228. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13229. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13230. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13231. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13232. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13233. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13234. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13235. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13236. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13237. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13238. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13239. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13240. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13241. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13242. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13243. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13244. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13245. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13246. // 'xquery'
  13247. whitespace();
  13248. parse_TypeName();
  13249. }
  13250. }
  13251. lookahead1W(23); // S^WS | '(:' | ')'
  13252. shift(37); // ')'
  13253. eventHandler.endNonterminal("AttributeTest", e0);
  13254. }
  13255. function try_AttributeTest()
  13256. {
  13257. shiftT(82); // 'attribute'
  13258. lookahead1W(22); // S^WS | '(' | '(:'
  13259. shiftT(34); // '('
  13260. lookahead1W(258); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  13261. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13262. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13263. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13264. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13265. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13266. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13267. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13268. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13269. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13270. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13271. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13272. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13273. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13274. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13275. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13276. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13277. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13278. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13279. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13280. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13281. // 'xquery'
  13282. if (l1 != 37) // ')'
  13283. {
  13284. try_AttribNameOrWildcard();
  13285. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13286. if (l1 == 41) // ','
  13287. {
  13288. shiftT(41); // ','
  13289. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13290. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13291. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13292. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13293. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13294. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13295. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13296. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13297. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13298. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13299. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13300. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13301. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13302. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13303. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13304. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13305. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13306. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13307. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13308. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13309. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13310. // 'xquery'
  13311. try_TypeName();
  13312. }
  13313. }
  13314. lookahead1W(23); // S^WS | '(:' | ')'
  13315. shiftT(37); // ')'
  13316. }
  13317. function parse_AttribNameOrWildcard()
  13318. {
  13319. eventHandler.startNonterminal("AttribNameOrWildcard", e0);
  13320. switch (l1)
  13321. {
  13322. case 38: // '*'
  13323. shift(38); // '*'
  13324. break;
  13325. default:
  13326. parse_AttributeName();
  13327. }
  13328. eventHandler.endNonterminal("AttribNameOrWildcard", e0);
  13329. }
  13330. function try_AttribNameOrWildcard()
  13331. {
  13332. switch (l1)
  13333. {
  13334. case 38: // '*'
  13335. shiftT(38); // '*'
  13336. break;
  13337. default:
  13338. try_AttributeName();
  13339. }
  13340. }
  13341. function parse_SchemaAttributeTest()
  13342. {
  13343. eventHandler.startNonterminal("SchemaAttributeTest", e0);
  13344. shift(226); // 'schema-attribute'
  13345. lookahead1W(22); // S^WS | '(' | '(:'
  13346. shift(34); // '('
  13347. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13348. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13349. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13350. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13351. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13352. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13353. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13354. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13355. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13356. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13357. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13358. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13359. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13360. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13361. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13362. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13363. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13364. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13365. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13366. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13367. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13368. // 'xquery'
  13369. whitespace();
  13370. parse_AttributeDeclaration();
  13371. lookahead1W(23); // S^WS | '(:' | ')'
  13372. shift(37); // ')'
  13373. eventHandler.endNonterminal("SchemaAttributeTest", e0);
  13374. }
  13375. function try_SchemaAttributeTest()
  13376. {
  13377. shiftT(226); // 'schema-attribute'
  13378. lookahead1W(22); // S^WS | '(' | '(:'
  13379. shiftT(34); // '('
  13380. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13381. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13382. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13383. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13384. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13385. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13386. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13387. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13388. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13389. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13390. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13391. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13392. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13393. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13394. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13395. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13396. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13397. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13398. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13399. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13400. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13401. // 'xquery'
  13402. try_AttributeDeclaration();
  13403. lookahead1W(23); // S^WS | '(:' | ')'
  13404. shiftT(37); // ')'
  13405. }
  13406. function parse_AttributeDeclaration()
  13407. {
  13408. eventHandler.startNonterminal("AttributeDeclaration", e0);
  13409. parse_AttributeName();
  13410. eventHandler.endNonterminal("AttributeDeclaration", e0);
  13411. }
  13412. function try_AttributeDeclaration()
  13413. {
  13414. try_AttributeName();
  13415. }
  13416. function parse_ElementTest()
  13417. {
  13418. eventHandler.startNonterminal("ElementTest", e0);
  13419. shift(121); // 'element'
  13420. lookahead1W(22); // S^WS | '(' | '(:'
  13421. shift(34); // '('
  13422. lookahead1W(258); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  13423. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13424. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13425. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13426. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13427. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13428. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13429. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13430. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13431. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13432. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13433. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13434. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13435. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13436. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13437. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13438. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13439. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13440. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13441. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13442. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13443. // 'xquery'
  13444. if (l1 != 37) // ')'
  13445. {
  13446. whitespace();
  13447. parse_ElementNameOrWildcard();
  13448. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13449. if (l1 == 41) // ','
  13450. {
  13451. shift(41); // ','
  13452. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13453. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13454. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13455. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13456. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13457. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13458. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13459. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13460. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13461. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13462. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13463. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13464. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13465. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13466. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13467. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13468. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13469. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13470. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13471. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13472. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13473. // 'xquery'
  13474. whitespace();
  13475. parse_TypeName();
  13476. lookahead1W(102); // S^WS | '(:' | ')' | '?'
  13477. if (l1 == 64) // '?'
  13478. {
  13479. shift(64); // '?'
  13480. }
  13481. }
  13482. }
  13483. lookahead1W(23); // S^WS | '(:' | ')'
  13484. shift(37); // ')'
  13485. eventHandler.endNonterminal("ElementTest", e0);
  13486. }
  13487. function try_ElementTest()
  13488. {
  13489. shiftT(121); // 'element'
  13490. lookahead1W(22); // S^WS | '(' | '(:'
  13491. shiftT(34); // '('
  13492. lookahead1W(258); // EQName^Token | S^WS | '(:' | ')' | '*' | 'after' | 'allowing' | 'ancestor' |
  13493. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13494. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13495. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13496. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13497. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13498. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13499. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13500. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13501. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13502. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13503. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13504. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13505. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13506. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13507. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13508. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13509. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13510. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13511. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13512. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13513. // 'xquery'
  13514. if (l1 != 37) // ')'
  13515. {
  13516. try_ElementNameOrWildcard();
  13517. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13518. if (l1 == 41) // ','
  13519. {
  13520. shiftT(41); // ','
  13521. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13522. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13523. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13524. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13525. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13526. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13527. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13528. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13529. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13530. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13531. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13532. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13533. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13534. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13535. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13536. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13537. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13538. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13539. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13540. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13541. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13542. // 'xquery'
  13543. try_TypeName();
  13544. lookahead1W(102); // S^WS | '(:' | ')' | '?'
  13545. if (l1 == 64) // '?'
  13546. {
  13547. shiftT(64); // '?'
  13548. }
  13549. }
  13550. }
  13551. lookahead1W(23); // S^WS | '(:' | ')'
  13552. shiftT(37); // ')'
  13553. }
  13554. function parse_ElementNameOrWildcard()
  13555. {
  13556. eventHandler.startNonterminal("ElementNameOrWildcard", e0);
  13557. switch (l1)
  13558. {
  13559. case 38: // '*'
  13560. shift(38); // '*'
  13561. break;
  13562. default:
  13563. parse_ElementName();
  13564. }
  13565. eventHandler.endNonterminal("ElementNameOrWildcard", e0);
  13566. }
  13567. function try_ElementNameOrWildcard()
  13568. {
  13569. switch (l1)
  13570. {
  13571. case 38: // '*'
  13572. shiftT(38); // '*'
  13573. break;
  13574. default:
  13575. try_ElementName();
  13576. }
  13577. }
  13578. function parse_SchemaElementTest()
  13579. {
  13580. eventHandler.startNonterminal("SchemaElementTest", e0);
  13581. shift(227); // 'schema-element'
  13582. lookahead1W(22); // S^WS | '(' | '(:'
  13583. shift(34); // '('
  13584. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13585. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13586. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13587. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13588. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13589. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13590. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13591. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13592. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13593. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13594. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13595. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13596. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13597. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13598. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13599. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13600. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13601. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13602. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13603. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13604. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13605. // 'xquery'
  13606. whitespace();
  13607. parse_ElementDeclaration();
  13608. lookahead1W(23); // S^WS | '(:' | ')'
  13609. shift(37); // ')'
  13610. eventHandler.endNonterminal("SchemaElementTest", e0);
  13611. }
  13612. function try_SchemaElementTest()
  13613. {
  13614. shiftT(227); // 'schema-element'
  13615. lookahead1W(22); // S^WS | '(' | '(:'
  13616. shiftT(34); // '('
  13617. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  13618. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13619. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13620. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13621. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13622. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13623. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13624. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13625. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13626. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13627. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13628. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13629. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13630. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13631. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13632. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13633. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13634. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13635. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  13636. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  13637. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  13638. // 'xquery'
  13639. try_ElementDeclaration();
  13640. lookahead1W(23); // S^WS | '(:' | ')'
  13641. shiftT(37); // ')'
  13642. }
  13643. function parse_ElementDeclaration()
  13644. {
  13645. eventHandler.startNonterminal("ElementDeclaration", e0);
  13646. parse_ElementName();
  13647. eventHandler.endNonterminal("ElementDeclaration", e0);
  13648. }
  13649. function try_ElementDeclaration()
  13650. {
  13651. try_ElementName();
  13652. }
  13653. function parse_AttributeName()
  13654. {
  13655. eventHandler.startNonterminal("AttributeName", e0);
  13656. parse_EQName();
  13657. eventHandler.endNonterminal("AttributeName", e0);
  13658. }
  13659. function try_AttributeName()
  13660. {
  13661. try_EQName();
  13662. }
  13663. function parse_ElementName()
  13664. {
  13665. eventHandler.startNonterminal("ElementName", e0);
  13666. parse_EQName();
  13667. eventHandler.endNonterminal("ElementName", e0);
  13668. }
  13669. function try_ElementName()
  13670. {
  13671. try_EQName();
  13672. }
  13673. function parse_SimpleTypeName()
  13674. {
  13675. eventHandler.startNonterminal("SimpleTypeName", e0);
  13676. parse_TypeName();
  13677. eventHandler.endNonterminal("SimpleTypeName", e0);
  13678. }
  13679. function try_SimpleTypeName()
  13680. {
  13681. try_TypeName();
  13682. }
  13683. function parse_TypeName()
  13684. {
  13685. eventHandler.startNonterminal("TypeName", e0);
  13686. parse_EQName();
  13687. eventHandler.endNonterminal("TypeName", e0);
  13688. }
  13689. function try_TypeName()
  13690. {
  13691. try_EQName();
  13692. }
  13693. function parse_FunctionTest()
  13694. {
  13695. eventHandler.startNonterminal("FunctionTest", e0);
  13696. for (;;)
  13697. {
  13698. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  13699. if (l1 != 32) // '%'
  13700. {
  13701. break;
  13702. }
  13703. whitespace();
  13704. parse_Annotation();
  13705. }
  13706. switch (l1)
  13707. {
  13708. case 145: // 'function'
  13709. lookahead2W(22); // S^WS | '(' | '(:'
  13710. break;
  13711. default:
  13712. lk = l1;
  13713. }
  13714. lk = memoized(5, e0);
  13715. if (lk == 0)
  13716. {
  13717. var b0A = b0; var e0A = e0; var l1A = l1;
  13718. var b1A = b1; var e1A = e1; var l2A = l2;
  13719. var b2A = b2; var e2A = e2;
  13720. try
  13721. {
  13722. try_AnyFunctionTest();
  13723. lk = -1;
  13724. }
  13725. catch (p1A)
  13726. {
  13727. lk = -2;
  13728. }
  13729. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  13730. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  13731. b2 = b2A; e2 = e2A; end = e2A; }}
  13732. memoize(5, e0, lk);
  13733. }
  13734. switch (lk)
  13735. {
  13736. case -1:
  13737. whitespace();
  13738. parse_AnyFunctionTest();
  13739. break;
  13740. default:
  13741. whitespace();
  13742. parse_TypedFunctionTest();
  13743. }
  13744. eventHandler.endNonterminal("FunctionTest", e0);
  13745. }
  13746. function try_FunctionTest()
  13747. {
  13748. for (;;)
  13749. {
  13750. lookahead1W(97); // S^WS | '%' | '(:' | 'function'
  13751. if (l1 != 32) // '%'
  13752. {
  13753. break;
  13754. }
  13755. try_Annotation();
  13756. }
  13757. switch (l1)
  13758. {
  13759. case 145: // 'function'
  13760. lookahead2W(22); // S^WS | '(' | '(:'
  13761. break;
  13762. default:
  13763. lk = l1;
  13764. }
  13765. lk = memoized(5, e0);
  13766. if (lk == 0)
  13767. {
  13768. var b0A = b0; var e0A = e0; var l1A = l1;
  13769. var b1A = b1; var e1A = e1; var l2A = l2;
  13770. var b2A = b2; var e2A = e2;
  13771. try
  13772. {
  13773. try_AnyFunctionTest();
  13774. memoize(5, e0A, -1);
  13775. lk = -3;
  13776. }
  13777. catch (p1A)
  13778. {
  13779. lk = -2;
  13780. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  13781. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  13782. b2 = b2A; e2 = e2A; end = e2A; }}
  13783. memoize(5, e0A, -2);
  13784. }
  13785. }
  13786. switch (lk)
  13787. {
  13788. case -1:
  13789. try_AnyFunctionTest();
  13790. break;
  13791. case -3:
  13792. break;
  13793. default:
  13794. try_TypedFunctionTest();
  13795. }
  13796. }
  13797. function parse_AnyFunctionTest()
  13798. {
  13799. eventHandler.startNonterminal("AnyFunctionTest", e0);
  13800. shift(145); // 'function'
  13801. lookahead1W(22); // S^WS | '(' | '(:'
  13802. shift(34); // '('
  13803. lookahead1W(24); // S^WS | '(:' | '*'
  13804. shift(38); // '*'
  13805. lookahead1W(23); // S^WS | '(:' | ')'
  13806. shift(37); // ')'
  13807. eventHandler.endNonterminal("AnyFunctionTest", e0);
  13808. }
  13809. function try_AnyFunctionTest()
  13810. {
  13811. shiftT(145); // 'function'
  13812. lookahead1W(22); // S^WS | '(' | '(:'
  13813. shiftT(34); // '('
  13814. lookahead1W(24); // S^WS | '(:' | '*'
  13815. shiftT(38); // '*'
  13816. lookahead1W(23); // S^WS | '(:' | ')'
  13817. shiftT(37); // ')'
  13818. }
  13819. function parse_TypedFunctionTest()
  13820. {
  13821. eventHandler.startNonterminal("TypedFunctionTest", e0);
  13822. shift(145); // 'function'
  13823. lookahead1W(22); // S^WS | '(' | '(:'
  13824. shift(34); // '('
  13825. lookahead1W(261); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  13826. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  13827. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  13828. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  13829. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  13830. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  13831. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  13832. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  13833. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  13834. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  13835. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  13836. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  13837. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  13838. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  13839. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13840. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13841. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13842. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13843. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13844. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  13845. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  13846. // 'with' | 'xquery'
  13847. if (l1 != 37) // ')'
  13848. {
  13849. whitespace();
  13850. parse_SequenceType();
  13851. for (;;)
  13852. {
  13853. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13854. if (l1 != 41) // ','
  13855. {
  13856. break;
  13857. }
  13858. shift(41); // ','
  13859. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  13860. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13861. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13862. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13863. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13864. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13865. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13866. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13867. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13868. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13869. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13870. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13871. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13872. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13873. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13874. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13875. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13876. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13877. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13878. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  13879. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  13880. // 'with' | 'xquery'
  13881. whitespace();
  13882. parse_SequenceType();
  13883. }
  13884. }
  13885. shift(37); // ')'
  13886. lookahead1W(30); // S^WS | '(:' | 'as'
  13887. shift(79); // 'as'
  13888. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  13889. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13890. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13891. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13892. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13893. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13894. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13895. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13896. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13897. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13898. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13899. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13900. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13901. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13902. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13903. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13904. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13905. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13906. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13907. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  13908. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  13909. // 'with' | 'xquery'
  13910. whitespace();
  13911. parse_SequenceType();
  13912. eventHandler.endNonterminal("TypedFunctionTest", e0);
  13913. }
  13914. function try_TypedFunctionTest()
  13915. {
  13916. shiftT(145); // 'function'
  13917. lookahead1W(22); // S^WS | '(' | '(:'
  13918. shiftT(34); // '('
  13919. lookahead1W(261); // EQName^Token | S^WS | '%' | '(' | '(:' | ')' | 'after' | 'allowing' |
  13920. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  13921. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  13922. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  13923. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  13924. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  13925. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  13926. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  13927. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  13928. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  13929. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  13930. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  13931. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  13932. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  13933. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13934. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13935. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13936. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13937. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13938. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  13939. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  13940. // 'with' | 'xquery'
  13941. if (l1 != 37) // ')'
  13942. {
  13943. try_SequenceType();
  13944. for (;;)
  13945. {
  13946. lookahead1W(101); // S^WS | '(:' | ')' | ','
  13947. if (l1 != 41) // ','
  13948. {
  13949. break;
  13950. }
  13951. shiftT(41); // ','
  13952. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  13953. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13954. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13955. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13956. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13957. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13958. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13959. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13960. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13961. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13962. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13963. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13964. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13965. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13966. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13967. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13968. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13969. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13970. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13971. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  13972. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  13973. // 'with' | 'xquery'
  13974. try_SequenceType();
  13975. }
  13976. }
  13977. shiftT(37); // ')'
  13978. lookahead1W(30); // S^WS | '(:' | 'as'
  13979. shiftT(79); // 'as'
  13980. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  13981. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  13982. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  13983. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  13984. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  13985. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  13986. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  13987. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  13988. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  13989. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  13990. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  13991. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  13992. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  13993. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  13994. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  13995. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  13996. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  13997. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  13998. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  13999. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  14000. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  14001. // 'with' | 'xquery'
  14002. try_SequenceType();
  14003. }
  14004. function parse_ParenthesizedItemType()
  14005. {
  14006. eventHandler.startNonterminal("ParenthesizedItemType", e0);
  14007. shift(34); // '('
  14008. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14009. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14010. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14011. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14012. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14013. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14014. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14015. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14016. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14017. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14018. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14019. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14020. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14021. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14022. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14023. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14024. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14025. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14026. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  14027. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  14028. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  14029. // 'with' | 'xquery'
  14030. whitespace();
  14031. parse_ItemType();
  14032. lookahead1W(23); // S^WS | '(:' | ')'
  14033. shift(37); // ')'
  14034. eventHandler.endNonterminal("ParenthesizedItemType", e0);
  14035. }
  14036. function try_ParenthesizedItemType()
  14037. {
  14038. shiftT(34); // '('
  14039. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  14040. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14041. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14042. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14043. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14044. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14045. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14046. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14047. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14048. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14049. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14050. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14051. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14052. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14053. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14054. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14055. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14056. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14057. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  14058. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  14059. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  14060. // 'with' | 'xquery'
  14061. try_ItemType();
  14062. lookahead1W(23); // S^WS | '(:' | ')'
  14063. shiftT(37); // ')'
  14064. }
  14065. function parse_RevalidationDecl()
  14066. {
  14067. eventHandler.startNonterminal("RevalidationDecl", e0);
  14068. shift(108); // 'declare'
  14069. lookahead1W(72); // S^WS | '(:' | 'revalidation'
  14070. shift(222); // 'revalidation'
  14071. lookahead1W(152); // S^WS | '(:' | 'lax' | 'skip' | 'strict'
  14072. switch (l1)
  14073. {
  14074. case 240: // 'strict'
  14075. shift(240); // 'strict'
  14076. break;
  14077. case 171: // 'lax'
  14078. shift(171); // 'lax'
  14079. break;
  14080. default:
  14081. shift(233); // 'skip'
  14082. }
  14083. eventHandler.endNonterminal("RevalidationDecl", e0);
  14084. }
  14085. function parse_InsertExprTargetChoice()
  14086. {
  14087. eventHandler.startNonterminal("InsertExprTargetChoice", e0);
  14088. switch (l1)
  14089. {
  14090. case 70: // 'after'
  14091. shift(70); // 'after'
  14092. break;
  14093. case 84: // 'before'
  14094. shift(84); // 'before'
  14095. break;
  14096. default:
  14097. if (l1 == 79) // 'as'
  14098. {
  14099. shift(79); // 'as'
  14100. lookahead1W(119); // S^WS | '(:' | 'first' | 'last'
  14101. switch (l1)
  14102. {
  14103. case 134: // 'first'
  14104. shift(134); // 'first'
  14105. break;
  14106. default:
  14107. shift(170); // 'last'
  14108. }
  14109. }
  14110. lookahead1W(54); // S^WS | '(:' | 'into'
  14111. shift(163); // 'into'
  14112. }
  14113. eventHandler.endNonterminal("InsertExprTargetChoice", e0);
  14114. }
  14115. function try_InsertExprTargetChoice()
  14116. {
  14117. switch (l1)
  14118. {
  14119. case 70: // 'after'
  14120. shiftT(70); // 'after'
  14121. break;
  14122. case 84: // 'before'
  14123. shiftT(84); // 'before'
  14124. break;
  14125. default:
  14126. if (l1 == 79) // 'as'
  14127. {
  14128. shiftT(79); // 'as'
  14129. lookahead1W(119); // S^WS | '(:' | 'first' | 'last'
  14130. switch (l1)
  14131. {
  14132. case 134: // 'first'
  14133. shiftT(134); // 'first'
  14134. break;
  14135. default:
  14136. shiftT(170); // 'last'
  14137. }
  14138. }
  14139. lookahead1W(54); // S^WS | '(:' | 'into'
  14140. shiftT(163); // 'into'
  14141. }
  14142. }
  14143. function parse_InsertExpr()
  14144. {
  14145. eventHandler.startNonterminal("InsertExpr", e0);
  14146. shift(159); // 'insert'
  14147. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  14148. switch (l1)
  14149. {
  14150. case 191: // 'node'
  14151. shift(191); // 'node'
  14152. break;
  14153. default:
  14154. shift(192); // 'nodes'
  14155. }
  14156. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14157. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14158. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14159. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14160. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14161. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14162. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14163. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14164. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14165. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14166. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14167. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14168. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14169. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14170. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14171. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14172. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14173. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14174. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14175. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14176. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14177. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14178. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14179. // 'xquery' | '{' | '{|'
  14180. whitespace();
  14181. parse_SourceExpr();
  14182. whitespace();
  14183. parse_InsertExprTargetChoice();
  14184. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14185. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14186. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14187. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14188. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14189. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14190. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14191. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14192. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14193. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14194. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14195. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14196. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14197. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14198. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14199. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14200. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14201. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14202. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14203. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14204. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14205. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14206. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14207. // 'xquery' | '{' | '{|'
  14208. whitespace();
  14209. parse_TargetExpr();
  14210. eventHandler.endNonterminal("InsertExpr", e0);
  14211. }
  14212. function try_InsertExpr()
  14213. {
  14214. shiftT(159); // 'insert'
  14215. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  14216. switch (l1)
  14217. {
  14218. case 191: // 'node'
  14219. shiftT(191); // 'node'
  14220. break;
  14221. default:
  14222. shiftT(192); // 'nodes'
  14223. }
  14224. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14225. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14226. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14227. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14228. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14229. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14230. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14231. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14232. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14233. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14234. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14235. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14236. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14237. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14238. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14239. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14240. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14241. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14242. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14243. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14244. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14245. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14246. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14247. // 'xquery' | '{' | '{|'
  14248. try_SourceExpr();
  14249. try_InsertExprTargetChoice();
  14250. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14251. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14252. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14253. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14254. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14255. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14256. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14257. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14258. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14259. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14260. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14261. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14262. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14263. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14264. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14265. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14266. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14267. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14268. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14269. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14270. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14271. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14272. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14273. // 'xquery' | '{' | '{|'
  14274. try_TargetExpr();
  14275. }
  14276. function parse_DeleteExpr()
  14277. {
  14278. eventHandler.startNonterminal("DeleteExpr", e0);
  14279. shift(110); // 'delete'
  14280. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  14281. switch (l1)
  14282. {
  14283. case 191: // 'node'
  14284. shift(191); // 'node'
  14285. break;
  14286. default:
  14287. shift(192); // 'nodes'
  14288. }
  14289. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14290. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14291. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14292. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14293. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14294. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14295. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14296. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14297. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14298. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14299. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14300. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14301. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14302. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14303. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14304. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14305. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14306. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14307. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14308. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14309. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14310. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14311. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14312. // 'xquery' | '{' | '{|'
  14313. whitespace();
  14314. parse_TargetExpr();
  14315. eventHandler.endNonterminal("DeleteExpr", e0);
  14316. }
  14317. function try_DeleteExpr()
  14318. {
  14319. shiftT(110); // 'delete'
  14320. lookahead1W(129); // S^WS | '(:' | 'node' | 'nodes'
  14321. switch (l1)
  14322. {
  14323. case 191: // 'node'
  14324. shiftT(191); // 'node'
  14325. break;
  14326. default:
  14327. shiftT(192); // 'nodes'
  14328. }
  14329. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14330. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14331. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14332. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14333. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14334. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14335. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14336. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14337. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14338. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14339. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14340. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14341. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14342. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14343. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14344. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14345. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14346. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14347. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14348. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14349. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14350. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14351. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14352. // 'xquery' | '{' | '{|'
  14353. try_TargetExpr();
  14354. }
  14355. function parse_ReplaceExpr()
  14356. {
  14357. eventHandler.startNonterminal("ReplaceExpr", e0);
  14358. shift(219); // 'replace'
  14359. lookahead1W(130); // S^WS | '(:' | 'node' | 'value'
  14360. if (l1 == 261) // 'value'
  14361. {
  14362. shift(261); // 'value'
  14363. lookahead1W(64); // S^WS | '(:' | 'of'
  14364. shift(196); // 'of'
  14365. }
  14366. lookahead1W(62); // S^WS | '(:' | 'node'
  14367. shift(191); // 'node'
  14368. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14369. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14370. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14371. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14372. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14373. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14374. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14375. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14376. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14377. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14378. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14379. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14380. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14381. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14382. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14383. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14384. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14385. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14386. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14387. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14388. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14389. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14390. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14391. // 'xquery' | '{' | '{|'
  14392. whitespace();
  14393. parse_TargetExpr();
  14394. shift(270); // 'with'
  14395. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14396. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14397. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14398. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14399. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14400. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14401. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14402. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14403. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14404. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14405. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14406. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14407. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14408. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14409. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14410. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14411. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14412. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14413. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14414. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14415. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14416. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14417. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14418. // 'xquery' | '{' | '{|'
  14419. whitespace();
  14420. parse_ExprSingle();
  14421. eventHandler.endNonterminal("ReplaceExpr", e0);
  14422. }
  14423. function try_ReplaceExpr()
  14424. {
  14425. shiftT(219); // 'replace'
  14426. lookahead1W(130); // S^WS | '(:' | 'node' | 'value'
  14427. if (l1 == 261) // 'value'
  14428. {
  14429. shiftT(261); // 'value'
  14430. lookahead1W(64); // S^WS | '(:' | 'of'
  14431. shiftT(196); // 'of'
  14432. }
  14433. lookahead1W(62); // S^WS | '(:' | 'node'
  14434. shiftT(191); // 'node'
  14435. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14436. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14437. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14438. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14439. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14440. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14441. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14442. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14443. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14444. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14445. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14446. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14447. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14448. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14449. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14450. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14451. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14452. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14453. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14454. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14455. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14456. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14457. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14458. // 'xquery' | '{' | '{|'
  14459. try_TargetExpr();
  14460. shiftT(270); // 'with'
  14461. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14462. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14463. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14464. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14465. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14466. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14467. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14468. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14469. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14470. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14471. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14472. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14473. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14474. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14475. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14476. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14477. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14478. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14479. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14480. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14481. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14482. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14483. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14484. // 'xquery' | '{' | '{|'
  14485. try_ExprSingle();
  14486. }
  14487. function parse_RenameExpr()
  14488. {
  14489. eventHandler.startNonterminal("RenameExpr", e0);
  14490. shift(218); // 'rename'
  14491. lookahead1W(62); // S^WS | '(:' | 'node'
  14492. shift(191); // 'node'
  14493. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14494. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14495. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14496. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14497. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14498. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14499. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14500. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14501. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14502. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14503. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14504. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14505. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14506. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14507. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14508. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14509. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14510. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14511. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14512. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14513. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14514. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14515. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14516. // 'xquery' | '{' | '{|'
  14517. whitespace();
  14518. parse_TargetExpr();
  14519. shift(79); // 'as'
  14520. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14521. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14522. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14523. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14524. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14525. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14526. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14527. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14528. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14529. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14530. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14531. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14532. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14533. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14534. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14535. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14536. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14537. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14538. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14539. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14540. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14541. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14542. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14543. // 'xquery' | '{' | '{|'
  14544. whitespace();
  14545. parse_NewNameExpr();
  14546. eventHandler.endNonterminal("RenameExpr", e0);
  14547. }
  14548. function try_RenameExpr()
  14549. {
  14550. shiftT(218); // 'rename'
  14551. lookahead1W(62); // S^WS | '(:' | 'node'
  14552. shiftT(191); // 'node'
  14553. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14554. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14555. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14556. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14557. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14558. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14559. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14560. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14561. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14562. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14563. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14564. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14565. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14566. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14567. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14568. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14569. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14570. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14571. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14572. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14573. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14574. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14575. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14576. // 'xquery' | '{' | '{|'
  14577. try_TargetExpr();
  14578. shiftT(79); // 'as'
  14579. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14580. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14581. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14582. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14583. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14584. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14585. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14586. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14587. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14588. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14589. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14590. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14591. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14592. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14593. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14594. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14595. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14596. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14597. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14598. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14599. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14600. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14601. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14602. // 'xquery' | '{' | '{|'
  14603. try_NewNameExpr();
  14604. }
  14605. function parse_SourceExpr()
  14606. {
  14607. eventHandler.startNonterminal("SourceExpr", e0);
  14608. parse_ExprSingle();
  14609. eventHandler.endNonterminal("SourceExpr", e0);
  14610. }
  14611. function try_SourceExpr()
  14612. {
  14613. try_ExprSingle();
  14614. }
  14615. function parse_TargetExpr()
  14616. {
  14617. eventHandler.startNonterminal("TargetExpr", e0);
  14618. parse_ExprSingle();
  14619. eventHandler.endNonterminal("TargetExpr", e0);
  14620. }
  14621. function try_TargetExpr()
  14622. {
  14623. try_ExprSingle();
  14624. }
  14625. function parse_NewNameExpr()
  14626. {
  14627. eventHandler.startNonterminal("NewNameExpr", e0);
  14628. parse_ExprSingle();
  14629. eventHandler.endNonterminal("NewNameExpr", e0);
  14630. }
  14631. function try_NewNameExpr()
  14632. {
  14633. try_ExprSingle();
  14634. }
  14635. function parse_TransformExpr()
  14636. {
  14637. eventHandler.startNonterminal("TransformExpr", e0);
  14638. shift(103); // 'copy'
  14639. lookahead1W(21); // S^WS | '$' | '(:'
  14640. shift(31); // '$'
  14641. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14642. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14643. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14644. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14645. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14646. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14647. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14648. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14649. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14650. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14651. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14652. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14653. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14654. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14655. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14656. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14657. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14658. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14659. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14660. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14661. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14662. // 'xquery'
  14663. whitespace();
  14664. parse_VarName();
  14665. lookahead1W(27); // S^WS | '(:' | ':='
  14666. shift(52); // ':='
  14667. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14668. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14669. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14670. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14671. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14672. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14673. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14674. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14675. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14676. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14677. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14678. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14679. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14680. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14681. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14682. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14683. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14684. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14685. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14686. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14687. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14688. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14689. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14690. // 'xquery' | '{' | '{|'
  14691. whitespace();
  14692. parse_ExprSingle();
  14693. for (;;)
  14694. {
  14695. if (l1 != 41) // ','
  14696. {
  14697. break;
  14698. }
  14699. shift(41); // ','
  14700. lookahead1W(21); // S^WS | '$' | '(:'
  14701. shift(31); // '$'
  14702. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14703. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14704. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14705. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14706. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14707. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14708. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14709. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14710. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14711. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14712. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14713. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14714. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14715. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14716. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14717. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14718. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14719. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14720. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14721. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14722. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14723. // 'xquery'
  14724. whitespace();
  14725. parse_VarName();
  14726. lookahead1W(27); // S^WS | '(:' | ':='
  14727. shift(52); // ':='
  14728. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14729. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14730. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14731. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14732. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14733. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14734. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14735. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14736. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14737. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14738. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14739. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14740. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14741. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14742. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14743. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14744. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14745. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14746. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14747. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14748. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14749. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14750. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14751. // 'xquery' | '{' | '{|'
  14752. whitespace();
  14753. parse_ExprSingle();
  14754. }
  14755. shift(181); // 'modify'
  14756. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14757. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14758. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14759. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14760. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14761. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14762. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14763. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14764. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14765. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14766. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14767. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14768. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14769. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14770. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14771. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14772. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14773. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14774. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14775. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14776. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14777. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14778. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14779. // 'xquery' | '{' | '{|'
  14780. whitespace();
  14781. parse_ExprSingle();
  14782. shift(220); // 'return'
  14783. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14784. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14785. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14786. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14787. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14788. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14789. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14790. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14791. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14792. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14793. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14794. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14795. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14796. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14797. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14798. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14799. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14800. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14801. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14802. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14803. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14804. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14805. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14806. // 'xquery' | '{' | '{|'
  14807. whitespace();
  14808. parse_ExprSingle();
  14809. eventHandler.endNonterminal("TransformExpr", e0);
  14810. }
  14811. function try_TransformExpr()
  14812. {
  14813. shiftT(103); // 'copy'
  14814. lookahead1W(21); // S^WS | '$' | '(:'
  14815. shiftT(31); // '$'
  14816. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14817. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14818. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14819. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14820. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14821. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14822. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14823. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14824. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14825. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14826. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14827. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14828. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14829. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14830. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14831. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14832. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14833. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14834. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14835. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14836. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14837. // 'xquery'
  14838. try_VarName();
  14839. lookahead1W(27); // S^WS | '(:' | ':='
  14840. shiftT(52); // ':='
  14841. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14842. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14843. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14844. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14845. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14846. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14847. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14848. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14849. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14850. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14851. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14852. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14853. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14854. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14855. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14856. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14857. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14858. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14859. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14860. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14861. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14862. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14863. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14864. // 'xquery' | '{' | '{|'
  14865. try_ExprSingle();
  14866. for (;;)
  14867. {
  14868. if (l1 != 41) // ','
  14869. {
  14870. break;
  14871. }
  14872. shiftT(41); // ','
  14873. lookahead1W(21); // S^WS | '$' | '(:'
  14874. shiftT(31); // '$'
  14875. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  14876. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  14877. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  14878. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  14879. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  14880. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  14881. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  14882. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  14883. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  14884. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  14885. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  14886. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  14887. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  14888. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  14889. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14890. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14891. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14892. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14893. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14894. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14895. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14896. // 'xquery'
  14897. try_VarName();
  14898. lookahead1W(27); // S^WS | '(:' | ':='
  14899. shiftT(52); // ':='
  14900. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14901. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14902. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14903. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14904. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14905. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14906. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14907. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14908. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14909. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14910. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14911. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14912. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14913. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14914. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14915. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14916. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14917. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14918. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14919. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14920. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14921. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14922. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14923. // 'xquery' | '{' | '{|'
  14924. try_ExprSingle();
  14925. }
  14926. shiftT(181); // 'modify'
  14927. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14928. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14929. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14930. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14931. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14932. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14933. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14934. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14935. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14936. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14937. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14938. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14939. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14940. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14941. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14942. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14943. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14944. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14945. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14946. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14947. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14948. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14949. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14950. // 'xquery' | '{' | '{|'
  14951. try_ExprSingle();
  14952. shiftT(220); // 'return'
  14953. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  14954. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  14955. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  14956. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  14957. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  14958. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  14959. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  14960. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  14961. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  14962. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  14963. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  14964. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  14965. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  14966. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  14967. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  14968. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  14969. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  14970. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  14971. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  14972. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  14973. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  14974. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  14975. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  14976. // 'xquery' | '{' | '{|'
  14977. try_ExprSingle();
  14978. }
  14979. function parse_FTSelection()
  14980. {
  14981. eventHandler.startNonterminal("FTSelection", e0);
  14982. parse_FTOr();
  14983. for (;;)
  14984. {
  14985. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  14986. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  14987. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  14988. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  14989. // 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' |
  14990. // 'only' | 'or' | 'order' | 'ordered' | 'return' | 'same' | 'satisfies' |
  14991. // 'stable' | 'start' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  14992. switch (l1)
  14993. {
  14994. case 81: // 'at'
  14995. lookahead2W(151); // S^WS | '(:' | 'end' | 'position' | 'start'
  14996. break;
  14997. default:
  14998. lk = l1;
  14999. }
  15000. if (lk != 115 // 'different'
  15001. && lk != 117 // 'distance'
  15002. && lk != 127 // 'entire'
  15003. && lk != 202 // 'ordered'
  15004. && lk != 223 // 'same'
  15005. && lk != 269 // 'window'
  15006. && lk != 64593 // 'at' 'end'
  15007. && lk != 121425) // 'at' 'start'
  15008. {
  15009. break;
  15010. }
  15011. whitespace();
  15012. parse_FTPosFilter();
  15013. }
  15014. eventHandler.endNonterminal("FTSelection", e0);
  15015. }
  15016. function try_FTSelection()
  15017. {
  15018. try_FTOr();
  15019. for (;;)
  15020. {
  15021. lookahead1W(211); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15022. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15023. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15024. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15025. // 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' |
  15026. // 'only' | 'or' | 'order' | 'ordered' | 'return' | 'same' | 'satisfies' |
  15027. // 'stable' | 'start' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  15028. switch (l1)
  15029. {
  15030. case 81: // 'at'
  15031. lookahead2W(151); // S^WS | '(:' | 'end' | 'position' | 'start'
  15032. break;
  15033. default:
  15034. lk = l1;
  15035. }
  15036. if (lk != 115 // 'different'
  15037. && lk != 117 // 'distance'
  15038. && lk != 127 // 'entire'
  15039. && lk != 202 // 'ordered'
  15040. && lk != 223 // 'same'
  15041. && lk != 269 // 'window'
  15042. && lk != 64593 // 'at' 'end'
  15043. && lk != 121425) // 'at' 'start'
  15044. {
  15045. break;
  15046. }
  15047. try_FTPosFilter();
  15048. }
  15049. }
  15050. function parse_FTWeight()
  15051. {
  15052. eventHandler.startNonterminal("FTWeight", e0);
  15053. shift(264); // 'weight'
  15054. lookahead1W(87); // S^WS | '(:' | '{'
  15055. shift(276); // '{'
  15056. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15057. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15058. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15059. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  15060. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  15061. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  15062. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15063. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15064. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15065. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15066. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15067. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15068. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15069. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15070. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15071. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15072. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15073. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15074. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15075. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15076. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15077. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15078. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15079. // 'xquery' | '{' | '{|'
  15080. whitespace();
  15081. parse_Expr();
  15082. shift(282); // '}'
  15083. eventHandler.endNonterminal("FTWeight", e0);
  15084. }
  15085. function try_FTWeight()
  15086. {
  15087. shiftT(264); // 'weight'
  15088. lookahead1W(87); // S^WS | '(:' | '{'
  15089. shiftT(276); // '{'
  15090. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15091. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15092. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15093. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  15094. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  15095. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  15096. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15097. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15098. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15099. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15100. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15101. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15102. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15103. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15104. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15105. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15106. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15107. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15108. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15109. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15110. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15111. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15112. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15113. // 'xquery' | '{' | '{|'
  15114. try_Expr();
  15115. shiftT(282); // '}'
  15116. }
  15117. function parse_FTOr()
  15118. {
  15119. eventHandler.startNonterminal("FTOr", e0);
  15120. parse_FTAnd();
  15121. for (;;)
  15122. {
  15123. if (l1 != 144) // 'ftor'
  15124. {
  15125. break;
  15126. }
  15127. shift(144); // 'ftor'
  15128. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15129. whitespace();
  15130. parse_FTAnd();
  15131. }
  15132. eventHandler.endNonterminal("FTOr", e0);
  15133. }
  15134. function try_FTOr()
  15135. {
  15136. try_FTAnd();
  15137. for (;;)
  15138. {
  15139. if (l1 != 144) // 'ftor'
  15140. {
  15141. break;
  15142. }
  15143. shiftT(144); // 'ftor'
  15144. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15145. try_FTAnd();
  15146. }
  15147. }
  15148. function parse_FTAnd()
  15149. {
  15150. eventHandler.startNonterminal("FTAnd", e0);
  15151. parse_FTMildNot();
  15152. for (;;)
  15153. {
  15154. if (l1 != 142) // 'ftand'
  15155. {
  15156. break;
  15157. }
  15158. shift(142); // 'ftand'
  15159. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15160. whitespace();
  15161. parse_FTMildNot();
  15162. }
  15163. eventHandler.endNonterminal("FTAnd", e0);
  15164. }
  15165. function try_FTAnd()
  15166. {
  15167. try_FTMildNot();
  15168. for (;;)
  15169. {
  15170. if (l1 != 142) // 'ftand'
  15171. {
  15172. break;
  15173. }
  15174. shiftT(142); // 'ftand'
  15175. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15176. try_FTMildNot();
  15177. }
  15178. }
  15179. function parse_FTMildNot()
  15180. {
  15181. eventHandler.startNonterminal("FTMildNot", e0);
  15182. parse_FTUnaryNot();
  15183. for (;;)
  15184. {
  15185. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15186. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15187. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15188. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15189. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15190. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  15191. // 'same' | 'satisfies' | 'stable' | 'start' | 'where' | 'window' | 'with' |
  15192. // 'without' | '|}' | '}'
  15193. if (l1 != 193) // 'not'
  15194. {
  15195. break;
  15196. }
  15197. shift(193); // 'not'
  15198. lookahead1W(53); // S^WS | '(:' | 'in'
  15199. shift(154); // 'in'
  15200. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15201. whitespace();
  15202. parse_FTUnaryNot();
  15203. }
  15204. eventHandler.endNonterminal("FTMildNot", e0);
  15205. }
  15206. function try_FTMildNot()
  15207. {
  15208. try_FTUnaryNot();
  15209. for (;;)
  15210. {
  15211. lookahead1W(212); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15212. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15213. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15214. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15215. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15216. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  15217. // 'same' | 'satisfies' | 'stable' | 'start' | 'where' | 'window' | 'with' |
  15218. // 'without' | '|}' | '}'
  15219. if (l1 != 193) // 'not'
  15220. {
  15221. break;
  15222. }
  15223. shiftT(193); // 'not'
  15224. lookahead1W(53); // S^WS | '(:' | 'in'
  15225. shiftT(154); // 'in'
  15226. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15227. try_FTUnaryNot();
  15228. }
  15229. }
  15230. function parse_FTUnaryNot()
  15231. {
  15232. eventHandler.startNonterminal("FTUnaryNot", e0);
  15233. if (l1 == 143) // 'ftnot'
  15234. {
  15235. shift(143); // 'ftnot'
  15236. }
  15237. lookahead1W(155); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  15238. whitespace();
  15239. parse_FTPrimaryWithOptions();
  15240. eventHandler.endNonterminal("FTUnaryNot", e0);
  15241. }
  15242. function try_FTUnaryNot()
  15243. {
  15244. if (l1 == 143) // 'ftnot'
  15245. {
  15246. shiftT(143); // 'ftnot'
  15247. }
  15248. lookahead1W(155); // StringLiteral | S^WS | '(' | '(#' | '(:' | '{'
  15249. try_FTPrimaryWithOptions();
  15250. }
  15251. function parse_FTPrimaryWithOptions()
  15252. {
  15253. eventHandler.startNonterminal("FTPrimaryWithOptions", e0);
  15254. parse_FTPrimary();
  15255. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15256. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15257. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15258. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15259. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15260. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  15261. // 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' | 'where' |
  15262. // 'window' | 'with' | 'without' | '|}' | '}'
  15263. if (l1 == 259) // 'using'
  15264. {
  15265. whitespace();
  15266. parse_FTMatchOptions();
  15267. }
  15268. if (l1 == 264) // 'weight'
  15269. {
  15270. whitespace();
  15271. parse_FTWeight();
  15272. }
  15273. eventHandler.endNonterminal("FTPrimaryWithOptions", e0);
  15274. }
  15275. function try_FTPrimaryWithOptions()
  15276. {
  15277. try_FTPrimary();
  15278. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15279. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15280. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15281. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15282. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15283. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  15284. // 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' | 'where' |
  15285. // 'window' | 'with' | 'without' | '|}' | '}'
  15286. if (l1 == 259) // 'using'
  15287. {
  15288. try_FTMatchOptions();
  15289. }
  15290. if (l1 == 264) // 'weight'
  15291. {
  15292. try_FTWeight();
  15293. }
  15294. }
  15295. function parse_FTPrimary()
  15296. {
  15297. eventHandler.startNonterminal("FTPrimary", e0);
  15298. switch (l1)
  15299. {
  15300. case 34: // '('
  15301. shift(34); // '('
  15302. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15303. whitespace();
  15304. parse_FTSelection();
  15305. shift(37); // ')'
  15306. break;
  15307. case 35: // '(#'
  15308. parse_FTExtensionSelection();
  15309. break;
  15310. default:
  15311. parse_FTWords();
  15312. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15313. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15314. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15315. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15316. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15317. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15318. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15319. // 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  15320. if (l1 == 195) // 'occurs'
  15321. {
  15322. whitespace();
  15323. parse_FTTimes();
  15324. }
  15325. }
  15326. eventHandler.endNonterminal("FTPrimary", e0);
  15327. }
  15328. function try_FTPrimary()
  15329. {
  15330. switch (l1)
  15331. {
  15332. case 34: // '('
  15333. shiftT(34); // '('
  15334. lookahead1W(162); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{'
  15335. try_FTSelection();
  15336. shiftT(37); // ')'
  15337. break;
  15338. case 35: // '(#'
  15339. try_FTExtensionSelection();
  15340. break;
  15341. default:
  15342. try_FTWords();
  15343. lookahead1W(215); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15344. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15345. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15346. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15347. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15348. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15349. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15350. // 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  15351. if (l1 == 195) // 'occurs'
  15352. {
  15353. try_FTTimes();
  15354. }
  15355. }
  15356. }
  15357. function parse_FTWords()
  15358. {
  15359. eventHandler.startNonterminal("FTWords", e0);
  15360. parse_FTWordsValue();
  15361. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15362. // '>' | '>=' | '>>' | ']' | 'after' | 'all' | 'and' | 'any' | 'as' | 'ascending' |
  15363. // 'at' | 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15364. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15365. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15366. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15367. // 'phrase' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' |
  15368. // 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  15369. if (l1 == 71 // 'all'
  15370. || l1 == 76 // 'any'
  15371. || l1 == 210) // 'phrase'
  15372. {
  15373. whitespace();
  15374. parse_FTAnyallOption();
  15375. }
  15376. eventHandler.endNonterminal("FTWords", e0);
  15377. }
  15378. function try_FTWords()
  15379. {
  15380. try_FTWordsValue();
  15381. lookahead1W(221); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15382. // '>' | '>=' | '>>' | ']' | 'after' | 'all' | 'and' | 'any' | 'as' | 'ascending' |
  15383. // 'at' | 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15384. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15385. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15386. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15387. // 'phrase' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' |
  15388. // 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  15389. if (l1 == 71 // 'all'
  15390. || l1 == 76 // 'any'
  15391. || l1 == 210) // 'phrase'
  15392. {
  15393. try_FTAnyallOption();
  15394. }
  15395. }
  15396. function parse_FTWordsValue()
  15397. {
  15398. eventHandler.startNonterminal("FTWordsValue", e0);
  15399. switch (l1)
  15400. {
  15401. case 11: // StringLiteral
  15402. shift(11); // StringLiteral
  15403. break;
  15404. default:
  15405. shift(276); // '{'
  15406. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15407. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15408. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15409. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  15410. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  15411. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  15412. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15413. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15414. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15415. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15416. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15417. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15418. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15419. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15420. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15421. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15422. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15423. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15424. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15425. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15426. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15427. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15428. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15429. // 'xquery' | '{' | '{|'
  15430. whitespace();
  15431. parse_Expr();
  15432. shift(282); // '}'
  15433. }
  15434. eventHandler.endNonterminal("FTWordsValue", e0);
  15435. }
  15436. function try_FTWordsValue()
  15437. {
  15438. switch (l1)
  15439. {
  15440. case 11: // StringLiteral
  15441. shiftT(11); // StringLiteral
  15442. break;
  15443. default:
  15444. shiftT(276); // '{'
  15445. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15446. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15447. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15448. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  15449. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  15450. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  15451. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15452. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15453. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15454. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15455. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15456. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15457. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15458. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15459. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15460. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15461. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15462. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15463. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15464. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15465. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15466. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15467. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15468. // 'xquery' | '{' | '{|'
  15469. try_Expr();
  15470. shiftT(282); // '}'
  15471. }
  15472. }
  15473. function parse_FTExtensionSelection()
  15474. {
  15475. eventHandler.startNonterminal("FTExtensionSelection", e0);
  15476. for (;;)
  15477. {
  15478. whitespace();
  15479. parse_Pragma();
  15480. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  15481. if (l1 != 35) // '(#'
  15482. {
  15483. break;
  15484. }
  15485. }
  15486. shift(276); // '{'
  15487. lookahead1W(166); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  15488. if (l1 != 282) // '}'
  15489. {
  15490. whitespace();
  15491. parse_FTSelection();
  15492. }
  15493. shift(282); // '}'
  15494. eventHandler.endNonterminal("FTExtensionSelection", e0);
  15495. }
  15496. function try_FTExtensionSelection()
  15497. {
  15498. for (;;)
  15499. {
  15500. try_Pragma();
  15501. lookahead1W(100); // S^WS | '(#' | '(:' | '{'
  15502. if (l1 != 35) // '(#'
  15503. {
  15504. break;
  15505. }
  15506. }
  15507. shiftT(276); // '{'
  15508. lookahead1W(166); // StringLiteral | S^WS | '(' | '(#' | '(:' | 'ftnot' | '{' | '}'
  15509. if (l1 != 282) // '}'
  15510. {
  15511. try_FTSelection();
  15512. }
  15513. shiftT(282); // '}'
  15514. }
  15515. function parse_FTAnyallOption()
  15516. {
  15517. eventHandler.startNonterminal("FTAnyallOption", e0);
  15518. switch (l1)
  15519. {
  15520. case 76: // 'any'
  15521. shift(76); // 'any'
  15522. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15523. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15524. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15525. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15526. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15527. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15528. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15529. // 'where' | 'window' | 'with' | 'without' | 'word' | '|}' | '}'
  15530. if (l1 == 272) // 'word'
  15531. {
  15532. shift(272); // 'word'
  15533. }
  15534. break;
  15535. case 71: // 'all'
  15536. shift(71); // 'all'
  15537. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15538. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15539. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15540. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15541. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15542. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15543. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15544. // 'where' | 'window' | 'with' | 'without' | 'words' | '|}' | '}'
  15545. if (l1 == 273) // 'words'
  15546. {
  15547. shift(273); // 'words'
  15548. }
  15549. break;
  15550. default:
  15551. shift(210); // 'phrase'
  15552. }
  15553. eventHandler.endNonterminal("FTAnyallOption", e0);
  15554. }
  15555. function try_FTAnyallOption()
  15556. {
  15557. switch (l1)
  15558. {
  15559. case 76: // 'any'
  15560. shiftT(76); // 'any'
  15561. lookahead1W(218); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15562. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15563. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15564. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15565. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15566. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15567. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15568. // 'where' | 'window' | 'with' | 'without' | 'word' | '|}' | '}'
  15569. if (l1 == 272) // 'word'
  15570. {
  15571. shiftT(272); // 'word'
  15572. }
  15573. break;
  15574. case 71: // 'all'
  15575. shiftT(71); // 'all'
  15576. lookahead1W(219); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  15577. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  15578. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  15579. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  15580. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  15581. // 'modify' | 'ne' | 'not' | 'occurs' | 'only' | 'or' | 'order' | 'ordered' |
  15582. // 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' |
  15583. // 'where' | 'window' | 'with' | 'without' | 'words' | '|}' | '}'
  15584. if (l1 == 273) // 'words'
  15585. {
  15586. shiftT(273); // 'words'
  15587. }
  15588. break;
  15589. default:
  15590. shiftT(210); // 'phrase'
  15591. }
  15592. }
  15593. function parse_FTTimes()
  15594. {
  15595. eventHandler.startNonterminal("FTTimes", e0);
  15596. shift(195); // 'occurs'
  15597. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  15598. whitespace();
  15599. parse_FTRange();
  15600. shift(247); // 'times'
  15601. eventHandler.endNonterminal("FTTimes", e0);
  15602. }
  15603. function try_FTTimes()
  15604. {
  15605. shiftT(195); // 'occurs'
  15606. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  15607. try_FTRange();
  15608. shiftT(247); // 'times'
  15609. }
  15610. function parse_FTRange()
  15611. {
  15612. eventHandler.startNonterminal("FTRange", e0);
  15613. switch (l1)
  15614. {
  15615. case 130: // 'exactly'
  15616. shift(130); // 'exactly'
  15617. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15618. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15619. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15620. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15621. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15622. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15623. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15624. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15625. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15626. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15627. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15628. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15629. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15630. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15631. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15632. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15633. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15634. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15635. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15636. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15637. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15638. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15639. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15640. // 'xquery' | '{' | '{|'
  15641. whitespace();
  15642. parse_AdditiveExpr();
  15643. break;
  15644. case 81: // 'at'
  15645. shift(81); // 'at'
  15646. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  15647. switch (l1)
  15648. {
  15649. case 173: // 'least'
  15650. shift(173); // 'least'
  15651. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15652. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15653. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15654. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15655. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15656. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15657. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15658. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15659. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15660. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15661. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15662. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15663. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15664. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15665. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15666. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15667. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15668. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15669. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15670. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15671. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15672. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15673. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15674. // 'xquery' | '{' | '{|'
  15675. whitespace();
  15676. parse_AdditiveExpr();
  15677. break;
  15678. default:
  15679. shift(183); // 'most'
  15680. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15681. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15682. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15683. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15684. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15685. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15686. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15687. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15688. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15689. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15690. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15691. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15692. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15693. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15694. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15695. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15696. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15697. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15698. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15699. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15700. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15701. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15702. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15703. // 'xquery' | '{' | '{|'
  15704. whitespace();
  15705. parse_AdditiveExpr();
  15706. }
  15707. break;
  15708. default:
  15709. shift(140); // 'from'
  15710. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15711. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15712. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15713. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15714. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15715. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15716. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15717. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15718. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15719. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15720. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15721. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15722. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15723. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15724. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15725. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15726. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15727. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15728. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15729. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15730. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15731. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15732. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15733. // 'xquery' | '{' | '{|'
  15734. whitespace();
  15735. parse_AdditiveExpr();
  15736. shift(248); // 'to'
  15737. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15738. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15739. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15740. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15741. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15742. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15743. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15744. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15745. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15746. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15747. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15748. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15749. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15750. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15751. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15752. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15753. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15754. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15755. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15756. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15757. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15758. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15759. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15760. // 'xquery' | '{' | '{|'
  15761. whitespace();
  15762. parse_AdditiveExpr();
  15763. }
  15764. eventHandler.endNonterminal("FTRange", e0);
  15765. }
  15766. function try_FTRange()
  15767. {
  15768. switch (l1)
  15769. {
  15770. case 130: // 'exactly'
  15771. shiftT(130); // 'exactly'
  15772. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15773. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15774. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15775. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15776. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15777. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15778. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15779. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15780. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15781. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15782. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15783. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15784. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15785. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15786. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15787. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15788. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15789. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15790. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15791. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15792. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15793. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15794. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15795. // 'xquery' | '{' | '{|'
  15796. try_AdditiveExpr();
  15797. break;
  15798. case 81: // 'at'
  15799. shiftT(81); // 'at'
  15800. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  15801. switch (l1)
  15802. {
  15803. case 173: // 'least'
  15804. shiftT(173); // 'least'
  15805. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15806. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15807. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15808. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15809. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15810. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15811. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15812. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15813. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15814. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15815. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15816. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15817. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15818. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15819. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15820. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15821. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15822. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15823. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15824. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15825. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15826. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15827. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15828. // 'xquery' | '{' | '{|'
  15829. try_AdditiveExpr();
  15830. break;
  15831. default:
  15832. shiftT(183); // 'most'
  15833. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15834. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15835. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15836. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15837. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15838. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15839. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15840. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15841. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15842. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15843. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15844. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15845. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15846. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15847. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15848. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15849. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15850. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15851. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15852. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15853. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15854. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15855. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15856. // 'xquery' | '{' | '{|'
  15857. try_AdditiveExpr();
  15858. }
  15859. break;
  15860. default:
  15861. shiftT(140); // 'from'
  15862. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15863. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15864. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15865. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15866. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15867. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15868. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15869. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15870. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15871. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15872. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15873. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15874. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15875. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15876. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15877. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15878. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15879. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15880. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15881. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15882. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15883. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15884. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15885. // 'xquery' | '{' | '{|'
  15886. try_AdditiveExpr();
  15887. shiftT(248); // 'to'
  15888. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15889. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15890. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15891. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15892. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15893. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15894. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15895. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15896. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15897. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15898. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15899. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15900. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15901. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15902. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15903. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15904. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15905. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15906. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15907. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15908. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15909. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15910. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15911. // 'xquery' | '{' | '{|'
  15912. try_AdditiveExpr();
  15913. }
  15914. }
  15915. function parse_FTPosFilter()
  15916. {
  15917. eventHandler.startNonterminal("FTPosFilter", e0);
  15918. switch (l1)
  15919. {
  15920. case 202: // 'ordered'
  15921. parse_FTOrder();
  15922. break;
  15923. case 269: // 'window'
  15924. parse_FTWindow();
  15925. break;
  15926. case 117: // 'distance'
  15927. parse_FTDistance();
  15928. break;
  15929. case 115: // 'different'
  15930. case 223: // 'same'
  15931. parse_FTScope();
  15932. break;
  15933. default:
  15934. parse_FTContent();
  15935. }
  15936. eventHandler.endNonterminal("FTPosFilter", e0);
  15937. }
  15938. function try_FTPosFilter()
  15939. {
  15940. switch (l1)
  15941. {
  15942. case 202: // 'ordered'
  15943. try_FTOrder();
  15944. break;
  15945. case 269: // 'window'
  15946. try_FTWindow();
  15947. break;
  15948. case 117: // 'distance'
  15949. try_FTDistance();
  15950. break;
  15951. case 115: // 'different'
  15952. case 223: // 'same'
  15953. try_FTScope();
  15954. break;
  15955. default:
  15956. try_FTContent();
  15957. }
  15958. }
  15959. function parse_FTOrder()
  15960. {
  15961. eventHandler.startNonterminal("FTOrder", e0);
  15962. shift(202); // 'ordered'
  15963. eventHandler.endNonterminal("FTOrder", e0);
  15964. }
  15965. function try_FTOrder()
  15966. {
  15967. shiftT(202); // 'ordered'
  15968. }
  15969. function parse_FTWindow()
  15970. {
  15971. eventHandler.startNonterminal("FTWindow", e0);
  15972. shift(269); // 'window'
  15973. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  15974. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  15975. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  15976. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  15977. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  15978. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  15979. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  15980. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  15981. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  15982. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  15983. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  15984. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  15985. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  15986. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  15987. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  15988. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  15989. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  15990. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  15991. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  15992. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  15993. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  15994. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  15995. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  15996. // 'xquery' | '{' | '{|'
  15997. whitespace();
  15998. parse_AdditiveExpr();
  15999. whitespace();
  16000. parse_FTUnit();
  16001. eventHandler.endNonterminal("FTWindow", e0);
  16002. }
  16003. function try_FTWindow()
  16004. {
  16005. shiftT(269); // 'window'
  16006. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  16007. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  16008. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  16009. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  16010. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  16011. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  16012. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  16013. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  16014. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  16015. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  16016. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  16017. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  16018. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  16019. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  16020. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  16021. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  16022. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  16023. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  16024. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  16025. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  16026. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  16027. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  16028. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  16029. // 'xquery' | '{' | '{|'
  16030. try_AdditiveExpr();
  16031. try_FTUnit();
  16032. }
  16033. function parse_FTDistance()
  16034. {
  16035. eventHandler.startNonterminal("FTDistance", e0);
  16036. shift(117); // 'distance'
  16037. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  16038. whitespace();
  16039. parse_FTRange();
  16040. whitespace();
  16041. parse_FTUnit();
  16042. eventHandler.endNonterminal("FTDistance", e0);
  16043. }
  16044. function try_FTDistance()
  16045. {
  16046. shiftT(117); // 'distance'
  16047. lookahead1W(149); // S^WS | '(:' | 'at' | 'exactly' | 'from'
  16048. try_FTRange();
  16049. try_FTUnit();
  16050. }
  16051. function parse_FTUnit()
  16052. {
  16053. eventHandler.startNonterminal("FTUnit", e0);
  16054. switch (l1)
  16055. {
  16056. case 273: // 'words'
  16057. shift(273); // 'words'
  16058. break;
  16059. case 232: // 'sentences'
  16060. shift(232); // 'sentences'
  16061. break;
  16062. default:
  16063. shift(205); // 'paragraphs'
  16064. }
  16065. eventHandler.endNonterminal("FTUnit", e0);
  16066. }
  16067. function try_FTUnit()
  16068. {
  16069. switch (l1)
  16070. {
  16071. case 273: // 'words'
  16072. shiftT(273); // 'words'
  16073. break;
  16074. case 232: // 'sentences'
  16075. shiftT(232); // 'sentences'
  16076. break;
  16077. default:
  16078. shiftT(205); // 'paragraphs'
  16079. }
  16080. }
  16081. function parse_FTScope()
  16082. {
  16083. eventHandler.startNonterminal("FTScope", e0);
  16084. switch (l1)
  16085. {
  16086. case 223: // 'same'
  16087. shift(223); // 'same'
  16088. break;
  16089. default:
  16090. shift(115); // 'different'
  16091. }
  16092. lookahead1W(132); // S^WS | '(:' | 'paragraph' | 'sentence'
  16093. whitespace();
  16094. parse_FTBigUnit();
  16095. eventHandler.endNonterminal("FTScope", e0);
  16096. }
  16097. function try_FTScope()
  16098. {
  16099. switch (l1)
  16100. {
  16101. case 223: // 'same'
  16102. shiftT(223); // 'same'
  16103. break;
  16104. default:
  16105. shiftT(115); // 'different'
  16106. }
  16107. lookahead1W(132); // S^WS | '(:' | 'paragraph' | 'sentence'
  16108. try_FTBigUnit();
  16109. }
  16110. function parse_FTBigUnit()
  16111. {
  16112. eventHandler.startNonterminal("FTBigUnit", e0);
  16113. switch (l1)
  16114. {
  16115. case 231: // 'sentence'
  16116. shift(231); // 'sentence'
  16117. break;
  16118. default:
  16119. shift(204); // 'paragraph'
  16120. }
  16121. eventHandler.endNonterminal("FTBigUnit", e0);
  16122. }
  16123. function try_FTBigUnit()
  16124. {
  16125. switch (l1)
  16126. {
  16127. case 231: // 'sentence'
  16128. shiftT(231); // 'sentence'
  16129. break;
  16130. default:
  16131. shiftT(204); // 'paragraph'
  16132. }
  16133. }
  16134. function parse_FTContent()
  16135. {
  16136. eventHandler.startNonterminal("FTContent", e0);
  16137. switch (l1)
  16138. {
  16139. case 81: // 'at'
  16140. shift(81); // 'at'
  16141. lookahead1W(117); // S^WS | '(:' | 'end' | 'start'
  16142. switch (l1)
  16143. {
  16144. case 237: // 'start'
  16145. shift(237); // 'start'
  16146. break;
  16147. default:
  16148. shift(126); // 'end'
  16149. }
  16150. break;
  16151. default:
  16152. shift(127); // 'entire'
  16153. lookahead1W(42); // S^WS | '(:' | 'content'
  16154. shift(100); // 'content'
  16155. }
  16156. eventHandler.endNonterminal("FTContent", e0);
  16157. }
  16158. function try_FTContent()
  16159. {
  16160. switch (l1)
  16161. {
  16162. case 81: // 'at'
  16163. shiftT(81); // 'at'
  16164. lookahead1W(117); // S^WS | '(:' | 'end' | 'start'
  16165. switch (l1)
  16166. {
  16167. case 237: // 'start'
  16168. shiftT(237); // 'start'
  16169. break;
  16170. default:
  16171. shiftT(126); // 'end'
  16172. }
  16173. break;
  16174. default:
  16175. shiftT(127); // 'entire'
  16176. lookahead1W(42); // S^WS | '(:' | 'content'
  16177. shiftT(100); // 'content'
  16178. }
  16179. }
  16180. function parse_FTMatchOptions()
  16181. {
  16182. eventHandler.startNonterminal("FTMatchOptions", e0);
  16183. for (;;)
  16184. {
  16185. shift(259); // 'using'
  16186. lookahead1W(181); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  16187. // 'option' | 'stemming' | 'stop' | 'thesaurus' | 'uppercase' | 'wildcards'
  16188. whitespace();
  16189. parse_FTMatchOption();
  16190. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16191. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16192. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16193. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  16194. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  16195. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  16196. // 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' | 'where' |
  16197. // 'window' | 'with' | 'without' | '|}' | '}'
  16198. if (l1 != 259) // 'using'
  16199. {
  16200. break;
  16201. }
  16202. }
  16203. eventHandler.endNonterminal("FTMatchOptions", e0);
  16204. }
  16205. function try_FTMatchOptions()
  16206. {
  16207. for (;;)
  16208. {
  16209. shiftT(259); // 'using'
  16210. lookahead1W(181); // S^WS | '(:' | 'case' | 'diacritics' | 'language' | 'lowercase' | 'no' |
  16211. // 'option' | 'stemming' | 'stop' | 'thesaurus' | 'uppercase' | 'wildcards'
  16212. try_FTMatchOption();
  16213. lookahead1W(214); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16214. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16215. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16216. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' | 'for' |
  16217. // 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  16218. // 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' | 'ordered' | 'return' |
  16219. // 'same' | 'satisfies' | 'stable' | 'start' | 'using' | 'weight' | 'where' |
  16220. // 'window' | 'with' | 'without' | '|}' | '}'
  16221. if (l1 != 259) // 'using'
  16222. {
  16223. break;
  16224. }
  16225. }
  16226. }
  16227. function parse_FTMatchOption()
  16228. {
  16229. eventHandler.startNonterminal("FTMatchOption", e0);
  16230. switch (l1)
  16231. {
  16232. case 188: // 'no'
  16233. lookahead2W(161); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  16234. break;
  16235. default:
  16236. lk = l1;
  16237. }
  16238. switch (lk)
  16239. {
  16240. case 169: // 'language'
  16241. parse_FTLanguageOption();
  16242. break;
  16243. case 268: // 'wildcards'
  16244. case 137404: // 'no' 'wildcards'
  16245. parse_FTWildCardOption();
  16246. break;
  16247. case 246: // 'thesaurus'
  16248. case 126140: // 'no' 'thesaurus'
  16249. parse_FTThesaurusOption();
  16250. break;
  16251. case 238: // 'stemming'
  16252. case 122044: // 'no' 'stemming'
  16253. parse_FTStemOption();
  16254. break;
  16255. case 114: // 'diacritics'
  16256. parse_FTDiacriticsOption();
  16257. break;
  16258. case 239: // 'stop'
  16259. case 122556: // 'no' 'stop'
  16260. parse_FTStopWordOption();
  16261. break;
  16262. case 199: // 'option'
  16263. parse_FTExtensionOption();
  16264. break;
  16265. default:
  16266. parse_FTCaseOption();
  16267. }
  16268. eventHandler.endNonterminal("FTMatchOption", e0);
  16269. }
  16270. function try_FTMatchOption()
  16271. {
  16272. switch (l1)
  16273. {
  16274. case 188: // 'no'
  16275. lookahead2W(161); // S^WS | '(:' | 'stemming' | 'stop' | 'thesaurus' | 'wildcards'
  16276. break;
  16277. default:
  16278. lk = l1;
  16279. }
  16280. switch (lk)
  16281. {
  16282. case 169: // 'language'
  16283. try_FTLanguageOption();
  16284. break;
  16285. case 268: // 'wildcards'
  16286. case 137404: // 'no' 'wildcards'
  16287. try_FTWildCardOption();
  16288. break;
  16289. case 246: // 'thesaurus'
  16290. case 126140: // 'no' 'thesaurus'
  16291. try_FTThesaurusOption();
  16292. break;
  16293. case 238: // 'stemming'
  16294. case 122044: // 'no' 'stemming'
  16295. try_FTStemOption();
  16296. break;
  16297. case 114: // 'diacritics'
  16298. try_FTDiacriticsOption();
  16299. break;
  16300. case 239: // 'stop'
  16301. case 122556: // 'no' 'stop'
  16302. try_FTStopWordOption();
  16303. break;
  16304. case 199: // 'option'
  16305. try_FTExtensionOption();
  16306. break;
  16307. default:
  16308. try_FTCaseOption();
  16309. }
  16310. }
  16311. function parse_FTCaseOption()
  16312. {
  16313. eventHandler.startNonterminal("FTCaseOption", e0);
  16314. switch (l1)
  16315. {
  16316. case 88: // 'case'
  16317. shift(88); // 'case'
  16318. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  16319. switch (l1)
  16320. {
  16321. case 158: // 'insensitive'
  16322. shift(158); // 'insensitive'
  16323. break;
  16324. default:
  16325. shift(230); // 'sensitive'
  16326. }
  16327. break;
  16328. case 177: // 'lowercase'
  16329. shift(177); // 'lowercase'
  16330. break;
  16331. default:
  16332. shift(258); // 'uppercase'
  16333. }
  16334. eventHandler.endNonterminal("FTCaseOption", e0);
  16335. }
  16336. function try_FTCaseOption()
  16337. {
  16338. switch (l1)
  16339. {
  16340. case 88: // 'case'
  16341. shiftT(88); // 'case'
  16342. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  16343. switch (l1)
  16344. {
  16345. case 158: // 'insensitive'
  16346. shiftT(158); // 'insensitive'
  16347. break;
  16348. default:
  16349. shiftT(230); // 'sensitive'
  16350. }
  16351. break;
  16352. case 177: // 'lowercase'
  16353. shiftT(177); // 'lowercase'
  16354. break;
  16355. default:
  16356. shiftT(258); // 'uppercase'
  16357. }
  16358. }
  16359. function parse_FTDiacriticsOption()
  16360. {
  16361. eventHandler.startNonterminal("FTDiacriticsOption", e0);
  16362. shift(114); // 'diacritics'
  16363. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  16364. switch (l1)
  16365. {
  16366. case 158: // 'insensitive'
  16367. shift(158); // 'insensitive'
  16368. break;
  16369. default:
  16370. shift(230); // 'sensitive'
  16371. }
  16372. eventHandler.endNonterminal("FTDiacriticsOption", e0);
  16373. }
  16374. function try_FTDiacriticsOption()
  16375. {
  16376. shiftT(114); // 'diacritics'
  16377. lookahead1W(124); // S^WS | '(:' | 'insensitive' | 'sensitive'
  16378. switch (l1)
  16379. {
  16380. case 158: // 'insensitive'
  16381. shiftT(158); // 'insensitive'
  16382. break;
  16383. default:
  16384. shiftT(230); // 'sensitive'
  16385. }
  16386. }
  16387. function parse_FTStemOption()
  16388. {
  16389. eventHandler.startNonterminal("FTStemOption", e0);
  16390. switch (l1)
  16391. {
  16392. case 238: // 'stemming'
  16393. shift(238); // 'stemming'
  16394. break;
  16395. default:
  16396. shift(188); // 'no'
  16397. lookahead1W(74); // S^WS | '(:' | 'stemming'
  16398. shift(238); // 'stemming'
  16399. }
  16400. eventHandler.endNonterminal("FTStemOption", e0);
  16401. }
  16402. function try_FTStemOption()
  16403. {
  16404. switch (l1)
  16405. {
  16406. case 238: // 'stemming'
  16407. shiftT(238); // 'stemming'
  16408. break;
  16409. default:
  16410. shiftT(188); // 'no'
  16411. lookahead1W(74); // S^WS | '(:' | 'stemming'
  16412. shiftT(238); // 'stemming'
  16413. }
  16414. }
  16415. function parse_FTThesaurusOption()
  16416. {
  16417. eventHandler.startNonterminal("FTThesaurusOption", e0);
  16418. switch (l1)
  16419. {
  16420. case 246: // 'thesaurus'
  16421. shift(246); // 'thesaurus'
  16422. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  16423. switch (l1)
  16424. {
  16425. case 81: // 'at'
  16426. whitespace();
  16427. parse_FTThesaurusID();
  16428. break;
  16429. case 109: // 'default'
  16430. shift(109); // 'default'
  16431. break;
  16432. default:
  16433. shift(34); // '('
  16434. lookahead1W(112); // S^WS | '(:' | 'at' | 'default'
  16435. switch (l1)
  16436. {
  16437. case 81: // 'at'
  16438. whitespace();
  16439. parse_FTThesaurusID();
  16440. break;
  16441. default:
  16442. shift(109); // 'default'
  16443. }
  16444. for (;;)
  16445. {
  16446. lookahead1W(101); // S^WS | '(:' | ')' | ','
  16447. if (l1 != 41) // ','
  16448. {
  16449. break;
  16450. }
  16451. shift(41); // ','
  16452. lookahead1W(31); // S^WS | '(:' | 'at'
  16453. whitespace();
  16454. parse_FTThesaurusID();
  16455. }
  16456. shift(37); // ')'
  16457. }
  16458. break;
  16459. default:
  16460. shift(188); // 'no'
  16461. lookahead1W(78); // S^WS | '(:' | 'thesaurus'
  16462. shift(246); // 'thesaurus'
  16463. }
  16464. eventHandler.endNonterminal("FTThesaurusOption", e0);
  16465. }
  16466. function try_FTThesaurusOption()
  16467. {
  16468. switch (l1)
  16469. {
  16470. case 246: // 'thesaurus'
  16471. shiftT(246); // 'thesaurus'
  16472. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  16473. switch (l1)
  16474. {
  16475. case 81: // 'at'
  16476. try_FTThesaurusID();
  16477. break;
  16478. case 109: // 'default'
  16479. shiftT(109); // 'default'
  16480. break;
  16481. default:
  16482. shiftT(34); // '('
  16483. lookahead1W(112); // S^WS | '(:' | 'at' | 'default'
  16484. switch (l1)
  16485. {
  16486. case 81: // 'at'
  16487. try_FTThesaurusID();
  16488. break;
  16489. default:
  16490. shiftT(109); // 'default'
  16491. }
  16492. for (;;)
  16493. {
  16494. lookahead1W(101); // S^WS | '(:' | ')' | ','
  16495. if (l1 != 41) // ','
  16496. {
  16497. break;
  16498. }
  16499. shiftT(41); // ','
  16500. lookahead1W(31); // S^WS | '(:' | 'at'
  16501. try_FTThesaurusID();
  16502. }
  16503. shiftT(37); // ')'
  16504. }
  16505. break;
  16506. default:
  16507. shiftT(188); // 'no'
  16508. lookahead1W(78); // S^WS | '(:' | 'thesaurus'
  16509. shiftT(246); // 'thesaurus'
  16510. }
  16511. }
  16512. function parse_FTThesaurusID()
  16513. {
  16514. eventHandler.startNonterminal("FTThesaurusID", e0);
  16515. shift(81); // 'at'
  16516. lookahead1W(15); // URILiteral | S^WS | '(:'
  16517. shift(7); // URILiteral
  16518. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16519. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16520. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16521. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16522. // 'exactly' | 'for' | 'from' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' |
  16523. // 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16524. // 'ordered' | 'relationship' | 'return' | 'same' | 'satisfies' | 'stable' |
  16525. // 'start' | 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' |
  16526. // '}'
  16527. if (l1 == 217) // 'relationship'
  16528. {
  16529. shift(217); // 'relationship'
  16530. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16531. shift(11); // StringLiteral
  16532. }
  16533. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16534. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16535. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16536. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16537. // 'exactly' | 'for' | 'from' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' |
  16538. // 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16539. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' |
  16540. // 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16541. switch (l1)
  16542. {
  16543. case 81: // 'at'
  16544. lookahead2W(165); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  16545. break;
  16546. default:
  16547. lk = l1;
  16548. }
  16549. if (lk == 130 // 'exactly'
  16550. || lk == 140 // 'from'
  16551. || lk == 88657 // 'at' 'least'
  16552. || lk == 93777) // 'at' 'most'
  16553. {
  16554. whitespace();
  16555. parse_FTLiteralRange();
  16556. lookahead1W(58); // S^WS | '(:' | 'levels'
  16557. shift(175); // 'levels'
  16558. }
  16559. eventHandler.endNonterminal("FTThesaurusID", e0);
  16560. }
  16561. function try_FTThesaurusID()
  16562. {
  16563. shiftT(81); // 'at'
  16564. lookahead1W(15); // URILiteral | S^WS | '(:'
  16565. shiftT(7); // URILiteral
  16566. lookahead1W(220); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16567. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16568. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16569. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16570. // 'exactly' | 'for' | 'from' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' |
  16571. // 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16572. // 'ordered' | 'relationship' | 'return' | 'same' | 'satisfies' | 'stable' |
  16573. // 'start' | 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' |
  16574. // '}'
  16575. if (l1 == 217) // 'relationship'
  16576. {
  16577. shiftT(217); // 'relationship'
  16578. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16579. shiftT(11); // StringLiteral
  16580. }
  16581. lookahead1W(216); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16582. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16583. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16584. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16585. // 'exactly' | 'for' | 'from' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' |
  16586. // 'is' | 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16587. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'using' |
  16588. // 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16589. switch (l1)
  16590. {
  16591. case 81: // 'at'
  16592. lookahead2W(165); // S^WS | '(:' | 'end' | 'least' | 'most' | 'position' | 'start'
  16593. break;
  16594. default:
  16595. lk = l1;
  16596. }
  16597. if (lk == 130 // 'exactly'
  16598. || lk == 140 // 'from'
  16599. || lk == 88657 // 'at' 'least'
  16600. || lk == 93777) // 'at' 'most'
  16601. {
  16602. try_FTLiteralRange();
  16603. lookahead1W(58); // S^WS | '(:' | 'levels'
  16604. shiftT(175); // 'levels'
  16605. }
  16606. }
  16607. function parse_FTLiteralRange()
  16608. {
  16609. eventHandler.startNonterminal("FTLiteralRange", e0);
  16610. switch (l1)
  16611. {
  16612. case 130: // 'exactly'
  16613. shift(130); // 'exactly'
  16614. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16615. shift(8); // IntegerLiteral
  16616. break;
  16617. case 81: // 'at'
  16618. shift(81); // 'at'
  16619. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  16620. switch (l1)
  16621. {
  16622. case 173: // 'least'
  16623. shift(173); // 'least'
  16624. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16625. shift(8); // IntegerLiteral
  16626. break;
  16627. default:
  16628. shift(183); // 'most'
  16629. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16630. shift(8); // IntegerLiteral
  16631. }
  16632. break;
  16633. default:
  16634. shift(140); // 'from'
  16635. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16636. shift(8); // IntegerLiteral
  16637. lookahead1W(79); // S^WS | '(:' | 'to'
  16638. shift(248); // 'to'
  16639. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16640. shift(8); // IntegerLiteral
  16641. }
  16642. eventHandler.endNonterminal("FTLiteralRange", e0);
  16643. }
  16644. function try_FTLiteralRange()
  16645. {
  16646. switch (l1)
  16647. {
  16648. case 130: // 'exactly'
  16649. shiftT(130); // 'exactly'
  16650. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16651. shiftT(8); // IntegerLiteral
  16652. break;
  16653. case 81: // 'at'
  16654. shiftT(81); // 'at'
  16655. lookahead1W(125); // S^WS | '(:' | 'least' | 'most'
  16656. switch (l1)
  16657. {
  16658. case 173: // 'least'
  16659. shiftT(173); // 'least'
  16660. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16661. shiftT(8); // IntegerLiteral
  16662. break;
  16663. default:
  16664. shiftT(183); // 'most'
  16665. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16666. shiftT(8); // IntegerLiteral
  16667. }
  16668. break;
  16669. default:
  16670. shiftT(140); // 'from'
  16671. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16672. shiftT(8); // IntegerLiteral
  16673. lookahead1W(79); // S^WS | '(:' | 'to'
  16674. shiftT(248); // 'to'
  16675. lookahead1W(16); // IntegerLiteral | S^WS | '(:'
  16676. shiftT(8); // IntegerLiteral
  16677. }
  16678. }
  16679. function parse_FTStopWordOption()
  16680. {
  16681. eventHandler.startNonterminal("FTStopWordOption", e0);
  16682. switch (l1)
  16683. {
  16684. case 239: // 'stop'
  16685. shift(239); // 'stop'
  16686. lookahead1W(86); // S^WS | '(:' | 'words'
  16687. shift(273); // 'words'
  16688. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  16689. switch (l1)
  16690. {
  16691. case 109: // 'default'
  16692. shift(109); // 'default'
  16693. for (;;)
  16694. {
  16695. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16696. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16697. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16698. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16699. // 'except' | 'for' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' |
  16700. // 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16701. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'union' |
  16702. // 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16703. if (l1 != 131 // 'except'
  16704. && l1 != 254) // 'union'
  16705. {
  16706. break;
  16707. }
  16708. whitespace();
  16709. parse_FTStopWordsInclExcl();
  16710. }
  16711. break;
  16712. default:
  16713. whitespace();
  16714. parse_FTStopWords();
  16715. for (;;)
  16716. {
  16717. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16718. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16719. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16720. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16721. // 'except' | 'for' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' |
  16722. // 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16723. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'union' |
  16724. // 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16725. if (l1 != 131 // 'except'
  16726. && l1 != 254) // 'union'
  16727. {
  16728. break;
  16729. }
  16730. whitespace();
  16731. parse_FTStopWordsInclExcl();
  16732. }
  16733. }
  16734. break;
  16735. default:
  16736. shift(188); // 'no'
  16737. lookahead1W(75); // S^WS | '(:' | 'stop'
  16738. shift(239); // 'stop'
  16739. lookahead1W(86); // S^WS | '(:' | 'words'
  16740. shift(273); // 'words'
  16741. }
  16742. eventHandler.endNonterminal("FTStopWordOption", e0);
  16743. }
  16744. function try_FTStopWordOption()
  16745. {
  16746. switch (l1)
  16747. {
  16748. case 239: // 'stop'
  16749. shiftT(239); // 'stop'
  16750. lookahead1W(86); // S^WS | '(:' | 'words'
  16751. shiftT(273); // 'words'
  16752. lookahead1W(142); // S^WS | '(' | '(:' | 'at' | 'default'
  16753. switch (l1)
  16754. {
  16755. case 109: // 'default'
  16756. shiftT(109); // 'default'
  16757. for (;;)
  16758. {
  16759. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16760. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16761. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16762. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16763. // 'except' | 'for' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' |
  16764. // 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16765. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'union' |
  16766. // 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16767. if (l1 != 131 // 'except'
  16768. && l1 != 254) // 'union'
  16769. {
  16770. break;
  16771. }
  16772. try_FTStopWordsInclExcl();
  16773. }
  16774. break;
  16775. default:
  16776. try_FTStopWords();
  16777. for (;;)
  16778. {
  16779. lookahead1W(217); // S^WS | EOF | '!=' | '(:' | ')' | ',' | ':' | ';' | '<' | '<<' | '<=' | '=' |
  16780. // '>' | '>=' | '>>' | ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' |
  16781. // 'before' | 'case' | 'collation' | 'count' | 'default' | 'descending' |
  16782. // 'different' | 'distance' | 'else' | 'empty' | 'end' | 'entire' | 'eq' |
  16783. // 'except' | 'for' | 'ftand' | 'ftor' | 'ge' | 'group' | 'gt' | 'into' | 'is' |
  16784. // 'le' | 'let' | 'lt' | 'modify' | 'ne' | 'not' | 'only' | 'or' | 'order' |
  16785. // 'ordered' | 'return' | 'same' | 'satisfies' | 'stable' | 'start' | 'union' |
  16786. // 'using' | 'weight' | 'where' | 'window' | 'with' | 'without' | '|}' | '}'
  16787. if (l1 != 131 // 'except'
  16788. && l1 != 254) // 'union'
  16789. {
  16790. break;
  16791. }
  16792. try_FTStopWordsInclExcl();
  16793. }
  16794. }
  16795. break;
  16796. default:
  16797. shiftT(188); // 'no'
  16798. lookahead1W(75); // S^WS | '(:' | 'stop'
  16799. shiftT(239); // 'stop'
  16800. lookahead1W(86); // S^WS | '(:' | 'words'
  16801. shiftT(273); // 'words'
  16802. }
  16803. }
  16804. function parse_FTStopWords()
  16805. {
  16806. eventHandler.startNonterminal("FTStopWords", e0);
  16807. switch (l1)
  16808. {
  16809. case 81: // 'at'
  16810. shift(81); // 'at'
  16811. lookahead1W(15); // URILiteral | S^WS | '(:'
  16812. shift(7); // URILiteral
  16813. break;
  16814. default:
  16815. shift(34); // '('
  16816. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16817. shift(11); // StringLiteral
  16818. for (;;)
  16819. {
  16820. lookahead1W(101); // S^WS | '(:' | ')' | ','
  16821. if (l1 != 41) // ','
  16822. {
  16823. break;
  16824. }
  16825. shift(41); // ','
  16826. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16827. shift(11); // StringLiteral
  16828. }
  16829. shift(37); // ')'
  16830. }
  16831. eventHandler.endNonterminal("FTStopWords", e0);
  16832. }
  16833. function try_FTStopWords()
  16834. {
  16835. switch (l1)
  16836. {
  16837. case 81: // 'at'
  16838. shiftT(81); // 'at'
  16839. lookahead1W(15); // URILiteral | S^WS | '(:'
  16840. shiftT(7); // URILiteral
  16841. break;
  16842. default:
  16843. shiftT(34); // '('
  16844. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16845. shiftT(11); // StringLiteral
  16846. for (;;)
  16847. {
  16848. lookahead1W(101); // S^WS | '(:' | ')' | ','
  16849. if (l1 != 41) // ','
  16850. {
  16851. break;
  16852. }
  16853. shiftT(41); // ','
  16854. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16855. shiftT(11); // StringLiteral
  16856. }
  16857. shiftT(37); // ')'
  16858. }
  16859. }
  16860. function parse_FTStopWordsInclExcl()
  16861. {
  16862. eventHandler.startNonterminal("FTStopWordsInclExcl", e0);
  16863. switch (l1)
  16864. {
  16865. case 254: // 'union'
  16866. shift(254); // 'union'
  16867. break;
  16868. default:
  16869. shift(131); // 'except'
  16870. }
  16871. lookahead1W(99); // S^WS | '(' | '(:' | 'at'
  16872. whitespace();
  16873. parse_FTStopWords();
  16874. eventHandler.endNonterminal("FTStopWordsInclExcl", e0);
  16875. }
  16876. function try_FTStopWordsInclExcl()
  16877. {
  16878. switch (l1)
  16879. {
  16880. case 254: // 'union'
  16881. shiftT(254); // 'union'
  16882. break;
  16883. default:
  16884. shiftT(131); // 'except'
  16885. }
  16886. lookahead1W(99); // S^WS | '(' | '(:' | 'at'
  16887. try_FTStopWords();
  16888. }
  16889. function parse_FTLanguageOption()
  16890. {
  16891. eventHandler.startNonterminal("FTLanguageOption", e0);
  16892. shift(169); // 'language'
  16893. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16894. shift(11); // StringLiteral
  16895. eventHandler.endNonterminal("FTLanguageOption", e0);
  16896. }
  16897. function try_FTLanguageOption()
  16898. {
  16899. shiftT(169); // 'language'
  16900. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16901. shiftT(11); // StringLiteral
  16902. }
  16903. function parse_FTWildCardOption()
  16904. {
  16905. eventHandler.startNonterminal("FTWildCardOption", e0);
  16906. switch (l1)
  16907. {
  16908. case 268: // 'wildcards'
  16909. shift(268); // 'wildcards'
  16910. break;
  16911. default:
  16912. shift(188); // 'no'
  16913. lookahead1W(84); // S^WS | '(:' | 'wildcards'
  16914. shift(268); // 'wildcards'
  16915. }
  16916. eventHandler.endNonterminal("FTWildCardOption", e0);
  16917. }
  16918. function try_FTWildCardOption()
  16919. {
  16920. switch (l1)
  16921. {
  16922. case 268: // 'wildcards'
  16923. shiftT(268); // 'wildcards'
  16924. break;
  16925. default:
  16926. shiftT(188); // 'no'
  16927. lookahead1W(84); // S^WS | '(:' | 'wildcards'
  16928. shiftT(268); // 'wildcards'
  16929. }
  16930. }
  16931. function parse_FTExtensionOption()
  16932. {
  16933. eventHandler.startNonterminal("FTExtensionOption", e0);
  16934. shift(199); // 'option'
  16935. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  16936. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  16937. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  16938. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  16939. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  16940. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  16941. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  16942. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  16943. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  16944. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  16945. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  16946. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  16947. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  16948. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  16949. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  16950. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  16951. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  16952. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  16953. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  16954. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  16955. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  16956. // 'xquery'
  16957. whitespace();
  16958. parse_EQName();
  16959. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16960. shift(11); // StringLiteral
  16961. eventHandler.endNonterminal("FTExtensionOption", e0);
  16962. }
  16963. function try_FTExtensionOption()
  16964. {
  16965. shiftT(199); // 'option'
  16966. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  16967. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  16968. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  16969. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  16970. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  16971. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  16972. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  16973. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  16974. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  16975. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  16976. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  16977. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  16978. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  16979. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  16980. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  16981. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  16982. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  16983. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  16984. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  16985. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  16986. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  16987. // 'xquery'
  16988. try_EQName();
  16989. lookahead1W(17); // StringLiteral | S^WS | '(:'
  16990. shiftT(11); // StringLiteral
  16991. }
  16992. function parse_FTIgnoreOption()
  16993. {
  16994. eventHandler.startNonterminal("FTIgnoreOption", e0);
  16995. shift(271); // 'without'
  16996. lookahead1W(42); // S^WS | '(:' | 'content'
  16997. shift(100); // 'content'
  16998. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  16999. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  17000. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  17001. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  17002. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  17003. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  17004. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  17005. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  17006. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  17007. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  17008. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  17009. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  17010. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  17011. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  17012. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  17013. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  17014. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17015. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17016. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17017. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17018. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17019. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17020. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17021. // 'xquery' | '{' | '{|'
  17022. whitespace();
  17023. parse_UnionExpr();
  17024. eventHandler.endNonterminal("FTIgnoreOption", e0);
  17025. }
  17026. function try_FTIgnoreOption()
  17027. {
  17028. shiftT(271); // 'without'
  17029. lookahead1W(42); // S^WS | '(:' | 'content'
  17030. shiftT(100); // 'content'
  17031. lookahead1W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17032. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  17033. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  17034. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  17035. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  17036. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  17037. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  17038. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  17039. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  17040. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  17041. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  17042. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  17043. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  17044. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  17045. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  17046. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  17047. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17048. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17049. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17050. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17051. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17052. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17053. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17054. // 'xquery' | '{' | '{|'
  17055. try_UnionExpr();
  17056. }
  17057. function parse_CollectionDecl()
  17058. {
  17059. eventHandler.startNonterminal("CollectionDecl", e0);
  17060. shift(95); // 'collection'
  17061. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17062. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17063. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17064. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17065. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17066. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17067. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17068. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17069. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17070. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17071. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17072. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17073. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17074. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17075. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17076. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17077. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17078. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17079. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17080. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17081. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17082. // 'xquery'
  17083. whitespace();
  17084. parse_EQName();
  17085. lookahead1W(107); // S^WS | '(:' | ';' | 'as'
  17086. if (l1 == 79) // 'as'
  17087. {
  17088. whitespace();
  17089. parse_CollectionTypeDecl();
  17090. }
  17091. eventHandler.endNonterminal("CollectionDecl", e0);
  17092. }
  17093. function parse_CollectionTypeDecl()
  17094. {
  17095. eventHandler.startNonterminal("CollectionTypeDecl", e0);
  17096. shift(79); // 'as'
  17097. lookahead1W(183); // S^WS | '(:' | 'array' | 'attribute' | 'comment' | 'document-node' | 'element' |
  17098. // 'json-item' | 'namespace-node' | 'node' | 'object' | 'processing-instruction' |
  17099. // 'schema-attribute' | 'schema-element' | 'text'
  17100. whitespace();
  17101. parse_KindTest();
  17102. lookahead1W(156); // S^WS | '(:' | '*' | '+' | ';' | '?'
  17103. if (l1 != 53) // ';'
  17104. {
  17105. whitespace();
  17106. parse_OccurrenceIndicator();
  17107. }
  17108. eventHandler.endNonterminal("CollectionTypeDecl", e0);
  17109. }
  17110. function parse_IndexName()
  17111. {
  17112. eventHandler.startNonterminal("IndexName", e0);
  17113. parse_EQName();
  17114. eventHandler.endNonterminal("IndexName", e0);
  17115. }
  17116. function parse_IndexDomainExpr()
  17117. {
  17118. eventHandler.startNonterminal("IndexDomainExpr", e0);
  17119. parse_PathExpr();
  17120. eventHandler.endNonterminal("IndexDomainExpr", e0);
  17121. }
  17122. function parse_IndexKeySpec()
  17123. {
  17124. eventHandler.startNonterminal("IndexKeySpec", e0);
  17125. parse_IndexKeyExpr();
  17126. if (l1 == 79) // 'as'
  17127. {
  17128. whitespace();
  17129. parse_IndexKeyTypeDecl();
  17130. }
  17131. lookahead1W(146); // S^WS | '(:' | ',' | ';' | 'collation'
  17132. if (l1 == 94) // 'collation'
  17133. {
  17134. whitespace();
  17135. parse_IndexKeyCollation();
  17136. }
  17137. eventHandler.endNonterminal("IndexKeySpec", e0);
  17138. }
  17139. function parse_IndexKeyExpr()
  17140. {
  17141. eventHandler.startNonterminal("IndexKeyExpr", e0);
  17142. parse_PathExpr();
  17143. eventHandler.endNonterminal("IndexKeyExpr", e0);
  17144. }
  17145. function parse_IndexKeyTypeDecl()
  17146. {
  17147. eventHandler.startNonterminal("IndexKeyTypeDecl", e0);
  17148. shift(79); // 'as'
  17149. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17150. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17151. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17152. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17153. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17154. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17155. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17156. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17157. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17158. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17159. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17160. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17161. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17162. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17163. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17164. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17165. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17166. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17167. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17168. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17169. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17170. // 'xquery'
  17171. whitespace();
  17172. parse_AtomicType();
  17173. lookahead1W(169); // S^WS | '(:' | '*' | '+' | ',' | ';' | '?' | 'collation'
  17174. if (l1 == 39 // '*'
  17175. || l1 == 40 // '+'
  17176. || l1 == 64) // '?'
  17177. {
  17178. whitespace();
  17179. parse_OccurrenceIndicator();
  17180. }
  17181. eventHandler.endNonterminal("IndexKeyTypeDecl", e0);
  17182. }
  17183. function parse_AtomicType()
  17184. {
  17185. eventHandler.startNonterminal("AtomicType", e0);
  17186. parse_EQName();
  17187. eventHandler.endNonterminal("AtomicType", e0);
  17188. }
  17189. function parse_IndexKeyCollation()
  17190. {
  17191. eventHandler.startNonterminal("IndexKeyCollation", e0);
  17192. shift(94); // 'collation'
  17193. lookahead1W(15); // URILiteral | S^WS | '(:'
  17194. shift(7); // URILiteral
  17195. eventHandler.endNonterminal("IndexKeyCollation", e0);
  17196. }
  17197. function parse_IndexDecl()
  17198. {
  17199. eventHandler.startNonterminal("IndexDecl", e0);
  17200. shift(155); // 'index'
  17201. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17202. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17203. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17204. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17205. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17206. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17207. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17208. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17209. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17210. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17211. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17212. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17213. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17214. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17215. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17216. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17217. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17218. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17219. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17220. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17221. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17222. // 'xquery'
  17223. whitespace();
  17224. parse_IndexName();
  17225. lookahead1W(65); // S^WS | '(:' | 'on'
  17226. shift(197); // 'on'
  17227. lookahead1W(63); // S^WS | '(:' | 'nodes'
  17228. shift(192); // 'nodes'
  17229. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17230. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  17231. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  17232. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17233. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17234. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17235. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17236. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17237. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17238. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17239. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17240. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17241. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17242. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17243. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17244. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17245. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17246. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17247. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17248. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17249. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17250. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17251. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17252. // 'xquery' | '{' | '{|'
  17253. whitespace();
  17254. parse_IndexDomainExpr();
  17255. shift(87); // 'by'
  17256. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17257. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  17258. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  17259. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17260. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17261. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17262. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17263. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17264. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17265. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17266. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17267. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17268. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17269. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17270. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17271. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17272. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17273. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17274. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17275. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17276. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17277. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17278. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17279. // 'xquery' | '{' | '{|'
  17280. whitespace();
  17281. parse_IndexKeySpec();
  17282. for (;;)
  17283. {
  17284. lookahead1W(103); // S^WS | '(:' | ',' | ';'
  17285. if (l1 != 41) // ','
  17286. {
  17287. break;
  17288. }
  17289. shift(41); // ','
  17290. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17291. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  17292. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  17293. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17294. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17295. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17296. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17297. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17298. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17299. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17300. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17301. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17302. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17303. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17304. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17305. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17306. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17307. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17308. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17309. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17310. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17311. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17312. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17313. // 'xquery' | '{' | '{|'
  17314. whitespace();
  17315. parse_IndexKeySpec();
  17316. }
  17317. eventHandler.endNonterminal("IndexDecl", e0);
  17318. }
  17319. function parse_ICDecl()
  17320. {
  17321. eventHandler.startNonterminal("ICDecl", e0);
  17322. shift(161); // 'integrity'
  17323. lookahead1W(40); // S^WS | '(:' | 'constraint'
  17324. shift(97); // 'constraint'
  17325. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17326. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17327. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17328. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17329. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17330. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17331. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17332. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17333. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17334. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17335. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17336. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17337. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17338. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17339. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17340. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17341. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17342. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17343. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17344. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17345. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17346. // 'xquery'
  17347. whitespace();
  17348. parse_EQName();
  17349. lookahead1W(120); // S^WS | '(:' | 'foreign' | 'on'
  17350. switch (l1)
  17351. {
  17352. case 197: // 'on'
  17353. whitespace();
  17354. parse_ICCollection();
  17355. break;
  17356. default:
  17357. whitespace();
  17358. parse_ICForeignKey();
  17359. }
  17360. eventHandler.endNonterminal("ICDecl", e0);
  17361. }
  17362. function parse_ICCollection()
  17363. {
  17364. eventHandler.startNonterminal("ICCollection", e0);
  17365. shift(197); // 'on'
  17366. lookahead1W(39); // S^WS | '(:' | 'collection'
  17367. shift(95); // 'collection'
  17368. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17369. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17370. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17371. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17372. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17373. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17374. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17375. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17376. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17377. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17378. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17379. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17380. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17381. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17382. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17383. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17384. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17385. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17386. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17387. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17388. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17389. // 'xquery'
  17390. whitespace();
  17391. parse_EQName();
  17392. lookahead1W(140); // S^WS | '$' | '(:' | 'foreach' | 'node'
  17393. switch (l1)
  17394. {
  17395. case 31: // '$'
  17396. whitespace();
  17397. parse_ICCollSequence();
  17398. break;
  17399. case 191: // 'node'
  17400. whitespace();
  17401. parse_ICCollSequenceUnique();
  17402. break;
  17403. default:
  17404. whitespace();
  17405. parse_ICCollNode();
  17406. }
  17407. eventHandler.endNonterminal("ICCollection", e0);
  17408. }
  17409. function parse_ICCollSequence()
  17410. {
  17411. eventHandler.startNonterminal("ICCollSequence", e0);
  17412. parse_VarRef();
  17413. lookahead1W(37); // S^WS | '(:' | 'check'
  17414. shift(92); // 'check'
  17415. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17416. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  17417. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  17418. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  17419. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  17420. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  17421. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  17422. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  17423. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  17424. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  17425. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  17426. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  17427. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  17428. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  17429. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  17430. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  17431. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17432. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17433. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17434. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17435. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17436. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17437. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17438. // 'xquery' | '{' | '{|'
  17439. whitespace();
  17440. parse_ExprSingle();
  17441. eventHandler.endNonterminal("ICCollSequence", e0);
  17442. }
  17443. function parse_ICCollSequenceUnique()
  17444. {
  17445. eventHandler.startNonterminal("ICCollSequenceUnique", e0);
  17446. shift(191); // 'node'
  17447. lookahead1W(21); // S^WS | '$' | '(:'
  17448. whitespace();
  17449. parse_VarRef();
  17450. lookahead1W(37); // S^WS | '(:' | 'check'
  17451. shift(92); // 'check'
  17452. lookahead1W(80); // S^WS | '(:' | 'unique'
  17453. shift(255); // 'unique'
  17454. lookahead1W(57); // S^WS | '(:' | 'key'
  17455. shift(168); // 'key'
  17456. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17457. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  17458. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  17459. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17460. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17461. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17462. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17463. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17464. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17465. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17466. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17467. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17468. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17469. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17470. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17471. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17472. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17473. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17474. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17475. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17476. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17477. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17478. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17479. // 'xquery' | '{' | '{|'
  17480. whitespace();
  17481. parse_PathExpr();
  17482. eventHandler.endNonterminal("ICCollSequenceUnique", e0);
  17483. }
  17484. function parse_ICCollNode()
  17485. {
  17486. eventHandler.startNonterminal("ICCollNode", e0);
  17487. shift(138); // 'foreach'
  17488. lookahead1W(62); // S^WS | '(:' | 'node'
  17489. shift(191); // 'node'
  17490. lookahead1W(21); // S^WS | '$' | '(:'
  17491. whitespace();
  17492. parse_VarRef();
  17493. lookahead1W(37); // S^WS | '(:' | 'check'
  17494. shift(92); // 'check'
  17495. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17496. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  17497. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  17498. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  17499. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  17500. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  17501. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  17502. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  17503. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  17504. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  17505. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  17506. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  17507. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  17508. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  17509. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  17510. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  17511. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17512. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17513. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17514. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17515. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17516. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17517. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17518. // 'xquery' | '{' | '{|'
  17519. whitespace();
  17520. parse_ExprSingle();
  17521. eventHandler.endNonterminal("ICCollNode", e0);
  17522. }
  17523. function parse_ICForeignKey()
  17524. {
  17525. eventHandler.startNonterminal("ICForeignKey", e0);
  17526. shift(139); // 'foreign'
  17527. lookahead1W(57); // S^WS | '(:' | 'key'
  17528. shift(168); // 'key'
  17529. lookahead1W(51); // S^WS | '(:' | 'from'
  17530. whitespace();
  17531. parse_ICForeignKeySource();
  17532. whitespace();
  17533. parse_ICForeignKeyTarget();
  17534. eventHandler.endNonterminal("ICForeignKey", e0);
  17535. }
  17536. function parse_ICForeignKeySource()
  17537. {
  17538. eventHandler.startNonterminal("ICForeignKeySource", e0);
  17539. shift(140); // 'from'
  17540. lookahead1W(39); // S^WS | '(:' | 'collection'
  17541. whitespace();
  17542. parse_ICForeignKeyValues();
  17543. eventHandler.endNonterminal("ICForeignKeySource", e0);
  17544. }
  17545. function parse_ICForeignKeyTarget()
  17546. {
  17547. eventHandler.startNonterminal("ICForeignKeyTarget", e0);
  17548. shift(248); // 'to'
  17549. lookahead1W(39); // S^WS | '(:' | 'collection'
  17550. whitespace();
  17551. parse_ICForeignKeyValues();
  17552. eventHandler.endNonterminal("ICForeignKeyTarget", e0);
  17553. }
  17554. function parse_ICForeignKeyValues()
  17555. {
  17556. eventHandler.startNonterminal("ICForeignKeyValues", e0);
  17557. shift(95); // 'collection'
  17558. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  17559. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17560. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17561. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17562. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17563. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17564. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17565. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17566. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17567. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17568. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17569. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17570. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17571. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17572. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17573. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17574. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17575. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17576. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17577. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17578. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17579. // 'xquery'
  17580. whitespace();
  17581. parse_EQName();
  17582. lookahead1W(62); // S^WS | '(:' | 'node'
  17583. shift(191); // 'node'
  17584. lookahead1W(21); // S^WS | '$' | '(:'
  17585. whitespace();
  17586. parse_VarRef();
  17587. lookahead1W(57); // S^WS | '(:' | 'key'
  17588. shift(168); // 'key'
  17589. lookahead1W(264); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  17590. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '/' | '//' | '<' |
  17591. // '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  17592. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  17593. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  17594. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  17595. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  17596. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  17597. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  17598. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  17599. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  17600. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  17601. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  17602. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  17603. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  17604. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  17605. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  17606. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  17607. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  17608. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  17609. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  17610. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  17611. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  17612. // 'xquery' | '{' | '{|'
  17613. whitespace();
  17614. parse_PathExpr();
  17615. eventHandler.endNonterminal("ICForeignKeyValues", e0);
  17616. }
  17617. function try_Comment()
  17618. {
  17619. shiftT(36); // '(:'
  17620. for (;;)
  17621. {
  17622. lookahead1(89); // CommentContents | '(:' | ':)'
  17623. if (l1 == 50) // ':)'
  17624. {
  17625. break;
  17626. }
  17627. switch (l1)
  17628. {
  17629. case 24: // CommentContents
  17630. shiftT(24); // CommentContents
  17631. break;
  17632. default:
  17633. try_Comment();
  17634. }
  17635. }
  17636. shiftT(50); // ':)'
  17637. }
  17638. function try_Whitespace()
  17639. {
  17640. switch (l1)
  17641. {
  17642. case 22: // S^WS
  17643. shiftT(22); // S^WS
  17644. break;
  17645. default:
  17646. try_Comment();
  17647. }
  17648. }
  17649. function parse_EQName()
  17650. {
  17651. eventHandler.startNonterminal("EQName", e0);
  17652. lookahead1(248); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  17653. // 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  17654. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  17655. // 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  17656. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  17657. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  17658. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  17659. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  17660. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  17661. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  17662. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  17663. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  17664. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  17665. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  17666. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  17667. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  17668. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  17669. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  17670. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  17671. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  17672. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  17673. switch (l1)
  17674. {
  17675. case 82: // 'attribute'
  17676. shift(82); // 'attribute'
  17677. break;
  17678. case 96: // 'comment'
  17679. shift(96); // 'comment'
  17680. break;
  17681. case 120: // 'document-node'
  17682. shift(120); // 'document-node'
  17683. break;
  17684. case 121: // 'element'
  17685. shift(121); // 'element'
  17686. break;
  17687. case 124: // 'empty-sequence'
  17688. shift(124); // 'empty-sequence'
  17689. break;
  17690. case 145: // 'function'
  17691. shift(145); // 'function'
  17692. break;
  17693. case 152: // 'if'
  17694. shift(152); // 'if'
  17695. break;
  17696. case 165: // 'item'
  17697. shift(165); // 'item'
  17698. break;
  17699. case 185: // 'namespace-node'
  17700. shift(185); // 'namespace-node'
  17701. break;
  17702. case 191: // 'node'
  17703. shift(191); // 'node'
  17704. break;
  17705. case 216: // 'processing-instruction'
  17706. shift(216); // 'processing-instruction'
  17707. break;
  17708. case 226: // 'schema-attribute'
  17709. shift(226); // 'schema-attribute'
  17710. break;
  17711. case 227: // 'schema-element'
  17712. shift(227); // 'schema-element'
  17713. break;
  17714. case 243: // 'switch'
  17715. shift(243); // 'switch'
  17716. break;
  17717. case 244: // 'text'
  17718. shift(244); // 'text'
  17719. break;
  17720. case 253: // 'typeswitch'
  17721. shift(253); // 'typeswitch'
  17722. break;
  17723. default:
  17724. parse_FunctionName();
  17725. }
  17726. eventHandler.endNonterminal("EQName", e0);
  17727. }
  17728. function try_EQName()
  17729. {
  17730. lookahead1(248); // EQName^Token | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  17731. // 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  17732. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  17733. // 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  17734. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  17735. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  17736. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  17737. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  17738. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  17739. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  17740. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  17741. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  17742. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  17743. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  17744. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  17745. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  17746. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  17747. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  17748. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  17749. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  17750. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  17751. switch (l1)
  17752. {
  17753. case 82: // 'attribute'
  17754. shiftT(82); // 'attribute'
  17755. break;
  17756. case 96: // 'comment'
  17757. shiftT(96); // 'comment'
  17758. break;
  17759. case 120: // 'document-node'
  17760. shiftT(120); // 'document-node'
  17761. break;
  17762. case 121: // 'element'
  17763. shiftT(121); // 'element'
  17764. break;
  17765. case 124: // 'empty-sequence'
  17766. shiftT(124); // 'empty-sequence'
  17767. break;
  17768. case 145: // 'function'
  17769. shiftT(145); // 'function'
  17770. break;
  17771. case 152: // 'if'
  17772. shiftT(152); // 'if'
  17773. break;
  17774. case 165: // 'item'
  17775. shiftT(165); // 'item'
  17776. break;
  17777. case 185: // 'namespace-node'
  17778. shiftT(185); // 'namespace-node'
  17779. break;
  17780. case 191: // 'node'
  17781. shiftT(191); // 'node'
  17782. break;
  17783. case 216: // 'processing-instruction'
  17784. shiftT(216); // 'processing-instruction'
  17785. break;
  17786. case 226: // 'schema-attribute'
  17787. shiftT(226); // 'schema-attribute'
  17788. break;
  17789. case 227: // 'schema-element'
  17790. shiftT(227); // 'schema-element'
  17791. break;
  17792. case 243: // 'switch'
  17793. shiftT(243); // 'switch'
  17794. break;
  17795. case 244: // 'text'
  17796. shiftT(244); // 'text'
  17797. break;
  17798. case 253: // 'typeswitch'
  17799. shiftT(253); // 'typeswitch'
  17800. break;
  17801. default:
  17802. try_FunctionName();
  17803. }
  17804. }
  17805. function parse_FunctionName()
  17806. {
  17807. eventHandler.startNonterminal("FunctionName", e0);
  17808. switch (l1)
  17809. {
  17810. case 6: // EQName^Token
  17811. shift(6); // EQName^Token
  17812. break;
  17813. case 70: // 'after'
  17814. shift(70); // 'after'
  17815. break;
  17816. case 73: // 'ancestor'
  17817. shift(73); // 'ancestor'
  17818. break;
  17819. case 74: // 'ancestor-or-self'
  17820. shift(74); // 'ancestor-or-self'
  17821. break;
  17822. case 75: // 'and'
  17823. shift(75); // 'and'
  17824. break;
  17825. case 79: // 'as'
  17826. shift(79); // 'as'
  17827. break;
  17828. case 80: // 'ascending'
  17829. shift(80); // 'ascending'
  17830. break;
  17831. case 84: // 'before'
  17832. shift(84); // 'before'
  17833. break;
  17834. case 88: // 'case'
  17835. shift(88); // 'case'
  17836. break;
  17837. case 89: // 'cast'
  17838. shift(89); // 'cast'
  17839. break;
  17840. case 90: // 'castable'
  17841. shift(90); // 'castable'
  17842. break;
  17843. case 93: // 'child'
  17844. shift(93); // 'child'
  17845. break;
  17846. case 94: // 'collation'
  17847. shift(94); // 'collation'
  17848. break;
  17849. case 103: // 'copy'
  17850. shift(103); // 'copy'
  17851. break;
  17852. case 105: // 'count'
  17853. shift(105); // 'count'
  17854. break;
  17855. case 108: // 'declare'
  17856. shift(108); // 'declare'
  17857. break;
  17858. case 109: // 'default'
  17859. shift(109); // 'default'
  17860. break;
  17861. case 110: // 'delete'
  17862. shift(110); // 'delete'
  17863. break;
  17864. case 111: // 'descendant'
  17865. shift(111); // 'descendant'
  17866. break;
  17867. case 112: // 'descendant-or-self'
  17868. shift(112); // 'descendant-or-self'
  17869. break;
  17870. case 113: // 'descending'
  17871. shift(113); // 'descending'
  17872. break;
  17873. case 118: // 'div'
  17874. shift(118); // 'div'
  17875. break;
  17876. case 119: // 'document'
  17877. shift(119); // 'document'
  17878. break;
  17879. case 122: // 'else'
  17880. shift(122); // 'else'
  17881. break;
  17882. case 123: // 'empty'
  17883. shift(123); // 'empty'
  17884. break;
  17885. case 126: // 'end'
  17886. shift(126); // 'end'
  17887. break;
  17888. case 128: // 'eq'
  17889. shift(128); // 'eq'
  17890. break;
  17891. case 129: // 'every'
  17892. shift(129); // 'every'
  17893. break;
  17894. case 131: // 'except'
  17895. shift(131); // 'except'
  17896. break;
  17897. case 134: // 'first'
  17898. shift(134); // 'first'
  17899. break;
  17900. case 135: // 'following'
  17901. shift(135); // 'following'
  17902. break;
  17903. case 136: // 'following-sibling'
  17904. shift(136); // 'following-sibling'
  17905. break;
  17906. case 137: // 'for'
  17907. shift(137); // 'for'
  17908. break;
  17909. case 146: // 'ge'
  17910. shift(146); // 'ge'
  17911. break;
  17912. case 148: // 'group'
  17913. shift(148); // 'group'
  17914. break;
  17915. case 150: // 'gt'
  17916. shift(150); // 'gt'
  17917. break;
  17918. case 151: // 'idiv'
  17919. shift(151); // 'idiv'
  17920. break;
  17921. case 153: // 'import'
  17922. shift(153); // 'import'
  17923. break;
  17924. case 159: // 'insert'
  17925. shift(159); // 'insert'
  17926. break;
  17927. case 160: // 'instance'
  17928. shift(160); // 'instance'
  17929. break;
  17930. case 162: // 'intersect'
  17931. shift(162); // 'intersect'
  17932. break;
  17933. case 163: // 'into'
  17934. shift(163); // 'into'
  17935. break;
  17936. case 164: // 'is'
  17937. shift(164); // 'is'
  17938. break;
  17939. case 170: // 'last'
  17940. shift(170); // 'last'
  17941. break;
  17942. case 172: // 'le'
  17943. shift(172); // 'le'
  17944. break;
  17945. case 174: // 'let'
  17946. shift(174); // 'let'
  17947. break;
  17948. case 178: // 'lt'
  17949. shift(178); // 'lt'
  17950. break;
  17951. case 180: // 'mod'
  17952. shift(180); // 'mod'
  17953. break;
  17954. case 181: // 'modify'
  17955. shift(181); // 'modify'
  17956. break;
  17957. case 182: // 'module'
  17958. shift(182); // 'module'
  17959. break;
  17960. case 184: // 'namespace'
  17961. shift(184); // 'namespace'
  17962. break;
  17963. case 186: // 'ne'
  17964. shift(186); // 'ne'
  17965. break;
  17966. case 198: // 'only'
  17967. shift(198); // 'only'
  17968. break;
  17969. case 200: // 'or'
  17970. shift(200); // 'or'
  17971. break;
  17972. case 201: // 'order'
  17973. shift(201); // 'order'
  17974. break;
  17975. case 202: // 'ordered'
  17976. shift(202); // 'ordered'
  17977. break;
  17978. case 206: // 'parent'
  17979. shift(206); // 'parent'
  17980. break;
  17981. case 212: // 'preceding'
  17982. shift(212); // 'preceding'
  17983. break;
  17984. case 213: // 'preceding-sibling'
  17985. shift(213); // 'preceding-sibling'
  17986. break;
  17987. case 218: // 'rename'
  17988. shift(218); // 'rename'
  17989. break;
  17990. case 219: // 'replace'
  17991. shift(219); // 'replace'
  17992. break;
  17993. case 220: // 'return'
  17994. shift(220); // 'return'
  17995. break;
  17996. case 224: // 'satisfies'
  17997. shift(224); // 'satisfies'
  17998. break;
  17999. case 229: // 'self'
  18000. shift(229); // 'self'
  18001. break;
  18002. case 235: // 'some'
  18003. shift(235); // 'some'
  18004. break;
  18005. case 236: // 'stable'
  18006. shift(236); // 'stable'
  18007. break;
  18008. case 237: // 'start'
  18009. shift(237); // 'start'
  18010. break;
  18011. case 248: // 'to'
  18012. shift(248); // 'to'
  18013. break;
  18014. case 249: // 'treat'
  18015. shift(249); // 'treat'
  18016. break;
  18017. case 250: // 'try'
  18018. shift(250); // 'try'
  18019. break;
  18020. case 254: // 'union'
  18021. shift(254); // 'union'
  18022. break;
  18023. case 256: // 'unordered'
  18024. shift(256); // 'unordered'
  18025. break;
  18026. case 260: // 'validate'
  18027. shift(260); // 'validate'
  18028. break;
  18029. case 266: // 'where'
  18030. shift(266); // 'where'
  18031. break;
  18032. case 270: // 'with'
  18033. shift(270); // 'with'
  18034. break;
  18035. case 274: // 'xquery'
  18036. shift(274); // 'xquery'
  18037. break;
  18038. case 72: // 'allowing'
  18039. shift(72); // 'allowing'
  18040. break;
  18041. case 81: // 'at'
  18042. shift(81); // 'at'
  18043. break;
  18044. case 83: // 'base-uri'
  18045. shift(83); // 'base-uri'
  18046. break;
  18047. case 85: // 'boundary-space'
  18048. shift(85); // 'boundary-space'
  18049. break;
  18050. case 86: // 'break'
  18051. shift(86); // 'break'
  18052. break;
  18053. case 91: // 'catch'
  18054. shift(91); // 'catch'
  18055. break;
  18056. case 98: // 'construction'
  18057. shift(98); // 'construction'
  18058. break;
  18059. case 101: // 'context'
  18060. shift(101); // 'context'
  18061. break;
  18062. case 102: // 'continue'
  18063. shift(102); // 'continue'
  18064. break;
  18065. case 104: // 'copy-namespaces'
  18066. shift(104); // 'copy-namespaces'
  18067. break;
  18068. case 106: // 'decimal-format'
  18069. shift(106); // 'decimal-format'
  18070. break;
  18071. case 125: // 'encoding'
  18072. shift(125); // 'encoding'
  18073. break;
  18074. case 132: // 'exit'
  18075. shift(132); // 'exit'
  18076. break;
  18077. case 133: // 'external'
  18078. shift(133); // 'external'
  18079. break;
  18080. case 141: // 'ft-option'
  18081. shift(141); // 'ft-option'
  18082. break;
  18083. case 154: // 'in'
  18084. shift(154); // 'in'
  18085. break;
  18086. case 155: // 'index'
  18087. shift(155); // 'index'
  18088. break;
  18089. case 161: // 'integrity'
  18090. shift(161); // 'integrity'
  18091. break;
  18092. case 171: // 'lax'
  18093. shift(171); // 'lax'
  18094. break;
  18095. case 192: // 'nodes'
  18096. shift(192); // 'nodes'
  18097. break;
  18098. case 199: // 'option'
  18099. shift(199); // 'option'
  18100. break;
  18101. case 203: // 'ordering'
  18102. shift(203); // 'ordering'
  18103. break;
  18104. case 222: // 'revalidation'
  18105. shift(222); // 'revalidation'
  18106. break;
  18107. case 225: // 'schema'
  18108. shift(225); // 'schema'
  18109. break;
  18110. case 228: // 'score'
  18111. shift(228); // 'score'
  18112. break;
  18113. case 234: // 'sliding'
  18114. shift(234); // 'sliding'
  18115. break;
  18116. case 240: // 'strict'
  18117. shift(240); // 'strict'
  18118. break;
  18119. case 251: // 'tumbling'
  18120. shift(251); // 'tumbling'
  18121. break;
  18122. case 252: // 'type'
  18123. shift(252); // 'type'
  18124. break;
  18125. case 257: // 'updating'
  18126. shift(257); // 'updating'
  18127. break;
  18128. case 261: // 'value'
  18129. shift(261); // 'value'
  18130. break;
  18131. case 262: // 'variable'
  18132. shift(262); // 'variable'
  18133. break;
  18134. case 263: // 'version'
  18135. shift(263); // 'version'
  18136. break;
  18137. case 267: // 'while'
  18138. shift(267); // 'while'
  18139. break;
  18140. case 97: // 'constraint'
  18141. shift(97); // 'constraint'
  18142. break;
  18143. case 176: // 'loop'
  18144. shift(176); // 'loop'
  18145. break;
  18146. case 221: // 'returning'
  18147. shift(221); // 'returning'
  18148. break;
  18149. case 194: // 'object'
  18150. shift(194); // 'object'
  18151. break;
  18152. case 167: // 'json-item'
  18153. shift(167); // 'json-item'
  18154. break;
  18155. default:
  18156. shift(78); // 'array'
  18157. }
  18158. eventHandler.endNonterminal("FunctionName", e0);
  18159. }
  18160. function try_FunctionName()
  18161. {
  18162. switch (l1)
  18163. {
  18164. case 6: // EQName^Token
  18165. shiftT(6); // EQName^Token
  18166. break;
  18167. case 70: // 'after'
  18168. shiftT(70); // 'after'
  18169. break;
  18170. case 73: // 'ancestor'
  18171. shiftT(73); // 'ancestor'
  18172. break;
  18173. case 74: // 'ancestor-or-self'
  18174. shiftT(74); // 'ancestor-or-self'
  18175. break;
  18176. case 75: // 'and'
  18177. shiftT(75); // 'and'
  18178. break;
  18179. case 79: // 'as'
  18180. shiftT(79); // 'as'
  18181. break;
  18182. case 80: // 'ascending'
  18183. shiftT(80); // 'ascending'
  18184. break;
  18185. case 84: // 'before'
  18186. shiftT(84); // 'before'
  18187. break;
  18188. case 88: // 'case'
  18189. shiftT(88); // 'case'
  18190. break;
  18191. case 89: // 'cast'
  18192. shiftT(89); // 'cast'
  18193. break;
  18194. case 90: // 'castable'
  18195. shiftT(90); // 'castable'
  18196. break;
  18197. case 93: // 'child'
  18198. shiftT(93); // 'child'
  18199. break;
  18200. case 94: // 'collation'
  18201. shiftT(94); // 'collation'
  18202. break;
  18203. case 103: // 'copy'
  18204. shiftT(103); // 'copy'
  18205. break;
  18206. case 105: // 'count'
  18207. shiftT(105); // 'count'
  18208. break;
  18209. case 108: // 'declare'
  18210. shiftT(108); // 'declare'
  18211. break;
  18212. case 109: // 'default'
  18213. shiftT(109); // 'default'
  18214. break;
  18215. case 110: // 'delete'
  18216. shiftT(110); // 'delete'
  18217. break;
  18218. case 111: // 'descendant'
  18219. shiftT(111); // 'descendant'
  18220. break;
  18221. case 112: // 'descendant-or-self'
  18222. shiftT(112); // 'descendant-or-self'
  18223. break;
  18224. case 113: // 'descending'
  18225. shiftT(113); // 'descending'
  18226. break;
  18227. case 118: // 'div'
  18228. shiftT(118); // 'div'
  18229. break;
  18230. case 119: // 'document'
  18231. shiftT(119); // 'document'
  18232. break;
  18233. case 122: // 'else'
  18234. shiftT(122); // 'else'
  18235. break;
  18236. case 123: // 'empty'
  18237. shiftT(123); // 'empty'
  18238. break;
  18239. case 126: // 'end'
  18240. shiftT(126); // 'end'
  18241. break;
  18242. case 128: // 'eq'
  18243. shiftT(128); // 'eq'
  18244. break;
  18245. case 129: // 'every'
  18246. shiftT(129); // 'every'
  18247. break;
  18248. case 131: // 'except'
  18249. shiftT(131); // 'except'
  18250. break;
  18251. case 134: // 'first'
  18252. shiftT(134); // 'first'
  18253. break;
  18254. case 135: // 'following'
  18255. shiftT(135); // 'following'
  18256. break;
  18257. case 136: // 'following-sibling'
  18258. shiftT(136); // 'following-sibling'
  18259. break;
  18260. case 137: // 'for'
  18261. shiftT(137); // 'for'
  18262. break;
  18263. case 146: // 'ge'
  18264. shiftT(146); // 'ge'
  18265. break;
  18266. case 148: // 'group'
  18267. shiftT(148); // 'group'
  18268. break;
  18269. case 150: // 'gt'
  18270. shiftT(150); // 'gt'
  18271. break;
  18272. case 151: // 'idiv'
  18273. shiftT(151); // 'idiv'
  18274. break;
  18275. case 153: // 'import'
  18276. shiftT(153); // 'import'
  18277. break;
  18278. case 159: // 'insert'
  18279. shiftT(159); // 'insert'
  18280. break;
  18281. case 160: // 'instance'
  18282. shiftT(160); // 'instance'
  18283. break;
  18284. case 162: // 'intersect'
  18285. shiftT(162); // 'intersect'
  18286. break;
  18287. case 163: // 'into'
  18288. shiftT(163); // 'into'
  18289. break;
  18290. case 164: // 'is'
  18291. shiftT(164); // 'is'
  18292. break;
  18293. case 170: // 'last'
  18294. shiftT(170); // 'last'
  18295. break;
  18296. case 172: // 'le'
  18297. shiftT(172); // 'le'
  18298. break;
  18299. case 174: // 'let'
  18300. shiftT(174); // 'let'
  18301. break;
  18302. case 178: // 'lt'
  18303. shiftT(178); // 'lt'
  18304. break;
  18305. case 180: // 'mod'
  18306. shiftT(180); // 'mod'
  18307. break;
  18308. case 181: // 'modify'
  18309. shiftT(181); // 'modify'
  18310. break;
  18311. case 182: // 'module'
  18312. shiftT(182); // 'module'
  18313. break;
  18314. case 184: // 'namespace'
  18315. shiftT(184); // 'namespace'
  18316. break;
  18317. case 186: // 'ne'
  18318. shiftT(186); // 'ne'
  18319. break;
  18320. case 198: // 'only'
  18321. shiftT(198); // 'only'
  18322. break;
  18323. case 200: // 'or'
  18324. shiftT(200); // 'or'
  18325. break;
  18326. case 201: // 'order'
  18327. shiftT(201); // 'order'
  18328. break;
  18329. case 202: // 'ordered'
  18330. shiftT(202); // 'ordered'
  18331. break;
  18332. case 206: // 'parent'
  18333. shiftT(206); // 'parent'
  18334. break;
  18335. case 212: // 'preceding'
  18336. shiftT(212); // 'preceding'
  18337. break;
  18338. case 213: // 'preceding-sibling'
  18339. shiftT(213); // 'preceding-sibling'
  18340. break;
  18341. case 218: // 'rename'
  18342. shiftT(218); // 'rename'
  18343. break;
  18344. case 219: // 'replace'
  18345. shiftT(219); // 'replace'
  18346. break;
  18347. case 220: // 'return'
  18348. shiftT(220); // 'return'
  18349. break;
  18350. case 224: // 'satisfies'
  18351. shiftT(224); // 'satisfies'
  18352. break;
  18353. case 229: // 'self'
  18354. shiftT(229); // 'self'
  18355. break;
  18356. case 235: // 'some'
  18357. shiftT(235); // 'some'
  18358. break;
  18359. case 236: // 'stable'
  18360. shiftT(236); // 'stable'
  18361. break;
  18362. case 237: // 'start'
  18363. shiftT(237); // 'start'
  18364. break;
  18365. case 248: // 'to'
  18366. shiftT(248); // 'to'
  18367. break;
  18368. case 249: // 'treat'
  18369. shiftT(249); // 'treat'
  18370. break;
  18371. case 250: // 'try'
  18372. shiftT(250); // 'try'
  18373. break;
  18374. case 254: // 'union'
  18375. shiftT(254); // 'union'
  18376. break;
  18377. case 256: // 'unordered'
  18378. shiftT(256); // 'unordered'
  18379. break;
  18380. case 260: // 'validate'
  18381. shiftT(260); // 'validate'
  18382. break;
  18383. case 266: // 'where'
  18384. shiftT(266); // 'where'
  18385. break;
  18386. case 270: // 'with'
  18387. shiftT(270); // 'with'
  18388. break;
  18389. case 274: // 'xquery'
  18390. shiftT(274); // 'xquery'
  18391. break;
  18392. case 72: // 'allowing'
  18393. shiftT(72); // 'allowing'
  18394. break;
  18395. case 81: // 'at'
  18396. shiftT(81); // 'at'
  18397. break;
  18398. case 83: // 'base-uri'
  18399. shiftT(83); // 'base-uri'
  18400. break;
  18401. case 85: // 'boundary-space'
  18402. shiftT(85); // 'boundary-space'
  18403. break;
  18404. case 86: // 'break'
  18405. shiftT(86); // 'break'
  18406. break;
  18407. case 91: // 'catch'
  18408. shiftT(91); // 'catch'
  18409. break;
  18410. case 98: // 'construction'
  18411. shiftT(98); // 'construction'
  18412. break;
  18413. case 101: // 'context'
  18414. shiftT(101); // 'context'
  18415. break;
  18416. case 102: // 'continue'
  18417. shiftT(102); // 'continue'
  18418. break;
  18419. case 104: // 'copy-namespaces'
  18420. shiftT(104); // 'copy-namespaces'
  18421. break;
  18422. case 106: // 'decimal-format'
  18423. shiftT(106); // 'decimal-format'
  18424. break;
  18425. case 125: // 'encoding'
  18426. shiftT(125); // 'encoding'
  18427. break;
  18428. case 132: // 'exit'
  18429. shiftT(132); // 'exit'
  18430. break;
  18431. case 133: // 'external'
  18432. shiftT(133); // 'external'
  18433. break;
  18434. case 141: // 'ft-option'
  18435. shiftT(141); // 'ft-option'
  18436. break;
  18437. case 154: // 'in'
  18438. shiftT(154); // 'in'
  18439. break;
  18440. case 155: // 'index'
  18441. shiftT(155); // 'index'
  18442. break;
  18443. case 161: // 'integrity'
  18444. shiftT(161); // 'integrity'
  18445. break;
  18446. case 171: // 'lax'
  18447. shiftT(171); // 'lax'
  18448. break;
  18449. case 192: // 'nodes'
  18450. shiftT(192); // 'nodes'
  18451. break;
  18452. case 199: // 'option'
  18453. shiftT(199); // 'option'
  18454. break;
  18455. case 203: // 'ordering'
  18456. shiftT(203); // 'ordering'
  18457. break;
  18458. case 222: // 'revalidation'
  18459. shiftT(222); // 'revalidation'
  18460. break;
  18461. case 225: // 'schema'
  18462. shiftT(225); // 'schema'
  18463. break;
  18464. case 228: // 'score'
  18465. shiftT(228); // 'score'
  18466. break;
  18467. case 234: // 'sliding'
  18468. shiftT(234); // 'sliding'
  18469. break;
  18470. case 240: // 'strict'
  18471. shiftT(240); // 'strict'
  18472. break;
  18473. case 251: // 'tumbling'
  18474. shiftT(251); // 'tumbling'
  18475. break;
  18476. case 252: // 'type'
  18477. shiftT(252); // 'type'
  18478. break;
  18479. case 257: // 'updating'
  18480. shiftT(257); // 'updating'
  18481. break;
  18482. case 261: // 'value'
  18483. shiftT(261); // 'value'
  18484. break;
  18485. case 262: // 'variable'
  18486. shiftT(262); // 'variable'
  18487. break;
  18488. case 263: // 'version'
  18489. shiftT(263); // 'version'
  18490. break;
  18491. case 267: // 'while'
  18492. shiftT(267); // 'while'
  18493. break;
  18494. case 97: // 'constraint'
  18495. shiftT(97); // 'constraint'
  18496. break;
  18497. case 176: // 'loop'
  18498. shiftT(176); // 'loop'
  18499. break;
  18500. case 221: // 'returning'
  18501. shiftT(221); // 'returning'
  18502. break;
  18503. case 194: // 'object'
  18504. shiftT(194); // 'object'
  18505. break;
  18506. case 167: // 'json-item'
  18507. shiftT(167); // 'json-item'
  18508. break;
  18509. default:
  18510. shiftT(78); // 'array'
  18511. }
  18512. }
  18513. function parse_NCName()
  18514. {
  18515. eventHandler.startNonterminal("NCName", e0);
  18516. switch (l1)
  18517. {
  18518. case 19: // NCName^Token
  18519. shift(19); // NCName^Token
  18520. break;
  18521. case 70: // 'after'
  18522. shift(70); // 'after'
  18523. break;
  18524. case 75: // 'and'
  18525. shift(75); // 'and'
  18526. break;
  18527. case 79: // 'as'
  18528. shift(79); // 'as'
  18529. break;
  18530. case 80: // 'ascending'
  18531. shift(80); // 'ascending'
  18532. break;
  18533. case 84: // 'before'
  18534. shift(84); // 'before'
  18535. break;
  18536. case 88: // 'case'
  18537. shift(88); // 'case'
  18538. break;
  18539. case 89: // 'cast'
  18540. shift(89); // 'cast'
  18541. break;
  18542. case 90: // 'castable'
  18543. shift(90); // 'castable'
  18544. break;
  18545. case 94: // 'collation'
  18546. shift(94); // 'collation'
  18547. break;
  18548. case 105: // 'count'
  18549. shift(105); // 'count'
  18550. break;
  18551. case 109: // 'default'
  18552. shift(109); // 'default'
  18553. break;
  18554. case 113: // 'descending'
  18555. shift(113); // 'descending'
  18556. break;
  18557. case 118: // 'div'
  18558. shift(118); // 'div'
  18559. break;
  18560. case 122: // 'else'
  18561. shift(122); // 'else'
  18562. break;
  18563. case 123: // 'empty'
  18564. shift(123); // 'empty'
  18565. break;
  18566. case 126: // 'end'
  18567. shift(126); // 'end'
  18568. break;
  18569. case 128: // 'eq'
  18570. shift(128); // 'eq'
  18571. break;
  18572. case 131: // 'except'
  18573. shift(131); // 'except'
  18574. break;
  18575. case 137: // 'for'
  18576. shift(137); // 'for'
  18577. break;
  18578. case 146: // 'ge'
  18579. shift(146); // 'ge'
  18580. break;
  18581. case 148: // 'group'
  18582. shift(148); // 'group'
  18583. break;
  18584. case 150: // 'gt'
  18585. shift(150); // 'gt'
  18586. break;
  18587. case 151: // 'idiv'
  18588. shift(151); // 'idiv'
  18589. break;
  18590. case 160: // 'instance'
  18591. shift(160); // 'instance'
  18592. break;
  18593. case 162: // 'intersect'
  18594. shift(162); // 'intersect'
  18595. break;
  18596. case 163: // 'into'
  18597. shift(163); // 'into'
  18598. break;
  18599. case 164: // 'is'
  18600. shift(164); // 'is'
  18601. break;
  18602. case 172: // 'le'
  18603. shift(172); // 'le'
  18604. break;
  18605. case 174: // 'let'
  18606. shift(174); // 'let'
  18607. break;
  18608. case 178: // 'lt'
  18609. shift(178); // 'lt'
  18610. break;
  18611. case 180: // 'mod'
  18612. shift(180); // 'mod'
  18613. break;
  18614. case 181: // 'modify'
  18615. shift(181); // 'modify'
  18616. break;
  18617. case 186: // 'ne'
  18618. shift(186); // 'ne'
  18619. break;
  18620. case 198: // 'only'
  18621. shift(198); // 'only'
  18622. break;
  18623. case 200: // 'or'
  18624. shift(200); // 'or'
  18625. break;
  18626. case 201: // 'order'
  18627. shift(201); // 'order'
  18628. break;
  18629. case 220: // 'return'
  18630. shift(220); // 'return'
  18631. break;
  18632. case 224: // 'satisfies'
  18633. shift(224); // 'satisfies'
  18634. break;
  18635. case 236: // 'stable'
  18636. shift(236); // 'stable'
  18637. break;
  18638. case 237: // 'start'
  18639. shift(237); // 'start'
  18640. break;
  18641. case 248: // 'to'
  18642. shift(248); // 'to'
  18643. break;
  18644. case 249: // 'treat'
  18645. shift(249); // 'treat'
  18646. break;
  18647. case 254: // 'union'
  18648. shift(254); // 'union'
  18649. break;
  18650. case 266: // 'where'
  18651. shift(266); // 'where'
  18652. break;
  18653. case 270: // 'with'
  18654. shift(270); // 'with'
  18655. break;
  18656. case 73: // 'ancestor'
  18657. shift(73); // 'ancestor'
  18658. break;
  18659. case 74: // 'ancestor-or-self'
  18660. shift(74); // 'ancestor-or-self'
  18661. break;
  18662. case 82: // 'attribute'
  18663. shift(82); // 'attribute'
  18664. break;
  18665. case 93: // 'child'
  18666. shift(93); // 'child'
  18667. break;
  18668. case 96: // 'comment'
  18669. shift(96); // 'comment'
  18670. break;
  18671. case 103: // 'copy'
  18672. shift(103); // 'copy'
  18673. break;
  18674. case 108: // 'declare'
  18675. shift(108); // 'declare'
  18676. break;
  18677. case 110: // 'delete'
  18678. shift(110); // 'delete'
  18679. break;
  18680. case 111: // 'descendant'
  18681. shift(111); // 'descendant'
  18682. break;
  18683. case 112: // 'descendant-or-self'
  18684. shift(112); // 'descendant-or-self'
  18685. break;
  18686. case 119: // 'document'
  18687. shift(119); // 'document'
  18688. break;
  18689. case 120: // 'document-node'
  18690. shift(120); // 'document-node'
  18691. break;
  18692. case 121: // 'element'
  18693. shift(121); // 'element'
  18694. break;
  18695. case 124: // 'empty-sequence'
  18696. shift(124); // 'empty-sequence'
  18697. break;
  18698. case 129: // 'every'
  18699. shift(129); // 'every'
  18700. break;
  18701. case 134: // 'first'
  18702. shift(134); // 'first'
  18703. break;
  18704. case 135: // 'following'
  18705. shift(135); // 'following'
  18706. break;
  18707. case 136: // 'following-sibling'
  18708. shift(136); // 'following-sibling'
  18709. break;
  18710. case 145: // 'function'
  18711. shift(145); // 'function'
  18712. break;
  18713. case 152: // 'if'
  18714. shift(152); // 'if'
  18715. break;
  18716. case 153: // 'import'
  18717. shift(153); // 'import'
  18718. break;
  18719. case 159: // 'insert'
  18720. shift(159); // 'insert'
  18721. break;
  18722. case 165: // 'item'
  18723. shift(165); // 'item'
  18724. break;
  18725. case 170: // 'last'
  18726. shift(170); // 'last'
  18727. break;
  18728. case 182: // 'module'
  18729. shift(182); // 'module'
  18730. break;
  18731. case 184: // 'namespace'
  18732. shift(184); // 'namespace'
  18733. break;
  18734. case 185: // 'namespace-node'
  18735. shift(185); // 'namespace-node'
  18736. break;
  18737. case 191: // 'node'
  18738. shift(191); // 'node'
  18739. break;
  18740. case 202: // 'ordered'
  18741. shift(202); // 'ordered'
  18742. break;
  18743. case 206: // 'parent'
  18744. shift(206); // 'parent'
  18745. break;
  18746. case 212: // 'preceding'
  18747. shift(212); // 'preceding'
  18748. break;
  18749. case 213: // 'preceding-sibling'
  18750. shift(213); // 'preceding-sibling'
  18751. break;
  18752. case 216: // 'processing-instruction'
  18753. shift(216); // 'processing-instruction'
  18754. break;
  18755. case 218: // 'rename'
  18756. shift(218); // 'rename'
  18757. break;
  18758. case 219: // 'replace'
  18759. shift(219); // 'replace'
  18760. break;
  18761. case 226: // 'schema-attribute'
  18762. shift(226); // 'schema-attribute'
  18763. break;
  18764. case 227: // 'schema-element'
  18765. shift(227); // 'schema-element'
  18766. break;
  18767. case 229: // 'self'
  18768. shift(229); // 'self'
  18769. break;
  18770. case 235: // 'some'
  18771. shift(235); // 'some'
  18772. break;
  18773. case 243: // 'switch'
  18774. shift(243); // 'switch'
  18775. break;
  18776. case 244: // 'text'
  18777. shift(244); // 'text'
  18778. break;
  18779. case 250: // 'try'
  18780. shift(250); // 'try'
  18781. break;
  18782. case 253: // 'typeswitch'
  18783. shift(253); // 'typeswitch'
  18784. break;
  18785. case 256: // 'unordered'
  18786. shift(256); // 'unordered'
  18787. break;
  18788. case 260: // 'validate'
  18789. shift(260); // 'validate'
  18790. break;
  18791. case 262: // 'variable'
  18792. shift(262); // 'variable'
  18793. break;
  18794. case 274: // 'xquery'
  18795. shift(274); // 'xquery'
  18796. break;
  18797. case 72: // 'allowing'
  18798. shift(72); // 'allowing'
  18799. break;
  18800. case 81: // 'at'
  18801. shift(81); // 'at'
  18802. break;
  18803. case 83: // 'base-uri'
  18804. shift(83); // 'base-uri'
  18805. break;
  18806. case 85: // 'boundary-space'
  18807. shift(85); // 'boundary-space'
  18808. break;
  18809. case 86: // 'break'
  18810. shift(86); // 'break'
  18811. break;
  18812. case 91: // 'catch'
  18813. shift(91); // 'catch'
  18814. break;
  18815. case 98: // 'construction'
  18816. shift(98); // 'construction'
  18817. break;
  18818. case 101: // 'context'
  18819. shift(101); // 'context'
  18820. break;
  18821. case 102: // 'continue'
  18822. shift(102); // 'continue'
  18823. break;
  18824. case 104: // 'copy-namespaces'
  18825. shift(104); // 'copy-namespaces'
  18826. break;
  18827. case 106: // 'decimal-format'
  18828. shift(106); // 'decimal-format'
  18829. break;
  18830. case 125: // 'encoding'
  18831. shift(125); // 'encoding'
  18832. break;
  18833. case 132: // 'exit'
  18834. shift(132); // 'exit'
  18835. break;
  18836. case 133: // 'external'
  18837. shift(133); // 'external'
  18838. break;
  18839. case 141: // 'ft-option'
  18840. shift(141); // 'ft-option'
  18841. break;
  18842. case 154: // 'in'
  18843. shift(154); // 'in'
  18844. break;
  18845. case 155: // 'index'
  18846. shift(155); // 'index'
  18847. break;
  18848. case 161: // 'integrity'
  18849. shift(161); // 'integrity'
  18850. break;
  18851. case 171: // 'lax'
  18852. shift(171); // 'lax'
  18853. break;
  18854. case 192: // 'nodes'
  18855. shift(192); // 'nodes'
  18856. break;
  18857. case 199: // 'option'
  18858. shift(199); // 'option'
  18859. break;
  18860. case 203: // 'ordering'
  18861. shift(203); // 'ordering'
  18862. break;
  18863. case 222: // 'revalidation'
  18864. shift(222); // 'revalidation'
  18865. break;
  18866. case 225: // 'schema'
  18867. shift(225); // 'schema'
  18868. break;
  18869. case 228: // 'score'
  18870. shift(228); // 'score'
  18871. break;
  18872. case 234: // 'sliding'
  18873. shift(234); // 'sliding'
  18874. break;
  18875. case 240: // 'strict'
  18876. shift(240); // 'strict'
  18877. break;
  18878. case 251: // 'tumbling'
  18879. shift(251); // 'tumbling'
  18880. break;
  18881. case 252: // 'type'
  18882. shift(252); // 'type'
  18883. break;
  18884. case 257: // 'updating'
  18885. shift(257); // 'updating'
  18886. break;
  18887. case 261: // 'value'
  18888. shift(261); // 'value'
  18889. break;
  18890. case 263: // 'version'
  18891. shift(263); // 'version'
  18892. break;
  18893. case 267: // 'while'
  18894. shift(267); // 'while'
  18895. break;
  18896. case 97: // 'constraint'
  18897. shift(97); // 'constraint'
  18898. break;
  18899. case 176: // 'loop'
  18900. shift(176); // 'loop'
  18901. break;
  18902. default:
  18903. shift(221); // 'returning'
  18904. }
  18905. eventHandler.endNonterminal("NCName", e0);
  18906. }
  18907. function try_NCName()
  18908. {
  18909. switch (l1)
  18910. {
  18911. case 19: // NCName^Token
  18912. shiftT(19); // NCName^Token
  18913. break;
  18914. case 70: // 'after'
  18915. shiftT(70); // 'after'
  18916. break;
  18917. case 75: // 'and'
  18918. shiftT(75); // 'and'
  18919. break;
  18920. case 79: // 'as'
  18921. shiftT(79); // 'as'
  18922. break;
  18923. case 80: // 'ascending'
  18924. shiftT(80); // 'ascending'
  18925. break;
  18926. case 84: // 'before'
  18927. shiftT(84); // 'before'
  18928. break;
  18929. case 88: // 'case'
  18930. shiftT(88); // 'case'
  18931. break;
  18932. case 89: // 'cast'
  18933. shiftT(89); // 'cast'
  18934. break;
  18935. case 90: // 'castable'
  18936. shiftT(90); // 'castable'
  18937. break;
  18938. case 94: // 'collation'
  18939. shiftT(94); // 'collation'
  18940. break;
  18941. case 105: // 'count'
  18942. shiftT(105); // 'count'
  18943. break;
  18944. case 109: // 'default'
  18945. shiftT(109); // 'default'
  18946. break;
  18947. case 113: // 'descending'
  18948. shiftT(113); // 'descending'
  18949. break;
  18950. case 118: // 'div'
  18951. shiftT(118); // 'div'
  18952. break;
  18953. case 122: // 'else'
  18954. shiftT(122); // 'else'
  18955. break;
  18956. case 123: // 'empty'
  18957. shiftT(123); // 'empty'
  18958. break;
  18959. case 126: // 'end'
  18960. shiftT(126); // 'end'
  18961. break;
  18962. case 128: // 'eq'
  18963. shiftT(128); // 'eq'
  18964. break;
  18965. case 131: // 'except'
  18966. shiftT(131); // 'except'
  18967. break;
  18968. case 137: // 'for'
  18969. shiftT(137); // 'for'
  18970. break;
  18971. case 146: // 'ge'
  18972. shiftT(146); // 'ge'
  18973. break;
  18974. case 148: // 'group'
  18975. shiftT(148); // 'group'
  18976. break;
  18977. case 150: // 'gt'
  18978. shiftT(150); // 'gt'
  18979. break;
  18980. case 151: // 'idiv'
  18981. shiftT(151); // 'idiv'
  18982. break;
  18983. case 160: // 'instance'
  18984. shiftT(160); // 'instance'
  18985. break;
  18986. case 162: // 'intersect'
  18987. shiftT(162); // 'intersect'
  18988. break;
  18989. case 163: // 'into'
  18990. shiftT(163); // 'into'
  18991. break;
  18992. case 164: // 'is'
  18993. shiftT(164); // 'is'
  18994. break;
  18995. case 172: // 'le'
  18996. shiftT(172); // 'le'
  18997. break;
  18998. case 174: // 'let'
  18999. shiftT(174); // 'let'
  19000. break;
  19001. case 178: // 'lt'
  19002. shiftT(178); // 'lt'
  19003. break;
  19004. case 180: // 'mod'
  19005. shiftT(180); // 'mod'
  19006. break;
  19007. case 181: // 'modify'
  19008. shiftT(181); // 'modify'
  19009. break;
  19010. case 186: // 'ne'
  19011. shiftT(186); // 'ne'
  19012. break;
  19013. case 198: // 'only'
  19014. shiftT(198); // 'only'
  19015. break;
  19016. case 200: // 'or'
  19017. shiftT(200); // 'or'
  19018. break;
  19019. case 201: // 'order'
  19020. shiftT(201); // 'order'
  19021. break;
  19022. case 220: // 'return'
  19023. shiftT(220); // 'return'
  19024. break;
  19025. case 224: // 'satisfies'
  19026. shiftT(224); // 'satisfies'
  19027. break;
  19028. case 236: // 'stable'
  19029. shiftT(236); // 'stable'
  19030. break;
  19031. case 237: // 'start'
  19032. shiftT(237); // 'start'
  19033. break;
  19034. case 248: // 'to'
  19035. shiftT(248); // 'to'
  19036. break;
  19037. case 249: // 'treat'
  19038. shiftT(249); // 'treat'
  19039. break;
  19040. case 254: // 'union'
  19041. shiftT(254); // 'union'
  19042. break;
  19043. case 266: // 'where'
  19044. shiftT(266); // 'where'
  19045. break;
  19046. case 270: // 'with'
  19047. shiftT(270); // 'with'
  19048. break;
  19049. case 73: // 'ancestor'
  19050. shiftT(73); // 'ancestor'
  19051. break;
  19052. case 74: // 'ancestor-or-self'
  19053. shiftT(74); // 'ancestor-or-self'
  19054. break;
  19055. case 82: // 'attribute'
  19056. shiftT(82); // 'attribute'
  19057. break;
  19058. case 93: // 'child'
  19059. shiftT(93); // 'child'
  19060. break;
  19061. case 96: // 'comment'
  19062. shiftT(96); // 'comment'
  19063. break;
  19064. case 103: // 'copy'
  19065. shiftT(103); // 'copy'
  19066. break;
  19067. case 108: // 'declare'
  19068. shiftT(108); // 'declare'
  19069. break;
  19070. case 110: // 'delete'
  19071. shiftT(110); // 'delete'
  19072. break;
  19073. case 111: // 'descendant'
  19074. shiftT(111); // 'descendant'
  19075. break;
  19076. case 112: // 'descendant-or-self'
  19077. shiftT(112); // 'descendant-or-self'
  19078. break;
  19079. case 119: // 'document'
  19080. shiftT(119); // 'document'
  19081. break;
  19082. case 120: // 'document-node'
  19083. shiftT(120); // 'document-node'
  19084. break;
  19085. case 121: // 'element'
  19086. shiftT(121); // 'element'
  19087. break;
  19088. case 124: // 'empty-sequence'
  19089. shiftT(124); // 'empty-sequence'
  19090. break;
  19091. case 129: // 'every'
  19092. shiftT(129); // 'every'
  19093. break;
  19094. case 134: // 'first'
  19095. shiftT(134); // 'first'
  19096. break;
  19097. case 135: // 'following'
  19098. shiftT(135); // 'following'
  19099. break;
  19100. case 136: // 'following-sibling'
  19101. shiftT(136); // 'following-sibling'
  19102. break;
  19103. case 145: // 'function'
  19104. shiftT(145); // 'function'
  19105. break;
  19106. case 152: // 'if'
  19107. shiftT(152); // 'if'
  19108. break;
  19109. case 153: // 'import'
  19110. shiftT(153); // 'import'
  19111. break;
  19112. case 159: // 'insert'
  19113. shiftT(159); // 'insert'
  19114. break;
  19115. case 165: // 'item'
  19116. shiftT(165); // 'item'
  19117. break;
  19118. case 170: // 'last'
  19119. shiftT(170); // 'last'
  19120. break;
  19121. case 182: // 'module'
  19122. shiftT(182); // 'module'
  19123. break;
  19124. case 184: // 'namespace'
  19125. shiftT(184); // 'namespace'
  19126. break;
  19127. case 185: // 'namespace-node'
  19128. shiftT(185); // 'namespace-node'
  19129. break;
  19130. case 191: // 'node'
  19131. shiftT(191); // 'node'
  19132. break;
  19133. case 202: // 'ordered'
  19134. shiftT(202); // 'ordered'
  19135. break;
  19136. case 206: // 'parent'
  19137. shiftT(206); // 'parent'
  19138. break;
  19139. case 212: // 'preceding'
  19140. shiftT(212); // 'preceding'
  19141. break;
  19142. case 213: // 'preceding-sibling'
  19143. shiftT(213); // 'preceding-sibling'
  19144. break;
  19145. case 216: // 'processing-instruction'
  19146. shiftT(216); // 'processing-instruction'
  19147. break;
  19148. case 218: // 'rename'
  19149. shiftT(218); // 'rename'
  19150. break;
  19151. case 219: // 'replace'
  19152. shiftT(219); // 'replace'
  19153. break;
  19154. case 226: // 'schema-attribute'
  19155. shiftT(226); // 'schema-attribute'
  19156. break;
  19157. case 227: // 'schema-element'
  19158. shiftT(227); // 'schema-element'
  19159. break;
  19160. case 229: // 'self'
  19161. shiftT(229); // 'self'
  19162. break;
  19163. case 235: // 'some'
  19164. shiftT(235); // 'some'
  19165. break;
  19166. case 243: // 'switch'
  19167. shiftT(243); // 'switch'
  19168. break;
  19169. case 244: // 'text'
  19170. shiftT(244); // 'text'
  19171. break;
  19172. case 250: // 'try'
  19173. shiftT(250); // 'try'
  19174. break;
  19175. case 253: // 'typeswitch'
  19176. shiftT(253); // 'typeswitch'
  19177. break;
  19178. case 256: // 'unordered'
  19179. shiftT(256); // 'unordered'
  19180. break;
  19181. case 260: // 'validate'
  19182. shiftT(260); // 'validate'
  19183. break;
  19184. case 262: // 'variable'
  19185. shiftT(262); // 'variable'
  19186. break;
  19187. case 274: // 'xquery'
  19188. shiftT(274); // 'xquery'
  19189. break;
  19190. case 72: // 'allowing'
  19191. shiftT(72); // 'allowing'
  19192. break;
  19193. case 81: // 'at'
  19194. shiftT(81); // 'at'
  19195. break;
  19196. case 83: // 'base-uri'
  19197. shiftT(83); // 'base-uri'
  19198. break;
  19199. case 85: // 'boundary-space'
  19200. shiftT(85); // 'boundary-space'
  19201. break;
  19202. case 86: // 'break'
  19203. shiftT(86); // 'break'
  19204. break;
  19205. case 91: // 'catch'
  19206. shiftT(91); // 'catch'
  19207. break;
  19208. case 98: // 'construction'
  19209. shiftT(98); // 'construction'
  19210. break;
  19211. case 101: // 'context'
  19212. shiftT(101); // 'context'
  19213. break;
  19214. case 102: // 'continue'
  19215. shiftT(102); // 'continue'
  19216. break;
  19217. case 104: // 'copy-namespaces'
  19218. shiftT(104); // 'copy-namespaces'
  19219. break;
  19220. case 106: // 'decimal-format'
  19221. shiftT(106); // 'decimal-format'
  19222. break;
  19223. case 125: // 'encoding'
  19224. shiftT(125); // 'encoding'
  19225. break;
  19226. case 132: // 'exit'
  19227. shiftT(132); // 'exit'
  19228. break;
  19229. case 133: // 'external'
  19230. shiftT(133); // 'external'
  19231. break;
  19232. case 141: // 'ft-option'
  19233. shiftT(141); // 'ft-option'
  19234. break;
  19235. case 154: // 'in'
  19236. shiftT(154); // 'in'
  19237. break;
  19238. case 155: // 'index'
  19239. shiftT(155); // 'index'
  19240. break;
  19241. case 161: // 'integrity'
  19242. shiftT(161); // 'integrity'
  19243. break;
  19244. case 171: // 'lax'
  19245. shiftT(171); // 'lax'
  19246. break;
  19247. case 192: // 'nodes'
  19248. shiftT(192); // 'nodes'
  19249. break;
  19250. case 199: // 'option'
  19251. shiftT(199); // 'option'
  19252. break;
  19253. case 203: // 'ordering'
  19254. shiftT(203); // 'ordering'
  19255. break;
  19256. case 222: // 'revalidation'
  19257. shiftT(222); // 'revalidation'
  19258. break;
  19259. case 225: // 'schema'
  19260. shiftT(225); // 'schema'
  19261. break;
  19262. case 228: // 'score'
  19263. shiftT(228); // 'score'
  19264. break;
  19265. case 234: // 'sliding'
  19266. shiftT(234); // 'sliding'
  19267. break;
  19268. case 240: // 'strict'
  19269. shiftT(240); // 'strict'
  19270. break;
  19271. case 251: // 'tumbling'
  19272. shiftT(251); // 'tumbling'
  19273. break;
  19274. case 252: // 'type'
  19275. shiftT(252); // 'type'
  19276. break;
  19277. case 257: // 'updating'
  19278. shiftT(257); // 'updating'
  19279. break;
  19280. case 261: // 'value'
  19281. shiftT(261); // 'value'
  19282. break;
  19283. case 263: // 'version'
  19284. shiftT(263); // 'version'
  19285. break;
  19286. case 267: // 'while'
  19287. shiftT(267); // 'while'
  19288. break;
  19289. case 97: // 'constraint'
  19290. shiftT(97); // 'constraint'
  19291. break;
  19292. case 176: // 'loop'
  19293. shiftT(176); // 'loop'
  19294. break;
  19295. default:
  19296. shiftT(221); // 'returning'
  19297. }
  19298. }
  19299. function parse_MainModule()
  19300. {
  19301. eventHandler.startNonterminal("MainModule", e0);
  19302. parse_Prolog();
  19303. whitespace();
  19304. parse_Program();
  19305. eventHandler.endNonterminal("MainModule", e0);
  19306. }
  19307. function parse_Program()
  19308. {
  19309. eventHandler.startNonterminal("Program", e0);
  19310. parse_StatementsAndOptionalExpr();
  19311. eventHandler.endNonterminal("Program", e0);
  19312. }
  19313. function parse_Statements()
  19314. {
  19315. eventHandler.startNonterminal("Statements", e0);
  19316. for (;;)
  19317. {
  19318. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19319. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  19320. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  19321. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  19322. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19323. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19324. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19325. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19326. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19327. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19328. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19329. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19330. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19331. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19332. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19333. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19334. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19335. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19336. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19337. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19338. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19339. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19340. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19341. // 'xquery' | '{' | '{|' | '}'
  19342. switch (l1)
  19343. {
  19344. case 34: // '('
  19345. lookahead2W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19346. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  19347. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  19348. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  19349. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19350. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19351. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19352. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19353. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19354. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19355. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19356. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19357. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19358. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19359. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19360. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19361. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19362. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19363. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19364. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19365. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19366. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19367. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19368. // 'xquery' | '{' | '{|'
  19369. break;
  19370. case 35: // '(#'
  19371. lookahead2(250); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  19372. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  19373. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  19374. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  19375. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  19376. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  19377. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  19378. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  19379. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  19380. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  19381. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  19382. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  19383. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  19384. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  19385. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  19386. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  19387. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  19388. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  19389. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  19390. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  19391. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  19392. break;
  19393. case 46: // '/'
  19394. lookahead2W(281); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19395. // StringLiteral | S^WS | EOF | '!' | '!=' | '$' | '%' | '(' | '(:' | '*' | '+' |
  19396. // ',' | '-' | '.' | '..' | ';' | '<' | '<!--' | '<<' | '<=' | '<?' | '=' | '>' |
  19397. // '>=' | '>>' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  19398. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  19399. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  19400. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  19401. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  19402. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19403. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19404. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19405. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19406. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19407. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19408. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19409. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19410. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19411. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19412. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19413. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19414. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19415. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19416. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19417. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19418. // 'xquery' | '{' | '{|' | '|' | '||' | '}'
  19419. break;
  19420. case 47: // '//'
  19421. lookahead2W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19422. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  19423. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  19424. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  19425. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  19426. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  19427. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  19428. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  19429. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  19430. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  19431. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  19432. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  19433. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  19434. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  19435. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  19436. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  19437. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  19438. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  19439. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  19440. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  19441. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  19442. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  19443. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  19444. break;
  19445. case 54: // '<'
  19446. lookahead2(4); // QName
  19447. break;
  19448. case 55: // '<!--'
  19449. lookahead2(1); // DirCommentContents
  19450. break;
  19451. case 59: // '<?'
  19452. lookahead2(3); // PITarget
  19453. break;
  19454. case 66: // '@'
  19455. lookahead2W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19456. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  19457. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  19458. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  19459. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  19460. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  19461. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  19462. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  19463. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  19464. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  19465. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  19466. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  19467. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  19468. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  19469. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19470. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19471. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19472. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19473. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19474. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19475. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19476. // 'xquery'
  19477. break;
  19478. case 68: // '['
  19479. lookahead2W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19480. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  19481. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | ']' | 'after' | 'allowing' |
  19482. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  19483. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19484. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19485. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19486. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19487. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19488. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19489. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19490. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19491. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19492. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19493. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19494. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19495. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19496. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19497. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19498. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19499. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19500. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19501. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19502. // 'xquery' | '{' | '{|'
  19503. break;
  19504. case 77: // 'append'
  19505. lookahead2W(56); // S^WS | '(:' | 'json'
  19506. break;
  19507. case 82: // 'attribute'
  19508. lookahead2W(278); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  19509. // '-' | '/' | '//' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' |
  19510. // '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' |
  19511. // 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  19512. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  19513. // 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  19514. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  19515. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  19516. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  19517. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  19518. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  19519. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  19520. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  19521. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  19522. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  19523. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  19524. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19525. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19526. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19527. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19528. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19529. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19530. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19531. // 'xquery' | '{' | '|' | '||' | '}'
  19532. break;
  19533. case 121: // 'element'
  19534. lookahead2W(277); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  19535. // '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  19536. // 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  19537. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19538. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19539. // 'comment' | 'constraint' | 'construction' | 'contains' | 'context' | 'continue' |
  19540. // 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19541. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19542. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19543. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19544. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19545. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19546. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19547. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19548. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19549. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19550. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19551. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19552. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19553. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19554. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19555. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19556. // 'xquery' | '{' | '|' | '||' | '}'
  19557. break;
  19558. case 132: // 'exit'
  19559. lookahead2W(202); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19560. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19561. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19562. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' |
  19563. // 'returning' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  19564. break;
  19565. case 137: // 'for'
  19566. lookahead2W(206); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  19567. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19568. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19569. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'sliding' |
  19570. // 'to' | 'treat' | 'tumbling' | 'union' | '|' | '||' | '}'
  19571. break;
  19572. case 174: // 'let'
  19573. lookahead2W(204); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  19574. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19575. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19576. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'score' |
  19577. // 'to' | 'treat' | 'union' | '|' | '||' | '}'
  19578. break;
  19579. case 218: // 'rename'
  19580. lookahead2W(205); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19581. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19582. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19583. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  19584. // 'or' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  19585. break;
  19586. case 219: // 'replace'
  19587. lookahead2W(208); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19588. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19589. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19590. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  19591. // 'or' | 'to' | 'treat' | 'union' | 'value' | '|' | '||' | '}'
  19592. break;
  19593. case 260: // 'validate'
  19594. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19595. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19596. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19597. // 'instance' | 'intersect' | 'is' | 'lax' | 'le' | 'lt' | 'mod' | 'ne' | 'or' |
  19598. // 'strict' | 'to' | 'treat' | 'type' | 'union' | '{' | '|' | '||' | '}'
  19599. break;
  19600. case 276: // '{'
  19601. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19602. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  19603. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  19604. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  19605. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19606. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19607. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19608. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19609. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19610. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19611. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19612. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19613. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19614. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19615. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19616. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19617. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19618. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19619. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19620. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19621. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19622. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19623. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19624. // 'xquery' | '{' | '{|' | '}'
  19625. break;
  19626. case 278: // '{|'
  19627. lookahead2W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19628. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  19629. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  19630. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  19631. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19632. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19633. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19634. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19635. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19636. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19637. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19638. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19639. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19640. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19641. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19642. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19643. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19644. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19645. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19646. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19647. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19648. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19649. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19650. // 'xquery' | '{' | '{|' | '|}'
  19651. break;
  19652. case 5: // Wildcard
  19653. case 45: // '..'
  19654. lookahead2W(186); // S^WS | EOF | '!' | '!=' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' | '<' |
  19655. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  19656. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  19657. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  19658. // 'union' | '|' | '||' | '}'
  19659. break;
  19660. case 31: // '$'
  19661. case 32: // '%'
  19662. lookahead2W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  19663. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  19664. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  19665. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  19666. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  19667. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  19668. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  19669. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  19670. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  19671. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  19672. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  19673. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  19674. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  19675. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  19676. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19677. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19678. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19679. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19680. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19681. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19682. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19683. // 'xquery'
  19684. break;
  19685. case 40: // '+'
  19686. case 42: // '-'
  19687. lookahead2W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  19688. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  19689. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  19690. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  19691. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  19692. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  19693. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  19694. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19695. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19696. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19697. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19698. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19699. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19700. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  19701. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19702. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  19703. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19704. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19705. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19706. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19707. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19708. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19709. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19710. // 'xquery' | '{' | '{|'
  19711. break;
  19712. case 86: // 'break'
  19713. case 102: // 'continue'
  19714. lookahead2W(200); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19715. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19716. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19717. // 'instance' | 'intersect' | 'is' | 'le' | 'loop' | 'lt' | 'mod' | 'ne' | 'or' |
  19718. // 'to' | 'treat' | 'union' | '|' | '||' | '}'
  19719. break;
  19720. case 110: // 'delete'
  19721. case 159: // 'insert'
  19722. lookahead2W(207); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19723. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19724. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19725. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  19726. // 'nodes' | 'or' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  19727. break;
  19728. case 124: // 'empty-sequence'
  19729. case 165: // 'item'
  19730. lookahead2W(191); // S^WS | EOF | '!' | '!=' | '#' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  19731. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  19732. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  19733. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  19734. // 'union' | '|' | '||' | '}'
  19735. break;
  19736. case 184: // 'namespace'
  19737. case 216: // 'processing-instruction'
  19738. lookahead2W(266); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  19739. // '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  19740. // 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'as' |
  19741. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  19742. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  19743. // 'comment' | 'constraint' | 'construction' | 'contains' | 'context' | 'continue' |
  19744. // 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  19745. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  19746. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  19747. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  19748. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  19749. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  19750. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'last' |
  19751. // 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  19752. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'only' | 'option' |
  19753. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  19754. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  19755. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  19756. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  19757. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  19758. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  19759. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  19760. // 'xquery' | '{' | '|' | '||' | '}'
  19761. break;
  19762. case 103: // 'copy'
  19763. case 129: // 'every'
  19764. case 235: // 'some'
  19765. case 262: // 'variable'
  19766. lookahead2W(197); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  19767. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19768. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19769. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  19770. // 'treat' | 'union' | '|' | '||' | '}'
  19771. break;
  19772. case 8: // IntegerLiteral
  19773. case 9: // DecimalLiteral
  19774. case 10: // DoubleLiteral
  19775. case 11: // StringLiteral
  19776. case 44: // '.'
  19777. lookahead2W(192); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  19778. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  19779. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  19780. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  19781. // 'union' | '|' | '||' | '}'
  19782. break;
  19783. case 96: // 'comment'
  19784. case 119: // 'document'
  19785. case 202: // 'ordered'
  19786. case 244: // 'text'
  19787. case 250: // 'try'
  19788. case 256: // 'unordered'
  19789. lookahead2W(203); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19790. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19791. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19792. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  19793. // 'treat' | 'union' | '{' | '|' | '||' | '}'
  19794. break;
  19795. case 73: // 'ancestor'
  19796. case 74: // 'ancestor-or-self'
  19797. case 93: // 'child'
  19798. case 111: // 'descendant'
  19799. case 112: // 'descendant-or-self'
  19800. case 135: // 'following'
  19801. case 136: // 'following-sibling'
  19802. case 206: // 'parent'
  19803. case 212: // 'preceding'
  19804. case 213: // 'preceding-sibling'
  19805. case 229: // 'self'
  19806. lookahead2W(198); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19807. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19808. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19809. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  19810. // 'treat' | 'union' | '|' | '||' | '}'
  19811. break;
  19812. case 6: // EQName^Token
  19813. case 70: // 'after'
  19814. case 72: // 'allowing'
  19815. case 75: // 'and'
  19816. case 78: // 'array'
  19817. case 79: // 'as'
  19818. case 80: // 'ascending'
  19819. case 81: // 'at'
  19820. case 83: // 'base-uri'
  19821. case 84: // 'before'
  19822. case 85: // 'boundary-space'
  19823. case 88: // 'case'
  19824. case 89: // 'cast'
  19825. case 90: // 'castable'
  19826. case 91: // 'catch'
  19827. case 94: // 'collation'
  19828. case 97: // 'constraint'
  19829. case 98: // 'construction'
  19830. case 101: // 'context'
  19831. case 104: // 'copy-namespaces'
  19832. case 105: // 'count'
  19833. case 106: // 'decimal-format'
  19834. case 108: // 'declare'
  19835. case 109: // 'default'
  19836. case 113: // 'descending'
  19837. case 118: // 'div'
  19838. case 120: // 'document-node'
  19839. case 122: // 'else'
  19840. case 123: // 'empty'
  19841. case 125: // 'encoding'
  19842. case 126: // 'end'
  19843. case 128: // 'eq'
  19844. case 131: // 'except'
  19845. case 133: // 'external'
  19846. case 134: // 'first'
  19847. case 141: // 'ft-option'
  19848. case 145: // 'function'
  19849. case 146: // 'ge'
  19850. case 148: // 'group'
  19851. case 150: // 'gt'
  19852. case 151: // 'idiv'
  19853. case 152: // 'if'
  19854. case 153: // 'import'
  19855. case 154: // 'in'
  19856. case 155: // 'index'
  19857. case 160: // 'instance'
  19858. case 161: // 'integrity'
  19859. case 162: // 'intersect'
  19860. case 163: // 'into'
  19861. case 164: // 'is'
  19862. case 167: // 'json-item'
  19863. case 170: // 'last'
  19864. case 171: // 'lax'
  19865. case 172: // 'le'
  19866. case 176: // 'loop'
  19867. case 178: // 'lt'
  19868. case 180: // 'mod'
  19869. case 181: // 'modify'
  19870. case 182: // 'module'
  19871. case 185: // 'namespace-node'
  19872. case 186: // 'ne'
  19873. case 191: // 'node'
  19874. case 192: // 'nodes'
  19875. case 194: // 'object'
  19876. case 198: // 'only'
  19877. case 199: // 'option'
  19878. case 200: // 'or'
  19879. case 201: // 'order'
  19880. case 203: // 'ordering'
  19881. case 220: // 'return'
  19882. case 221: // 'returning'
  19883. case 222: // 'revalidation'
  19884. case 224: // 'satisfies'
  19885. case 225: // 'schema'
  19886. case 226: // 'schema-attribute'
  19887. case 227: // 'schema-element'
  19888. case 228: // 'score'
  19889. case 234: // 'sliding'
  19890. case 236: // 'stable'
  19891. case 237: // 'start'
  19892. case 240: // 'strict'
  19893. case 243: // 'switch'
  19894. case 248: // 'to'
  19895. case 249: // 'treat'
  19896. case 251: // 'tumbling'
  19897. case 252: // 'type'
  19898. case 253: // 'typeswitch'
  19899. case 254: // 'union'
  19900. case 257: // 'updating'
  19901. case 261: // 'value'
  19902. case 263: // 'version'
  19903. case 266: // 'where'
  19904. case 267: // 'while'
  19905. case 270: // 'with'
  19906. case 274: // 'xquery'
  19907. lookahead2W(195); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  19908. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  19909. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  19910. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  19911. // 'treat' | 'union' | '|' | '||' | '}'
  19912. break;
  19913. default:
  19914. lk = l1;
  19915. }
  19916. if (lk != 25 // EOF
  19917. && lk != 282 // '}'
  19918. && lk != 12805 // Wildcard EOF
  19919. && lk != 12806 // EQName^Token EOF
  19920. && lk != 12808 // IntegerLiteral EOF
  19921. && lk != 12809 // DecimalLiteral EOF
  19922. && lk != 12810 // DoubleLiteral EOF
  19923. && lk != 12811 // StringLiteral EOF
  19924. && lk != 12844 // '.' EOF
  19925. && lk != 12845 // '..' EOF
  19926. && lk != 12846 // '/' EOF
  19927. && lk != 12870 // 'after' EOF
  19928. && lk != 12872 // 'allowing' EOF
  19929. && lk != 12873 // 'ancestor' EOF
  19930. && lk != 12874 // 'ancestor-or-self' EOF
  19931. && lk != 12875 // 'and' EOF
  19932. && lk != 12878 // 'array' EOF
  19933. && lk != 12879 // 'as' EOF
  19934. && lk != 12880 // 'ascending' EOF
  19935. && lk != 12881 // 'at' EOF
  19936. && lk != 12882 // 'attribute' EOF
  19937. && lk != 12883 // 'base-uri' EOF
  19938. && lk != 12884 // 'before' EOF
  19939. && lk != 12885 // 'boundary-space' EOF
  19940. && lk != 12886 // 'break' EOF
  19941. && lk != 12888 // 'case' EOF
  19942. && lk != 12889 // 'cast' EOF
  19943. && lk != 12890 // 'castable' EOF
  19944. && lk != 12891 // 'catch' EOF
  19945. && lk != 12893 // 'child' EOF
  19946. && lk != 12894 // 'collation' EOF
  19947. && lk != 12896 // 'comment' EOF
  19948. && lk != 12897 // 'constraint' EOF
  19949. && lk != 12898 // 'construction' EOF
  19950. && lk != 12901 // 'context' EOF
  19951. && lk != 12902 // 'continue' EOF
  19952. && lk != 12903 // 'copy' EOF
  19953. && lk != 12904 // 'copy-namespaces' EOF
  19954. && lk != 12905 // 'count' EOF
  19955. && lk != 12906 // 'decimal-format' EOF
  19956. && lk != 12908 // 'declare' EOF
  19957. && lk != 12909 // 'default' EOF
  19958. && lk != 12910 // 'delete' EOF
  19959. && lk != 12911 // 'descendant' EOF
  19960. && lk != 12912 // 'descendant-or-self' EOF
  19961. && lk != 12913 // 'descending' EOF
  19962. && lk != 12918 // 'div' EOF
  19963. && lk != 12919 // 'document' EOF
  19964. && lk != 12920 // 'document-node' EOF
  19965. && lk != 12921 // 'element' EOF
  19966. && lk != 12922 // 'else' EOF
  19967. && lk != 12923 // 'empty' EOF
  19968. && lk != 12924 // 'empty-sequence' EOF
  19969. && lk != 12925 // 'encoding' EOF
  19970. && lk != 12926 // 'end' EOF
  19971. && lk != 12928 // 'eq' EOF
  19972. && lk != 12929 // 'every' EOF
  19973. && lk != 12931 // 'except' EOF
  19974. && lk != 12932 // 'exit' EOF
  19975. && lk != 12933 // 'external' EOF
  19976. && lk != 12934 // 'first' EOF
  19977. && lk != 12935 // 'following' EOF
  19978. && lk != 12936 // 'following-sibling' EOF
  19979. && lk != 12937 // 'for' EOF
  19980. && lk != 12941 // 'ft-option' EOF
  19981. && lk != 12945 // 'function' EOF
  19982. && lk != 12946 // 'ge' EOF
  19983. && lk != 12948 // 'group' EOF
  19984. && lk != 12950 // 'gt' EOF
  19985. && lk != 12951 // 'idiv' EOF
  19986. && lk != 12952 // 'if' EOF
  19987. && lk != 12953 // 'import' EOF
  19988. && lk != 12954 // 'in' EOF
  19989. && lk != 12955 // 'index' EOF
  19990. && lk != 12959 // 'insert' EOF
  19991. && lk != 12960 // 'instance' EOF
  19992. && lk != 12961 // 'integrity' EOF
  19993. && lk != 12962 // 'intersect' EOF
  19994. && lk != 12963 // 'into' EOF
  19995. && lk != 12964 // 'is' EOF
  19996. && lk != 12965 // 'item' EOF
  19997. && lk != 12967 // 'json-item' EOF
  19998. && lk != 12970 // 'last' EOF
  19999. && lk != 12971 // 'lax' EOF
  20000. && lk != 12972 // 'le' EOF
  20001. && lk != 12974 // 'let' EOF
  20002. && lk != 12976 // 'loop' EOF
  20003. && lk != 12978 // 'lt' EOF
  20004. && lk != 12980 // 'mod' EOF
  20005. && lk != 12981 // 'modify' EOF
  20006. && lk != 12982 // 'module' EOF
  20007. && lk != 12984 // 'namespace' EOF
  20008. && lk != 12985 // 'namespace-node' EOF
  20009. && lk != 12986 // 'ne' EOF
  20010. && lk != 12991 // 'node' EOF
  20011. && lk != 12992 // 'nodes' EOF
  20012. && lk != 12994 // 'object' EOF
  20013. && lk != 12998 // 'only' EOF
  20014. && lk != 12999 // 'option' EOF
  20015. && lk != 13000 // 'or' EOF
  20016. && lk != 13001 // 'order' EOF
  20017. && lk != 13002 // 'ordered' EOF
  20018. && lk != 13003 // 'ordering' EOF
  20019. && lk != 13006 // 'parent' EOF
  20020. && lk != 13012 // 'preceding' EOF
  20021. && lk != 13013 // 'preceding-sibling' EOF
  20022. && lk != 13016 // 'processing-instruction' EOF
  20023. && lk != 13018 // 'rename' EOF
  20024. && lk != 13019 // 'replace' EOF
  20025. && lk != 13020 // 'return' EOF
  20026. && lk != 13021 // 'returning' EOF
  20027. && lk != 13022 // 'revalidation' EOF
  20028. && lk != 13024 // 'satisfies' EOF
  20029. && lk != 13025 // 'schema' EOF
  20030. && lk != 13026 // 'schema-attribute' EOF
  20031. && lk != 13027 // 'schema-element' EOF
  20032. && lk != 13028 // 'score' EOF
  20033. && lk != 13029 // 'self' EOF
  20034. && lk != 13034 // 'sliding' EOF
  20035. && lk != 13035 // 'some' EOF
  20036. && lk != 13036 // 'stable' EOF
  20037. && lk != 13037 // 'start' EOF
  20038. && lk != 13040 // 'strict' EOF
  20039. && lk != 13043 // 'switch' EOF
  20040. && lk != 13044 // 'text' EOF
  20041. && lk != 13048 // 'to' EOF
  20042. && lk != 13049 // 'treat' EOF
  20043. && lk != 13050 // 'try' EOF
  20044. && lk != 13051 // 'tumbling' EOF
  20045. && lk != 13052 // 'type' EOF
  20046. && lk != 13053 // 'typeswitch' EOF
  20047. && lk != 13054 // 'union' EOF
  20048. && lk != 13056 // 'unordered' EOF
  20049. && lk != 13057 // 'updating' EOF
  20050. && lk != 13060 // 'validate' EOF
  20051. && lk != 13061 // 'value' EOF
  20052. && lk != 13062 // 'variable' EOF
  20053. && lk != 13063 // 'version' EOF
  20054. && lk != 13066 // 'where' EOF
  20055. && lk != 13067 // 'while' EOF
  20056. && lk != 13070 // 'with' EOF
  20057. && lk != 13074 // 'xquery' EOF
  20058. && lk != 16134 // 'variable' '$'
  20059. && lk != 20997 // Wildcard ','
  20060. && lk != 20998 // EQName^Token ','
  20061. && lk != 21000 // IntegerLiteral ','
  20062. && lk != 21001 // DecimalLiteral ','
  20063. && lk != 21002 // DoubleLiteral ','
  20064. && lk != 21003 // StringLiteral ','
  20065. && lk != 21036 // '.' ','
  20066. && lk != 21037 // '..' ','
  20067. && lk != 21038 // '/' ','
  20068. && lk != 21062 // 'after' ','
  20069. && lk != 21064 // 'allowing' ','
  20070. && lk != 21065 // 'ancestor' ','
  20071. && lk != 21066 // 'ancestor-or-self' ','
  20072. && lk != 21067 // 'and' ','
  20073. && lk != 21070 // 'array' ','
  20074. && lk != 21071 // 'as' ','
  20075. && lk != 21072 // 'ascending' ','
  20076. && lk != 21073 // 'at' ','
  20077. && lk != 21074 // 'attribute' ','
  20078. && lk != 21075 // 'base-uri' ','
  20079. && lk != 21076 // 'before' ','
  20080. && lk != 21077 // 'boundary-space' ','
  20081. && lk != 21078 // 'break' ','
  20082. && lk != 21080 // 'case' ','
  20083. && lk != 21081 // 'cast' ','
  20084. && lk != 21082 // 'castable' ','
  20085. && lk != 21083 // 'catch' ','
  20086. && lk != 21085 // 'child' ','
  20087. && lk != 21086 // 'collation' ','
  20088. && lk != 21088 // 'comment' ','
  20089. && lk != 21089 // 'constraint' ','
  20090. && lk != 21090 // 'construction' ','
  20091. && lk != 21093 // 'context' ','
  20092. && lk != 21094 // 'continue' ','
  20093. && lk != 21095 // 'copy' ','
  20094. && lk != 21096 // 'copy-namespaces' ','
  20095. && lk != 21097 // 'count' ','
  20096. && lk != 21098 // 'decimal-format' ','
  20097. && lk != 21100 // 'declare' ','
  20098. && lk != 21101 // 'default' ','
  20099. && lk != 21102 // 'delete' ','
  20100. && lk != 21103 // 'descendant' ','
  20101. && lk != 21104 // 'descendant-or-self' ','
  20102. && lk != 21105 // 'descending' ','
  20103. && lk != 21110 // 'div' ','
  20104. && lk != 21111 // 'document' ','
  20105. && lk != 21112 // 'document-node' ','
  20106. && lk != 21113 // 'element' ','
  20107. && lk != 21114 // 'else' ','
  20108. && lk != 21115 // 'empty' ','
  20109. && lk != 21116 // 'empty-sequence' ','
  20110. && lk != 21117 // 'encoding' ','
  20111. && lk != 21118 // 'end' ','
  20112. && lk != 21120 // 'eq' ','
  20113. && lk != 21121 // 'every' ','
  20114. && lk != 21123 // 'except' ','
  20115. && lk != 21124 // 'exit' ','
  20116. && lk != 21125 // 'external' ','
  20117. && lk != 21126 // 'first' ','
  20118. && lk != 21127 // 'following' ','
  20119. && lk != 21128 // 'following-sibling' ','
  20120. && lk != 21129 // 'for' ','
  20121. && lk != 21133 // 'ft-option' ','
  20122. && lk != 21137 // 'function' ','
  20123. && lk != 21138 // 'ge' ','
  20124. && lk != 21140 // 'group' ','
  20125. && lk != 21142 // 'gt' ','
  20126. && lk != 21143 // 'idiv' ','
  20127. && lk != 21144 // 'if' ','
  20128. && lk != 21145 // 'import' ','
  20129. && lk != 21146 // 'in' ','
  20130. && lk != 21147 // 'index' ','
  20131. && lk != 21151 // 'insert' ','
  20132. && lk != 21152 // 'instance' ','
  20133. && lk != 21153 // 'integrity' ','
  20134. && lk != 21154 // 'intersect' ','
  20135. && lk != 21155 // 'into' ','
  20136. && lk != 21156 // 'is' ','
  20137. && lk != 21157 // 'item' ','
  20138. && lk != 21159 // 'json-item' ','
  20139. && lk != 21162 // 'last' ','
  20140. && lk != 21163 // 'lax' ','
  20141. && lk != 21164 // 'le' ','
  20142. && lk != 21166 // 'let' ','
  20143. && lk != 21168 // 'loop' ','
  20144. && lk != 21170 // 'lt' ','
  20145. && lk != 21172 // 'mod' ','
  20146. && lk != 21173 // 'modify' ','
  20147. && lk != 21174 // 'module' ','
  20148. && lk != 21176 // 'namespace' ','
  20149. && lk != 21177 // 'namespace-node' ','
  20150. && lk != 21178 // 'ne' ','
  20151. && lk != 21183 // 'node' ','
  20152. && lk != 21184 // 'nodes' ','
  20153. && lk != 21186 // 'object' ','
  20154. && lk != 21190 // 'only' ','
  20155. && lk != 21191 // 'option' ','
  20156. && lk != 21192 // 'or' ','
  20157. && lk != 21193 // 'order' ','
  20158. && lk != 21194 // 'ordered' ','
  20159. && lk != 21195 // 'ordering' ','
  20160. && lk != 21198 // 'parent' ','
  20161. && lk != 21204 // 'preceding' ','
  20162. && lk != 21205 // 'preceding-sibling' ','
  20163. && lk != 21208 // 'processing-instruction' ','
  20164. && lk != 21210 // 'rename' ','
  20165. && lk != 21211 // 'replace' ','
  20166. && lk != 21212 // 'return' ','
  20167. && lk != 21213 // 'returning' ','
  20168. && lk != 21214 // 'revalidation' ','
  20169. && lk != 21216 // 'satisfies' ','
  20170. && lk != 21217 // 'schema' ','
  20171. && lk != 21218 // 'schema-attribute' ','
  20172. && lk != 21219 // 'schema-element' ','
  20173. && lk != 21220 // 'score' ','
  20174. && lk != 21221 // 'self' ','
  20175. && lk != 21226 // 'sliding' ','
  20176. && lk != 21227 // 'some' ','
  20177. && lk != 21228 // 'stable' ','
  20178. && lk != 21229 // 'start' ','
  20179. && lk != 21232 // 'strict' ','
  20180. && lk != 21235 // 'switch' ','
  20181. && lk != 21236 // 'text' ','
  20182. && lk != 21240 // 'to' ','
  20183. && lk != 21241 // 'treat' ','
  20184. && lk != 21242 // 'try' ','
  20185. && lk != 21243 // 'tumbling' ','
  20186. && lk != 21244 // 'type' ','
  20187. && lk != 21245 // 'typeswitch' ','
  20188. && lk != 21246 // 'union' ','
  20189. && lk != 21248 // 'unordered' ','
  20190. && lk != 21249 // 'updating' ','
  20191. && lk != 21252 // 'validate' ','
  20192. && lk != 21253 // 'value' ','
  20193. && lk != 21254 // 'variable' ','
  20194. && lk != 21255 // 'version' ','
  20195. && lk != 21258 // 'where' ','
  20196. && lk != 21259 // 'while' ','
  20197. && lk != 21262 // 'with' ','
  20198. && lk != 21266 // 'xquery' ','
  20199. && lk != 27141 // Wildcard ';'
  20200. && lk != 27142 // EQName^Token ';'
  20201. && lk != 27144 // IntegerLiteral ';'
  20202. && lk != 27145 // DecimalLiteral ';'
  20203. && lk != 27146 // DoubleLiteral ';'
  20204. && lk != 27147 // StringLiteral ';'
  20205. && lk != 27180 // '.' ';'
  20206. && lk != 27181 // '..' ';'
  20207. && lk != 27182 // '/' ';'
  20208. && lk != 27206 // 'after' ';'
  20209. && lk != 27208 // 'allowing' ';'
  20210. && lk != 27209 // 'ancestor' ';'
  20211. && lk != 27210 // 'ancestor-or-self' ';'
  20212. && lk != 27211 // 'and' ';'
  20213. && lk != 27214 // 'array' ';'
  20214. && lk != 27215 // 'as' ';'
  20215. && lk != 27216 // 'ascending' ';'
  20216. && lk != 27217 // 'at' ';'
  20217. && lk != 27218 // 'attribute' ';'
  20218. && lk != 27219 // 'base-uri' ';'
  20219. && lk != 27220 // 'before' ';'
  20220. && lk != 27221 // 'boundary-space' ';'
  20221. && lk != 27222 // 'break' ';'
  20222. && lk != 27224 // 'case' ';'
  20223. && lk != 27225 // 'cast' ';'
  20224. && lk != 27226 // 'castable' ';'
  20225. && lk != 27227 // 'catch' ';'
  20226. && lk != 27229 // 'child' ';'
  20227. && lk != 27230 // 'collation' ';'
  20228. && lk != 27232 // 'comment' ';'
  20229. && lk != 27233 // 'constraint' ';'
  20230. && lk != 27234 // 'construction' ';'
  20231. && lk != 27237 // 'context' ';'
  20232. && lk != 27238 // 'continue' ';'
  20233. && lk != 27239 // 'copy' ';'
  20234. && lk != 27240 // 'copy-namespaces' ';'
  20235. && lk != 27241 // 'count' ';'
  20236. && lk != 27242 // 'decimal-format' ';'
  20237. && lk != 27244 // 'declare' ';'
  20238. && lk != 27245 // 'default' ';'
  20239. && lk != 27246 // 'delete' ';'
  20240. && lk != 27247 // 'descendant' ';'
  20241. && lk != 27248 // 'descendant-or-self' ';'
  20242. && lk != 27249 // 'descending' ';'
  20243. && lk != 27254 // 'div' ';'
  20244. && lk != 27255 // 'document' ';'
  20245. && lk != 27256 // 'document-node' ';'
  20246. && lk != 27257 // 'element' ';'
  20247. && lk != 27258 // 'else' ';'
  20248. && lk != 27259 // 'empty' ';'
  20249. && lk != 27260 // 'empty-sequence' ';'
  20250. && lk != 27261 // 'encoding' ';'
  20251. && lk != 27262 // 'end' ';'
  20252. && lk != 27264 // 'eq' ';'
  20253. && lk != 27265 // 'every' ';'
  20254. && lk != 27267 // 'except' ';'
  20255. && lk != 27268 // 'exit' ';'
  20256. && lk != 27269 // 'external' ';'
  20257. && lk != 27270 // 'first' ';'
  20258. && lk != 27271 // 'following' ';'
  20259. && lk != 27272 // 'following-sibling' ';'
  20260. && lk != 27273 // 'for' ';'
  20261. && lk != 27277 // 'ft-option' ';'
  20262. && lk != 27281 // 'function' ';'
  20263. && lk != 27282 // 'ge' ';'
  20264. && lk != 27284 // 'group' ';'
  20265. && lk != 27286 // 'gt' ';'
  20266. && lk != 27287 // 'idiv' ';'
  20267. && lk != 27288 // 'if' ';'
  20268. && lk != 27289 // 'import' ';'
  20269. && lk != 27290 // 'in' ';'
  20270. && lk != 27291 // 'index' ';'
  20271. && lk != 27295 // 'insert' ';'
  20272. && lk != 27296 // 'instance' ';'
  20273. && lk != 27297 // 'integrity' ';'
  20274. && lk != 27298 // 'intersect' ';'
  20275. && lk != 27299 // 'into' ';'
  20276. && lk != 27300 // 'is' ';'
  20277. && lk != 27301 // 'item' ';'
  20278. && lk != 27303 // 'json-item' ';'
  20279. && lk != 27306 // 'last' ';'
  20280. && lk != 27307 // 'lax' ';'
  20281. && lk != 27308 // 'le' ';'
  20282. && lk != 27310 // 'let' ';'
  20283. && lk != 27312 // 'loop' ';'
  20284. && lk != 27314 // 'lt' ';'
  20285. && lk != 27316 // 'mod' ';'
  20286. && lk != 27317 // 'modify' ';'
  20287. && lk != 27318 // 'module' ';'
  20288. && lk != 27320 // 'namespace' ';'
  20289. && lk != 27321 // 'namespace-node' ';'
  20290. && lk != 27322 // 'ne' ';'
  20291. && lk != 27327 // 'node' ';'
  20292. && lk != 27328 // 'nodes' ';'
  20293. && lk != 27330 // 'object' ';'
  20294. && lk != 27334 // 'only' ';'
  20295. && lk != 27335 // 'option' ';'
  20296. && lk != 27336 // 'or' ';'
  20297. && lk != 27337 // 'order' ';'
  20298. && lk != 27338 // 'ordered' ';'
  20299. && lk != 27339 // 'ordering' ';'
  20300. && lk != 27342 // 'parent' ';'
  20301. && lk != 27348 // 'preceding' ';'
  20302. && lk != 27349 // 'preceding-sibling' ';'
  20303. && lk != 27352 // 'processing-instruction' ';'
  20304. && lk != 27354 // 'rename' ';'
  20305. && lk != 27355 // 'replace' ';'
  20306. && lk != 27356 // 'return' ';'
  20307. && lk != 27357 // 'returning' ';'
  20308. && lk != 27358 // 'revalidation' ';'
  20309. && lk != 27360 // 'satisfies' ';'
  20310. && lk != 27361 // 'schema' ';'
  20311. && lk != 27362 // 'schema-attribute' ';'
  20312. && lk != 27363 // 'schema-element' ';'
  20313. && lk != 27364 // 'score' ';'
  20314. && lk != 27365 // 'self' ';'
  20315. && lk != 27370 // 'sliding' ';'
  20316. && lk != 27371 // 'some' ';'
  20317. && lk != 27372 // 'stable' ';'
  20318. && lk != 27373 // 'start' ';'
  20319. && lk != 27376 // 'strict' ';'
  20320. && lk != 27379 // 'switch' ';'
  20321. && lk != 27380 // 'text' ';'
  20322. && lk != 27384 // 'to' ';'
  20323. && lk != 27385 // 'treat' ';'
  20324. && lk != 27386 // 'try' ';'
  20325. && lk != 27387 // 'tumbling' ';'
  20326. && lk != 27388 // 'type' ';'
  20327. && lk != 27389 // 'typeswitch' ';'
  20328. && lk != 27390 // 'union' ';'
  20329. && lk != 27392 // 'unordered' ';'
  20330. && lk != 27393 // 'updating' ';'
  20331. && lk != 27396 // 'validate' ';'
  20332. && lk != 27397 // 'value' ';'
  20333. && lk != 27398 // 'variable' ';'
  20334. && lk != 27399 // 'version' ';'
  20335. && lk != 27402 // 'where' ';'
  20336. && lk != 27403 // 'while' ';'
  20337. && lk != 27406 // 'with' ';'
  20338. && lk != 27410 // 'xquery' ';'
  20339. && lk != 90198 // 'break' 'loop'
  20340. && lk != 90214 // 'continue' 'loop'
  20341. && lk != 113284 // 'exit' 'returning'
  20342. && lk != 144389 // Wildcard '}'
  20343. && lk != 144390 // EQName^Token '}'
  20344. && lk != 144392 // IntegerLiteral '}'
  20345. && lk != 144393 // DecimalLiteral '}'
  20346. && lk != 144394 // DoubleLiteral '}'
  20347. && lk != 144395 // StringLiteral '}'
  20348. && lk != 144428 // '.' '}'
  20349. && lk != 144429 // '..' '}'
  20350. && lk != 144430 // '/' '}'
  20351. && lk != 144454 // 'after' '}'
  20352. && lk != 144456 // 'allowing' '}'
  20353. && lk != 144457 // 'ancestor' '}'
  20354. && lk != 144458 // 'ancestor-or-self' '}'
  20355. && lk != 144459 // 'and' '}'
  20356. && lk != 144462 // 'array' '}'
  20357. && lk != 144463 // 'as' '}'
  20358. && lk != 144464 // 'ascending' '}'
  20359. && lk != 144465 // 'at' '}'
  20360. && lk != 144466 // 'attribute' '}'
  20361. && lk != 144467 // 'base-uri' '}'
  20362. && lk != 144468 // 'before' '}'
  20363. && lk != 144469 // 'boundary-space' '}'
  20364. && lk != 144470 // 'break' '}'
  20365. && lk != 144472 // 'case' '}'
  20366. && lk != 144473 // 'cast' '}'
  20367. && lk != 144474 // 'castable' '}'
  20368. && lk != 144475 // 'catch' '}'
  20369. && lk != 144477 // 'child' '}'
  20370. && lk != 144478 // 'collation' '}'
  20371. && lk != 144480 // 'comment' '}'
  20372. && lk != 144481 // 'constraint' '}'
  20373. && lk != 144482 // 'construction' '}'
  20374. && lk != 144485 // 'context' '}'
  20375. && lk != 144486 // 'continue' '}'
  20376. && lk != 144487 // 'copy' '}'
  20377. && lk != 144488 // 'copy-namespaces' '}'
  20378. && lk != 144489 // 'count' '}'
  20379. && lk != 144490 // 'decimal-format' '}'
  20380. && lk != 144492 // 'declare' '}'
  20381. && lk != 144493 // 'default' '}'
  20382. && lk != 144494 // 'delete' '}'
  20383. && lk != 144495 // 'descendant' '}'
  20384. && lk != 144496 // 'descendant-or-self' '}'
  20385. && lk != 144497 // 'descending' '}'
  20386. && lk != 144502 // 'div' '}'
  20387. && lk != 144503 // 'document' '}'
  20388. && lk != 144504 // 'document-node' '}'
  20389. && lk != 144505 // 'element' '}'
  20390. && lk != 144506 // 'else' '}'
  20391. && lk != 144507 // 'empty' '}'
  20392. && lk != 144508 // 'empty-sequence' '}'
  20393. && lk != 144509 // 'encoding' '}'
  20394. && lk != 144510 // 'end' '}'
  20395. && lk != 144512 // 'eq' '}'
  20396. && lk != 144513 // 'every' '}'
  20397. && lk != 144515 // 'except' '}'
  20398. && lk != 144516 // 'exit' '}'
  20399. && lk != 144517 // 'external' '}'
  20400. && lk != 144518 // 'first' '}'
  20401. && lk != 144519 // 'following' '}'
  20402. && lk != 144520 // 'following-sibling' '}'
  20403. && lk != 144521 // 'for' '}'
  20404. && lk != 144525 // 'ft-option' '}'
  20405. && lk != 144529 // 'function' '}'
  20406. && lk != 144530 // 'ge' '}'
  20407. && lk != 144532 // 'group' '}'
  20408. && lk != 144534 // 'gt' '}'
  20409. && lk != 144535 // 'idiv' '}'
  20410. && lk != 144536 // 'if' '}'
  20411. && lk != 144537 // 'import' '}'
  20412. && lk != 144538 // 'in' '}'
  20413. && lk != 144539 // 'index' '}'
  20414. && lk != 144543 // 'insert' '}'
  20415. && lk != 144544 // 'instance' '}'
  20416. && lk != 144545 // 'integrity' '}'
  20417. && lk != 144546 // 'intersect' '}'
  20418. && lk != 144547 // 'into' '}'
  20419. && lk != 144548 // 'is' '}'
  20420. && lk != 144549 // 'item' '}'
  20421. && lk != 144551 // 'json-item' '}'
  20422. && lk != 144554 // 'last' '}'
  20423. && lk != 144555 // 'lax' '}'
  20424. && lk != 144556 // 'le' '}'
  20425. && lk != 144558 // 'let' '}'
  20426. && lk != 144560 // 'loop' '}'
  20427. && lk != 144562 // 'lt' '}'
  20428. && lk != 144564 // 'mod' '}'
  20429. && lk != 144565 // 'modify' '}'
  20430. && lk != 144566 // 'module' '}'
  20431. && lk != 144568 // 'namespace' '}'
  20432. && lk != 144569 // 'namespace-node' '}'
  20433. && lk != 144570 // 'ne' '}'
  20434. && lk != 144575 // 'node' '}'
  20435. && lk != 144576 // 'nodes' '}'
  20436. && lk != 144578 // 'object' '}'
  20437. && lk != 144582 // 'only' '}'
  20438. && lk != 144583 // 'option' '}'
  20439. && lk != 144584 // 'or' '}'
  20440. && lk != 144585 // 'order' '}'
  20441. && lk != 144586 // 'ordered' '}'
  20442. && lk != 144587 // 'ordering' '}'
  20443. && lk != 144590 // 'parent' '}'
  20444. && lk != 144596 // 'preceding' '}'
  20445. && lk != 144597 // 'preceding-sibling' '}'
  20446. && lk != 144600 // 'processing-instruction' '}'
  20447. && lk != 144602 // 'rename' '}'
  20448. && lk != 144603 // 'replace' '}'
  20449. && lk != 144604 // 'return' '}'
  20450. && lk != 144605 // 'returning' '}'
  20451. && lk != 144606 // 'revalidation' '}'
  20452. && lk != 144608 // 'satisfies' '}'
  20453. && lk != 144609 // 'schema' '}'
  20454. && lk != 144610 // 'schema-attribute' '}'
  20455. && lk != 144611 // 'schema-element' '}'
  20456. && lk != 144612 // 'score' '}'
  20457. && lk != 144613 // 'self' '}'
  20458. && lk != 144618 // 'sliding' '}'
  20459. && lk != 144619 // 'some' '}'
  20460. && lk != 144620 // 'stable' '}'
  20461. && lk != 144621 // 'start' '}'
  20462. && lk != 144624 // 'strict' '}'
  20463. && lk != 144627 // 'switch' '}'
  20464. && lk != 144628 // 'text' '}'
  20465. && lk != 144632 // 'to' '}'
  20466. && lk != 144633 // 'treat' '}'
  20467. && lk != 144634 // 'try' '}'
  20468. && lk != 144635 // 'tumbling' '}'
  20469. && lk != 144636 // 'type' '}'
  20470. && lk != 144637 // 'typeswitch' '}'
  20471. && lk != 144638 // 'union' '}'
  20472. && lk != 144640 // 'unordered' '}'
  20473. && lk != 144641 // 'updating' '}'
  20474. && lk != 144644 // 'validate' '}'
  20475. && lk != 144645 // 'value' '}'
  20476. && lk != 144646 // 'variable' '}'
  20477. && lk != 144647 // 'version' '}'
  20478. && lk != 144650 // 'where' '}'
  20479. && lk != 144651 // 'while' '}'
  20480. && lk != 144654 // 'with' '}'
  20481. && lk != 144658) // 'xquery' '}'
  20482. {
  20483. lk = memoized(6, e0);
  20484. if (lk == 0)
  20485. {
  20486. var b0A = b0; var e0A = e0; var l1A = l1;
  20487. var b1A = b1; var e1A = e1; var l2A = l2;
  20488. var b2A = b2; var e2A = e2;
  20489. try
  20490. {
  20491. try_Statement();
  20492. lk = -1;
  20493. }
  20494. catch (p1A)
  20495. {
  20496. lk = -2;
  20497. }
  20498. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  20499. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  20500. b2 = b2A; e2 = e2A; end = e2A; }}
  20501. memoize(6, e0, lk);
  20502. }
  20503. }
  20504. if (lk != -1
  20505. && lk != 16134 // 'variable' '$'
  20506. && lk != 27141 // Wildcard ';'
  20507. && lk != 27142 // EQName^Token ';'
  20508. && lk != 27144 // IntegerLiteral ';'
  20509. && lk != 27145 // DecimalLiteral ';'
  20510. && lk != 27146 // DoubleLiteral ';'
  20511. && lk != 27147 // StringLiteral ';'
  20512. && lk != 27180 // '.' ';'
  20513. && lk != 27181 // '..' ';'
  20514. && lk != 27182 // '/' ';'
  20515. && lk != 27206 // 'after' ';'
  20516. && lk != 27208 // 'allowing' ';'
  20517. && lk != 27209 // 'ancestor' ';'
  20518. && lk != 27210 // 'ancestor-or-self' ';'
  20519. && lk != 27211 // 'and' ';'
  20520. && lk != 27214 // 'array' ';'
  20521. && lk != 27215 // 'as' ';'
  20522. && lk != 27216 // 'ascending' ';'
  20523. && lk != 27217 // 'at' ';'
  20524. && lk != 27218 // 'attribute' ';'
  20525. && lk != 27219 // 'base-uri' ';'
  20526. && lk != 27220 // 'before' ';'
  20527. && lk != 27221 // 'boundary-space' ';'
  20528. && lk != 27222 // 'break' ';'
  20529. && lk != 27224 // 'case' ';'
  20530. && lk != 27225 // 'cast' ';'
  20531. && lk != 27226 // 'castable' ';'
  20532. && lk != 27227 // 'catch' ';'
  20533. && lk != 27229 // 'child' ';'
  20534. && lk != 27230 // 'collation' ';'
  20535. && lk != 27232 // 'comment' ';'
  20536. && lk != 27233 // 'constraint' ';'
  20537. && lk != 27234 // 'construction' ';'
  20538. && lk != 27237 // 'context' ';'
  20539. && lk != 27238 // 'continue' ';'
  20540. && lk != 27239 // 'copy' ';'
  20541. && lk != 27240 // 'copy-namespaces' ';'
  20542. && lk != 27241 // 'count' ';'
  20543. && lk != 27242 // 'decimal-format' ';'
  20544. && lk != 27244 // 'declare' ';'
  20545. && lk != 27245 // 'default' ';'
  20546. && lk != 27246 // 'delete' ';'
  20547. && lk != 27247 // 'descendant' ';'
  20548. && lk != 27248 // 'descendant-or-self' ';'
  20549. && lk != 27249 // 'descending' ';'
  20550. && lk != 27254 // 'div' ';'
  20551. && lk != 27255 // 'document' ';'
  20552. && lk != 27256 // 'document-node' ';'
  20553. && lk != 27257 // 'element' ';'
  20554. && lk != 27258 // 'else' ';'
  20555. && lk != 27259 // 'empty' ';'
  20556. && lk != 27260 // 'empty-sequence' ';'
  20557. && lk != 27261 // 'encoding' ';'
  20558. && lk != 27262 // 'end' ';'
  20559. && lk != 27264 // 'eq' ';'
  20560. && lk != 27265 // 'every' ';'
  20561. && lk != 27267 // 'except' ';'
  20562. && lk != 27268 // 'exit' ';'
  20563. && lk != 27269 // 'external' ';'
  20564. && lk != 27270 // 'first' ';'
  20565. && lk != 27271 // 'following' ';'
  20566. && lk != 27272 // 'following-sibling' ';'
  20567. && lk != 27273 // 'for' ';'
  20568. && lk != 27277 // 'ft-option' ';'
  20569. && lk != 27281 // 'function' ';'
  20570. && lk != 27282 // 'ge' ';'
  20571. && lk != 27284 // 'group' ';'
  20572. && lk != 27286 // 'gt' ';'
  20573. && lk != 27287 // 'idiv' ';'
  20574. && lk != 27288 // 'if' ';'
  20575. && lk != 27289 // 'import' ';'
  20576. && lk != 27290 // 'in' ';'
  20577. && lk != 27291 // 'index' ';'
  20578. && lk != 27295 // 'insert' ';'
  20579. && lk != 27296 // 'instance' ';'
  20580. && lk != 27297 // 'integrity' ';'
  20581. && lk != 27298 // 'intersect' ';'
  20582. && lk != 27299 // 'into' ';'
  20583. && lk != 27300 // 'is' ';'
  20584. && lk != 27301 // 'item' ';'
  20585. && lk != 27303 // 'json-item' ';'
  20586. && lk != 27306 // 'last' ';'
  20587. && lk != 27307 // 'lax' ';'
  20588. && lk != 27308 // 'le' ';'
  20589. && lk != 27310 // 'let' ';'
  20590. && lk != 27312 // 'loop' ';'
  20591. && lk != 27314 // 'lt' ';'
  20592. && lk != 27316 // 'mod' ';'
  20593. && lk != 27317 // 'modify' ';'
  20594. && lk != 27318 // 'module' ';'
  20595. && lk != 27320 // 'namespace' ';'
  20596. && lk != 27321 // 'namespace-node' ';'
  20597. && lk != 27322 // 'ne' ';'
  20598. && lk != 27327 // 'node' ';'
  20599. && lk != 27328 // 'nodes' ';'
  20600. && lk != 27330 // 'object' ';'
  20601. && lk != 27334 // 'only' ';'
  20602. && lk != 27335 // 'option' ';'
  20603. && lk != 27336 // 'or' ';'
  20604. && lk != 27337 // 'order' ';'
  20605. && lk != 27338 // 'ordered' ';'
  20606. && lk != 27339 // 'ordering' ';'
  20607. && lk != 27342 // 'parent' ';'
  20608. && lk != 27348 // 'preceding' ';'
  20609. && lk != 27349 // 'preceding-sibling' ';'
  20610. && lk != 27352 // 'processing-instruction' ';'
  20611. && lk != 27354 // 'rename' ';'
  20612. && lk != 27355 // 'replace' ';'
  20613. && lk != 27356 // 'return' ';'
  20614. && lk != 27357 // 'returning' ';'
  20615. && lk != 27358 // 'revalidation' ';'
  20616. && lk != 27360 // 'satisfies' ';'
  20617. && lk != 27361 // 'schema' ';'
  20618. && lk != 27362 // 'schema-attribute' ';'
  20619. && lk != 27363 // 'schema-element' ';'
  20620. && lk != 27364 // 'score' ';'
  20621. && lk != 27365 // 'self' ';'
  20622. && lk != 27370 // 'sliding' ';'
  20623. && lk != 27371 // 'some' ';'
  20624. && lk != 27372 // 'stable' ';'
  20625. && lk != 27373 // 'start' ';'
  20626. && lk != 27376 // 'strict' ';'
  20627. && lk != 27379 // 'switch' ';'
  20628. && lk != 27380 // 'text' ';'
  20629. && lk != 27384 // 'to' ';'
  20630. && lk != 27385 // 'treat' ';'
  20631. && lk != 27386 // 'try' ';'
  20632. && lk != 27387 // 'tumbling' ';'
  20633. && lk != 27388 // 'type' ';'
  20634. && lk != 27389 // 'typeswitch' ';'
  20635. && lk != 27390 // 'union' ';'
  20636. && lk != 27392 // 'unordered' ';'
  20637. && lk != 27393 // 'updating' ';'
  20638. && lk != 27396 // 'validate' ';'
  20639. && lk != 27397 // 'value' ';'
  20640. && lk != 27398 // 'variable' ';'
  20641. && lk != 27399 // 'version' ';'
  20642. && lk != 27402 // 'where' ';'
  20643. && lk != 27403 // 'while' ';'
  20644. && lk != 27406 // 'with' ';'
  20645. && lk != 27410 // 'xquery' ';'
  20646. && lk != 90198 // 'break' 'loop'
  20647. && lk != 90214 // 'continue' 'loop'
  20648. && lk != 113284) // 'exit' 'returning'
  20649. {
  20650. break;
  20651. }
  20652. whitespace();
  20653. parse_Statement();
  20654. }
  20655. eventHandler.endNonterminal("Statements", e0);
  20656. }
  20657. function try_Statements()
  20658. {
  20659. for (;;)
  20660. {
  20661. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20662. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  20663. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  20664. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  20665. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20666. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20667. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  20668. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20669. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20670. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20671. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20672. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20673. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20674. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20675. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20676. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20677. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20678. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20679. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20680. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20681. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20682. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20683. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20684. // 'xquery' | '{' | '{|' | '}'
  20685. switch (l1)
  20686. {
  20687. case 34: // '('
  20688. lookahead2W(269); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20689. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | ')' | '+' | '-' | '.' |
  20690. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  20691. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  20692. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20693. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20694. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  20695. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20696. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20697. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20698. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20699. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20700. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20701. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20702. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20703. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20704. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20705. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20706. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20707. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20708. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20709. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20710. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20711. // 'xquery' | '{' | '{|'
  20712. break;
  20713. case 35: // '(#'
  20714. lookahead2(250); // EQName^Token | S | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  20715. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  20716. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  20717. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  20718. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  20719. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  20720. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  20721. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  20722. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  20723. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  20724. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  20725. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  20726. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  20727. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  20728. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  20729. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  20730. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  20731. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  20732. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  20733. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  20734. // 'version' | 'where' | 'while' | 'with' | 'xquery'
  20735. break;
  20736. case 46: // '/'
  20737. lookahead2W(281); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20738. // StringLiteral | S^WS | EOF | '!' | '!=' | '$' | '%' | '(' | '(:' | '*' | '+' |
  20739. // ',' | '-' | '.' | '..' | ';' | '<' | '<!--' | '<<' | '<=' | '<?' | '=' | '>' |
  20740. // '>=' | '>>' | '@' | '[' | 'after' | 'allowing' | 'ancestor' |
  20741. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  20742. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  20743. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  20744. // 'construction' | 'contains' | 'context' | 'continue' | 'copy' |
  20745. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20746. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20747. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20748. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20749. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20750. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20751. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20752. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20753. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20754. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20755. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20756. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20757. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20758. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20759. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20760. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20761. // 'xquery' | '{' | '{|' | '|' | '||' | '}'
  20762. break;
  20763. case 47: // '//'
  20764. lookahead2W(263); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20765. // StringLiteral | S^WS | '$' | '%' | '(' | '(:' | '.' | '..' | '<' | '<!--' |
  20766. // '<?' | '@' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' |
  20767. // 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' |
  20768. // 'before' | 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' |
  20769. // 'child' | 'collation' | 'comment' | 'constraint' | 'construction' | 'context' |
  20770. // 'continue' | 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' |
  20771. // 'declare' | 'default' | 'delete' | 'descendant' | 'descendant-or-self' |
  20772. // 'descending' | 'div' | 'document' | 'document-node' | 'element' | 'else' |
  20773. // 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' | 'every' | 'except' |
  20774. // 'exit' | 'external' | 'first' | 'following' | 'following-sibling' | 'for' |
  20775. // 'ft-option' | 'function' | 'ge' | 'group' | 'gt' | 'idiv' | 'if' | 'import' |
  20776. // 'in' | 'index' | 'insert' | 'instance' | 'integrity' | 'intersect' | 'into' |
  20777. // 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' |
  20778. // 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' | 'node' |
  20779. // 'nodes' | 'object' | 'only' | 'option' | 'or' | 'order' | 'ordered' |
  20780. // 'ordering' | 'parent' | 'preceding' | 'preceding-sibling' |
  20781. // 'processing-instruction' | 'rename' | 'replace' | 'return' | 'returning' |
  20782. // 'revalidation' | 'satisfies' | 'schema' | 'schema-attribute' | 'schema-element' |
  20783. // 'score' | 'self' | 'sliding' | 'some' | 'stable' | 'start' | 'strict' |
  20784. // 'switch' | 'text' | 'to' | 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' |
  20785. // 'union' | 'unordered' | 'updating' | 'validate' | 'value' | 'variable' |
  20786. // 'version' | 'where' | 'while' | 'with' | 'xquery' | '{' | '{|'
  20787. break;
  20788. case 54: // '<'
  20789. lookahead2(4); // QName
  20790. break;
  20791. case 55: // '<!--'
  20792. lookahead2(1); // DirCommentContents
  20793. break;
  20794. case 59: // '<?'
  20795. lookahead2(3); // PITarget
  20796. break;
  20797. case 66: // '@'
  20798. lookahead2W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  20799. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  20800. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  20801. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  20802. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  20803. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  20804. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  20805. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  20806. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  20807. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  20808. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  20809. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  20810. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  20811. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  20812. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20813. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20814. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20815. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20816. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20817. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20818. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20819. // 'xquery'
  20820. break;
  20821. case 68: // '['
  20822. lookahead2W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20823. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  20824. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | ']' | 'after' | 'allowing' |
  20825. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  20826. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20827. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20828. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  20829. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20830. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20831. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20832. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20833. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20834. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20835. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20836. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20837. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20838. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20839. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20840. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20841. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20842. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20843. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20844. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20845. // 'xquery' | '{' | '{|'
  20846. break;
  20847. case 77: // 'append'
  20848. lookahead2W(56); // S^WS | '(:' | 'json'
  20849. break;
  20850. case 82: // 'attribute'
  20851. lookahead2W(278); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  20852. // '-' | '/' | '//' | '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' |
  20853. // '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' |
  20854. // 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  20855. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  20856. // 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  20857. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  20858. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  20859. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  20860. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  20861. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  20862. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  20863. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  20864. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  20865. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  20866. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  20867. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20868. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20869. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20870. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20871. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20872. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20873. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20874. // 'xquery' | '{' | '|' | '||' | '}'
  20875. break;
  20876. case 121: // 'element'
  20877. lookahead2W(277); // EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  20878. // '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  20879. // 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  20880. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20881. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20882. // 'comment' | 'constraint' | 'construction' | 'contains' | 'context' | 'continue' |
  20883. // 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20884. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20885. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20886. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20887. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20888. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20889. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20890. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20891. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20892. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20893. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20894. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20895. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20896. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20897. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20898. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20899. // 'xquery' | '{' | '|' | '||' | '}'
  20900. break;
  20901. case 132: // 'exit'
  20902. lookahead2W(202); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  20903. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20904. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20905. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' |
  20906. // 'returning' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  20907. break;
  20908. case 137: // 'for'
  20909. lookahead2W(206); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  20910. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20911. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20912. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'sliding' |
  20913. // 'to' | 'treat' | 'tumbling' | 'union' | '|' | '||' | '}'
  20914. break;
  20915. case 174: // 'let'
  20916. lookahead2W(204); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  20917. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20918. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20919. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'score' |
  20920. // 'to' | 'treat' | 'union' | '|' | '||' | '}'
  20921. break;
  20922. case 218: // 'rename'
  20923. lookahead2W(205); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  20924. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20925. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20926. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  20927. // 'or' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  20928. break;
  20929. case 219: // 'replace'
  20930. lookahead2W(208); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  20931. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20932. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20933. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  20934. // 'or' | 'to' | 'treat' | 'union' | 'value' | '|' | '||' | '}'
  20935. break;
  20936. case 260: // 'validate'
  20937. lookahead2W(209); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  20938. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  20939. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  20940. // 'instance' | 'intersect' | 'is' | 'lax' | 'le' | 'lt' | 'mod' | 'ne' | 'or' |
  20941. // 'strict' | 'to' | 'treat' | 'type' | 'union' | '{' | '|' | '||' | '}'
  20942. break;
  20943. case 276: // '{'
  20944. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20945. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  20946. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  20947. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  20948. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20949. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20950. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  20951. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20952. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20953. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20954. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20955. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20956. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20957. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20958. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20959. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20960. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20961. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20962. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20963. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20964. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20965. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20966. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20967. // 'xquery' | '{' | '{|' | '}'
  20968. break;
  20969. case 278: // '{|'
  20970. lookahead2W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  20971. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  20972. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  20973. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  20974. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  20975. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  20976. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  20977. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  20978. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  20979. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  20980. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  20981. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  20982. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  20983. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  20984. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  20985. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  20986. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  20987. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  20988. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  20989. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  20990. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  20991. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  20992. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  20993. // 'xquery' | '{' | '{|' | '|}'
  20994. break;
  20995. case 5: // Wildcard
  20996. case 45: // '..'
  20997. lookahead2W(186); // S^WS | EOF | '!' | '!=' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' | '<' |
  20998. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  20999. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  21000. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  21001. // 'union' | '|' | '||' | '}'
  21002. break;
  21003. case 31: // '$'
  21004. case 32: // '%'
  21005. lookahead2W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  21006. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  21007. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  21008. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  21009. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  21010. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  21011. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  21012. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  21013. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  21014. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  21015. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  21016. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  21017. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  21018. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  21019. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  21020. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  21021. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  21022. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  21023. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  21024. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  21025. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  21026. // 'xquery'
  21027. break;
  21028. case 40: // '+'
  21029. case 42: // '-'
  21030. lookahead2W(265); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  21031. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  21032. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  21033. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  21034. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  21035. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  21036. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  21037. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  21038. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  21039. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  21040. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  21041. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  21042. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  21043. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  21044. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  21045. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  21046. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  21047. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  21048. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  21049. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  21050. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  21051. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  21052. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  21053. // 'xquery' | '{' | '{|'
  21054. break;
  21055. case 86: // 'break'
  21056. case 102: // 'continue'
  21057. lookahead2W(200); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  21058. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21059. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21060. // 'instance' | 'intersect' | 'is' | 'le' | 'loop' | 'lt' | 'mod' | 'ne' | 'or' |
  21061. // 'to' | 'treat' | 'union' | '|' | '||' | '}'
  21062. break;
  21063. case 110: // 'delete'
  21064. case 159: // 'insert'
  21065. lookahead2W(207); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  21066. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21067. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21068. // 'instance' | 'intersect' | 'is' | 'json' | 'le' | 'lt' | 'mod' | 'ne' | 'node' |
  21069. // 'nodes' | 'or' | 'to' | 'treat' | 'union' | '|' | '||' | '}'
  21070. break;
  21071. case 124: // 'empty-sequence'
  21072. case 165: // 'item'
  21073. lookahead2W(191); // S^WS | EOF | '!' | '!=' | '#' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  21074. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  21075. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  21076. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  21077. // 'union' | '|' | '||' | '}'
  21078. break;
  21079. case 184: // 'namespace'
  21080. case 216: // 'processing-instruction'
  21081. lookahead2W(266); // NCName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' |
  21082. // '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  21083. // 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'as' |
  21084. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  21085. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  21086. // 'comment' | 'constraint' | 'construction' | 'contains' | 'context' | 'continue' |
  21087. // 'copy' | 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  21088. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  21089. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  21090. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  21091. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  21092. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  21093. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'last' |
  21094. // 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  21095. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'only' | 'option' |
  21096. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  21097. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  21098. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  21099. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  21100. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  21101. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  21102. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  21103. // 'xquery' | '{' | '|' | '||' | '}'
  21104. break;
  21105. case 103: // 'copy'
  21106. case 129: // 'every'
  21107. case 235: // 'some'
  21108. case 262: // 'variable'
  21109. lookahead2W(197); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' |
  21110. // '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21111. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21112. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  21113. // 'treat' | 'union' | '|' | '||' | '}'
  21114. break;
  21115. case 8: // IntegerLiteral
  21116. case 9: // DecimalLiteral
  21117. case 10: // DoubleLiteral
  21118. case 11: // StringLiteral
  21119. case 44: // '.'
  21120. lookahead2W(192); // S^WS | EOF | '!' | '!=' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' | ';' |
  21121. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  21122. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  21123. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  21124. // 'union' | '|' | '||' | '}'
  21125. break;
  21126. case 96: // 'comment'
  21127. case 119: // 'document'
  21128. case 202: // 'ordered'
  21129. case 244: // 'text'
  21130. case 250: // 'try'
  21131. case 256: // 'unordered'
  21132. lookahead2W(203); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  21133. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21134. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21135. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  21136. // 'treat' | 'union' | '{' | '|' | '||' | '}'
  21137. break;
  21138. case 73: // 'ancestor'
  21139. case 74: // 'ancestor-or-self'
  21140. case 93: // 'child'
  21141. case 111: // 'descendant'
  21142. case 112: // 'descendant-or-self'
  21143. case 135: // 'following'
  21144. case 136: // 'following-sibling'
  21145. case 206: // 'parent'
  21146. case 212: // 'preceding'
  21147. case 213: // 'preceding-sibling'
  21148. case 229: // 'self'
  21149. lookahead2W(198); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  21150. // '::' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21151. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21152. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  21153. // 'treat' | 'union' | '|' | '||' | '}'
  21154. break;
  21155. case 6: // EQName^Token
  21156. case 70: // 'after'
  21157. case 72: // 'allowing'
  21158. case 75: // 'and'
  21159. case 78: // 'array'
  21160. case 79: // 'as'
  21161. case 80: // 'ascending'
  21162. case 81: // 'at'
  21163. case 83: // 'base-uri'
  21164. case 84: // 'before'
  21165. case 85: // 'boundary-space'
  21166. case 88: // 'case'
  21167. case 89: // 'cast'
  21168. case 90: // 'castable'
  21169. case 91: // 'catch'
  21170. case 94: // 'collation'
  21171. case 97: // 'constraint'
  21172. case 98: // 'construction'
  21173. case 101: // 'context'
  21174. case 104: // 'copy-namespaces'
  21175. case 105: // 'count'
  21176. case 106: // 'decimal-format'
  21177. case 108: // 'declare'
  21178. case 109: // 'default'
  21179. case 113: // 'descending'
  21180. case 118: // 'div'
  21181. case 120: // 'document-node'
  21182. case 122: // 'else'
  21183. case 123: // 'empty'
  21184. case 125: // 'encoding'
  21185. case 126: // 'end'
  21186. case 128: // 'eq'
  21187. case 131: // 'except'
  21188. case 133: // 'external'
  21189. case 134: // 'first'
  21190. case 141: // 'ft-option'
  21191. case 145: // 'function'
  21192. case 146: // 'ge'
  21193. case 148: // 'group'
  21194. case 150: // 'gt'
  21195. case 151: // 'idiv'
  21196. case 152: // 'if'
  21197. case 153: // 'import'
  21198. case 154: // 'in'
  21199. case 155: // 'index'
  21200. case 160: // 'instance'
  21201. case 161: // 'integrity'
  21202. case 162: // 'intersect'
  21203. case 163: // 'into'
  21204. case 164: // 'is'
  21205. case 167: // 'json-item'
  21206. case 170: // 'last'
  21207. case 171: // 'lax'
  21208. case 172: // 'le'
  21209. case 176: // 'loop'
  21210. case 178: // 'lt'
  21211. case 180: // 'mod'
  21212. case 181: // 'modify'
  21213. case 182: // 'module'
  21214. case 185: // 'namespace-node'
  21215. case 186: // 'ne'
  21216. case 191: // 'node'
  21217. case 192: // 'nodes'
  21218. case 194: // 'object'
  21219. case 198: // 'only'
  21220. case 199: // 'option'
  21221. case 200: // 'or'
  21222. case 201: // 'order'
  21223. case 203: // 'ordering'
  21224. case 220: // 'return'
  21225. case 221: // 'returning'
  21226. case 222: // 'revalidation'
  21227. case 224: // 'satisfies'
  21228. case 225: // 'schema'
  21229. case 226: // 'schema-attribute'
  21230. case 227: // 'schema-element'
  21231. case 228: // 'score'
  21232. case 234: // 'sliding'
  21233. case 236: // 'stable'
  21234. case 237: // 'start'
  21235. case 240: // 'strict'
  21236. case 243: // 'switch'
  21237. case 248: // 'to'
  21238. case 249: // 'treat'
  21239. case 251: // 'tumbling'
  21240. case 252: // 'type'
  21241. case 253: // 'typeswitch'
  21242. case 254: // 'union'
  21243. case 257: // 'updating'
  21244. case 261: // 'value'
  21245. case 263: // 'version'
  21246. case 266: // 'where'
  21247. case 267: // 'while'
  21248. case 270: // 'with'
  21249. case 274: // 'xquery'
  21250. lookahead2W(195); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | ',' | '-' | '/' | '//' |
  21251. // ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' |
  21252. // 'castable' | 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' |
  21253. // 'instance' | 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  21254. // 'treat' | 'union' | '|' | '||' | '}'
  21255. break;
  21256. default:
  21257. lk = l1;
  21258. }
  21259. if (lk != 25 // EOF
  21260. && lk != 282 // '}'
  21261. && lk != 12805 // Wildcard EOF
  21262. && lk != 12806 // EQName^Token EOF
  21263. && lk != 12808 // IntegerLiteral EOF
  21264. && lk != 12809 // DecimalLiteral EOF
  21265. && lk != 12810 // DoubleLiteral EOF
  21266. && lk != 12811 // StringLiteral EOF
  21267. && lk != 12844 // '.' EOF
  21268. && lk != 12845 // '..' EOF
  21269. && lk != 12846 // '/' EOF
  21270. && lk != 12870 // 'after' EOF
  21271. && lk != 12872 // 'allowing' EOF
  21272. && lk != 12873 // 'ancestor' EOF
  21273. && lk != 12874 // 'ancestor-or-self' EOF
  21274. && lk != 12875 // 'and' EOF
  21275. && lk != 12878 // 'array' EOF
  21276. && lk != 12879 // 'as' EOF
  21277. && lk != 12880 // 'ascending' EOF
  21278. && lk != 12881 // 'at' EOF
  21279. && lk != 12882 // 'attribute' EOF
  21280. && lk != 12883 // 'base-uri' EOF
  21281. && lk != 12884 // 'before' EOF
  21282. && lk != 12885 // 'boundary-space' EOF
  21283. && lk != 12886 // 'break' EOF
  21284. && lk != 12888 // 'case' EOF
  21285. && lk != 12889 // 'cast' EOF
  21286. && lk != 12890 // 'castable' EOF
  21287. && lk != 12891 // 'catch' EOF
  21288. && lk != 12893 // 'child' EOF
  21289. && lk != 12894 // 'collation' EOF
  21290. && lk != 12896 // 'comment' EOF
  21291. && lk != 12897 // 'constraint' EOF
  21292. && lk != 12898 // 'construction' EOF
  21293. && lk != 12901 // 'context' EOF
  21294. && lk != 12902 // 'continue' EOF
  21295. && lk != 12903 // 'copy' EOF
  21296. && lk != 12904 // 'copy-namespaces' EOF
  21297. && lk != 12905 // 'count' EOF
  21298. && lk != 12906 // 'decimal-format' EOF
  21299. && lk != 12908 // 'declare' EOF
  21300. && lk != 12909 // 'default' EOF
  21301. && lk != 12910 // 'delete' EOF
  21302. && lk != 12911 // 'descendant' EOF
  21303. && lk != 12912 // 'descendant-or-self' EOF
  21304. && lk != 12913 // 'descending' EOF
  21305. && lk != 12918 // 'div' EOF
  21306. && lk != 12919 // 'document' EOF
  21307. && lk != 12920 // 'document-node' EOF
  21308. && lk != 12921 // 'element' EOF
  21309. && lk != 12922 // 'else' EOF
  21310. && lk != 12923 // 'empty' EOF
  21311. && lk != 12924 // 'empty-sequence' EOF
  21312. && lk != 12925 // 'encoding' EOF
  21313. && lk != 12926 // 'end' EOF
  21314. && lk != 12928 // 'eq' EOF
  21315. && lk != 12929 // 'every' EOF
  21316. && lk != 12931 // 'except' EOF
  21317. && lk != 12932 // 'exit' EOF
  21318. && lk != 12933 // 'external' EOF
  21319. && lk != 12934 // 'first' EOF
  21320. && lk != 12935 // 'following' EOF
  21321. && lk != 12936 // 'following-sibling' EOF
  21322. && lk != 12937 // 'for' EOF
  21323. && lk != 12941 // 'ft-option' EOF
  21324. && lk != 12945 // 'function' EOF
  21325. && lk != 12946 // 'ge' EOF
  21326. && lk != 12948 // 'group' EOF
  21327. && lk != 12950 // 'gt' EOF
  21328. && lk != 12951 // 'idiv' EOF
  21329. && lk != 12952 // 'if' EOF
  21330. && lk != 12953 // 'import' EOF
  21331. && lk != 12954 // 'in' EOF
  21332. && lk != 12955 // 'index' EOF
  21333. && lk != 12959 // 'insert' EOF
  21334. && lk != 12960 // 'instance' EOF
  21335. && lk != 12961 // 'integrity' EOF
  21336. && lk != 12962 // 'intersect' EOF
  21337. && lk != 12963 // 'into' EOF
  21338. && lk != 12964 // 'is' EOF
  21339. && lk != 12965 // 'item' EOF
  21340. && lk != 12967 // 'json-item' EOF
  21341. && lk != 12970 // 'last' EOF
  21342. && lk != 12971 // 'lax' EOF
  21343. && lk != 12972 // 'le' EOF
  21344. && lk != 12974 // 'let' EOF
  21345. && lk != 12976 // 'loop' EOF
  21346. && lk != 12978 // 'lt' EOF
  21347. && lk != 12980 // 'mod' EOF
  21348. && lk != 12981 // 'modify' EOF
  21349. && lk != 12982 // 'module' EOF
  21350. && lk != 12984 // 'namespace' EOF
  21351. && lk != 12985 // 'namespace-node' EOF
  21352. && lk != 12986 // 'ne' EOF
  21353. && lk != 12991 // 'node' EOF
  21354. && lk != 12992 // 'nodes' EOF
  21355. && lk != 12994 // 'object' EOF
  21356. && lk != 12998 // 'only' EOF
  21357. && lk != 12999 // 'option' EOF
  21358. && lk != 13000 // 'or' EOF
  21359. && lk != 13001 // 'order' EOF
  21360. && lk != 13002 // 'ordered' EOF
  21361. && lk != 13003 // 'ordering' EOF
  21362. && lk != 13006 // 'parent' EOF
  21363. && lk != 13012 // 'preceding' EOF
  21364. && lk != 13013 // 'preceding-sibling' EOF
  21365. && lk != 13016 // 'processing-instruction' EOF
  21366. && lk != 13018 // 'rename' EOF
  21367. && lk != 13019 // 'replace' EOF
  21368. && lk != 13020 // 'return' EOF
  21369. && lk != 13021 // 'returning' EOF
  21370. && lk != 13022 // 'revalidation' EOF
  21371. && lk != 13024 // 'satisfies' EOF
  21372. && lk != 13025 // 'schema' EOF
  21373. && lk != 13026 // 'schema-attribute' EOF
  21374. && lk != 13027 // 'schema-element' EOF
  21375. && lk != 13028 // 'score' EOF
  21376. && lk != 13029 // 'self' EOF
  21377. && lk != 13034 // 'sliding' EOF
  21378. && lk != 13035 // 'some' EOF
  21379. && lk != 13036 // 'stable' EOF
  21380. && lk != 13037 // 'start' EOF
  21381. && lk != 13040 // 'strict' EOF
  21382. && lk != 13043 // 'switch' EOF
  21383. && lk != 13044 // 'text' EOF
  21384. && lk != 13048 // 'to' EOF
  21385. && lk != 13049 // 'treat' EOF
  21386. && lk != 13050 // 'try' EOF
  21387. && lk != 13051 // 'tumbling' EOF
  21388. && lk != 13052 // 'type' EOF
  21389. && lk != 13053 // 'typeswitch' EOF
  21390. && lk != 13054 // 'union' EOF
  21391. && lk != 13056 // 'unordered' EOF
  21392. && lk != 13057 // 'updating' EOF
  21393. && lk != 13060 // 'validate' EOF
  21394. && lk != 13061 // 'value' EOF
  21395. && lk != 13062 // 'variable' EOF
  21396. && lk != 13063 // 'version' EOF
  21397. && lk != 13066 // 'where' EOF
  21398. && lk != 13067 // 'while' EOF
  21399. && lk != 13070 // 'with' EOF
  21400. && lk != 13074 // 'xquery' EOF
  21401. && lk != 16134 // 'variable' '$'
  21402. && lk != 20997 // Wildcard ','
  21403. && lk != 20998 // EQName^Token ','
  21404. && lk != 21000 // IntegerLiteral ','
  21405. && lk != 21001 // DecimalLiteral ','
  21406. && lk != 21002 // DoubleLiteral ','
  21407. && lk != 21003 // StringLiteral ','
  21408. && lk != 21036 // '.' ','
  21409. && lk != 21037 // '..' ','
  21410. && lk != 21038 // '/' ','
  21411. && lk != 21062 // 'after' ','
  21412. && lk != 21064 // 'allowing' ','
  21413. && lk != 21065 // 'ancestor' ','
  21414. && lk != 21066 // 'ancestor-or-self' ','
  21415. && lk != 21067 // 'and' ','
  21416. && lk != 21070 // 'array' ','
  21417. && lk != 21071 // 'as' ','
  21418. && lk != 21072 // 'ascending' ','
  21419. && lk != 21073 // 'at' ','
  21420. && lk != 21074 // 'attribute' ','
  21421. && lk != 21075 // 'base-uri' ','
  21422. && lk != 21076 // 'before' ','
  21423. && lk != 21077 // 'boundary-space' ','
  21424. && lk != 21078 // 'break' ','
  21425. && lk != 21080 // 'case' ','
  21426. && lk != 21081 // 'cast' ','
  21427. && lk != 21082 // 'castable' ','
  21428. && lk != 21083 // 'catch' ','
  21429. && lk != 21085 // 'child' ','
  21430. && lk != 21086 // 'collation' ','
  21431. && lk != 21088 // 'comment' ','
  21432. && lk != 21089 // 'constraint' ','
  21433. && lk != 21090 // 'construction' ','
  21434. && lk != 21093 // 'context' ','
  21435. && lk != 21094 // 'continue' ','
  21436. && lk != 21095 // 'copy' ','
  21437. && lk != 21096 // 'copy-namespaces' ','
  21438. && lk != 21097 // 'count' ','
  21439. && lk != 21098 // 'decimal-format' ','
  21440. && lk != 21100 // 'declare' ','
  21441. && lk != 21101 // 'default' ','
  21442. && lk != 21102 // 'delete' ','
  21443. && lk != 21103 // 'descendant' ','
  21444. && lk != 21104 // 'descendant-or-self' ','
  21445. && lk != 21105 // 'descending' ','
  21446. && lk != 21110 // 'div' ','
  21447. && lk != 21111 // 'document' ','
  21448. && lk != 21112 // 'document-node' ','
  21449. && lk != 21113 // 'element' ','
  21450. && lk != 21114 // 'else' ','
  21451. && lk != 21115 // 'empty' ','
  21452. && lk != 21116 // 'empty-sequence' ','
  21453. && lk != 21117 // 'encoding' ','
  21454. && lk != 21118 // 'end' ','
  21455. && lk != 21120 // 'eq' ','
  21456. && lk != 21121 // 'every' ','
  21457. && lk != 21123 // 'except' ','
  21458. && lk != 21124 // 'exit' ','
  21459. && lk != 21125 // 'external' ','
  21460. && lk != 21126 // 'first' ','
  21461. && lk != 21127 // 'following' ','
  21462. && lk != 21128 // 'following-sibling' ','
  21463. && lk != 21129 // 'for' ','
  21464. && lk != 21133 // 'ft-option' ','
  21465. && lk != 21137 // 'function' ','
  21466. && lk != 21138 // 'ge' ','
  21467. && lk != 21140 // 'group' ','
  21468. && lk != 21142 // 'gt' ','
  21469. && lk != 21143 // 'idiv' ','
  21470. && lk != 21144 // 'if' ','
  21471. && lk != 21145 // 'import' ','
  21472. && lk != 21146 // 'in' ','
  21473. && lk != 21147 // 'index' ','
  21474. && lk != 21151 // 'insert' ','
  21475. && lk != 21152 // 'instance' ','
  21476. && lk != 21153 // 'integrity' ','
  21477. && lk != 21154 // 'intersect' ','
  21478. && lk != 21155 // 'into' ','
  21479. && lk != 21156 // 'is' ','
  21480. && lk != 21157 // 'item' ','
  21481. && lk != 21159 // 'json-item' ','
  21482. && lk != 21162 // 'last' ','
  21483. && lk != 21163 // 'lax' ','
  21484. && lk != 21164 // 'le' ','
  21485. && lk != 21166 // 'let' ','
  21486. && lk != 21168 // 'loop' ','
  21487. && lk != 21170 // 'lt' ','
  21488. && lk != 21172 // 'mod' ','
  21489. && lk != 21173 // 'modify' ','
  21490. && lk != 21174 // 'module' ','
  21491. && lk != 21176 // 'namespace' ','
  21492. && lk != 21177 // 'namespace-node' ','
  21493. && lk != 21178 // 'ne' ','
  21494. && lk != 21183 // 'node' ','
  21495. && lk != 21184 // 'nodes' ','
  21496. && lk != 21186 // 'object' ','
  21497. && lk != 21190 // 'only' ','
  21498. && lk != 21191 // 'option' ','
  21499. && lk != 21192 // 'or' ','
  21500. && lk != 21193 // 'order' ','
  21501. && lk != 21194 // 'ordered' ','
  21502. && lk != 21195 // 'ordering' ','
  21503. && lk != 21198 // 'parent' ','
  21504. && lk != 21204 // 'preceding' ','
  21505. && lk != 21205 // 'preceding-sibling' ','
  21506. && lk != 21208 // 'processing-instruction' ','
  21507. && lk != 21210 // 'rename' ','
  21508. && lk != 21211 // 'replace' ','
  21509. && lk != 21212 // 'return' ','
  21510. && lk != 21213 // 'returning' ','
  21511. && lk != 21214 // 'revalidation' ','
  21512. && lk != 21216 // 'satisfies' ','
  21513. && lk != 21217 // 'schema' ','
  21514. && lk != 21218 // 'schema-attribute' ','
  21515. && lk != 21219 // 'schema-element' ','
  21516. && lk != 21220 // 'score' ','
  21517. && lk != 21221 // 'self' ','
  21518. && lk != 21226 // 'sliding' ','
  21519. && lk != 21227 // 'some' ','
  21520. && lk != 21228 // 'stable' ','
  21521. && lk != 21229 // 'start' ','
  21522. && lk != 21232 // 'strict' ','
  21523. && lk != 21235 // 'switch' ','
  21524. && lk != 21236 // 'text' ','
  21525. && lk != 21240 // 'to' ','
  21526. && lk != 21241 // 'treat' ','
  21527. && lk != 21242 // 'try' ','
  21528. && lk != 21243 // 'tumbling' ','
  21529. && lk != 21244 // 'type' ','
  21530. && lk != 21245 // 'typeswitch' ','
  21531. && lk != 21246 // 'union' ','
  21532. && lk != 21248 // 'unordered' ','
  21533. && lk != 21249 // 'updating' ','
  21534. && lk != 21252 // 'validate' ','
  21535. && lk != 21253 // 'value' ','
  21536. && lk != 21254 // 'variable' ','
  21537. && lk != 21255 // 'version' ','
  21538. && lk != 21258 // 'where' ','
  21539. && lk != 21259 // 'while' ','
  21540. && lk != 21262 // 'with' ','
  21541. && lk != 21266 // 'xquery' ','
  21542. && lk != 27141 // Wildcard ';'
  21543. && lk != 27142 // EQName^Token ';'
  21544. && lk != 27144 // IntegerLiteral ';'
  21545. && lk != 27145 // DecimalLiteral ';'
  21546. && lk != 27146 // DoubleLiteral ';'
  21547. && lk != 27147 // StringLiteral ';'
  21548. && lk != 27180 // '.' ';'
  21549. && lk != 27181 // '..' ';'
  21550. && lk != 27182 // '/' ';'
  21551. && lk != 27206 // 'after' ';'
  21552. && lk != 27208 // 'allowing' ';'
  21553. && lk != 27209 // 'ancestor' ';'
  21554. && lk != 27210 // 'ancestor-or-self' ';'
  21555. && lk != 27211 // 'and' ';'
  21556. && lk != 27214 // 'array' ';'
  21557. && lk != 27215 // 'as' ';'
  21558. && lk != 27216 // 'ascending' ';'
  21559. && lk != 27217 // 'at' ';'
  21560. && lk != 27218 // 'attribute' ';'
  21561. && lk != 27219 // 'base-uri' ';'
  21562. && lk != 27220 // 'before' ';'
  21563. && lk != 27221 // 'boundary-space' ';'
  21564. && lk != 27222 // 'break' ';'
  21565. && lk != 27224 // 'case' ';'
  21566. && lk != 27225 // 'cast' ';'
  21567. && lk != 27226 // 'castable' ';'
  21568. && lk != 27227 // 'catch' ';'
  21569. && lk != 27229 // 'child' ';'
  21570. && lk != 27230 // 'collation' ';'
  21571. && lk != 27232 // 'comment' ';'
  21572. && lk != 27233 // 'constraint' ';'
  21573. && lk != 27234 // 'construction' ';'
  21574. && lk != 27237 // 'context' ';'
  21575. && lk != 27238 // 'continue' ';'
  21576. && lk != 27239 // 'copy' ';'
  21577. && lk != 27240 // 'copy-namespaces' ';'
  21578. && lk != 27241 // 'count' ';'
  21579. && lk != 27242 // 'decimal-format' ';'
  21580. && lk != 27244 // 'declare' ';'
  21581. && lk != 27245 // 'default' ';'
  21582. && lk != 27246 // 'delete' ';'
  21583. && lk != 27247 // 'descendant' ';'
  21584. && lk != 27248 // 'descendant-or-self' ';'
  21585. && lk != 27249 // 'descending' ';'
  21586. && lk != 27254 // 'div' ';'
  21587. && lk != 27255 // 'document' ';'
  21588. && lk != 27256 // 'document-node' ';'
  21589. && lk != 27257 // 'element' ';'
  21590. && lk != 27258 // 'else' ';'
  21591. && lk != 27259 // 'empty' ';'
  21592. && lk != 27260 // 'empty-sequence' ';'
  21593. && lk != 27261 // 'encoding' ';'
  21594. && lk != 27262 // 'end' ';'
  21595. && lk != 27264 // 'eq' ';'
  21596. && lk != 27265 // 'every' ';'
  21597. && lk != 27267 // 'except' ';'
  21598. && lk != 27268 // 'exit' ';'
  21599. && lk != 27269 // 'external' ';'
  21600. && lk != 27270 // 'first' ';'
  21601. && lk != 27271 // 'following' ';'
  21602. && lk != 27272 // 'following-sibling' ';'
  21603. && lk != 27273 // 'for' ';'
  21604. && lk != 27277 // 'ft-option' ';'
  21605. && lk != 27281 // 'function' ';'
  21606. && lk != 27282 // 'ge' ';'
  21607. && lk != 27284 // 'group' ';'
  21608. && lk != 27286 // 'gt' ';'
  21609. && lk != 27287 // 'idiv' ';'
  21610. && lk != 27288 // 'if' ';'
  21611. && lk != 27289 // 'import' ';'
  21612. && lk != 27290 // 'in' ';'
  21613. && lk != 27291 // 'index' ';'
  21614. && lk != 27295 // 'insert' ';'
  21615. && lk != 27296 // 'instance' ';'
  21616. && lk != 27297 // 'integrity' ';'
  21617. && lk != 27298 // 'intersect' ';'
  21618. && lk != 27299 // 'into' ';'
  21619. && lk != 27300 // 'is' ';'
  21620. && lk != 27301 // 'item' ';'
  21621. && lk != 27303 // 'json-item' ';'
  21622. && lk != 27306 // 'last' ';'
  21623. && lk != 27307 // 'lax' ';'
  21624. && lk != 27308 // 'le' ';'
  21625. && lk != 27310 // 'let' ';'
  21626. && lk != 27312 // 'loop' ';'
  21627. && lk != 27314 // 'lt' ';'
  21628. && lk != 27316 // 'mod' ';'
  21629. && lk != 27317 // 'modify' ';'
  21630. && lk != 27318 // 'module' ';'
  21631. && lk != 27320 // 'namespace' ';'
  21632. && lk != 27321 // 'namespace-node' ';'
  21633. && lk != 27322 // 'ne' ';'
  21634. && lk != 27327 // 'node' ';'
  21635. && lk != 27328 // 'nodes' ';'
  21636. && lk != 27330 // 'object' ';'
  21637. && lk != 27334 // 'only' ';'
  21638. && lk != 27335 // 'option' ';'
  21639. && lk != 27336 // 'or' ';'
  21640. && lk != 27337 // 'order' ';'
  21641. && lk != 27338 // 'ordered' ';'
  21642. && lk != 27339 // 'ordering' ';'
  21643. && lk != 27342 // 'parent' ';'
  21644. && lk != 27348 // 'preceding' ';'
  21645. && lk != 27349 // 'preceding-sibling' ';'
  21646. && lk != 27352 // 'processing-instruction' ';'
  21647. && lk != 27354 // 'rename' ';'
  21648. && lk != 27355 // 'replace' ';'
  21649. && lk != 27356 // 'return' ';'
  21650. && lk != 27357 // 'returning' ';'
  21651. && lk != 27358 // 'revalidation' ';'
  21652. && lk != 27360 // 'satisfies' ';'
  21653. && lk != 27361 // 'schema' ';'
  21654. && lk != 27362 // 'schema-attribute' ';'
  21655. && lk != 27363 // 'schema-element' ';'
  21656. && lk != 27364 // 'score' ';'
  21657. && lk != 27365 // 'self' ';'
  21658. && lk != 27370 // 'sliding' ';'
  21659. && lk != 27371 // 'some' ';'
  21660. && lk != 27372 // 'stable' ';'
  21661. && lk != 27373 // 'start' ';'
  21662. && lk != 27376 // 'strict' ';'
  21663. && lk != 27379 // 'switch' ';'
  21664. && lk != 27380 // 'text' ';'
  21665. && lk != 27384 // 'to' ';'
  21666. && lk != 27385 // 'treat' ';'
  21667. && lk != 27386 // 'try' ';'
  21668. && lk != 27387 // 'tumbling' ';'
  21669. && lk != 27388 // 'type' ';'
  21670. && lk != 27389 // 'typeswitch' ';'
  21671. && lk != 27390 // 'union' ';'
  21672. && lk != 27392 // 'unordered' ';'
  21673. && lk != 27393 // 'updating' ';'
  21674. && lk != 27396 // 'validate' ';'
  21675. && lk != 27397 // 'value' ';'
  21676. && lk != 27398 // 'variable' ';'
  21677. && lk != 27399 // 'version' ';'
  21678. && lk != 27402 // 'where' ';'
  21679. && lk != 27403 // 'while' ';'
  21680. && lk != 27406 // 'with' ';'
  21681. && lk != 27410 // 'xquery' ';'
  21682. && lk != 90198 // 'break' 'loop'
  21683. && lk != 90214 // 'continue' 'loop'
  21684. && lk != 113284 // 'exit' 'returning'
  21685. && lk != 144389 // Wildcard '}'
  21686. && lk != 144390 // EQName^Token '}'
  21687. && lk != 144392 // IntegerLiteral '}'
  21688. && lk != 144393 // DecimalLiteral '}'
  21689. && lk != 144394 // DoubleLiteral '}'
  21690. && lk != 144395 // StringLiteral '}'
  21691. && lk != 144428 // '.' '}'
  21692. && lk != 144429 // '..' '}'
  21693. && lk != 144430 // '/' '}'
  21694. && lk != 144454 // 'after' '}'
  21695. && lk != 144456 // 'allowing' '}'
  21696. && lk != 144457 // 'ancestor' '}'
  21697. && lk != 144458 // 'ancestor-or-self' '}'
  21698. && lk != 144459 // 'and' '}'
  21699. && lk != 144462 // 'array' '}'
  21700. && lk != 144463 // 'as' '}'
  21701. && lk != 144464 // 'ascending' '}'
  21702. && lk != 144465 // 'at' '}'
  21703. && lk != 144466 // 'attribute' '}'
  21704. && lk != 144467 // 'base-uri' '}'
  21705. && lk != 144468 // 'before' '}'
  21706. && lk != 144469 // 'boundary-space' '}'
  21707. && lk != 144470 // 'break' '}'
  21708. && lk != 144472 // 'case' '}'
  21709. && lk != 144473 // 'cast' '}'
  21710. && lk != 144474 // 'castable' '}'
  21711. && lk != 144475 // 'catch' '}'
  21712. && lk != 144477 // 'child' '}'
  21713. && lk != 144478 // 'collation' '}'
  21714. && lk != 144480 // 'comment' '}'
  21715. && lk != 144481 // 'constraint' '}'
  21716. && lk != 144482 // 'construction' '}'
  21717. && lk != 144485 // 'context' '}'
  21718. && lk != 144486 // 'continue' '}'
  21719. && lk != 144487 // 'copy' '}'
  21720. && lk != 144488 // 'copy-namespaces' '}'
  21721. && lk != 144489 // 'count' '}'
  21722. && lk != 144490 // 'decimal-format' '}'
  21723. && lk != 144492 // 'declare' '}'
  21724. && lk != 144493 // 'default' '}'
  21725. && lk != 144494 // 'delete' '}'
  21726. && lk != 144495 // 'descendant' '}'
  21727. && lk != 144496 // 'descendant-or-self' '}'
  21728. && lk != 144497 // 'descending' '}'
  21729. && lk != 144502 // 'div' '}'
  21730. && lk != 144503 // 'document' '}'
  21731. && lk != 144504 // 'document-node' '}'
  21732. && lk != 144505 // 'element' '}'
  21733. && lk != 144506 // 'else' '}'
  21734. && lk != 144507 // 'empty' '}'
  21735. && lk != 144508 // 'empty-sequence' '}'
  21736. && lk != 144509 // 'encoding' '}'
  21737. && lk != 144510 // 'end' '}'
  21738. && lk != 144512 // 'eq' '}'
  21739. && lk != 144513 // 'every' '}'
  21740. && lk != 144515 // 'except' '}'
  21741. && lk != 144516 // 'exit' '}'
  21742. && lk != 144517 // 'external' '}'
  21743. && lk != 144518 // 'first' '}'
  21744. && lk != 144519 // 'following' '}'
  21745. && lk != 144520 // 'following-sibling' '}'
  21746. && lk != 144521 // 'for' '}'
  21747. && lk != 144525 // 'ft-option' '}'
  21748. && lk != 144529 // 'function' '}'
  21749. && lk != 144530 // 'ge' '}'
  21750. && lk != 144532 // 'group' '}'
  21751. && lk != 144534 // 'gt' '}'
  21752. && lk != 144535 // 'idiv' '}'
  21753. && lk != 144536 // 'if' '}'
  21754. && lk != 144537 // 'import' '}'
  21755. && lk != 144538 // 'in' '}'
  21756. && lk != 144539 // 'index' '}'
  21757. && lk != 144543 // 'insert' '}'
  21758. && lk != 144544 // 'instance' '}'
  21759. && lk != 144545 // 'integrity' '}'
  21760. && lk != 144546 // 'intersect' '}'
  21761. && lk != 144547 // 'into' '}'
  21762. && lk != 144548 // 'is' '}'
  21763. && lk != 144549 // 'item' '}'
  21764. && lk != 144551 // 'json-item' '}'
  21765. && lk != 144554 // 'last' '}'
  21766. && lk != 144555 // 'lax' '}'
  21767. && lk != 144556 // 'le' '}'
  21768. && lk != 144558 // 'let' '}'
  21769. && lk != 144560 // 'loop' '}'
  21770. && lk != 144562 // 'lt' '}'
  21771. && lk != 144564 // 'mod' '}'
  21772. && lk != 144565 // 'modify' '}'
  21773. && lk != 144566 // 'module' '}'
  21774. && lk != 144568 // 'namespace' '}'
  21775. && lk != 144569 // 'namespace-node' '}'
  21776. && lk != 144570 // 'ne' '}'
  21777. && lk != 144575 // 'node' '}'
  21778. && lk != 144576 // 'nodes' '}'
  21779. && lk != 144578 // 'object' '}'
  21780. && lk != 144582 // 'only' '}'
  21781. && lk != 144583 // 'option' '}'
  21782. && lk != 144584 // 'or' '}'
  21783. && lk != 144585 // 'order' '}'
  21784. && lk != 144586 // 'ordered' '}'
  21785. && lk != 144587 // 'ordering' '}'
  21786. && lk != 144590 // 'parent' '}'
  21787. && lk != 144596 // 'preceding' '}'
  21788. && lk != 144597 // 'preceding-sibling' '}'
  21789. && lk != 144600 // 'processing-instruction' '}'
  21790. && lk != 144602 // 'rename' '}'
  21791. && lk != 144603 // 'replace' '}'
  21792. && lk != 144604 // 'return' '}'
  21793. && lk != 144605 // 'returning' '}'
  21794. && lk != 144606 // 'revalidation' '}'
  21795. && lk != 144608 // 'satisfies' '}'
  21796. && lk != 144609 // 'schema' '}'
  21797. && lk != 144610 // 'schema-attribute' '}'
  21798. && lk != 144611 // 'schema-element' '}'
  21799. && lk != 144612 // 'score' '}'
  21800. && lk != 144613 // 'self' '}'
  21801. && lk != 144618 // 'sliding' '}'
  21802. && lk != 144619 // 'some' '}'
  21803. && lk != 144620 // 'stable' '}'
  21804. && lk != 144621 // 'start' '}'
  21805. && lk != 144624 // 'strict' '}'
  21806. && lk != 144627 // 'switch' '}'
  21807. && lk != 144628 // 'text' '}'
  21808. && lk != 144632 // 'to' '}'
  21809. && lk != 144633 // 'treat' '}'
  21810. && lk != 144634 // 'try' '}'
  21811. && lk != 144635 // 'tumbling' '}'
  21812. && lk != 144636 // 'type' '}'
  21813. && lk != 144637 // 'typeswitch' '}'
  21814. && lk != 144638 // 'union' '}'
  21815. && lk != 144640 // 'unordered' '}'
  21816. && lk != 144641 // 'updating' '}'
  21817. && lk != 144644 // 'validate' '}'
  21818. && lk != 144645 // 'value' '}'
  21819. && lk != 144646 // 'variable' '}'
  21820. && lk != 144647 // 'version' '}'
  21821. && lk != 144650 // 'where' '}'
  21822. && lk != 144651 // 'while' '}'
  21823. && lk != 144654 // 'with' '}'
  21824. && lk != 144658) // 'xquery' '}'
  21825. {
  21826. lk = memoized(6, e0);
  21827. if (lk == 0)
  21828. {
  21829. var b0A = b0; var e0A = e0; var l1A = l1;
  21830. var b1A = b1; var e1A = e1; var l2A = l2;
  21831. var b2A = b2; var e2A = e2;
  21832. try
  21833. {
  21834. try_Statement();
  21835. memoize(6, e0A, -1);
  21836. continue;
  21837. }
  21838. catch (p1A)
  21839. {
  21840. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  21841. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  21842. b2 = b2A; e2 = e2A; end = e2A; }}
  21843. memoize(6, e0A, -2);
  21844. break;
  21845. }
  21846. }
  21847. }
  21848. if (lk != -1
  21849. && lk != 16134 // 'variable' '$'
  21850. && lk != 27141 // Wildcard ';'
  21851. && lk != 27142 // EQName^Token ';'
  21852. && lk != 27144 // IntegerLiteral ';'
  21853. && lk != 27145 // DecimalLiteral ';'
  21854. && lk != 27146 // DoubleLiteral ';'
  21855. && lk != 27147 // StringLiteral ';'
  21856. && lk != 27180 // '.' ';'
  21857. && lk != 27181 // '..' ';'
  21858. && lk != 27182 // '/' ';'
  21859. && lk != 27206 // 'after' ';'
  21860. && lk != 27208 // 'allowing' ';'
  21861. && lk != 27209 // 'ancestor' ';'
  21862. && lk != 27210 // 'ancestor-or-self' ';'
  21863. && lk != 27211 // 'and' ';'
  21864. && lk != 27214 // 'array' ';'
  21865. && lk != 27215 // 'as' ';'
  21866. && lk != 27216 // 'ascending' ';'
  21867. && lk != 27217 // 'at' ';'
  21868. && lk != 27218 // 'attribute' ';'
  21869. && lk != 27219 // 'base-uri' ';'
  21870. && lk != 27220 // 'before' ';'
  21871. && lk != 27221 // 'boundary-space' ';'
  21872. && lk != 27222 // 'break' ';'
  21873. && lk != 27224 // 'case' ';'
  21874. && lk != 27225 // 'cast' ';'
  21875. && lk != 27226 // 'castable' ';'
  21876. && lk != 27227 // 'catch' ';'
  21877. && lk != 27229 // 'child' ';'
  21878. && lk != 27230 // 'collation' ';'
  21879. && lk != 27232 // 'comment' ';'
  21880. && lk != 27233 // 'constraint' ';'
  21881. && lk != 27234 // 'construction' ';'
  21882. && lk != 27237 // 'context' ';'
  21883. && lk != 27238 // 'continue' ';'
  21884. && lk != 27239 // 'copy' ';'
  21885. && lk != 27240 // 'copy-namespaces' ';'
  21886. && lk != 27241 // 'count' ';'
  21887. && lk != 27242 // 'decimal-format' ';'
  21888. && lk != 27244 // 'declare' ';'
  21889. && lk != 27245 // 'default' ';'
  21890. && lk != 27246 // 'delete' ';'
  21891. && lk != 27247 // 'descendant' ';'
  21892. && lk != 27248 // 'descendant-or-self' ';'
  21893. && lk != 27249 // 'descending' ';'
  21894. && lk != 27254 // 'div' ';'
  21895. && lk != 27255 // 'document' ';'
  21896. && lk != 27256 // 'document-node' ';'
  21897. && lk != 27257 // 'element' ';'
  21898. && lk != 27258 // 'else' ';'
  21899. && lk != 27259 // 'empty' ';'
  21900. && lk != 27260 // 'empty-sequence' ';'
  21901. && lk != 27261 // 'encoding' ';'
  21902. && lk != 27262 // 'end' ';'
  21903. && lk != 27264 // 'eq' ';'
  21904. && lk != 27265 // 'every' ';'
  21905. && lk != 27267 // 'except' ';'
  21906. && lk != 27268 // 'exit' ';'
  21907. && lk != 27269 // 'external' ';'
  21908. && lk != 27270 // 'first' ';'
  21909. && lk != 27271 // 'following' ';'
  21910. && lk != 27272 // 'following-sibling' ';'
  21911. && lk != 27273 // 'for' ';'
  21912. && lk != 27277 // 'ft-option' ';'
  21913. && lk != 27281 // 'function' ';'
  21914. && lk != 27282 // 'ge' ';'
  21915. && lk != 27284 // 'group' ';'
  21916. && lk != 27286 // 'gt' ';'
  21917. && lk != 27287 // 'idiv' ';'
  21918. && lk != 27288 // 'if' ';'
  21919. && lk != 27289 // 'import' ';'
  21920. && lk != 27290 // 'in' ';'
  21921. && lk != 27291 // 'index' ';'
  21922. && lk != 27295 // 'insert' ';'
  21923. && lk != 27296 // 'instance' ';'
  21924. && lk != 27297 // 'integrity' ';'
  21925. && lk != 27298 // 'intersect' ';'
  21926. && lk != 27299 // 'into' ';'
  21927. && lk != 27300 // 'is' ';'
  21928. && lk != 27301 // 'item' ';'
  21929. && lk != 27303 // 'json-item' ';'
  21930. && lk != 27306 // 'last' ';'
  21931. && lk != 27307 // 'lax' ';'
  21932. && lk != 27308 // 'le' ';'
  21933. && lk != 27310 // 'let' ';'
  21934. && lk != 27312 // 'loop' ';'
  21935. && lk != 27314 // 'lt' ';'
  21936. && lk != 27316 // 'mod' ';'
  21937. && lk != 27317 // 'modify' ';'
  21938. && lk != 27318 // 'module' ';'
  21939. && lk != 27320 // 'namespace' ';'
  21940. && lk != 27321 // 'namespace-node' ';'
  21941. && lk != 27322 // 'ne' ';'
  21942. && lk != 27327 // 'node' ';'
  21943. && lk != 27328 // 'nodes' ';'
  21944. && lk != 27330 // 'object' ';'
  21945. && lk != 27334 // 'only' ';'
  21946. && lk != 27335 // 'option' ';'
  21947. && lk != 27336 // 'or' ';'
  21948. && lk != 27337 // 'order' ';'
  21949. && lk != 27338 // 'ordered' ';'
  21950. && lk != 27339 // 'ordering' ';'
  21951. && lk != 27342 // 'parent' ';'
  21952. && lk != 27348 // 'preceding' ';'
  21953. && lk != 27349 // 'preceding-sibling' ';'
  21954. && lk != 27352 // 'processing-instruction' ';'
  21955. && lk != 27354 // 'rename' ';'
  21956. && lk != 27355 // 'replace' ';'
  21957. && lk != 27356 // 'return' ';'
  21958. && lk != 27357 // 'returning' ';'
  21959. && lk != 27358 // 'revalidation' ';'
  21960. && lk != 27360 // 'satisfies' ';'
  21961. && lk != 27361 // 'schema' ';'
  21962. && lk != 27362 // 'schema-attribute' ';'
  21963. && lk != 27363 // 'schema-element' ';'
  21964. && lk != 27364 // 'score' ';'
  21965. && lk != 27365 // 'self' ';'
  21966. && lk != 27370 // 'sliding' ';'
  21967. && lk != 27371 // 'some' ';'
  21968. && lk != 27372 // 'stable' ';'
  21969. && lk != 27373 // 'start' ';'
  21970. && lk != 27376 // 'strict' ';'
  21971. && lk != 27379 // 'switch' ';'
  21972. && lk != 27380 // 'text' ';'
  21973. && lk != 27384 // 'to' ';'
  21974. && lk != 27385 // 'treat' ';'
  21975. && lk != 27386 // 'try' ';'
  21976. && lk != 27387 // 'tumbling' ';'
  21977. && lk != 27388 // 'type' ';'
  21978. && lk != 27389 // 'typeswitch' ';'
  21979. && lk != 27390 // 'union' ';'
  21980. && lk != 27392 // 'unordered' ';'
  21981. && lk != 27393 // 'updating' ';'
  21982. && lk != 27396 // 'validate' ';'
  21983. && lk != 27397 // 'value' ';'
  21984. && lk != 27398 // 'variable' ';'
  21985. && lk != 27399 // 'version' ';'
  21986. && lk != 27402 // 'where' ';'
  21987. && lk != 27403 // 'while' ';'
  21988. && lk != 27406 // 'with' ';'
  21989. && lk != 27410 // 'xquery' ';'
  21990. && lk != 90198 // 'break' 'loop'
  21991. && lk != 90214 // 'continue' 'loop'
  21992. && lk != 113284) // 'exit' 'returning'
  21993. {
  21994. break;
  21995. }
  21996. try_Statement();
  21997. }
  21998. }
  21999. function parse_StatementsAndExpr()
  22000. {
  22001. eventHandler.startNonterminal("StatementsAndExpr", e0);
  22002. parse_Statements();
  22003. whitespace();
  22004. parse_Expr();
  22005. eventHandler.endNonterminal("StatementsAndExpr", e0);
  22006. }
  22007. function try_StatementsAndExpr()
  22008. {
  22009. try_Statements();
  22010. try_Expr();
  22011. }
  22012. function parse_StatementsAndOptionalExpr()
  22013. {
  22014. eventHandler.startNonterminal("StatementsAndOptionalExpr", e0);
  22015. parse_Statements();
  22016. if (l1 != 25 // EOF
  22017. && l1 != 282) // '}'
  22018. {
  22019. whitespace();
  22020. parse_Expr();
  22021. }
  22022. eventHandler.endNonterminal("StatementsAndOptionalExpr", e0);
  22023. }
  22024. function try_StatementsAndOptionalExpr()
  22025. {
  22026. try_Statements();
  22027. if (l1 != 25 // EOF
  22028. && l1 != 282) // '}'
  22029. {
  22030. try_Expr();
  22031. }
  22032. }
  22033. function parse_Statement()
  22034. {
  22035. eventHandler.startNonterminal("Statement", e0);
  22036. switch (l1)
  22037. {
  22038. case 132: // 'exit'
  22039. lookahead2W(189); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22040. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22041. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22042. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'returning' | 'to' |
  22043. // 'treat' | 'union' | '|' | '||'
  22044. break;
  22045. case 137: // 'for'
  22046. lookahead2W(196); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22047. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22048. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22049. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'sliding' | 'to' |
  22050. // 'treat' | 'tumbling' | 'union' | '|' | '||'
  22051. break;
  22052. case 174: // 'let'
  22053. lookahead2W(193); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22054. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22055. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22056. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'score' | 'to' |
  22057. // 'treat' | 'union' | '|' | '||'
  22058. break;
  22059. case 250: // 'try'
  22060. lookahead2W(190); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22061. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22062. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22063. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22064. // 'union' | '{' | '|' | '||'
  22065. break;
  22066. case 262: // 'variable'
  22067. lookahead2W(187); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22068. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22069. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22070. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22071. // 'union' | '|' | '||'
  22072. break;
  22073. case 276: // '{'
  22074. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  22075. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  22076. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  22077. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  22078. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  22079. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  22080. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  22081. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  22082. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  22083. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  22084. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  22085. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  22086. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  22087. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  22088. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  22089. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  22090. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  22091. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  22092. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  22093. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  22094. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  22095. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  22096. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  22097. // 'xquery' | '{' | '{|' | '}'
  22098. break;
  22099. case 31: // '$'
  22100. case 32: // '%'
  22101. lookahead2W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  22102. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  22103. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  22104. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  22105. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  22106. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  22107. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  22108. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  22109. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  22110. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  22111. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  22112. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  22113. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  22114. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  22115. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  22116. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  22117. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  22118. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  22119. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  22120. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  22121. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  22122. // 'xquery'
  22123. break;
  22124. case 86: // 'break'
  22125. case 102: // 'continue'
  22126. lookahead2W(188); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22127. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22128. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22129. // 'intersect' | 'is' | 'le' | 'loop' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  22130. // 'treat' | 'union' | '|' | '||'
  22131. break;
  22132. case 152: // 'if'
  22133. case 243: // 'switch'
  22134. case 253: // 'typeswitch'
  22135. case 267: // 'while'
  22136. lookahead2W(185); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22137. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22138. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22139. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22140. // 'union' | '|' | '||'
  22141. break;
  22142. default:
  22143. lk = l1;
  22144. }
  22145. if (lk == 2836 // '{' Wildcard
  22146. || lk == 3103 // '$' EQName^Token
  22147. || lk == 3104 // '%' EQName^Token
  22148. || lk == 3348 // '{' EQName^Token
  22149. || lk == 4372 // '{' IntegerLiteral
  22150. || lk == 4884 // '{' DecimalLiteral
  22151. || lk == 5396 // '{' DoubleLiteral
  22152. || lk == 5908 // '{' StringLiteral
  22153. || lk == 16148 // '{' '$'
  22154. || lk == 16660 // '{' '%'
  22155. || lk == 17675 // 'while' '('
  22156. || lk == 17684 // '{' '('
  22157. || lk == 18196 // '{' '(#'
  22158. || lk == 20756 // '{' '+'
  22159. || lk == 21780 // '{' '-'
  22160. || lk == 22804 // '{' '.'
  22161. || lk == 23316 // '{' '..'
  22162. || lk == 23828 // '{' '/'
  22163. || lk == 24340 // '{' '//'
  22164. || lk == 27924 // '{' '<'
  22165. || lk == 28436 // '{' '<!--'
  22166. || lk == 30484 // '{' '<?'
  22167. || lk == 34068 // '{' '@'
  22168. || lk == 35092 // '{' '['
  22169. || lk == 35871 // '$' 'after'
  22170. || lk == 35872 // '%' 'after'
  22171. || lk == 36116 // '{' 'after'
  22172. || lk == 36895 // '$' 'allowing'
  22173. || lk == 36896 // '%' 'allowing'
  22174. || lk == 37140 // '{' 'allowing'
  22175. || lk == 37407 // '$' 'ancestor'
  22176. || lk == 37408 // '%' 'ancestor'
  22177. || lk == 37652 // '{' 'ancestor'
  22178. || lk == 37919 // '$' 'ancestor-or-self'
  22179. || lk == 37920 // '%' 'ancestor-or-self'
  22180. || lk == 38164 // '{' 'ancestor-or-self'
  22181. || lk == 38431 // '$' 'and'
  22182. || lk == 38432 // '%' 'and'
  22183. || lk == 38676 // '{' 'and'
  22184. || lk == 39700 // '{' 'append'
  22185. || lk == 39967 // '$' 'array'
  22186. || lk == 39968 // '%' 'array'
  22187. || lk == 40212 // '{' 'array'
  22188. || lk == 40479 // '$' 'as'
  22189. || lk == 40480 // '%' 'as'
  22190. || lk == 40724 // '{' 'as'
  22191. || lk == 40991 // '$' 'ascending'
  22192. || lk == 40992 // '%' 'ascending'
  22193. || lk == 41236 // '{' 'ascending'
  22194. || lk == 41503 // '$' 'at'
  22195. || lk == 41504 // '%' 'at'
  22196. || lk == 41748 // '{' 'at'
  22197. || lk == 42015 // '$' 'attribute'
  22198. || lk == 42016 // '%' 'attribute'
  22199. || lk == 42260 // '{' 'attribute'
  22200. || lk == 42527 // '$' 'base-uri'
  22201. || lk == 42528 // '%' 'base-uri'
  22202. || lk == 42772 // '{' 'base-uri'
  22203. || lk == 43039 // '$' 'before'
  22204. || lk == 43040 // '%' 'before'
  22205. || lk == 43284 // '{' 'before'
  22206. || lk == 43551 // '$' 'boundary-space'
  22207. || lk == 43552 // '%' 'boundary-space'
  22208. || lk == 43796 // '{' 'boundary-space'
  22209. || lk == 44063 // '$' 'break'
  22210. || lk == 44064 // '%' 'break'
  22211. || lk == 44308 // '{' 'break'
  22212. || lk == 45087 // '$' 'case'
  22213. || lk == 45088 // '%' 'case'
  22214. || lk == 45332 // '{' 'case'
  22215. || lk == 45599 // '$' 'cast'
  22216. || lk == 45600 // '%' 'cast'
  22217. || lk == 45844 // '{' 'cast'
  22218. || lk == 46111 // '$' 'castable'
  22219. || lk == 46112 // '%' 'castable'
  22220. || lk == 46356 // '{' 'castable'
  22221. || lk == 46623 // '$' 'catch'
  22222. || lk == 46624 // '%' 'catch'
  22223. || lk == 46868 // '{' 'catch'
  22224. || lk == 47647 // '$' 'child'
  22225. || lk == 47648 // '%' 'child'
  22226. || lk == 47892 // '{' 'child'
  22227. || lk == 48159 // '$' 'collation'
  22228. || lk == 48160 // '%' 'collation'
  22229. || lk == 48404 // '{' 'collation'
  22230. || lk == 49183 // '$' 'comment'
  22231. || lk == 49184 // '%' 'comment'
  22232. || lk == 49428 // '{' 'comment'
  22233. || lk == 49695 // '$' 'constraint'
  22234. || lk == 49696 // '%' 'constraint'
  22235. || lk == 49940 // '{' 'constraint'
  22236. || lk == 50207 // '$' 'construction'
  22237. || lk == 50208 // '%' 'construction'
  22238. || lk == 50452 // '{' 'construction'
  22239. || lk == 51743 // '$' 'context'
  22240. || lk == 51744 // '%' 'context'
  22241. || lk == 51988 // '{' 'context'
  22242. || lk == 52255 // '$' 'continue'
  22243. || lk == 52256 // '%' 'continue'
  22244. || lk == 52500 // '{' 'continue'
  22245. || lk == 52767 // '$' 'copy'
  22246. || lk == 52768 // '%' 'copy'
  22247. || lk == 53012 // '{' 'copy'
  22248. || lk == 53279 // '$' 'copy-namespaces'
  22249. || lk == 53280 // '%' 'copy-namespaces'
  22250. || lk == 53524 // '{' 'copy-namespaces'
  22251. || lk == 53791 // '$' 'count'
  22252. || lk == 53792 // '%' 'count'
  22253. || lk == 54036 // '{' 'count'
  22254. || lk == 54303 // '$' 'decimal-format'
  22255. || lk == 54304 // '%' 'decimal-format'
  22256. || lk == 54548 // '{' 'decimal-format'
  22257. || lk == 55327 // '$' 'declare'
  22258. || lk == 55328 // '%' 'declare'
  22259. || lk == 55572 // '{' 'declare'
  22260. || lk == 55839 // '$' 'default'
  22261. || lk == 55840 // '%' 'default'
  22262. || lk == 56084 // '{' 'default'
  22263. || lk == 56351 // '$' 'delete'
  22264. || lk == 56352 // '%' 'delete'
  22265. || lk == 56596 // '{' 'delete'
  22266. || lk == 56863 // '$' 'descendant'
  22267. || lk == 56864 // '%' 'descendant'
  22268. || lk == 57108 // '{' 'descendant'
  22269. || lk == 57375 // '$' 'descendant-or-self'
  22270. || lk == 57376 // '%' 'descendant-or-self'
  22271. || lk == 57620 // '{' 'descendant-or-self'
  22272. || lk == 57887 // '$' 'descending'
  22273. || lk == 57888 // '%' 'descending'
  22274. || lk == 58132 // '{' 'descending'
  22275. || lk == 60447 // '$' 'div'
  22276. || lk == 60448 // '%' 'div'
  22277. || lk == 60692 // '{' 'div'
  22278. || lk == 60959 // '$' 'document'
  22279. || lk == 60960 // '%' 'document'
  22280. || lk == 61204 // '{' 'document'
  22281. || lk == 61471 // '$' 'document-node'
  22282. || lk == 61472 // '%' 'document-node'
  22283. || lk == 61716 // '{' 'document-node'
  22284. || lk == 61983 // '$' 'element'
  22285. || lk == 61984 // '%' 'element'
  22286. || lk == 62228 // '{' 'element'
  22287. || lk == 62495 // '$' 'else'
  22288. || lk == 62496 // '%' 'else'
  22289. || lk == 62740 // '{' 'else'
  22290. || lk == 63007 // '$' 'empty'
  22291. || lk == 63008 // '%' 'empty'
  22292. || lk == 63252 // '{' 'empty'
  22293. || lk == 63519 // '$' 'empty-sequence'
  22294. || lk == 63520 // '%' 'empty-sequence'
  22295. || lk == 63764 // '{' 'empty-sequence'
  22296. || lk == 64031 // '$' 'encoding'
  22297. || lk == 64032 // '%' 'encoding'
  22298. || lk == 64276 // '{' 'encoding'
  22299. || lk == 64543 // '$' 'end'
  22300. || lk == 64544 // '%' 'end'
  22301. || lk == 64788 // '{' 'end'
  22302. || lk == 65567 // '$' 'eq'
  22303. || lk == 65568 // '%' 'eq'
  22304. || lk == 65812 // '{' 'eq'
  22305. || lk == 66079 // '$' 'every'
  22306. || lk == 66080 // '%' 'every'
  22307. || lk == 66324 // '{' 'every'
  22308. || lk == 67103 // '$' 'except'
  22309. || lk == 67104 // '%' 'except'
  22310. || lk == 67348 // '{' 'except'
  22311. || lk == 67615 // '$' 'exit'
  22312. || lk == 67616 // '%' 'exit'
  22313. || lk == 67860 // '{' 'exit'
  22314. || lk == 68127 // '$' 'external'
  22315. || lk == 68128 // '%' 'external'
  22316. || lk == 68372 // '{' 'external'
  22317. || lk == 68639 // '$' 'first'
  22318. || lk == 68640 // '%' 'first'
  22319. || lk == 68884 // '{' 'first'
  22320. || lk == 69151 // '$' 'following'
  22321. || lk == 69152 // '%' 'following'
  22322. || lk == 69396 // '{' 'following'
  22323. || lk == 69663 // '$' 'following-sibling'
  22324. || lk == 69664 // '%' 'following-sibling'
  22325. || lk == 69908 // '{' 'following-sibling'
  22326. || lk == 70175 // '$' 'for'
  22327. || lk == 70176 // '%' 'for'
  22328. || lk == 70420 // '{' 'for'
  22329. || lk == 72223 // '$' 'ft-option'
  22330. || lk == 72224 // '%' 'ft-option'
  22331. || lk == 72468 // '{' 'ft-option'
  22332. || lk == 74271 // '$' 'function'
  22333. || lk == 74272 // '%' 'function'
  22334. || lk == 74516 // '{' 'function'
  22335. || lk == 74783 // '$' 'ge'
  22336. || lk == 74784 // '%' 'ge'
  22337. || lk == 75028 // '{' 'ge'
  22338. || lk == 75807 // '$' 'group'
  22339. || lk == 75808 // '%' 'group'
  22340. || lk == 76052 // '{' 'group'
  22341. || lk == 76831 // '$' 'gt'
  22342. || lk == 76832 // '%' 'gt'
  22343. || lk == 77076 // '{' 'gt'
  22344. || lk == 77343 // '$' 'idiv'
  22345. || lk == 77344 // '%' 'idiv'
  22346. || lk == 77588 // '{' 'idiv'
  22347. || lk == 77855 // '$' 'if'
  22348. || lk == 77856 // '%' 'if'
  22349. || lk == 78100 // '{' 'if'
  22350. || lk == 78367 // '$' 'import'
  22351. || lk == 78368 // '%' 'import'
  22352. || lk == 78612 // '{' 'import'
  22353. || lk == 78879 // '$' 'in'
  22354. || lk == 78880 // '%' 'in'
  22355. || lk == 79124 // '{' 'in'
  22356. || lk == 79391 // '$' 'index'
  22357. || lk == 79392 // '%' 'index'
  22358. || lk == 79636 // '{' 'index'
  22359. || lk == 81439 // '$' 'insert'
  22360. || lk == 81440 // '%' 'insert'
  22361. || lk == 81684 // '{' 'insert'
  22362. || lk == 81951 // '$' 'instance'
  22363. || lk == 81952 // '%' 'instance'
  22364. || lk == 82196 // '{' 'instance'
  22365. || lk == 82463 // '$' 'integrity'
  22366. || lk == 82464 // '%' 'integrity'
  22367. || lk == 82708 // '{' 'integrity'
  22368. || lk == 82975 // '$' 'intersect'
  22369. || lk == 82976 // '%' 'intersect'
  22370. || lk == 83220 // '{' 'intersect'
  22371. || lk == 83487 // '$' 'into'
  22372. || lk == 83488 // '%' 'into'
  22373. || lk == 83732 // '{' 'into'
  22374. || lk == 83999 // '$' 'is'
  22375. || lk == 84000 // '%' 'is'
  22376. || lk == 84244 // '{' 'is'
  22377. || lk == 84511 // '$' 'item'
  22378. || lk == 84512 // '%' 'item'
  22379. || lk == 84756 // '{' 'item'
  22380. || lk == 85535 // '$' 'json-item'
  22381. || lk == 85536 // '%' 'json-item'
  22382. || lk == 85780 // '{' 'json-item'
  22383. || lk == 87071 // '$' 'last'
  22384. || lk == 87072 // '%' 'last'
  22385. || lk == 87316 // '{' 'last'
  22386. || lk == 87583 // '$' 'lax'
  22387. || lk == 87584 // '%' 'lax'
  22388. || lk == 87828 // '{' 'lax'
  22389. || lk == 88095 // '$' 'le'
  22390. || lk == 88096 // '%' 'le'
  22391. || lk == 88340 // '{' 'le'
  22392. || lk == 89119 // '$' 'let'
  22393. || lk == 89120 // '%' 'let'
  22394. || lk == 89364 // '{' 'let'
  22395. || lk == 90143 // '$' 'loop'
  22396. || lk == 90144 // '%' 'loop'
  22397. || lk == 90388 // '{' 'loop'
  22398. || lk == 91167 // '$' 'lt'
  22399. || lk == 91168 // '%' 'lt'
  22400. || lk == 91412 // '{' 'lt'
  22401. || lk == 92191 // '$' 'mod'
  22402. || lk == 92192 // '%' 'mod'
  22403. || lk == 92436 // '{' 'mod'
  22404. || lk == 92703 // '$' 'modify'
  22405. || lk == 92704 // '%' 'modify'
  22406. || lk == 92948 // '{' 'modify'
  22407. || lk == 93215 // '$' 'module'
  22408. || lk == 93216 // '%' 'module'
  22409. || lk == 93460 // '{' 'module'
  22410. || lk == 94239 // '$' 'namespace'
  22411. || lk == 94240 // '%' 'namespace'
  22412. || lk == 94484 // '{' 'namespace'
  22413. || lk == 94751 // '$' 'namespace-node'
  22414. || lk == 94752 // '%' 'namespace-node'
  22415. || lk == 94996 // '{' 'namespace-node'
  22416. || lk == 95263 // '$' 'ne'
  22417. || lk == 95264 // '%' 'ne'
  22418. || lk == 95508 // '{' 'ne'
  22419. || lk == 97823 // '$' 'node'
  22420. || lk == 97824 // '%' 'node'
  22421. || lk == 98068 // '{' 'node'
  22422. || lk == 98335 // '$' 'nodes'
  22423. || lk == 98336 // '%' 'nodes'
  22424. || lk == 98580 // '{' 'nodes'
  22425. || lk == 99359 // '$' 'object'
  22426. || lk == 99360 // '%' 'object'
  22427. || lk == 99604 // '{' 'object'
  22428. || lk == 101407 // '$' 'only'
  22429. || lk == 101408 // '%' 'only'
  22430. || lk == 101652 // '{' 'only'
  22431. || lk == 101919 // '$' 'option'
  22432. || lk == 101920 // '%' 'option'
  22433. || lk == 102164 // '{' 'option'
  22434. || lk == 102431 // '$' 'or'
  22435. || lk == 102432 // '%' 'or'
  22436. || lk == 102676 // '{' 'or'
  22437. || lk == 102943 // '$' 'order'
  22438. || lk == 102944 // '%' 'order'
  22439. || lk == 103188 // '{' 'order'
  22440. || lk == 103455 // '$' 'ordered'
  22441. || lk == 103456 // '%' 'ordered'
  22442. || lk == 103700 // '{' 'ordered'
  22443. || lk == 103967 // '$' 'ordering'
  22444. || lk == 103968 // '%' 'ordering'
  22445. || lk == 104212 // '{' 'ordering'
  22446. || lk == 105503 // '$' 'parent'
  22447. || lk == 105504 // '%' 'parent'
  22448. || lk == 105748 // '{' 'parent'
  22449. || lk == 108575 // '$' 'preceding'
  22450. || lk == 108576 // '%' 'preceding'
  22451. || lk == 108820 // '{' 'preceding'
  22452. || lk == 109087 // '$' 'preceding-sibling'
  22453. || lk == 109088 // '%' 'preceding-sibling'
  22454. || lk == 109332 // '{' 'preceding-sibling'
  22455. || lk == 110623 // '$' 'processing-instruction'
  22456. || lk == 110624 // '%' 'processing-instruction'
  22457. || lk == 110868 // '{' 'processing-instruction'
  22458. || lk == 111647 // '$' 'rename'
  22459. || lk == 111648 // '%' 'rename'
  22460. || lk == 111892 // '{' 'rename'
  22461. || lk == 112159 // '$' 'replace'
  22462. || lk == 112160 // '%' 'replace'
  22463. || lk == 112404 // '{' 'replace'
  22464. || lk == 112671 // '$' 'return'
  22465. || lk == 112672 // '%' 'return'
  22466. || lk == 112916 // '{' 'return'
  22467. || lk == 113183 // '$' 'returning'
  22468. || lk == 113184 // '%' 'returning'
  22469. || lk == 113428 // '{' 'returning'
  22470. || lk == 113695 // '$' 'revalidation'
  22471. || lk == 113696 // '%' 'revalidation'
  22472. || lk == 113940 // '{' 'revalidation'
  22473. || lk == 114719 // '$' 'satisfies'
  22474. || lk == 114720 // '%' 'satisfies'
  22475. || lk == 114964 // '{' 'satisfies'
  22476. || lk == 115231 // '$' 'schema'
  22477. || lk == 115232 // '%' 'schema'
  22478. || lk == 115476 // '{' 'schema'
  22479. || lk == 115743 // '$' 'schema-attribute'
  22480. || lk == 115744 // '%' 'schema-attribute'
  22481. || lk == 115988 // '{' 'schema-attribute'
  22482. || lk == 116255 // '$' 'schema-element'
  22483. || lk == 116256 // '%' 'schema-element'
  22484. || lk == 116500 // '{' 'schema-element'
  22485. || lk == 116767 // '$' 'score'
  22486. || lk == 116768 // '%' 'score'
  22487. || lk == 117012 // '{' 'score'
  22488. || lk == 117279 // '$' 'self'
  22489. || lk == 117280 // '%' 'self'
  22490. || lk == 117524 // '{' 'self'
  22491. || lk == 119839 // '$' 'sliding'
  22492. || lk == 119840 // '%' 'sliding'
  22493. || lk == 120084 // '{' 'sliding'
  22494. || lk == 120351 // '$' 'some'
  22495. || lk == 120352 // '%' 'some'
  22496. || lk == 120596 // '{' 'some'
  22497. || lk == 120863 // '$' 'stable'
  22498. || lk == 120864 // '%' 'stable'
  22499. || lk == 121108 // '{' 'stable'
  22500. || lk == 121375 // '$' 'start'
  22501. || lk == 121376 // '%' 'start'
  22502. || lk == 121620 // '{' 'start'
  22503. || lk == 122911 // '$' 'strict'
  22504. || lk == 122912 // '%' 'strict'
  22505. || lk == 123156 // '{' 'strict'
  22506. || lk == 124447 // '$' 'switch'
  22507. || lk == 124448 // '%' 'switch'
  22508. || lk == 124692 // '{' 'switch'
  22509. || lk == 124959 // '$' 'text'
  22510. || lk == 124960 // '%' 'text'
  22511. || lk == 125204 // '{' 'text'
  22512. || lk == 127007 // '$' 'to'
  22513. || lk == 127008 // '%' 'to'
  22514. || lk == 127252 // '{' 'to'
  22515. || lk == 127519 // '$' 'treat'
  22516. || lk == 127520 // '%' 'treat'
  22517. || lk == 127764 // '{' 'treat'
  22518. || lk == 128031 // '$' 'try'
  22519. || lk == 128032 // '%' 'try'
  22520. || lk == 128276 // '{' 'try'
  22521. || lk == 128543 // '$' 'tumbling'
  22522. || lk == 128544 // '%' 'tumbling'
  22523. || lk == 128788 // '{' 'tumbling'
  22524. || lk == 129055 // '$' 'type'
  22525. || lk == 129056 // '%' 'type'
  22526. || lk == 129300 // '{' 'type'
  22527. || lk == 129567 // '$' 'typeswitch'
  22528. || lk == 129568 // '%' 'typeswitch'
  22529. || lk == 129812 // '{' 'typeswitch'
  22530. || lk == 130079 // '$' 'union'
  22531. || lk == 130080 // '%' 'union'
  22532. || lk == 130324 // '{' 'union'
  22533. || lk == 131103 // '$' 'unordered'
  22534. || lk == 131104 // '%' 'unordered'
  22535. || lk == 131348 // '{' 'unordered'
  22536. || lk == 131615 // '$' 'updating'
  22537. || lk == 131616 // '%' 'updating'
  22538. || lk == 131860 // '{' 'updating'
  22539. || lk == 133151 // '$' 'validate'
  22540. || lk == 133152 // '%' 'validate'
  22541. || lk == 133396 // '{' 'validate'
  22542. || lk == 133663 // '$' 'value'
  22543. || lk == 133664 // '%' 'value'
  22544. || lk == 133908 // '{' 'value'
  22545. || lk == 134175 // '$' 'variable'
  22546. || lk == 134176 // '%' 'variable'
  22547. || lk == 134420 // '{' 'variable'
  22548. || lk == 134687 // '$' 'version'
  22549. || lk == 134688 // '%' 'version'
  22550. || lk == 134932 // '{' 'version'
  22551. || lk == 136223 // '$' 'where'
  22552. || lk == 136224 // '%' 'where'
  22553. || lk == 136468 // '{' 'where'
  22554. || lk == 136735 // '$' 'while'
  22555. || lk == 136736 // '%' 'while'
  22556. || lk == 136980 // '{' 'while'
  22557. || lk == 138271 // '$' 'with'
  22558. || lk == 138272 // '%' 'with'
  22559. || lk == 138516 // '{' 'with'
  22560. || lk == 140319 // '$' 'xquery'
  22561. || lk == 140320 // '%' 'xquery'
  22562. || lk == 140564 // '{' 'xquery'
  22563. || lk == 141588 // '{' '{'
  22564. || lk == 142612 // '{' '{|'
  22565. || lk == 144660) // '{' '}'
  22566. {
  22567. lk = memoized(7, e0);
  22568. if (lk == 0)
  22569. {
  22570. var b0A = b0; var e0A = e0; var l1A = l1;
  22571. var b1A = b1; var e1A = e1; var l2A = l2;
  22572. var b2A = b2; var e2A = e2;
  22573. try
  22574. {
  22575. try_ApplyStatement();
  22576. lk = -1;
  22577. }
  22578. catch (p1A)
  22579. {
  22580. try
  22581. {
  22582. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  22583. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  22584. b2 = b2A; e2 = e2A; end = e2A; }}
  22585. try_AssignStatement();
  22586. lk = -2;
  22587. }
  22588. catch (p2A)
  22589. {
  22590. try
  22591. {
  22592. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  22593. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  22594. b2 = b2A; e2 = e2A; end = e2A; }}
  22595. try_BlockStatement();
  22596. lk = -3;
  22597. }
  22598. catch (p3A)
  22599. {
  22600. try
  22601. {
  22602. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  22603. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  22604. b2 = b2A; e2 = e2A; end = e2A; }}
  22605. try_VarDeclStatement();
  22606. lk = -12;
  22607. }
  22608. catch (p12A)
  22609. {
  22610. lk = -13;
  22611. }
  22612. }
  22613. }
  22614. }
  22615. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  22616. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  22617. b2 = b2A; e2 = e2A; end = e2A; }}
  22618. memoize(7, e0, lk);
  22619. }
  22620. }
  22621. switch (lk)
  22622. {
  22623. case -2:
  22624. parse_AssignStatement();
  22625. break;
  22626. case -3:
  22627. parse_BlockStatement();
  22628. break;
  22629. case 90198: // 'break' 'loop'
  22630. parse_BreakStatement();
  22631. break;
  22632. case 90214: // 'continue' 'loop'
  22633. parse_ContinueStatement();
  22634. break;
  22635. case 113284: // 'exit' 'returning'
  22636. parse_ExitStatement();
  22637. break;
  22638. case 16009: // 'for' '$'
  22639. case 16046: // 'let' '$'
  22640. case 116910: // 'let' 'score'
  22641. case 119945: // 'for' 'sliding'
  22642. case 128649: // 'for' 'tumbling'
  22643. parse_FLWORStatement();
  22644. break;
  22645. case 17560: // 'if' '('
  22646. parse_IfStatement();
  22647. break;
  22648. case 17651: // 'switch' '('
  22649. parse_SwitchStatement();
  22650. break;
  22651. case 141562: // 'try' '{'
  22652. parse_TryCatchStatement();
  22653. break;
  22654. case 17661: // 'typeswitch' '('
  22655. parse_TypeswitchStatement();
  22656. break;
  22657. case -12:
  22658. case 16134: // 'variable' '$'
  22659. parse_VarDeclStatement();
  22660. break;
  22661. case -13:
  22662. parse_WhileStatement();
  22663. break;
  22664. default:
  22665. parse_ApplyStatement();
  22666. }
  22667. eventHandler.endNonterminal("Statement", e0);
  22668. }
  22669. function try_Statement()
  22670. {
  22671. switch (l1)
  22672. {
  22673. case 132: // 'exit'
  22674. lookahead2W(189); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22675. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22676. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22677. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'returning' | 'to' |
  22678. // 'treat' | 'union' | '|' | '||'
  22679. break;
  22680. case 137: // 'for'
  22681. lookahead2W(196); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22682. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22683. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22684. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'sliding' | 'to' |
  22685. // 'treat' | 'tumbling' | 'union' | '|' | '||'
  22686. break;
  22687. case 174: // 'let'
  22688. lookahead2W(193); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22689. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22690. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22691. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'score' | 'to' |
  22692. // 'treat' | 'union' | '|' | '||'
  22693. break;
  22694. case 250: // 'try'
  22695. lookahead2W(190); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22696. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22697. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22698. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22699. // 'union' | '{' | '|' | '||'
  22700. break;
  22701. case 262: // 'variable'
  22702. lookahead2W(187); // S^WS | '!' | '!=' | '#' | '$' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' |
  22703. // '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22704. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22705. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22706. // 'union' | '|' | '||'
  22707. break;
  22708. case 276: // '{'
  22709. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  22710. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  22711. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  22712. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  22713. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  22714. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  22715. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  22716. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  22717. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  22718. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  22719. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  22720. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  22721. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  22722. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  22723. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  22724. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  22725. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  22726. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  22727. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  22728. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  22729. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  22730. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  22731. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  22732. // 'xquery' | '{' | '{|' | '}'
  22733. break;
  22734. case 31: // '$'
  22735. case 32: // '%'
  22736. lookahead2W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  22737. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  22738. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  22739. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  22740. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  22741. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  22742. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  22743. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  22744. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  22745. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  22746. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  22747. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  22748. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  22749. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  22750. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  22751. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  22752. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  22753. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  22754. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  22755. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  22756. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  22757. // 'xquery'
  22758. break;
  22759. case 86: // 'break'
  22760. case 102: // 'continue'
  22761. lookahead2W(188); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22762. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22763. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22764. // 'intersect' | 'is' | 'le' | 'loop' | 'lt' | 'mod' | 'ne' | 'or' | 'to' |
  22765. // 'treat' | 'union' | '|' | '||'
  22766. break;
  22767. case 152: // 'if'
  22768. case 243: // 'switch'
  22769. case 253: // 'typeswitch'
  22770. case 267: // 'while'
  22771. lookahead2W(185); // S^WS | '!' | '!=' | '#' | '(' | '(:' | '*' | '+' | '-' | '/' | '//' | ';' | '<' |
  22772. // '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | 'and' | 'cast' | 'castable' |
  22773. // 'contains' | 'div' | 'eq' | 'except' | 'ge' | 'gt' | 'idiv' | 'instance' |
  22774. // 'intersect' | 'is' | 'le' | 'lt' | 'mod' | 'ne' | 'or' | 'to' | 'treat' |
  22775. // 'union' | '|' | '||'
  22776. break;
  22777. default:
  22778. lk = l1;
  22779. }
  22780. if (lk == 2836 // '{' Wildcard
  22781. || lk == 3103 // '$' EQName^Token
  22782. || lk == 3104 // '%' EQName^Token
  22783. || lk == 3348 // '{' EQName^Token
  22784. || lk == 4372 // '{' IntegerLiteral
  22785. || lk == 4884 // '{' DecimalLiteral
  22786. || lk == 5396 // '{' DoubleLiteral
  22787. || lk == 5908 // '{' StringLiteral
  22788. || lk == 16148 // '{' '$'
  22789. || lk == 16660 // '{' '%'
  22790. || lk == 17675 // 'while' '('
  22791. || lk == 17684 // '{' '('
  22792. || lk == 18196 // '{' '(#'
  22793. || lk == 20756 // '{' '+'
  22794. || lk == 21780 // '{' '-'
  22795. || lk == 22804 // '{' '.'
  22796. || lk == 23316 // '{' '..'
  22797. || lk == 23828 // '{' '/'
  22798. || lk == 24340 // '{' '//'
  22799. || lk == 27924 // '{' '<'
  22800. || lk == 28436 // '{' '<!--'
  22801. || lk == 30484 // '{' '<?'
  22802. || lk == 34068 // '{' '@'
  22803. || lk == 35092 // '{' '['
  22804. || lk == 35871 // '$' 'after'
  22805. || lk == 35872 // '%' 'after'
  22806. || lk == 36116 // '{' 'after'
  22807. || lk == 36895 // '$' 'allowing'
  22808. || lk == 36896 // '%' 'allowing'
  22809. || lk == 37140 // '{' 'allowing'
  22810. || lk == 37407 // '$' 'ancestor'
  22811. || lk == 37408 // '%' 'ancestor'
  22812. || lk == 37652 // '{' 'ancestor'
  22813. || lk == 37919 // '$' 'ancestor-or-self'
  22814. || lk == 37920 // '%' 'ancestor-or-self'
  22815. || lk == 38164 // '{' 'ancestor-or-self'
  22816. || lk == 38431 // '$' 'and'
  22817. || lk == 38432 // '%' 'and'
  22818. || lk == 38676 // '{' 'and'
  22819. || lk == 39700 // '{' 'append'
  22820. || lk == 39967 // '$' 'array'
  22821. || lk == 39968 // '%' 'array'
  22822. || lk == 40212 // '{' 'array'
  22823. || lk == 40479 // '$' 'as'
  22824. || lk == 40480 // '%' 'as'
  22825. || lk == 40724 // '{' 'as'
  22826. || lk == 40991 // '$' 'ascending'
  22827. || lk == 40992 // '%' 'ascending'
  22828. || lk == 41236 // '{' 'ascending'
  22829. || lk == 41503 // '$' 'at'
  22830. || lk == 41504 // '%' 'at'
  22831. || lk == 41748 // '{' 'at'
  22832. || lk == 42015 // '$' 'attribute'
  22833. || lk == 42016 // '%' 'attribute'
  22834. || lk == 42260 // '{' 'attribute'
  22835. || lk == 42527 // '$' 'base-uri'
  22836. || lk == 42528 // '%' 'base-uri'
  22837. || lk == 42772 // '{' 'base-uri'
  22838. || lk == 43039 // '$' 'before'
  22839. || lk == 43040 // '%' 'before'
  22840. || lk == 43284 // '{' 'before'
  22841. || lk == 43551 // '$' 'boundary-space'
  22842. || lk == 43552 // '%' 'boundary-space'
  22843. || lk == 43796 // '{' 'boundary-space'
  22844. || lk == 44063 // '$' 'break'
  22845. || lk == 44064 // '%' 'break'
  22846. || lk == 44308 // '{' 'break'
  22847. || lk == 45087 // '$' 'case'
  22848. || lk == 45088 // '%' 'case'
  22849. || lk == 45332 // '{' 'case'
  22850. || lk == 45599 // '$' 'cast'
  22851. || lk == 45600 // '%' 'cast'
  22852. || lk == 45844 // '{' 'cast'
  22853. || lk == 46111 // '$' 'castable'
  22854. || lk == 46112 // '%' 'castable'
  22855. || lk == 46356 // '{' 'castable'
  22856. || lk == 46623 // '$' 'catch'
  22857. || lk == 46624 // '%' 'catch'
  22858. || lk == 46868 // '{' 'catch'
  22859. || lk == 47647 // '$' 'child'
  22860. || lk == 47648 // '%' 'child'
  22861. || lk == 47892 // '{' 'child'
  22862. || lk == 48159 // '$' 'collation'
  22863. || lk == 48160 // '%' 'collation'
  22864. || lk == 48404 // '{' 'collation'
  22865. || lk == 49183 // '$' 'comment'
  22866. || lk == 49184 // '%' 'comment'
  22867. || lk == 49428 // '{' 'comment'
  22868. || lk == 49695 // '$' 'constraint'
  22869. || lk == 49696 // '%' 'constraint'
  22870. || lk == 49940 // '{' 'constraint'
  22871. || lk == 50207 // '$' 'construction'
  22872. || lk == 50208 // '%' 'construction'
  22873. || lk == 50452 // '{' 'construction'
  22874. || lk == 51743 // '$' 'context'
  22875. || lk == 51744 // '%' 'context'
  22876. || lk == 51988 // '{' 'context'
  22877. || lk == 52255 // '$' 'continue'
  22878. || lk == 52256 // '%' 'continue'
  22879. || lk == 52500 // '{' 'continue'
  22880. || lk == 52767 // '$' 'copy'
  22881. || lk == 52768 // '%' 'copy'
  22882. || lk == 53012 // '{' 'copy'
  22883. || lk == 53279 // '$' 'copy-namespaces'
  22884. || lk == 53280 // '%' 'copy-namespaces'
  22885. || lk == 53524 // '{' 'copy-namespaces'
  22886. || lk == 53791 // '$' 'count'
  22887. || lk == 53792 // '%' 'count'
  22888. || lk == 54036 // '{' 'count'
  22889. || lk == 54303 // '$' 'decimal-format'
  22890. || lk == 54304 // '%' 'decimal-format'
  22891. || lk == 54548 // '{' 'decimal-format'
  22892. || lk == 55327 // '$' 'declare'
  22893. || lk == 55328 // '%' 'declare'
  22894. || lk == 55572 // '{' 'declare'
  22895. || lk == 55839 // '$' 'default'
  22896. || lk == 55840 // '%' 'default'
  22897. || lk == 56084 // '{' 'default'
  22898. || lk == 56351 // '$' 'delete'
  22899. || lk == 56352 // '%' 'delete'
  22900. || lk == 56596 // '{' 'delete'
  22901. || lk == 56863 // '$' 'descendant'
  22902. || lk == 56864 // '%' 'descendant'
  22903. || lk == 57108 // '{' 'descendant'
  22904. || lk == 57375 // '$' 'descendant-or-self'
  22905. || lk == 57376 // '%' 'descendant-or-self'
  22906. || lk == 57620 // '{' 'descendant-or-self'
  22907. || lk == 57887 // '$' 'descending'
  22908. || lk == 57888 // '%' 'descending'
  22909. || lk == 58132 // '{' 'descending'
  22910. || lk == 60447 // '$' 'div'
  22911. || lk == 60448 // '%' 'div'
  22912. || lk == 60692 // '{' 'div'
  22913. || lk == 60959 // '$' 'document'
  22914. || lk == 60960 // '%' 'document'
  22915. || lk == 61204 // '{' 'document'
  22916. || lk == 61471 // '$' 'document-node'
  22917. || lk == 61472 // '%' 'document-node'
  22918. || lk == 61716 // '{' 'document-node'
  22919. || lk == 61983 // '$' 'element'
  22920. || lk == 61984 // '%' 'element'
  22921. || lk == 62228 // '{' 'element'
  22922. || lk == 62495 // '$' 'else'
  22923. || lk == 62496 // '%' 'else'
  22924. || lk == 62740 // '{' 'else'
  22925. || lk == 63007 // '$' 'empty'
  22926. || lk == 63008 // '%' 'empty'
  22927. || lk == 63252 // '{' 'empty'
  22928. || lk == 63519 // '$' 'empty-sequence'
  22929. || lk == 63520 // '%' 'empty-sequence'
  22930. || lk == 63764 // '{' 'empty-sequence'
  22931. || lk == 64031 // '$' 'encoding'
  22932. || lk == 64032 // '%' 'encoding'
  22933. || lk == 64276 // '{' 'encoding'
  22934. || lk == 64543 // '$' 'end'
  22935. || lk == 64544 // '%' 'end'
  22936. || lk == 64788 // '{' 'end'
  22937. || lk == 65567 // '$' 'eq'
  22938. || lk == 65568 // '%' 'eq'
  22939. || lk == 65812 // '{' 'eq'
  22940. || lk == 66079 // '$' 'every'
  22941. || lk == 66080 // '%' 'every'
  22942. || lk == 66324 // '{' 'every'
  22943. || lk == 67103 // '$' 'except'
  22944. || lk == 67104 // '%' 'except'
  22945. || lk == 67348 // '{' 'except'
  22946. || lk == 67615 // '$' 'exit'
  22947. || lk == 67616 // '%' 'exit'
  22948. || lk == 67860 // '{' 'exit'
  22949. || lk == 68127 // '$' 'external'
  22950. || lk == 68128 // '%' 'external'
  22951. || lk == 68372 // '{' 'external'
  22952. || lk == 68639 // '$' 'first'
  22953. || lk == 68640 // '%' 'first'
  22954. || lk == 68884 // '{' 'first'
  22955. || lk == 69151 // '$' 'following'
  22956. || lk == 69152 // '%' 'following'
  22957. || lk == 69396 // '{' 'following'
  22958. || lk == 69663 // '$' 'following-sibling'
  22959. || lk == 69664 // '%' 'following-sibling'
  22960. || lk == 69908 // '{' 'following-sibling'
  22961. || lk == 70175 // '$' 'for'
  22962. || lk == 70176 // '%' 'for'
  22963. || lk == 70420 // '{' 'for'
  22964. || lk == 72223 // '$' 'ft-option'
  22965. || lk == 72224 // '%' 'ft-option'
  22966. || lk == 72468 // '{' 'ft-option'
  22967. || lk == 74271 // '$' 'function'
  22968. || lk == 74272 // '%' 'function'
  22969. || lk == 74516 // '{' 'function'
  22970. || lk == 74783 // '$' 'ge'
  22971. || lk == 74784 // '%' 'ge'
  22972. || lk == 75028 // '{' 'ge'
  22973. || lk == 75807 // '$' 'group'
  22974. || lk == 75808 // '%' 'group'
  22975. || lk == 76052 // '{' 'group'
  22976. || lk == 76831 // '$' 'gt'
  22977. || lk == 76832 // '%' 'gt'
  22978. || lk == 77076 // '{' 'gt'
  22979. || lk == 77343 // '$' 'idiv'
  22980. || lk == 77344 // '%' 'idiv'
  22981. || lk == 77588 // '{' 'idiv'
  22982. || lk == 77855 // '$' 'if'
  22983. || lk == 77856 // '%' 'if'
  22984. || lk == 78100 // '{' 'if'
  22985. || lk == 78367 // '$' 'import'
  22986. || lk == 78368 // '%' 'import'
  22987. || lk == 78612 // '{' 'import'
  22988. || lk == 78879 // '$' 'in'
  22989. || lk == 78880 // '%' 'in'
  22990. || lk == 79124 // '{' 'in'
  22991. || lk == 79391 // '$' 'index'
  22992. || lk == 79392 // '%' 'index'
  22993. || lk == 79636 // '{' 'index'
  22994. || lk == 81439 // '$' 'insert'
  22995. || lk == 81440 // '%' 'insert'
  22996. || lk == 81684 // '{' 'insert'
  22997. || lk == 81951 // '$' 'instance'
  22998. || lk == 81952 // '%' 'instance'
  22999. || lk == 82196 // '{' 'instance'
  23000. || lk == 82463 // '$' 'integrity'
  23001. || lk == 82464 // '%' 'integrity'
  23002. || lk == 82708 // '{' 'integrity'
  23003. || lk == 82975 // '$' 'intersect'
  23004. || lk == 82976 // '%' 'intersect'
  23005. || lk == 83220 // '{' 'intersect'
  23006. || lk == 83487 // '$' 'into'
  23007. || lk == 83488 // '%' 'into'
  23008. || lk == 83732 // '{' 'into'
  23009. || lk == 83999 // '$' 'is'
  23010. || lk == 84000 // '%' 'is'
  23011. || lk == 84244 // '{' 'is'
  23012. || lk == 84511 // '$' 'item'
  23013. || lk == 84512 // '%' 'item'
  23014. || lk == 84756 // '{' 'item'
  23015. || lk == 85535 // '$' 'json-item'
  23016. || lk == 85536 // '%' 'json-item'
  23017. || lk == 85780 // '{' 'json-item'
  23018. || lk == 87071 // '$' 'last'
  23019. || lk == 87072 // '%' 'last'
  23020. || lk == 87316 // '{' 'last'
  23021. || lk == 87583 // '$' 'lax'
  23022. || lk == 87584 // '%' 'lax'
  23023. || lk == 87828 // '{' 'lax'
  23024. || lk == 88095 // '$' 'le'
  23025. || lk == 88096 // '%' 'le'
  23026. || lk == 88340 // '{' 'le'
  23027. || lk == 89119 // '$' 'let'
  23028. || lk == 89120 // '%' 'let'
  23029. || lk == 89364 // '{' 'let'
  23030. || lk == 90143 // '$' 'loop'
  23031. || lk == 90144 // '%' 'loop'
  23032. || lk == 90388 // '{' 'loop'
  23033. || lk == 91167 // '$' 'lt'
  23034. || lk == 91168 // '%' 'lt'
  23035. || lk == 91412 // '{' 'lt'
  23036. || lk == 92191 // '$' 'mod'
  23037. || lk == 92192 // '%' 'mod'
  23038. || lk == 92436 // '{' 'mod'
  23039. || lk == 92703 // '$' 'modify'
  23040. || lk == 92704 // '%' 'modify'
  23041. || lk == 92948 // '{' 'modify'
  23042. || lk == 93215 // '$' 'module'
  23043. || lk == 93216 // '%' 'module'
  23044. || lk == 93460 // '{' 'module'
  23045. || lk == 94239 // '$' 'namespace'
  23046. || lk == 94240 // '%' 'namespace'
  23047. || lk == 94484 // '{' 'namespace'
  23048. || lk == 94751 // '$' 'namespace-node'
  23049. || lk == 94752 // '%' 'namespace-node'
  23050. || lk == 94996 // '{' 'namespace-node'
  23051. || lk == 95263 // '$' 'ne'
  23052. || lk == 95264 // '%' 'ne'
  23053. || lk == 95508 // '{' 'ne'
  23054. || lk == 97823 // '$' 'node'
  23055. || lk == 97824 // '%' 'node'
  23056. || lk == 98068 // '{' 'node'
  23057. || lk == 98335 // '$' 'nodes'
  23058. || lk == 98336 // '%' 'nodes'
  23059. || lk == 98580 // '{' 'nodes'
  23060. || lk == 99359 // '$' 'object'
  23061. || lk == 99360 // '%' 'object'
  23062. || lk == 99604 // '{' 'object'
  23063. || lk == 101407 // '$' 'only'
  23064. || lk == 101408 // '%' 'only'
  23065. || lk == 101652 // '{' 'only'
  23066. || lk == 101919 // '$' 'option'
  23067. || lk == 101920 // '%' 'option'
  23068. || lk == 102164 // '{' 'option'
  23069. || lk == 102431 // '$' 'or'
  23070. || lk == 102432 // '%' 'or'
  23071. || lk == 102676 // '{' 'or'
  23072. || lk == 102943 // '$' 'order'
  23073. || lk == 102944 // '%' 'order'
  23074. || lk == 103188 // '{' 'order'
  23075. || lk == 103455 // '$' 'ordered'
  23076. || lk == 103456 // '%' 'ordered'
  23077. || lk == 103700 // '{' 'ordered'
  23078. || lk == 103967 // '$' 'ordering'
  23079. || lk == 103968 // '%' 'ordering'
  23080. || lk == 104212 // '{' 'ordering'
  23081. || lk == 105503 // '$' 'parent'
  23082. || lk == 105504 // '%' 'parent'
  23083. || lk == 105748 // '{' 'parent'
  23084. || lk == 108575 // '$' 'preceding'
  23085. || lk == 108576 // '%' 'preceding'
  23086. || lk == 108820 // '{' 'preceding'
  23087. || lk == 109087 // '$' 'preceding-sibling'
  23088. || lk == 109088 // '%' 'preceding-sibling'
  23089. || lk == 109332 // '{' 'preceding-sibling'
  23090. || lk == 110623 // '$' 'processing-instruction'
  23091. || lk == 110624 // '%' 'processing-instruction'
  23092. || lk == 110868 // '{' 'processing-instruction'
  23093. || lk == 111647 // '$' 'rename'
  23094. || lk == 111648 // '%' 'rename'
  23095. || lk == 111892 // '{' 'rename'
  23096. || lk == 112159 // '$' 'replace'
  23097. || lk == 112160 // '%' 'replace'
  23098. || lk == 112404 // '{' 'replace'
  23099. || lk == 112671 // '$' 'return'
  23100. || lk == 112672 // '%' 'return'
  23101. || lk == 112916 // '{' 'return'
  23102. || lk == 113183 // '$' 'returning'
  23103. || lk == 113184 // '%' 'returning'
  23104. || lk == 113428 // '{' 'returning'
  23105. || lk == 113695 // '$' 'revalidation'
  23106. || lk == 113696 // '%' 'revalidation'
  23107. || lk == 113940 // '{' 'revalidation'
  23108. || lk == 114719 // '$' 'satisfies'
  23109. || lk == 114720 // '%' 'satisfies'
  23110. || lk == 114964 // '{' 'satisfies'
  23111. || lk == 115231 // '$' 'schema'
  23112. || lk == 115232 // '%' 'schema'
  23113. || lk == 115476 // '{' 'schema'
  23114. || lk == 115743 // '$' 'schema-attribute'
  23115. || lk == 115744 // '%' 'schema-attribute'
  23116. || lk == 115988 // '{' 'schema-attribute'
  23117. || lk == 116255 // '$' 'schema-element'
  23118. || lk == 116256 // '%' 'schema-element'
  23119. || lk == 116500 // '{' 'schema-element'
  23120. || lk == 116767 // '$' 'score'
  23121. || lk == 116768 // '%' 'score'
  23122. || lk == 117012 // '{' 'score'
  23123. || lk == 117279 // '$' 'self'
  23124. || lk == 117280 // '%' 'self'
  23125. || lk == 117524 // '{' 'self'
  23126. || lk == 119839 // '$' 'sliding'
  23127. || lk == 119840 // '%' 'sliding'
  23128. || lk == 120084 // '{' 'sliding'
  23129. || lk == 120351 // '$' 'some'
  23130. || lk == 120352 // '%' 'some'
  23131. || lk == 120596 // '{' 'some'
  23132. || lk == 120863 // '$' 'stable'
  23133. || lk == 120864 // '%' 'stable'
  23134. || lk == 121108 // '{' 'stable'
  23135. || lk == 121375 // '$' 'start'
  23136. || lk == 121376 // '%' 'start'
  23137. || lk == 121620 // '{' 'start'
  23138. || lk == 122911 // '$' 'strict'
  23139. || lk == 122912 // '%' 'strict'
  23140. || lk == 123156 // '{' 'strict'
  23141. || lk == 124447 // '$' 'switch'
  23142. || lk == 124448 // '%' 'switch'
  23143. || lk == 124692 // '{' 'switch'
  23144. || lk == 124959 // '$' 'text'
  23145. || lk == 124960 // '%' 'text'
  23146. || lk == 125204 // '{' 'text'
  23147. || lk == 127007 // '$' 'to'
  23148. || lk == 127008 // '%' 'to'
  23149. || lk == 127252 // '{' 'to'
  23150. || lk == 127519 // '$' 'treat'
  23151. || lk == 127520 // '%' 'treat'
  23152. || lk == 127764 // '{' 'treat'
  23153. || lk == 128031 // '$' 'try'
  23154. || lk == 128032 // '%' 'try'
  23155. || lk == 128276 // '{' 'try'
  23156. || lk == 128543 // '$' 'tumbling'
  23157. || lk == 128544 // '%' 'tumbling'
  23158. || lk == 128788 // '{' 'tumbling'
  23159. || lk == 129055 // '$' 'type'
  23160. || lk == 129056 // '%' 'type'
  23161. || lk == 129300 // '{' 'type'
  23162. || lk == 129567 // '$' 'typeswitch'
  23163. || lk == 129568 // '%' 'typeswitch'
  23164. || lk == 129812 // '{' 'typeswitch'
  23165. || lk == 130079 // '$' 'union'
  23166. || lk == 130080 // '%' 'union'
  23167. || lk == 130324 // '{' 'union'
  23168. || lk == 131103 // '$' 'unordered'
  23169. || lk == 131104 // '%' 'unordered'
  23170. || lk == 131348 // '{' 'unordered'
  23171. || lk == 131615 // '$' 'updating'
  23172. || lk == 131616 // '%' 'updating'
  23173. || lk == 131860 // '{' 'updating'
  23174. || lk == 133151 // '$' 'validate'
  23175. || lk == 133152 // '%' 'validate'
  23176. || lk == 133396 // '{' 'validate'
  23177. || lk == 133663 // '$' 'value'
  23178. || lk == 133664 // '%' 'value'
  23179. || lk == 133908 // '{' 'value'
  23180. || lk == 134175 // '$' 'variable'
  23181. || lk == 134176 // '%' 'variable'
  23182. || lk == 134420 // '{' 'variable'
  23183. || lk == 134687 // '$' 'version'
  23184. || lk == 134688 // '%' 'version'
  23185. || lk == 134932 // '{' 'version'
  23186. || lk == 136223 // '$' 'where'
  23187. || lk == 136224 // '%' 'where'
  23188. || lk == 136468 // '{' 'where'
  23189. || lk == 136735 // '$' 'while'
  23190. || lk == 136736 // '%' 'while'
  23191. || lk == 136980 // '{' 'while'
  23192. || lk == 138271 // '$' 'with'
  23193. || lk == 138272 // '%' 'with'
  23194. || lk == 138516 // '{' 'with'
  23195. || lk == 140319 // '$' 'xquery'
  23196. || lk == 140320 // '%' 'xquery'
  23197. || lk == 140564 // '{' 'xquery'
  23198. || lk == 141588 // '{' '{'
  23199. || lk == 142612 // '{' '{|'
  23200. || lk == 144660) // '{' '}'
  23201. {
  23202. lk = memoized(7, e0);
  23203. if (lk == 0)
  23204. {
  23205. var b0A = b0; var e0A = e0; var l1A = l1;
  23206. var b1A = b1; var e1A = e1; var l2A = l2;
  23207. var b2A = b2; var e2A = e2;
  23208. try
  23209. {
  23210. try_ApplyStatement();
  23211. memoize(7, e0A, -1);
  23212. lk = -14;
  23213. }
  23214. catch (p1A)
  23215. {
  23216. try
  23217. {
  23218. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  23219. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  23220. b2 = b2A; e2 = e2A; end = e2A; }}
  23221. try_AssignStatement();
  23222. memoize(7, e0A, -2);
  23223. lk = -14;
  23224. }
  23225. catch (p2A)
  23226. {
  23227. try
  23228. {
  23229. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  23230. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  23231. b2 = b2A; e2 = e2A; end = e2A; }}
  23232. try_BlockStatement();
  23233. memoize(7, e0A, -3);
  23234. lk = -14;
  23235. }
  23236. catch (p3A)
  23237. {
  23238. try
  23239. {
  23240. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  23241. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  23242. b2 = b2A; e2 = e2A; end = e2A; }}
  23243. try_VarDeclStatement();
  23244. memoize(7, e0A, -12);
  23245. lk = -14;
  23246. }
  23247. catch (p12A)
  23248. {
  23249. lk = -13;
  23250. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  23251. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  23252. b2 = b2A; e2 = e2A; end = e2A; }}
  23253. memoize(7, e0A, -13);
  23254. }
  23255. }
  23256. }
  23257. }
  23258. }
  23259. }
  23260. switch (lk)
  23261. {
  23262. case -2:
  23263. try_AssignStatement();
  23264. break;
  23265. case -3:
  23266. try_BlockStatement();
  23267. break;
  23268. case 90198: // 'break' 'loop'
  23269. try_BreakStatement();
  23270. break;
  23271. case 90214: // 'continue' 'loop'
  23272. try_ContinueStatement();
  23273. break;
  23274. case 113284: // 'exit' 'returning'
  23275. try_ExitStatement();
  23276. break;
  23277. case 16009: // 'for' '$'
  23278. case 16046: // 'let' '$'
  23279. case 116910: // 'let' 'score'
  23280. case 119945: // 'for' 'sliding'
  23281. case 128649: // 'for' 'tumbling'
  23282. try_FLWORStatement();
  23283. break;
  23284. case 17560: // 'if' '('
  23285. try_IfStatement();
  23286. break;
  23287. case 17651: // 'switch' '('
  23288. try_SwitchStatement();
  23289. break;
  23290. case 141562: // 'try' '{'
  23291. try_TryCatchStatement();
  23292. break;
  23293. case 17661: // 'typeswitch' '('
  23294. try_TypeswitchStatement();
  23295. break;
  23296. case -12:
  23297. case 16134: // 'variable' '$'
  23298. try_VarDeclStatement();
  23299. break;
  23300. case -13:
  23301. try_WhileStatement();
  23302. break;
  23303. case -14:
  23304. break;
  23305. default:
  23306. try_ApplyStatement();
  23307. }
  23308. }
  23309. function parse_ApplyStatement()
  23310. {
  23311. eventHandler.startNonterminal("ApplyStatement", e0);
  23312. parse_ExprSimple();
  23313. shift(53); // ';'
  23314. eventHandler.endNonterminal("ApplyStatement", e0);
  23315. }
  23316. function try_ApplyStatement()
  23317. {
  23318. try_ExprSimple();
  23319. shiftT(53); // ';'
  23320. }
  23321. function parse_AssignStatement()
  23322. {
  23323. eventHandler.startNonterminal("AssignStatement", e0);
  23324. shift(31); // '$'
  23325. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23326. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  23327. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  23328. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  23329. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  23330. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  23331. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  23332. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  23333. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  23334. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  23335. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  23336. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  23337. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  23338. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  23339. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23340. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23341. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23342. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23343. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23344. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23345. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23346. // 'xquery'
  23347. whitespace();
  23348. parse_VarName();
  23349. lookahead1W(27); // S^WS | '(:' | ':='
  23350. shift(52); // ':='
  23351. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23352. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23353. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23354. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23355. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23356. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23357. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23358. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23359. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23360. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23361. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23362. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23363. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23364. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23365. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23366. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23367. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23368. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23369. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23370. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23371. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23372. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23373. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23374. // 'xquery' | '{' | '{|'
  23375. whitespace();
  23376. parse_ExprSingle();
  23377. shift(53); // ';'
  23378. eventHandler.endNonterminal("AssignStatement", e0);
  23379. }
  23380. function try_AssignStatement()
  23381. {
  23382. shiftT(31); // '$'
  23383. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  23384. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  23385. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  23386. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  23387. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  23388. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  23389. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  23390. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  23391. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  23392. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  23393. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  23394. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  23395. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  23396. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  23397. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23398. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23399. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23400. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23401. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23402. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23403. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23404. // 'xquery'
  23405. try_VarName();
  23406. lookahead1W(27); // S^WS | '(:' | ':='
  23407. shiftT(52); // ':='
  23408. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23409. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23410. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23411. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23412. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23413. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23414. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23415. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23416. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23417. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23418. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23419. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23420. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23421. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23422. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23423. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23424. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23425. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23426. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23427. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23428. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23429. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23430. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23431. // 'xquery' | '{' | '{|'
  23432. try_ExprSingle();
  23433. shiftT(53); // ';'
  23434. }
  23435. function parse_BlockStatement()
  23436. {
  23437. eventHandler.startNonterminal("BlockStatement", e0);
  23438. shift(276); // '{'
  23439. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23440. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23441. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23442. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23443. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23444. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23445. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23446. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23447. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23448. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23449. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23450. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23451. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23452. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23453. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23454. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23455. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23456. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23457. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23458. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23459. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23460. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23461. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23462. // 'xquery' | '{' | '{|' | '}'
  23463. whitespace();
  23464. parse_Statements();
  23465. shift(282); // '}'
  23466. eventHandler.endNonterminal("BlockStatement", e0);
  23467. }
  23468. function try_BlockStatement()
  23469. {
  23470. shiftT(276); // '{'
  23471. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23472. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23473. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23474. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23475. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23476. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23477. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23478. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23479. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23480. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23481. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23482. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23483. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23484. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23485. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23486. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23487. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23488. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23489. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23490. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23491. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23492. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23493. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23494. // 'xquery' | '{' | '{|' | '}'
  23495. try_Statements();
  23496. shiftT(282); // '}'
  23497. }
  23498. function parse_BreakStatement()
  23499. {
  23500. eventHandler.startNonterminal("BreakStatement", e0);
  23501. shift(86); // 'break'
  23502. lookahead1W(59); // S^WS | '(:' | 'loop'
  23503. shift(176); // 'loop'
  23504. lookahead1W(28); // S^WS | '(:' | ';'
  23505. shift(53); // ';'
  23506. eventHandler.endNonterminal("BreakStatement", e0);
  23507. }
  23508. function try_BreakStatement()
  23509. {
  23510. shiftT(86); // 'break'
  23511. lookahead1W(59); // S^WS | '(:' | 'loop'
  23512. shiftT(176); // 'loop'
  23513. lookahead1W(28); // S^WS | '(:' | ';'
  23514. shiftT(53); // ';'
  23515. }
  23516. function parse_ContinueStatement()
  23517. {
  23518. eventHandler.startNonterminal("ContinueStatement", e0);
  23519. shift(102); // 'continue'
  23520. lookahead1W(59); // S^WS | '(:' | 'loop'
  23521. shift(176); // 'loop'
  23522. lookahead1W(28); // S^WS | '(:' | ';'
  23523. shift(53); // ';'
  23524. eventHandler.endNonterminal("ContinueStatement", e0);
  23525. }
  23526. function try_ContinueStatement()
  23527. {
  23528. shiftT(102); // 'continue'
  23529. lookahead1W(59); // S^WS | '(:' | 'loop'
  23530. shiftT(176); // 'loop'
  23531. lookahead1W(28); // S^WS | '(:' | ';'
  23532. shiftT(53); // ';'
  23533. }
  23534. function parse_ExitStatement()
  23535. {
  23536. eventHandler.startNonterminal("ExitStatement", e0);
  23537. shift(132); // 'exit'
  23538. lookahead1W(71); // S^WS | '(:' | 'returning'
  23539. shift(221); // 'returning'
  23540. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23541. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23542. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23543. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23544. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23545. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23546. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23547. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23548. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23549. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23550. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23551. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23552. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23553. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23554. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23555. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23556. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23557. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23558. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23559. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23560. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23561. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23562. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23563. // 'xquery' | '{' | '{|'
  23564. whitespace();
  23565. parse_ExprSingle();
  23566. shift(53); // ';'
  23567. eventHandler.endNonterminal("ExitStatement", e0);
  23568. }
  23569. function try_ExitStatement()
  23570. {
  23571. shiftT(132); // 'exit'
  23572. lookahead1W(71); // S^WS | '(:' | 'returning'
  23573. shiftT(221); // 'returning'
  23574. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23575. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23576. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23577. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23578. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23579. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23580. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23581. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23582. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23583. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23584. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23585. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23586. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23587. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23588. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23589. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23590. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23591. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23592. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23593. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23594. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23595. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23596. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23597. // 'xquery' | '{' | '{|'
  23598. try_ExprSingle();
  23599. shiftT(53); // ';'
  23600. }
  23601. function parse_FLWORStatement()
  23602. {
  23603. eventHandler.startNonterminal("FLWORStatement", e0);
  23604. parse_InitialClause();
  23605. for (;;)
  23606. {
  23607. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  23608. // 'where'
  23609. if (l1 == 220) // 'return'
  23610. {
  23611. break;
  23612. }
  23613. whitespace();
  23614. parse_IntermediateClause();
  23615. }
  23616. whitespace();
  23617. parse_ReturnStatement();
  23618. eventHandler.endNonterminal("FLWORStatement", e0);
  23619. }
  23620. function try_FLWORStatement()
  23621. {
  23622. try_InitialClause();
  23623. for (;;)
  23624. {
  23625. lookahead1W(173); // S^WS | '(:' | 'count' | 'for' | 'group' | 'let' | 'order' | 'return' | 'stable' |
  23626. // 'where'
  23627. if (l1 == 220) // 'return'
  23628. {
  23629. break;
  23630. }
  23631. try_IntermediateClause();
  23632. }
  23633. try_ReturnStatement();
  23634. }
  23635. function parse_ReturnStatement()
  23636. {
  23637. eventHandler.startNonterminal("ReturnStatement", e0);
  23638. shift(220); // 'return'
  23639. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23640. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23641. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23642. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23643. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23644. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23645. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23646. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23647. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23648. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23649. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23650. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23651. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23652. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23653. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23654. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23655. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23656. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23657. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23658. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23659. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23660. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23661. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23662. // 'xquery' | '{' | '{|'
  23663. whitespace();
  23664. parse_Statement();
  23665. eventHandler.endNonterminal("ReturnStatement", e0);
  23666. }
  23667. function try_ReturnStatement()
  23668. {
  23669. shiftT(220); // 'return'
  23670. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23671. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23672. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23673. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23674. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23675. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23676. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23677. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23678. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23679. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23680. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23681. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23682. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23683. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23684. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23685. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23686. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23687. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23688. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23689. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23690. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23691. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23692. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23693. // 'xquery' | '{' | '{|'
  23694. try_Statement();
  23695. }
  23696. function parse_IfStatement()
  23697. {
  23698. eventHandler.startNonterminal("IfStatement", e0);
  23699. shift(152); // 'if'
  23700. lookahead1W(22); // S^WS | '(' | '(:'
  23701. shift(34); // '('
  23702. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23703. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23704. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23705. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23706. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23707. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23708. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23709. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23710. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23711. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23712. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23713. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23714. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23715. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23716. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23717. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23718. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23719. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23720. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23721. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23722. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23723. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23724. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23725. // 'xquery' | '{' | '{|'
  23726. whitespace();
  23727. parse_Expr();
  23728. shift(37); // ')'
  23729. lookahead1W(77); // S^WS | '(:' | 'then'
  23730. shift(245); // 'then'
  23731. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23732. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23733. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23734. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23735. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23736. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23737. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23738. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23739. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23740. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23741. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23742. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23743. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23744. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23745. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23746. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23747. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23748. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23749. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23750. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23751. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23752. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23753. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23754. // 'xquery' | '{' | '{|'
  23755. whitespace();
  23756. parse_Statement();
  23757. lookahead1W(48); // S^WS | '(:' | 'else'
  23758. shift(122); // 'else'
  23759. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23760. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23761. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23762. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23763. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23764. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23765. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23766. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23767. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23768. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23769. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23770. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23771. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23772. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23773. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23774. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23775. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23776. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23777. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23778. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23779. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23780. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23781. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23782. // 'xquery' | '{' | '{|'
  23783. whitespace();
  23784. parse_Statement();
  23785. eventHandler.endNonterminal("IfStatement", e0);
  23786. }
  23787. function try_IfStatement()
  23788. {
  23789. shiftT(152); // 'if'
  23790. lookahead1W(22); // S^WS | '(' | '(:'
  23791. shiftT(34); // '('
  23792. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23793. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23794. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23795. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23796. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23797. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23798. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23799. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23800. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23801. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23802. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23803. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23804. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23805. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23806. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23807. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23808. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23809. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23810. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23811. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23812. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23813. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23814. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23815. // 'xquery' | '{' | '{|'
  23816. try_Expr();
  23817. shiftT(37); // ')'
  23818. lookahead1W(77); // S^WS | '(:' | 'then'
  23819. shiftT(245); // 'then'
  23820. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23821. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23822. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23823. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23824. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23825. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23826. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23827. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23828. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23829. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23830. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23831. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23832. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23833. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23834. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23835. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23836. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23837. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23838. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23839. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23840. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23841. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23842. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23843. // 'xquery' | '{' | '{|'
  23844. try_Statement();
  23845. lookahead1W(48); // S^WS | '(:' | 'else'
  23846. shiftT(122); // 'else'
  23847. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23848. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23849. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23850. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23851. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23852. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23853. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23854. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23855. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23856. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23857. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23858. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23859. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23860. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23861. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23862. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23863. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23864. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23865. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23866. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23867. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23868. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23869. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23870. // 'xquery' | '{' | '{|'
  23871. try_Statement();
  23872. }
  23873. function parse_SwitchStatement()
  23874. {
  23875. eventHandler.startNonterminal("SwitchStatement", e0);
  23876. shift(243); // 'switch'
  23877. lookahead1W(22); // S^WS | '(' | '(:'
  23878. shift(34); // '('
  23879. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23880. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23881. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23882. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23883. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23884. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23885. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23886. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23887. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23888. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23889. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23890. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23891. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23892. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23893. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23894. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23895. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23896. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23897. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23898. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23899. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23900. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23901. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23902. // 'xquery' | '{' | '{|'
  23903. whitespace();
  23904. parse_Expr();
  23905. shift(37); // ')'
  23906. for (;;)
  23907. {
  23908. lookahead1W(35); // S^WS | '(:' | 'case'
  23909. whitespace();
  23910. parse_SwitchCaseStatement();
  23911. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  23912. if (l1 != 88) // 'case'
  23913. {
  23914. break;
  23915. }
  23916. }
  23917. shift(109); // 'default'
  23918. lookahead1W(70); // S^WS | '(:' | 'return'
  23919. shift(220); // 'return'
  23920. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23921. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23922. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23923. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23924. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23925. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23926. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23927. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23928. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23929. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23930. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23931. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23932. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23933. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23934. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23935. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23936. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23937. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23938. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23939. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23940. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23941. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23942. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23943. // 'xquery' | '{' | '{|'
  23944. whitespace();
  23945. parse_Statement();
  23946. eventHandler.endNonterminal("SwitchStatement", e0);
  23947. }
  23948. function try_SwitchStatement()
  23949. {
  23950. shiftT(243); // 'switch'
  23951. lookahead1W(22); // S^WS | '(' | '(:'
  23952. shiftT(34); // '('
  23953. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23954. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23955. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23956. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23957. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23958. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23959. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23960. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  23961. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  23962. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  23963. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  23964. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  23965. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  23966. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  23967. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  23968. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  23969. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  23970. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  23971. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  23972. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  23973. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  23974. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  23975. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  23976. // 'xquery' | '{' | '{|'
  23977. try_Expr();
  23978. shiftT(37); // ')'
  23979. for (;;)
  23980. {
  23981. lookahead1W(35); // S^WS | '(:' | 'case'
  23982. try_SwitchCaseStatement();
  23983. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  23984. if (l1 != 88) // 'case'
  23985. {
  23986. break;
  23987. }
  23988. }
  23989. shiftT(109); // 'default'
  23990. lookahead1W(70); // S^WS | '(:' | 'return'
  23991. shiftT(220); // 'return'
  23992. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  23993. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  23994. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  23995. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  23996. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  23997. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  23998. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  23999. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24000. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24001. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24002. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24003. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24004. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24005. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24006. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24007. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24008. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24009. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24010. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24011. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24012. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24013. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24014. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24015. // 'xquery' | '{' | '{|'
  24016. try_Statement();
  24017. }
  24018. function parse_SwitchCaseStatement()
  24019. {
  24020. eventHandler.startNonterminal("SwitchCaseStatement", e0);
  24021. for (;;)
  24022. {
  24023. shift(88); // 'case'
  24024. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24025. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24026. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24027. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24028. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24029. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24030. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24031. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24032. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24033. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24034. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24035. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24036. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24037. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24038. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24039. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24040. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24041. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24042. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24043. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24044. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24045. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24046. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24047. // 'xquery' | '{' | '{|'
  24048. whitespace();
  24049. parse_SwitchCaseOperand();
  24050. if (l1 != 88) // 'case'
  24051. {
  24052. break;
  24053. }
  24054. }
  24055. shift(220); // 'return'
  24056. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24057. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24058. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24059. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24060. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24061. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24062. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24063. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24064. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24065. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24066. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24067. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24068. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24069. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24070. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24071. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24072. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24073. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24074. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24075. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24076. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24077. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24078. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24079. // 'xquery' | '{' | '{|'
  24080. whitespace();
  24081. parse_Statement();
  24082. eventHandler.endNonterminal("SwitchCaseStatement", e0);
  24083. }
  24084. function try_SwitchCaseStatement()
  24085. {
  24086. for (;;)
  24087. {
  24088. shiftT(88); // 'case'
  24089. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24090. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24091. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24092. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24093. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24094. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24095. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24096. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24097. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24098. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24099. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24100. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24101. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24102. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24103. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24104. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24105. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24106. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24107. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24108. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24109. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24110. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24111. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24112. // 'xquery' | '{' | '{|'
  24113. try_SwitchCaseOperand();
  24114. if (l1 != 88) // 'case'
  24115. {
  24116. break;
  24117. }
  24118. }
  24119. shiftT(220); // 'return'
  24120. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24121. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24122. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24123. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24124. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24125. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24126. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24127. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24128. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24129. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24130. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24131. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24132. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24133. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24134. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24135. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24136. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24137. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24138. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24139. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24140. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24141. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24142. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24143. // 'xquery' | '{' | '{|'
  24144. try_Statement();
  24145. }
  24146. function parse_TryCatchStatement()
  24147. {
  24148. eventHandler.startNonterminal("TryCatchStatement", e0);
  24149. shift(250); // 'try'
  24150. lookahead1W(87); // S^WS | '(:' | '{'
  24151. whitespace();
  24152. parse_BlockStatement();
  24153. for (;;)
  24154. {
  24155. lookahead1W(36); // S^WS | '(:' | 'catch'
  24156. shift(91); // 'catch'
  24157. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24158. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24159. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24160. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24161. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24162. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24163. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24164. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24165. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24166. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24167. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24168. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24169. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24170. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24171. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24172. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24173. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24174. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24175. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24176. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24177. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24178. // 'xquery'
  24179. whitespace();
  24180. parse_CatchErrorList();
  24181. whitespace();
  24182. parse_BlockStatement();
  24183. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24184. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  24185. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24186. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24187. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24188. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24189. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24190. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24191. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24192. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24193. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24194. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24195. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24196. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24197. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24198. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24199. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24200. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24201. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24202. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24203. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24204. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24205. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24206. // 'xquery' | '{' | '{|' | '}'
  24207. switch (l1)
  24208. {
  24209. case 91: // 'catch'
  24210. lookahead2W(276); // Wildcard | EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' |
  24211. // '+' | ',' | '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  24212. // '>>' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  24213. // 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  24214. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  24215. // 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  24216. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24217. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24218. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24219. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24220. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24221. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24222. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24223. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24224. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24225. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24226. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24227. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24228. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24229. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24230. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24231. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24232. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24233. // 'xquery' | '|' | '||' | '}'
  24234. break;
  24235. default:
  24236. lk = l1;
  24237. }
  24238. if (lk == 38491 // 'catch' 'and'
  24239. || lk == 45659 // 'catch' 'cast'
  24240. || lk == 46171 // 'catch' 'castable'
  24241. || lk == 60507 // 'catch' 'div'
  24242. || lk == 65627 // 'catch' 'eq'
  24243. || lk == 67163 // 'catch' 'except'
  24244. || lk == 74843 // 'catch' 'ge'
  24245. || lk == 76891 // 'catch' 'gt'
  24246. || lk == 77403 // 'catch' 'idiv'
  24247. || lk == 82011 // 'catch' 'instance'
  24248. || lk == 83035 // 'catch' 'intersect'
  24249. || lk == 84059 // 'catch' 'is'
  24250. || lk == 88155 // 'catch' 'le'
  24251. || lk == 91227 // 'catch' 'lt'
  24252. || lk == 92251 // 'catch' 'mod'
  24253. || lk == 95323 // 'catch' 'ne'
  24254. || lk == 102491 // 'catch' 'or'
  24255. || lk == 127067 // 'catch' 'to'
  24256. || lk == 127579 // 'catch' 'treat'
  24257. || lk == 130139) // 'catch' 'union'
  24258. {
  24259. lk = memoized(8, e0);
  24260. if (lk == 0)
  24261. {
  24262. var b0A = b0; var e0A = e0; var l1A = l1;
  24263. var b1A = b1; var e1A = e1; var l2A = l2;
  24264. var b2A = b2; var e2A = e2;
  24265. try
  24266. {
  24267. lookahead1W(36); // S^WS | '(:' | 'catch'
  24268. shiftT(91); // 'catch'
  24269. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24270. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24271. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24272. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24273. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24274. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24275. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24276. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24277. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24278. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24279. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24280. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24281. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24282. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24283. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24284. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24285. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24286. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24287. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24288. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24289. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24290. // 'xquery'
  24291. try_CatchErrorList();
  24292. try_BlockStatement();
  24293. lk = -1;
  24294. }
  24295. catch (p1A)
  24296. {
  24297. lk = -2;
  24298. }
  24299. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  24300. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  24301. b2 = b2A; e2 = e2A; end = e2A; }}
  24302. memoize(8, e0, lk);
  24303. }
  24304. }
  24305. if (lk != -1
  24306. && lk != 2651 // 'catch' Wildcard
  24307. && lk != 3163 // 'catch' EQName^Token
  24308. && lk != 35931 // 'catch' 'after'
  24309. && lk != 36955 // 'catch' 'allowing'
  24310. && lk != 37467 // 'catch' 'ancestor'
  24311. && lk != 37979 // 'catch' 'ancestor-or-self'
  24312. && lk != 40027 // 'catch' 'array'
  24313. && lk != 40539 // 'catch' 'as'
  24314. && lk != 41051 // 'catch' 'ascending'
  24315. && lk != 41563 // 'catch' 'at'
  24316. && lk != 42075 // 'catch' 'attribute'
  24317. && lk != 42587 // 'catch' 'base-uri'
  24318. && lk != 43099 // 'catch' 'before'
  24319. && lk != 43611 // 'catch' 'boundary-space'
  24320. && lk != 44123 // 'catch' 'break'
  24321. && lk != 45147 // 'catch' 'case'
  24322. && lk != 46683 // 'catch' 'catch'
  24323. && lk != 47707 // 'catch' 'child'
  24324. && lk != 48219 // 'catch' 'collation'
  24325. && lk != 49243 // 'catch' 'comment'
  24326. && lk != 49755 // 'catch' 'constraint'
  24327. && lk != 50267 // 'catch' 'construction'
  24328. && lk != 51803 // 'catch' 'context'
  24329. && lk != 52315 // 'catch' 'continue'
  24330. && lk != 52827 // 'catch' 'copy'
  24331. && lk != 53339 // 'catch' 'copy-namespaces'
  24332. && lk != 53851 // 'catch' 'count'
  24333. && lk != 54363 // 'catch' 'decimal-format'
  24334. && lk != 55387 // 'catch' 'declare'
  24335. && lk != 55899 // 'catch' 'default'
  24336. && lk != 56411 // 'catch' 'delete'
  24337. && lk != 56923 // 'catch' 'descendant'
  24338. && lk != 57435 // 'catch' 'descendant-or-self'
  24339. && lk != 57947 // 'catch' 'descending'
  24340. && lk != 61019 // 'catch' 'document'
  24341. && lk != 61531 // 'catch' 'document-node'
  24342. && lk != 62043 // 'catch' 'element'
  24343. && lk != 62555 // 'catch' 'else'
  24344. && lk != 63067 // 'catch' 'empty'
  24345. && lk != 63579 // 'catch' 'empty-sequence'
  24346. && lk != 64091 // 'catch' 'encoding'
  24347. && lk != 64603 // 'catch' 'end'
  24348. && lk != 66139 // 'catch' 'every'
  24349. && lk != 67675 // 'catch' 'exit'
  24350. && lk != 68187 // 'catch' 'external'
  24351. && lk != 68699 // 'catch' 'first'
  24352. && lk != 69211 // 'catch' 'following'
  24353. && lk != 69723 // 'catch' 'following-sibling'
  24354. && lk != 70235 // 'catch' 'for'
  24355. && lk != 72283 // 'catch' 'ft-option'
  24356. && lk != 74331 // 'catch' 'function'
  24357. && lk != 75867 // 'catch' 'group'
  24358. && lk != 77915 // 'catch' 'if'
  24359. && lk != 78427 // 'catch' 'import'
  24360. && lk != 78939 // 'catch' 'in'
  24361. && lk != 79451 // 'catch' 'index'
  24362. && lk != 81499 // 'catch' 'insert'
  24363. && lk != 82523 // 'catch' 'integrity'
  24364. && lk != 83547 // 'catch' 'into'
  24365. && lk != 84571 // 'catch' 'item'
  24366. && lk != 85595 // 'catch' 'json-item'
  24367. && lk != 87131 // 'catch' 'last'
  24368. && lk != 87643 // 'catch' 'lax'
  24369. && lk != 89179 // 'catch' 'let'
  24370. && lk != 90203 // 'catch' 'loop'
  24371. && lk != 92763 // 'catch' 'modify'
  24372. && lk != 93275 // 'catch' 'module'
  24373. && lk != 94299 // 'catch' 'namespace'
  24374. && lk != 94811 // 'catch' 'namespace-node'
  24375. && lk != 97883 // 'catch' 'node'
  24376. && lk != 98395 // 'catch' 'nodes'
  24377. && lk != 99419 // 'catch' 'object'
  24378. && lk != 101467 // 'catch' 'only'
  24379. && lk != 101979 // 'catch' 'option'
  24380. && lk != 103003 // 'catch' 'order'
  24381. && lk != 103515 // 'catch' 'ordered'
  24382. && lk != 104027 // 'catch' 'ordering'
  24383. && lk != 105563 // 'catch' 'parent'
  24384. && lk != 108635 // 'catch' 'preceding'
  24385. && lk != 109147 // 'catch' 'preceding-sibling'
  24386. && lk != 110683 // 'catch' 'processing-instruction'
  24387. && lk != 111707 // 'catch' 'rename'
  24388. && lk != 112219 // 'catch' 'replace'
  24389. && lk != 112731 // 'catch' 'return'
  24390. && lk != 113243 // 'catch' 'returning'
  24391. && lk != 113755 // 'catch' 'revalidation'
  24392. && lk != 114779 // 'catch' 'satisfies'
  24393. && lk != 115291 // 'catch' 'schema'
  24394. && lk != 115803 // 'catch' 'schema-attribute'
  24395. && lk != 116315 // 'catch' 'schema-element'
  24396. && lk != 116827 // 'catch' 'score'
  24397. && lk != 117339 // 'catch' 'self'
  24398. && lk != 119899 // 'catch' 'sliding'
  24399. && lk != 120411 // 'catch' 'some'
  24400. && lk != 120923 // 'catch' 'stable'
  24401. && lk != 121435 // 'catch' 'start'
  24402. && lk != 122971 // 'catch' 'strict'
  24403. && lk != 124507 // 'catch' 'switch'
  24404. && lk != 125019 // 'catch' 'text'
  24405. && lk != 128091 // 'catch' 'try'
  24406. && lk != 128603 // 'catch' 'tumbling'
  24407. && lk != 129115 // 'catch' 'type'
  24408. && lk != 129627 // 'catch' 'typeswitch'
  24409. && lk != 131163 // 'catch' 'unordered'
  24410. && lk != 131675 // 'catch' 'updating'
  24411. && lk != 133211 // 'catch' 'validate'
  24412. && lk != 133723 // 'catch' 'value'
  24413. && lk != 134235 // 'catch' 'variable'
  24414. && lk != 134747 // 'catch' 'version'
  24415. && lk != 136283 // 'catch' 'where'
  24416. && lk != 136795 // 'catch' 'while'
  24417. && lk != 138331 // 'catch' 'with'
  24418. && lk != 140379) // 'catch' 'xquery'
  24419. {
  24420. break;
  24421. }
  24422. }
  24423. eventHandler.endNonterminal("TryCatchStatement", e0);
  24424. }
  24425. function try_TryCatchStatement()
  24426. {
  24427. shiftT(250); // 'try'
  24428. lookahead1W(87); // S^WS | '(:' | '{'
  24429. try_BlockStatement();
  24430. lookahead1W(36); // S^WS | '(:' | 'catch'
  24431. shiftT(91); // 'catch'
  24432. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24433. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24434. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24435. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24436. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24437. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24438. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24439. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24440. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24441. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24442. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24443. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24444. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24445. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24446. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24447. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24448. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24449. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24450. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24451. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24452. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24453. // 'xquery'
  24454. try_CatchErrorList();
  24455. try_BlockStatement();
  24456. for (;;)
  24457. {
  24458. lookahead1W(274); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24459. // StringLiteral | S^WS | EOF | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' |
  24460. // '..' | '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24461. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24462. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24463. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24464. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24465. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24466. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24467. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24468. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24469. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24470. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24471. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24472. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24473. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24474. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24475. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24476. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24477. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24478. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24479. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24480. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24481. // 'xquery' | '{' | '{|' | '}'
  24482. switch (l1)
  24483. {
  24484. case 91: // 'catch'
  24485. lookahead2W(276); // Wildcard | EQName^Token | S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | '*' |
  24486. // '+' | ',' | '-' | '/' | '//' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' |
  24487. // '>>' | '[' | 'after' | 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' |
  24488. // 'array' | 'as' | 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' |
  24489. // 'boundary-space' | 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' |
  24490. // 'collation' | 'comment' | 'constraint' | 'construction' | 'contains' |
  24491. // 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24492. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24493. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24494. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24495. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24496. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24497. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24498. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24499. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24500. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24501. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24502. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24503. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24504. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24505. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24506. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24507. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24508. // 'xquery' | '|' | '||' | '}'
  24509. break;
  24510. default:
  24511. lk = l1;
  24512. }
  24513. if (lk == 38491 // 'catch' 'and'
  24514. || lk == 45659 // 'catch' 'cast'
  24515. || lk == 46171 // 'catch' 'castable'
  24516. || lk == 60507 // 'catch' 'div'
  24517. || lk == 65627 // 'catch' 'eq'
  24518. || lk == 67163 // 'catch' 'except'
  24519. || lk == 74843 // 'catch' 'ge'
  24520. || lk == 76891 // 'catch' 'gt'
  24521. || lk == 77403 // 'catch' 'idiv'
  24522. || lk == 82011 // 'catch' 'instance'
  24523. || lk == 83035 // 'catch' 'intersect'
  24524. || lk == 84059 // 'catch' 'is'
  24525. || lk == 88155 // 'catch' 'le'
  24526. || lk == 91227 // 'catch' 'lt'
  24527. || lk == 92251 // 'catch' 'mod'
  24528. || lk == 95323 // 'catch' 'ne'
  24529. || lk == 102491 // 'catch' 'or'
  24530. || lk == 127067 // 'catch' 'to'
  24531. || lk == 127579 // 'catch' 'treat'
  24532. || lk == 130139) // 'catch' 'union'
  24533. {
  24534. lk = memoized(8, e0);
  24535. if (lk == 0)
  24536. {
  24537. var b0A = b0; var e0A = e0; var l1A = l1;
  24538. var b1A = b1; var e1A = e1; var l2A = l2;
  24539. var b2A = b2; var e2A = e2;
  24540. try
  24541. {
  24542. lookahead1W(36); // S^WS | '(:' | 'catch'
  24543. shiftT(91); // 'catch'
  24544. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24545. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24546. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24547. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24548. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24549. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24550. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24551. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24552. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24553. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24554. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24555. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24556. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24557. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24558. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24559. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24560. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24561. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24562. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24563. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24564. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24565. // 'xquery'
  24566. try_CatchErrorList();
  24567. try_BlockStatement();
  24568. memoize(8, e0A, -1);
  24569. continue;
  24570. }
  24571. catch (p1A)
  24572. {
  24573. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  24574. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  24575. b2 = b2A; e2 = e2A; end = e2A; }}
  24576. memoize(8, e0A, -2);
  24577. break;
  24578. }
  24579. }
  24580. }
  24581. if (lk != -1
  24582. && lk != 2651 // 'catch' Wildcard
  24583. && lk != 3163 // 'catch' EQName^Token
  24584. && lk != 35931 // 'catch' 'after'
  24585. && lk != 36955 // 'catch' 'allowing'
  24586. && lk != 37467 // 'catch' 'ancestor'
  24587. && lk != 37979 // 'catch' 'ancestor-or-self'
  24588. && lk != 40027 // 'catch' 'array'
  24589. && lk != 40539 // 'catch' 'as'
  24590. && lk != 41051 // 'catch' 'ascending'
  24591. && lk != 41563 // 'catch' 'at'
  24592. && lk != 42075 // 'catch' 'attribute'
  24593. && lk != 42587 // 'catch' 'base-uri'
  24594. && lk != 43099 // 'catch' 'before'
  24595. && lk != 43611 // 'catch' 'boundary-space'
  24596. && lk != 44123 // 'catch' 'break'
  24597. && lk != 45147 // 'catch' 'case'
  24598. && lk != 46683 // 'catch' 'catch'
  24599. && lk != 47707 // 'catch' 'child'
  24600. && lk != 48219 // 'catch' 'collation'
  24601. && lk != 49243 // 'catch' 'comment'
  24602. && lk != 49755 // 'catch' 'constraint'
  24603. && lk != 50267 // 'catch' 'construction'
  24604. && lk != 51803 // 'catch' 'context'
  24605. && lk != 52315 // 'catch' 'continue'
  24606. && lk != 52827 // 'catch' 'copy'
  24607. && lk != 53339 // 'catch' 'copy-namespaces'
  24608. && lk != 53851 // 'catch' 'count'
  24609. && lk != 54363 // 'catch' 'decimal-format'
  24610. && lk != 55387 // 'catch' 'declare'
  24611. && lk != 55899 // 'catch' 'default'
  24612. && lk != 56411 // 'catch' 'delete'
  24613. && lk != 56923 // 'catch' 'descendant'
  24614. && lk != 57435 // 'catch' 'descendant-or-self'
  24615. && lk != 57947 // 'catch' 'descending'
  24616. && lk != 61019 // 'catch' 'document'
  24617. && lk != 61531 // 'catch' 'document-node'
  24618. && lk != 62043 // 'catch' 'element'
  24619. && lk != 62555 // 'catch' 'else'
  24620. && lk != 63067 // 'catch' 'empty'
  24621. && lk != 63579 // 'catch' 'empty-sequence'
  24622. && lk != 64091 // 'catch' 'encoding'
  24623. && lk != 64603 // 'catch' 'end'
  24624. && lk != 66139 // 'catch' 'every'
  24625. && lk != 67675 // 'catch' 'exit'
  24626. && lk != 68187 // 'catch' 'external'
  24627. && lk != 68699 // 'catch' 'first'
  24628. && lk != 69211 // 'catch' 'following'
  24629. && lk != 69723 // 'catch' 'following-sibling'
  24630. && lk != 70235 // 'catch' 'for'
  24631. && lk != 72283 // 'catch' 'ft-option'
  24632. && lk != 74331 // 'catch' 'function'
  24633. && lk != 75867 // 'catch' 'group'
  24634. && lk != 77915 // 'catch' 'if'
  24635. && lk != 78427 // 'catch' 'import'
  24636. && lk != 78939 // 'catch' 'in'
  24637. && lk != 79451 // 'catch' 'index'
  24638. && lk != 81499 // 'catch' 'insert'
  24639. && lk != 82523 // 'catch' 'integrity'
  24640. && lk != 83547 // 'catch' 'into'
  24641. && lk != 84571 // 'catch' 'item'
  24642. && lk != 85595 // 'catch' 'json-item'
  24643. && lk != 87131 // 'catch' 'last'
  24644. && lk != 87643 // 'catch' 'lax'
  24645. && lk != 89179 // 'catch' 'let'
  24646. && lk != 90203 // 'catch' 'loop'
  24647. && lk != 92763 // 'catch' 'modify'
  24648. && lk != 93275 // 'catch' 'module'
  24649. && lk != 94299 // 'catch' 'namespace'
  24650. && lk != 94811 // 'catch' 'namespace-node'
  24651. && lk != 97883 // 'catch' 'node'
  24652. && lk != 98395 // 'catch' 'nodes'
  24653. && lk != 99419 // 'catch' 'object'
  24654. && lk != 101467 // 'catch' 'only'
  24655. && lk != 101979 // 'catch' 'option'
  24656. && lk != 103003 // 'catch' 'order'
  24657. && lk != 103515 // 'catch' 'ordered'
  24658. && lk != 104027 // 'catch' 'ordering'
  24659. && lk != 105563 // 'catch' 'parent'
  24660. && lk != 108635 // 'catch' 'preceding'
  24661. && lk != 109147 // 'catch' 'preceding-sibling'
  24662. && lk != 110683 // 'catch' 'processing-instruction'
  24663. && lk != 111707 // 'catch' 'rename'
  24664. && lk != 112219 // 'catch' 'replace'
  24665. && lk != 112731 // 'catch' 'return'
  24666. && lk != 113243 // 'catch' 'returning'
  24667. && lk != 113755 // 'catch' 'revalidation'
  24668. && lk != 114779 // 'catch' 'satisfies'
  24669. && lk != 115291 // 'catch' 'schema'
  24670. && lk != 115803 // 'catch' 'schema-attribute'
  24671. && lk != 116315 // 'catch' 'schema-element'
  24672. && lk != 116827 // 'catch' 'score'
  24673. && lk != 117339 // 'catch' 'self'
  24674. && lk != 119899 // 'catch' 'sliding'
  24675. && lk != 120411 // 'catch' 'some'
  24676. && lk != 120923 // 'catch' 'stable'
  24677. && lk != 121435 // 'catch' 'start'
  24678. && lk != 122971 // 'catch' 'strict'
  24679. && lk != 124507 // 'catch' 'switch'
  24680. && lk != 125019 // 'catch' 'text'
  24681. && lk != 128091 // 'catch' 'try'
  24682. && lk != 128603 // 'catch' 'tumbling'
  24683. && lk != 129115 // 'catch' 'type'
  24684. && lk != 129627 // 'catch' 'typeswitch'
  24685. && lk != 131163 // 'catch' 'unordered'
  24686. && lk != 131675 // 'catch' 'updating'
  24687. && lk != 133211 // 'catch' 'validate'
  24688. && lk != 133723 // 'catch' 'value'
  24689. && lk != 134235 // 'catch' 'variable'
  24690. && lk != 134747 // 'catch' 'version'
  24691. && lk != 136283 // 'catch' 'where'
  24692. && lk != 136795 // 'catch' 'while'
  24693. && lk != 138331 // 'catch' 'with'
  24694. && lk != 140379) // 'catch' 'xquery'
  24695. {
  24696. break;
  24697. }
  24698. lookahead1W(36); // S^WS | '(:' | 'catch'
  24699. shiftT(91); // 'catch'
  24700. lookahead1W(255); // Wildcard | EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24701. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24702. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24703. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24704. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24705. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24706. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24707. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24708. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24709. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24710. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24711. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24712. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24713. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24714. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24715. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24716. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24717. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24718. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24719. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24720. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24721. // 'xquery'
  24722. try_CatchErrorList();
  24723. try_BlockStatement();
  24724. }
  24725. }
  24726. function parse_TypeswitchStatement()
  24727. {
  24728. eventHandler.startNonterminal("TypeswitchStatement", e0);
  24729. shift(253); // 'typeswitch'
  24730. lookahead1W(22); // S^WS | '(' | '(:'
  24731. shift(34); // '('
  24732. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24733. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24734. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24735. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24736. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24737. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24738. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24739. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24740. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24741. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24742. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24743. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24744. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24745. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24746. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24747. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24748. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24749. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24750. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24751. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24752. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24753. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24754. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24755. // 'xquery' | '{' | '{|'
  24756. whitespace();
  24757. parse_Expr();
  24758. shift(37); // ')'
  24759. for (;;)
  24760. {
  24761. lookahead1W(35); // S^WS | '(:' | 'case'
  24762. whitespace();
  24763. parse_CaseStatement();
  24764. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  24765. if (l1 != 88) // 'case'
  24766. {
  24767. break;
  24768. }
  24769. }
  24770. shift(109); // 'default'
  24771. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  24772. if (l1 == 31) // '$'
  24773. {
  24774. shift(31); // '$'
  24775. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24776. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24777. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24778. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24779. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24780. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24781. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24782. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24783. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24784. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24785. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24786. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24787. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24788. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24789. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24790. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24791. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24792. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24793. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24794. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24795. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24796. // 'xquery'
  24797. whitespace();
  24798. parse_VarName();
  24799. }
  24800. lookahead1W(70); // S^WS | '(:' | 'return'
  24801. shift(220); // 'return'
  24802. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24803. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24804. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24805. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24806. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24807. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24808. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24809. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24810. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24811. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24812. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24813. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24814. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24815. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24816. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24817. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24818. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24819. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24820. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24821. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24822. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24823. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24824. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24825. // 'xquery' | '{' | '{|'
  24826. whitespace();
  24827. parse_Statement();
  24828. eventHandler.endNonterminal("TypeswitchStatement", e0);
  24829. }
  24830. function try_TypeswitchStatement()
  24831. {
  24832. shiftT(253); // 'typeswitch'
  24833. lookahead1W(22); // S^WS | '(' | '(:'
  24834. shiftT(34); // '('
  24835. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24836. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24837. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24838. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24839. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24840. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24841. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24842. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24843. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24844. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24845. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24846. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24847. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24848. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24849. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24850. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24851. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24852. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24853. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24854. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24855. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24856. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24857. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24858. // 'xquery' | '{' | '{|'
  24859. try_Expr();
  24860. shiftT(37); // ')'
  24861. for (;;)
  24862. {
  24863. lookahead1W(35); // S^WS | '(:' | 'case'
  24864. try_CaseStatement();
  24865. lookahead1W(113); // S^WS | '(:' | 'case' | 'default'
  24866. if (l1 != 88) // 'case'
  24867. {
  24868. break;
  24869. }
  24870. }
  24871. shiftT(109); // 'default'
  24872. lookahead1W(95); // S^WS | '$' | '(:' | 'return'
  24873. if (l1 == 31) // '$'
  24874. {
  24875. shiftT(31); // '$'
  24876. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24877. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24878. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24879. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24880. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24881. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24882. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24883. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24884. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24885. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24886. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24887. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24888. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24889. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24890. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24891. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24892. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24893. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24894. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24895. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24896. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24897. // 'xquery'
  24898. try_VarName();
  24899. }
  24900. lookahead1W(70); // S^WS | '(:' | 'return'
  24901. shiftT(220); // 'return'
  24902. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  24903. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  24904. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  24905. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  24906. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  24907. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  24908. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24909. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24910. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24911. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24912. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24913. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24914. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24915. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24916. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24917. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24918. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24919. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24920. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24921. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24922. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24923. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24924. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24925. // 'xquery' | '{' | '{|'
  24926. try_Statement();
  24927. }
  24928. function parse_CaseStatement()
  24929. {
  24930. eventHandler.startNonterminal("CaseStatement", e0);
  24931. shift(88); // 'case'
  24932. lookahead1W(260); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  24933. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  24934. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  24935. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  24936. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  24937. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  24938. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  24939. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  24940. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  24941. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  24942. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  24943. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  24944. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  24945. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  24946. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24947. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24948. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24949. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24950. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  24951. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  24952. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  24953. // 'with' | 'xquery'
  24954. if (l1 == 31) // '$'
  24955. {
  24956. shift(31); // '$'
  24957. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  24958. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24959. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24960. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24961. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24962. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24963. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24964. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24965. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24966. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24967. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24968. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24969. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24970. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24971. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24972. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  24973. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  24974. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  24975. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  24976. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  24977. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  24978. // 'xquery'
  24979. whitespace();
  24980. parse_VarName();
  24981. lookahead1W(30); // S^WS | '(:' | 'as'
  24982. shift(79); // 'as'
  24983. }
  24984. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  24985. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  24986. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  24987. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  24988. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  24989. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  24990. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  24991. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  24992. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  24993. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  24994. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  24995. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  24996. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  24997. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  24998. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  24999. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25000. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25001. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25002. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  25003. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  25004. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  25005. // 'with' | 'xquery'
  25006. whitespace();
  25007. parse_SequenceType();
  25008. lookahead1W(70); // S^WS | '(:' | 'return'
  25009. shift(220); // 'return'
  25010. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25011. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25012. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25013. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25014. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25015. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25016. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25017. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25018. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25019. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25020. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25021. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25022. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25023. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25024. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25025. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25026. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25027. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25028. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25029. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25030. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25031. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25032. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25033. // 'xquery' | '{' | '{|'
  25034. whitespace();
  25035. parse_Statement();
  25036. eventHandler.endNonterminal("CaseStatement", e0);
  25037. }
  25038. function try_CaseStatement()
  25039. {
  25040. shiftT(88); // 'case'
  25041. lookahead1W(260); // EQName^Token | S^WS | '$' | '%' | '(' | '(:' | 'after' | 'allowing' |
  25042. // 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' |
  25043. // 'attribute' | 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' |
  25044. // 'cast' | 'castable' | 'catch' | 'child' | 'collation' | 'comment' |
  25045. // 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25046. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25047. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25048. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25049. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25050. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25051. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25052. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25053. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25054. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25055. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25056. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25057. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25058. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25059. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  25060. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  25061. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  25062. // 'with' | 'xquery'
  25063. if (l1 == 31) // '$'
  25064. {
  25065. shiftT(31); // '$'
  25066. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25067. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25068. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25069. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25070. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25071. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25072. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25073. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25074. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25075. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25076. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25077. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25078. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25079. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25080. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25081. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25082. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25083. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25084. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25085. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25086. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25087. // 'xquery'
  25088. try_VarName();
  25089. lookahead1W(30); // S^WS | '(:' | 'as'
  25090. shiftT(79); // 'as'
  25091. }
  25092. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  25093. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25094. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25095. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25096. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25097. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25098. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25099. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25100. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25101. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25102. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25103. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25104. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25105. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25106. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25107. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25108. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25109. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25110. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  25111. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  25112. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  25113. // 'with' | 'xquery'
  25114. try_SequenceType();
  25115. lookahead1W(70); // S^WS | '(:' | 'return'
  25116. shiftT(220); // 'return'
  25117. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25118. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25119. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25120. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25121. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25122. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25123. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25124. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25125. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25126. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25127. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25128. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25129. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25130. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25131. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25132. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25133. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25134. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25135. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25136. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25137. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25138. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25139. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25140. // 'xquery' | '{' | '{|'
  25141. try_Statement();
  25142. }
  25143. function parse_VarDeclStatement()
  25144. {
  25145. eventHandler.startNonterminal("VarDeclStatement", e0);
  25146. for (;;)
  25147. {
  25148. lookahead1W(98); // S^WS | '%' | '(:' | 'variable'
  25149. if (l1 != 32) // '%'
  25150. {
  25151. break;
  25152. }
  25153. whitespace();
  25154. parse_Annotation();
  25155. }
  25156. shift(262); // 'variable'
  25157. lookahead1W(21); // S^WS | '$' | '(:'
  25158. shift(31); // '$'
  25159. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25160. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25161. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25162. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25163. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25164. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25165. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25166. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25167. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25168. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25169. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25170. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25171. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25172. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25173. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25174. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25175. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25176. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25177. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25178. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25179. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25180. // 'xquery'
  25181. whitespace();
  25182. parse_VarName();
  25183. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  25184. if (l1 == 79) // 'as'
  25185. {
  25186. whitespace();
  25187. parse_TypeDeclaration();
  25188. }
  25189. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  25190. if (l1 == 52) // ':='
  25191. {
  25192. shift(52); // ':='
  25193. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25194. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25195. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25196. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25197. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25198. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25199. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25200. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25201. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25202. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25203. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25204. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25205. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25206. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25207. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25208. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25209. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25210. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25211. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25212. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25213. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25214. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25215. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25216. // 'xquery' | '{' | '{|'
  25217. whitespace();
  25218. parse_ExprSingle();
  25219. }
  25220. for (;;)
  25221. {
  25222. if (l1 != 41) // ','
  25223. {
  25224. break;
  25225. }
  25226. shift(41); // ','
  25227. lookahead1W(21); // S^WS | '$' | '(:'
  25228. shift(31); // '$'
  25229. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25230. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25231. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25232. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25233. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25234. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25235. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25236. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25237. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25238. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25239. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25240. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25241. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25242. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25243. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25244. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25245. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25246. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25247. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25248. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25249. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25250. // 'xquery'
  25251. whitespace();
  25252. parse_VarName();
  25253. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  25254. if (l1 == 79) // 'as'
  25255. {
  25256. whitespace();
  25257. parse_TypeDeclaration();
  25258. }
  25259. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  25260. if (l1 == 52) // ':='
  25261. {
  25262. shift(52); // ':='
  25263. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25264. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25265. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25266. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25267. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25268. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25269. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25270. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25271. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25272. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25273. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25274. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25275. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25276. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25277. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25278. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25279. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25280. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25281. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25282. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25283. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25284. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25285. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25286. // 'xquery' | '{' | '{|'
  25287. whitespace();
  25288. parse_ExprSingle();
  25289. }
  25290. }
  25291. shift(53); // ';'
  25292. eventHandler.endNonterminal("VarDeclStatement", e0);
  25293. }
  25294. function try_VarDeclStatement()
  25295. {
  25296. for (;;)
  25297. {
  25298. lookahead1W(98); // S^WS | '%' | '(:' | 'variable'
  25299. if (l1 != 32) // '%'
  25300. {
  25301. break;
  25302. }
  25303. try_Annotation();
  25304. }
  25305. shiftT(262); // 'variable'
  25306. lookahead1W(21); // S^WS | '$' | '(:'
  25307. shiftT(31); // '$'
  25308. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25309. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25310. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25311. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25312. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25313. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25314. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25315. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25316. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25317. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25318. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25319. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25320. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25321. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25322. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25323. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25324. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25325. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25326. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25327. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25328. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25329. // 'xquery'
  25330. try_VarName();
  25331. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  25332. if (l1 == 79) // 'as'
  25333. {
  25334. try_TypeDeclaration();
  25335. }
  25336. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  25337. if (l1 == 52) // ':='
  25338. {
  25339. shiftT(52); // ':='
  25340. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25341. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25342. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25343. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25344. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25345. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25346. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25347. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25348. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25349. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25350. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25351. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25352. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25353. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25354. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25355. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25356. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25357. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25358. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25359. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25360. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25361. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25362. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25363. // 'xquery' | '{' | '{|'
  25364. try_ExprSingle();
  25365. }
  25366. for (;;)
  25367. {
  25368. if (l1 != 41) // ','
  25369. {
  25370. break;
  25371. }
  25372. shiftT(41); // ','
  25373. lookahead1W(21); // S^WS | '$' | '(:'
  25374. shiftT(31); // '$'
  25375. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  25376. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  25377. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  25378. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  25379. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  25380. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  25381. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  25382. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  25383. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  25384. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  25385. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  25386. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  25387. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  25388. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  25389. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25390. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25391. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25392. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25393. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25394. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25395. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25396. // 'xquery'
  25397. try_VarName();
  25398. lookahead1W(157); // S^WS | '(:' | ',' | ':=' | ';' | 'as'
  25399. if (l1 == 79) // 'as'
  25400. {
  25401. try_TypeDeclaration();
  25402. }
  25403. lookahead1W(145); // S^WS | '(:' | ',' | ':=' | ';'
  25404. if (l1 == 52) // ':='
  25405. {
  25406. shiftT(52); // ':='
  25407. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25408. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25409. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25410. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25411. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25412. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25413. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25414. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25415. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25416. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25417. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25418. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25419. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25420. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25421. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25422. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25423. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25424. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25425. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25426. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25427. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25428. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25429. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25430. // 'xquery' | '{' | '{|'
  25431. try_ExprSingle();
  25432. }
  25433. }
  25434. shiftT(53); // ';'
  25435. }
  25436. function parse_WhileStatement()
  25437. {
  25438. eventHandler.startNonterminal("WhileStatement", e0);
  25439. shift(267); // 'while'
  25440. lookahead1W(22); // S^WS | '(' | '(:'
  25441. shift(34); // '('
  25442. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25443. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25444. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25445. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25446. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25447. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25448. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25449. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25450. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25451. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25452. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25453. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25454. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25455. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25456. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25457. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25458. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25459. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25460. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25461. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25462. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25463. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25464. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25465. // 'xquery' | '{' | '{|'
  25466. whitespace();
  25467. parse_Expr();
  25468. shift(37); // ')'
  25469. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25470. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25471. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25472. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25473. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25474. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25475. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25476. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25477. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25478. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25479. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25480. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25481. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25482. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25483. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25484. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25485. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25486. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25487. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25488. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25489. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25490. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25491. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25492. // 'xquery' | '{' | '{|'
  25493. whitespace();
  25494. parse_Statement();
  25495. eventHandler.endNonterminal("WhileStatement", e0);
  25496. }
  25497. function try_WhileStatement()
  25498. {
  25499. shiftT(267); // 'while'
  25500. lookahead1W(22); // S^WS | '(' | '(:'
  25501. shiftT(34); // '('
  25502. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25503. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25504. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25505. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25506. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25507. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25508. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25509. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25510. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25511. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25512. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25513. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25514. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25515. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25516. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25517. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25518. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25519. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25520. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25521. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25522. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25523. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25524. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25525. // 'xquery' | '{' | '{|'
  25526. try_Expr();
  25527. shiftT(37); // ')'
  25528. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25529. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25530. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25531. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25532. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25533. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25534. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25535. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25536. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25537. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25538. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25539. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25540. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25541. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25542. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25543. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25544. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25545. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25546. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25547. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25548. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25549. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25550. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25551. // 'xquery' | '{' | '{|'
  25552. try_Statement();
  25553. }
  25554. function parse_ExprSingle()
  25555. {
  25556. eventHandler.startNonterminal("ExprSingle", e0);
  25557. switch (l1)
  25558. {
  25559. case 137: // 'for'
  25560. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25561. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25562. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25563. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25564. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25565. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25566. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25567. // 'sliding' | 'stable' | 'start' | 'to' | 'treat' | 'tumbling' | 'union' |
  25568. // 'where' | 'with' | '|' | '||' | '|}' | '}'
  25569. break;
  25570. case 174: // 'let'
  25571. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25572. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25573. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25574. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25575. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25576. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25577. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25578. // 'score' | 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' |
  25579. // '|' | '||' | '|}' | '}'
  25580. break;
  25581. case 250: // 'try'
  25582. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25583. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25584. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25585. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25586. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25587. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25588. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25589. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '{' | '|' |
  25590. // '||' | '|}' | '}'
  25591. break;
  25592. case 152: // 'if'
  25593. case 243: // 'switch'
  25594. case 253: // 'typeswitch'
  25595. lookahead2W(228); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25596. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25597. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25598. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25599. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25600. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25601. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25602. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '|' | '||' |
  25603. // '|}' | '}'
  25604. break;
  25605. default:
  25606. lk = l1;
  25607. }
  25608. switch (lk)
  25609. {
  25610. case 16009: // 'for' '$'
  25611. case 16046: // 'let' '$'
  25612. case 116910: // 'let' 'score'
  25613. case 119945: // 'for' 'sliding'
  25614. case 128649: // 'for' 'tumbling'
  25615. parse_FLWORExpr();
  25616. break;
  25617. case 17560: // 'if' '('
  25618. parse_IfExpr();
  25619. break;
  25620. case 17651: // 'switch' '('
  25621. parse_SwitchExpr();
  25622. break;
  25623. case 141562: // 'try' '{'
  25624. parse_TryCatchExpr();
  25625. break;
  25626. case 17661: // 'typeswitch' '('
  25627. parse_TypeswitchExpr();
  25628. break;
  25629. default:
  25630. parse_ExprSimple();
  25631. }
  25632. eventHandler.endNonterminal("ExprSingle", e0);
  25633. }
  25634. function try_ExprSingle()
  25635. {
  25636. switch (l1)
  25637. {
  25638. case 137: // 'for'
  25639. lookahead2W(233); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25640. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25641. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25642. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25643. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25644. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25645. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25646. // 'sliding' | 'stable' | 'start' | 'to' | 'treat' | 'tumbling' | 'union' |
  25647. // 'where' | 'with' | '|' | '||' | '|}' | '}'
  25648. break;
  25649. case 174: // 'let'
  25650. lookahead2W(231); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25651. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25652. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25653. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25654. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25655. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25656. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25657. // 'score' | 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' |
  25658. // '|' | '||' | '|}' | '}'
  25659. break;
  25660. case 250: // 'try'
  25661. lookahead2W(230); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25662. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25663. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25664. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25665. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25666. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25667. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25668. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '{' | '|' |
  25669. // '||' | '|}' | '}'
  25670. break;
  25671. case 152: // 'if'
  25672. case 243: // 'switch'
  25673. case 253: // 'typeswitch'
  25674. lookahead2W(228); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25675. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25676. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25677. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25678. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25679. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25680. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25681. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '|' | '||' |
  25682. // '|}' | '}'
  25683. break;
  25684. default:
  25685. lk = l1;
  25686. }
  25687. switch (lk)
  25688. {
  25689. case 16009: // 'for' '$'
  25690. case 16046: // 'let' '$'
  25691. case 116910: // 'let' 'score'
  25692. case 119945: // 'for' 'sliding'
  25693. case 128649: // 'for' 'tumbling'
  25694. try_FLWORExpr();
  25695. break;
  25696. case 17560: // 'if' '('
  25697. try_IfExpr();
  25698. break;
  25699. case 17651: // 'switch' '('
  25700. try_SwitchExpr();
  25701. break;
  25702. case 141562: // 'try' '{'
  25703. try_TryCatchExpr();
  25704. break;
  25705. case 17661: // 'typeswitch' '('
  25706. try_TypeswitchExpr();
  25707. break;
  25708. default:
  25709. try_ExprSimple();
  25710. }
  25711. }
  25712. function parse_ExprSimple()
  25713. {
  25714. eventHandler.startNonterminal("ExprSimple", e0);
  25715. switch (l1)
  25716. {
  25717. case 218: // 'rename'
  25718. lookahead2W(232); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25719. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25720. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25721. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25722. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25723. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25724. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'only' | 'or' | 'order' |
  25725. // 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' | 'union' |
  25726. // 'where' | 'with' | '|' | '||' | '|}' | '}'
  25727. break;
  25728. case 219: // 'replace'
  25729. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25730. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25731. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25732. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25733. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25734. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25735. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'only' | 'or' | 'order' |
  25736. // 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' | 'union' |
  25737. // 'value' | 'where' | 'with' | '|' | '||' | '|}' | '}'
  25738. break;
  25739. case 110: // 'delete'
  25740. case 159: // 'insert'
  25741. lookahead2W(234); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25742. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25743. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25744. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25745. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25746. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25747. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'nodes' | 'only' | 'or' |
  25748. // 'order' | 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' |
  25749. // 'union' | 'where' | 'with' | '|' | '||' | '|}' | '}'
  25750. break;
  25751. case 103: // 'copy'
  25752. case 129: // 'every'
  25753. case 235: // 'some'
  25754. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25755. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25756. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25757. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25758. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25759. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25760. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25761. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '|' | '||' |
  25762. // '|}' | '}'
  25763. break;
  25764. default:
  25765. lk = l1;
  25766. }
  25767. switch (lk)
  25768. {
  25769. case 16001: // 'every' '$'
  25770. case 16107: // 'some' '$'
  25771. parse_QuantifiedExpr();
  25772. break;
  25773. case 97951: // 'insert' 'node'
  25774. case 98463: // 'insert' 'nodes'
  25775. parse_InsertExpr();
  25776. break;
  25777. case 97902: // 'delete' 'node'
  25778. case 98414: // 'delete' 'nodes'
  25779. parse_DeleteExpr();
  25780. break;
  25781. case 98010: // 'rename' 'node'
  25782. parse_RenameExpr();
  25783. break;
  25784. case 98011: // 'replace' 'node'
  25785. case 133851: // 'replace' 'value'
  25786. parse_ReplaceExpr();
  25787. break;
  25788. case 15975: // 'copy' '$'
  25789. parse_TransformExpr();
  25790. break;
  25791. case 85102: // 'delete' 'json'
  25792. parse_JSONDeleteExpr();
  25793. break;
  25794. case 85151: // 'insert' 'json'
  25795. parse_JSONInsertExpr();
  25796. break;
  25797. case 85210: // 'rename' 'json'
  25798. parse_JSONRenameExpr();
  25799. break;
  25800. case 85211: // 'replace' 'json'
  25801. parse_JSONReplaceExpr();
  25802. break;
  25803. case 77: // 'append'
  25804. parse_JSONAppendExpr();
  25805. break;
  25806. default:
  25807. parse_OrExpr();
  25808. }
  25809. eventHandler.endNonterminal("ExprSimple", e0);
  25810. }
  25811. function try_ExprSimple()
  25812. {
  25813. switch (l1)
  25814. {
  25815. case 218: // 'rename'
  25816. lookahead2W(232); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25817. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25818. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25819. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25820. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25821. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25822. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'only' | 'or' | 'order' |
  25823. // 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' | 'union' |
  25824. // 'where' | 'with' | '|' | '||' | '|}' | '}'
  25825. break;
  25826. case 219: // 'replace'
  25827. lookahead2W(235); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25828. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25829. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25830. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25831. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25832. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25833. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'only' | 'or' | 'order' |
  25834. // 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' | 'union' |
  25835. // 'value' | 'where' | 'with' | '|' | '||' | '|}' | '}'
  25836. break;
  25837. case 110: // 'delete'
  25838. case 159: // 'insert'
  25839. lookahead2W(234); // S^WS | EOF | '!' | '!=' | '#' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' | '/' |
  25840. // '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' | ']' |
  25841. // 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25842. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25843. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25844. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'json' | 'le' |
  25845. // 'let' | 'lt' | 'mod' | 'modify' | 'ne' | 'node' | 'nodes' | 'only' | 'or' |
  25846. // 'order' | 'return' | 'satisfies' | 'stable' | 'start' | 'to' | 'treat' |
  25847. // 'union' | 'where' | 'with' | '|' | '||' | '|}' | '}'
  25848. break;
  25849. case 103: // 'copy'
  25850. case 129: // 'every'
  25851. case 235: // 'some'
  25852. lookahead2W(229); // S^WS | EOF | '!' | '!=' | '#' | '$' | '(' | '(:' | ')' | '*' | '+' | ',' | '-' |
  25853. // '/' | '//' | ':' | ';' | '<' | '<<' | '<=' | '=' | '>' | '>=' | '>>' | '[' |
  25854. // ']' | 'after' | 'and' | 'as' | 'ascending' | 'at' | 'before' | 'case' | 'cast' |
  25855. // 'castable' | 'collation' | 'contains' | 'count' | 'default' | 'descending' |
  25856. // 'div' | 'else' | 'empty' | 'end' | 'eq' | 'except' | 'for' | 'ge' | 'group' |
  25857. // 'gt' | 'idiv' | 'instance' | 'intersect' | 'into' | 'is' | 'le' | 'let' | 'lt' |
  25858. // 'mod' | 'modify' | 'ne' | 'only' | 'or' | 'order' | 'return' | 'satisfies' |
  25859. // 'stable' | 'start' | 'to' | 'treat' | 'union' | 'where' | 'with' | '|' | '||' |
  25860. // '|}' | '}'
  25861. break;
  25862. default:
  25863. lk = l1;
  25864. }
  25865. switch (lk)
  25866. {
  25867. case 16001: // 'every' '$'
  25868. case 16107: // 'some' '$'
  25869. try_QuantifiedExpr();
  25870. break;
  25871. case 97951: // 'insert' 'node'
  25872. case 98463: // 'insert' 'nodes'
  25873. try_InsertExpr();
  25874. break;
  25875. case 97902: // 'delete' 'node'
  25876. case 98414: // 'delete' 'nodes'
  25877. try_DeleteExpr();
  25878. break;
  25879. case 98010: // 'rename' 'node'
  25880. try_RenameExpr();
  25881. break;
  25882. case 98011: // 'replace' 'node'
  25883. case 133851: // 'replace' 'value'
  25884. try_ReplaceExpr();
  25885. break;
  25886. case 15975: // 'copy' '$'
  25887. try_TransformExpr();
  25888. break;
  25889. case 85102: // 'delete' 'json'
  25890. try_JSONDeleteExpr();
  25891. break;
  25892. case 85151: // 'insert' 'json'
  25893. try_JSONInsertExpr();
  25894. break;
  25895. case 85210: // 'rename' 'json'
  25896. try_JSONRenameExpr();
  25897. break;
  25898. case 85211: // 'replace' 'json'
  25899. try_JSONReplaceExpr();
  25900. break;
  25901. case 77: // 'append'
  25902. try_JSONAppendExpr();
  25903. break;
  25904. default:
  25905. try_OrExpr();
  25906. }
  25907. }
  25908. function parse_JSONDeleteExpr()
  25909. {
  25910. eventHandler.startNonterminal("JSONDeleteExpr", e0);
  25911. shift(110); // 'delete'
  25912. lookahead1W(56); // S^WS | '(:' | 'json'
  25913. shift(166); // 'json'
  25914. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25915. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  25916. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  25917. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25918. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25919. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25920. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25921. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25922. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25923. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25924. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25925. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25926. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25927. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25928. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25929. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25930. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25931. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25932. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25933. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25934. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25935. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25936. // 'xquery' | '{' | '{|'
  25937. whitespace();
  25938. parse_PostfixExpr();
  25939. eventHandler.endNonterminal("JSONDeleteExpr", e0);
  25940. }
  25941. function try_JSONDeleteExpr()
  25942. {
  25943. shiftT(110); // 'delete'
  25944. lookahead1W(56); // S^WS | '(:' | 'json'
  25945. shiftT(166); // 'json'
  25946. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  25947. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  25948. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  25949. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25950. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25951. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25952. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25953. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25954. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25955. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25956. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25957. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25958. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25959. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25960. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25961. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25962. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25963. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25964. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25965. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25966. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25967. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  25968. // 'xquery' | '{' | '{|'
  25969. try_PostfixExpr();
  25970. }
  25971. function parse_JSONInsertExpr()
  25972. {
  25973. eventHandler.startNonterminal("JSONInsertExpr", e0);
  25974. shift(159); // 'insert'
  25975. lookahead1W(56); // S^WS | '(:' | 'json'
  25976. shift(166); // 'json'
  25977. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  25978. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  25979. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  25980. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  25981. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  25982. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  25983. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  25984. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  25985. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  25986. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  25987. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  25988. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  25989. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  25990. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  25991. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  25992. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  25993. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  25994. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  25995. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  25996. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  25997. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  25998. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  25999. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26000. // 'xquery' | '{' | '{|'
  26001. whitespace();
  26002. parse_ExprSingle();
  26003. shift(163); // 'into'
  26004. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26005. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26006. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26007. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26008. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26009. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26010. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26011. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26012. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26013. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26014. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26015. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26016. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26017. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26018. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26019. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26020. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26021. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26022. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26023. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26024. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26025. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26026. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26027. // 'xquery' | '{' | '{|'
  26028. whitespace();
  26029. parse_ExprSingle();
  26030. switch (l1)
  26031. {
  26032. case 81: // 'at'
  26033. lookahead2W(69); // S^WS | '(:' | 'position'
  26034. break;
  26035. default:
  26036. lk = l1;
  26037. }
  26038. if (lk == 108113) // 'at' 'position'
  26039. {
  26040. lk = memoized(9, e0);
  26041. if (lk == 0)
  26042. {
  26043. var b0A = b0; var e0A = e0; var l1A = l1;
  26044. var b1A = b1; var e1A = e1; var l2A = l2;
  26045. var b2A = b2; var e2A = e2;
  26046. try
  26047. {
  26048. shiftT(81); // 'at'
  26049. lookahead1W(69); // S^WS | '(:' | 'position'
  26050. shiftT(211); // 'position'
  26051. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26052. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26053. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26054. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26055. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26056. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26057. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26058. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26059. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26060. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26061. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26062. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26063. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26064. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26065. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26066. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26067. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26068. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26069. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26070. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26071. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26072. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26073. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26074. // 'xquery' | '{' | '{|'
  26075. try_ExprSingle();
  26076. lk = -1;
  26077. }
  26078. catch (p1A)
  26079. {
  26080. lk = -2;
  26081. }
  26082. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26083. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26084. b2 = b2A; e2 = e2A; end = e2A; }}
  26085. memoize(9, e0, lk);
  26086. }
  26087. }
  26088. if (lk == -1)
  26089. {
  26090. shift(81); // 'at'
  26091. lookahead1W(69); // S^WS | '(:' | 'position'
  26092. shift(211); // 'position'
  26093. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26094. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26095. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26096. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26097. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26098. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26099. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26100. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26101. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26102. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26103. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26104. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26105. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26106. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26107. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26108. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26109. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26110. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26111. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26112. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26113. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26114. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26115. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26116. // 'xquery' | '{' | '{|'
  26117. whitespace();
  26118. parse_ExprSingle();
  26119. }
  26120. eventHandler.endNonterminal("JSONInsertExpr", e0);
  26121. }
  26122. function try_JSONInsertExpr()
  26123. {
  26124. shiftT(159); // 'insert'
  26125. lookahead1W(56); // S^WS | '(:' | 'json'
  26126. shiftT(166); // 'json'
  26127. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26128. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26129. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26130. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26131. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26132. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26133. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26134. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26135. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26136. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26137. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26138. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26139. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26140. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26141. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26142. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26143. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26144. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26145. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26146. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26147. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26148. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26149. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26150. // 'xquery' | '{' | '{|'
  26151. try_ExprSingle();
  26152. shiftT(163); // 'into'
  26153. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26154. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26155. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26156. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26157. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26158. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26159. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26160. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26161. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26162. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26163. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26164. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26165. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26166. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26167. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26168. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26169. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26170. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26171. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26172. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26173. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26174. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26175. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26176. // 'xquery' | '{' | '{|'
  26177. try_ExprSingle();
  26178. switch (l1)
  26179. {
  26180. case 81: // 'at'
  26181. lookahead2W(69); // S^WS | '(:' | 'position'
  26182. break;
  26183. default:
  26184. lk = l1;
  26185. }
  26186. if (lk == 108113) // 'at' 'position'
  26187. {
  26188. lk = memoized(9, e0);
  26189. if (lk == 0)
  26190. {
  26191. var b0A = b0; var e0A = e0; var l1A = l1;
  26192. var b1A = b1; var e1A = e1; var l2A = l2;
  26193. var b2A = b2; var e2A = e2;
  26194. try
  26195. {
  26196. shiftT(81); // 'at'
  26197. lookahead1W(69); // S^WS | '(:' | 'position'
  26198. shiftT(211); // 'position'
  26199. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26200. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26201. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26202. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26203. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26204. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26205. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26206. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26207. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26208. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26209. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26210. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26211. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26212. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26213. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26214. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26215. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26216. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26217. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26218. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26219. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26220. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26221. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26222. // 'xquery' | '{' | '{|'
  26223. try_ExprSingle();
  26224. memoize(9, e0A, -1);
  26225. }
  26226. catch (p1A)
  26227. {
  26228. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26229. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26230. b2 = b2A; e2 = e2A; end = e2A; }}
  26231. memoize(9, e0A, -2);
  26232. }
  26233. lk = -2;
  26234. }
  26235. }
  26236. if (lk == -1)
  26237. {
  26238. shiftT(81); // 'at'
  26239. lookahead1W(69); // S^WS | '(:' | 'position'
  26240. shiftT(211); // 'position'
  26241. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26242. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26243. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26244. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26245. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26246. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26247. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26248. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26249. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26250. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26251. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26252. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26253. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26254. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26255. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26256. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26257. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26258. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26259. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26260. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26261. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26262. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26263. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26264. // 'xquery' | '{' | '{|'
  26265. try_ExprSingle();
  26266. }
  26267. }
  26268. function parse_JSONRenameExpr()
  26269. {
  26270. eventHandler.startNonterminal("JSONRenameExpr", e0);
  26271. shift(218); // 'rename'
  26272. lookahead1W(56); // S^WS | '(:' | 'json'
  26273. shift(166); // 'json'
  26274. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26275. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  26276. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  26277. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26278. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26279. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26280. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26281. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26282. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26283. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26284. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26285. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26286. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26287. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26288. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26289. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26290. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26291. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26292. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26293. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26294. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26295. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26296. // 'xquery' | '{' | '{|'
  26297. whitespace();
  26298. parse_PostfixExpr();
  26299. shift(79); // 'as'
  26300. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26301. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26302. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26303. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26304. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26305. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26306. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26307. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26308. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26309. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26310. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26311. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26312. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26313. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26314. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26315. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26316. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26317. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26318. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26319. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26320. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26321. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26322. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26323. // 'xquery' | '{' | '{|'
  26324. whitespace();
  26325. parse_ExprSingle();
  26326. eventHandler.endNonterminal("JSONRenameExpr", e0);
  26327. }
  26328. function try_JSONRenameExpr()
  26329. {
  26330. shiftT(218); // 'rename'
  26331. lookahead1W(56); // S^WS | '(:' | 'json'
  26332. shiftT(166); // 'json'
  26333. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26334. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  26335. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  26336. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26337. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26338. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26339. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26340. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26341. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26342. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26343. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26344. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26345. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26346. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26347. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26348. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26349. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26350. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26351. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26352. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26353. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26354. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26355. // 'xquery' | '{' | '{|'
  26356. try_PostfixExpr();
  26357. shiftT(79); // 'as'
  26358. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26359. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26360. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26361. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26362. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26363. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26364. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26365. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26366. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26367. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26368. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26369. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26370. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26371. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26372. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26373. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26374. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26375. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26376. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26377. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26378. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26379. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26380. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26381. // 'xquery' | '{' | '{|'
  26382. try_ExprSingle();
  26383. }
  26384. function parse_JSONReplaceExpr()
  26385. {
  26386. eventHandler.startNonterminal("JSONReplaceExpr", e0);
  26387. shift(219); // 'replace'
  26388. lookahead1W(56); // S^WS | '(:' | 'json'
  26389. shift(166); // 'json'
  26390. lookahead1W(82); // S^WS | '(:' | 'value'
  26391. shift(261); // 'value'
  26392. lookahead1W(64); // S^WS | '(:' | 'of'
  26393. shift(196); // 'of'
  26394. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26395. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  26396. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  26397. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26398. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26399. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26400. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26401. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26402. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26403. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26404. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26405. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26406. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26407. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26408. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26409. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26410. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26411. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26412. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26413. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26414. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26415. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26416. // 'xquery' | '{' | '{|'
  26417. whitespace();
  26418. parse_PostfixExpr();
  26419. shift(270); // 'with'
  26420. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26421. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26422. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26423. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26424. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26425. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26426. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26427. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26428. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26429. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26430. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26431. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26432. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26433. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26434. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26435. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26436. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26437. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26438. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26439. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26440. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26441. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26442. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26443. // 'xquery' | '{' | '{|'
  26444. whitespace();
  26445. parse_ExprSingle();
  26446. eventHandler.endNonterminal("JSONReplaceExpr", e0);
  26447. }
  26448. function try_JSONReplaceExpr()
  26449. {
  26450. shiftT(219); // 'replace'
  26451. lookahead1W(56); // S^WS | '(:' | 'json'
  26452. shiftT(166); // 'json'
  26453. lookahead1W(82); // S^WS | '(:' | 'value'
  26454. shiftT(261); // 'value'
  26455. lookahead1W(64); // S^WS | '(:' | 'of'
  26456. shiftT(196); // 'of'
  26457. lookahead1W(262); // EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral | StringLiteral |
  26458. // S^WS | '$' | '%' | '(' | '(:' | '.' | '<' | '<!--' | '<?' | '[' | 'after' |
  26459. // 'allowing' | 'ancestor' | 'ancestor-or-self' | 'and' | 'array' | 'as' |
  26460. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26461. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26462. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26463. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26464. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26465. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26466. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26467. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26468. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26469. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26470. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26471. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26472. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26473. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26474. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26475. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26476. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26477. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26478. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26479. // 'xquery' | '{' | '{|'
  26480. try_PostfixExpr();
  26481. shiftT(270); // 'with'
  26482. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26483. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26484. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26485. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26486. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26487. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26488. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26489. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26490. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26491. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26492. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26493. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26494. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26495. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26496. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26497. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26498. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26499. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26500. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26501. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26502. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26503. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26504. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26505. // 'xquery' | '{' | '{|'
  26506. try_ExprSingle();
  26507. }
  26508. function parse_JSONAppendExpr()
  26509. {
  26510. eventHandler.startNonterminal("JSONAppendExpr", e0);
  26511. shift(77); // 'append'
  26512. lookahead1W(56); // S^WS | '(:' | 'json'
  26513. shift(166); // 'json'
  26514. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26515. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26516. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26517. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26518. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26519. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26520. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26521. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26522. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26523. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26524. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26525. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26526. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26527. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26528. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26529. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26530. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26531. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26532. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26533. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26534. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26535. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26536. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26537. // 'xquery' | '{' | '{|'
  26538. whitespace();
  26539. parse_ExprSingle();
  26540. shift(163); // 'into'
  26541. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26542. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26543. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26544. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26545. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26546. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26547. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26548. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26549. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26550. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26551. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26552. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26553. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26554. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26555. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26556. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26557. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26558. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26559. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26560. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26561. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26562. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26563. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26564. // 'xquery' | '{' | '{|'
  26565. whitespace();
  26566. parse_ExprSingle();
  26567. eventHandler.endNonterminal("JSONAppendExpr", e0);
  26568. }
  26569. function try_JSONAppendExpr()
  26570. {
  26571. shiftT(77); // 'append'
  26572. lookahead1W(56); // S^WS | '(:' | 'json'
  26573. shiftT(166); // 'json'
  26574. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26575. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26576. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26577. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26578. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26579. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26580. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26581. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26582. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26583. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26584. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26585. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26586. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26587. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26588. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26589. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26590. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26591. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26592. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26593. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26594. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26595. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26596. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26597. // 'xquery' | '{' | '{|'
  26598. try_ExprSingle();
  26599. shiftT(163); // 'into'
  26600. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26601. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26602. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26603. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26604. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26605. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26606. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26607. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26608. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26609. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26610. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26611. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26612. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26613. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26614. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26615. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26616. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26617. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26618. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26619. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26620. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26621. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26622. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26623. // 'xquery' | '{' | '{|'
  26624. try_ExprSingle();
  26625. }
  26626. function parse_CommonContent()
  26627. {
  26628. eventHandler.startNonterminal("CommonContent", e0);
  26629. switch (l1)
  26630. {
  26631. case 12: // PredefinedEntityRef
  26632. shift(12); // PredefinedEntityRef
  26633. break;
  26634. case 23: // CharRef
  26635. shift(23); // CharRef
  26636. break;
  26637. case 277: // '{{'
  26638. shift(277); // '{{'
  26639. break;
  26640. case 283: // '}}'
  26641. shift(283); // '}}'
  26642. break;
  26643. default:
  26644. parse_BlockExpr();
  26645. }
  26646. eventHandler.endNonterminal("CommonContent", e0);
  26647. }
  26648. function try_CommonContent()
  26649. {
  26650. switch (l1)
  26651. {
  26652. case 12: // PredefinedEntityRef
  26653. shiftT(12); // PredefinedEntityRef
  26654. break;
  26655. case 23: // CharRef
  26656. shiftT(23); // CharRef
  26657. break;
  26658. case 277: // '{{'
  26659. shiftT(277); // '{{'
  26660. break;
  26661. case 283: // '}}'
  26662. shiftT(283); // '}}'
  26663. break;
  26664. default:
  26665. try_BlockExpr();
  26666. }
  26667. }
  26668. function parse_ContentExpr()
  26669. {
  26670. eventHandler.startNonterminal("ContentExpr", e0);
  26671. parse_StatementsAndExpr();
  26672. eventHandler.endNonterminal("ContentExpr", e0);
  26673. }
  26674. function try_ContentExpr()
  26675. {
  26676. try_StatementsAndExpr();
  26677. }
  26678. function parse_CompDocConstructor()
  26679. {
  26680. eventHandler.startNonterminal("CompDocConstructor", e0);
  26681. shift(119); // 'document'
  26682. lookahead1W(87); // S^WS | '(:' | '{'
  26683. whitespace();
  26684. parse_BlockExpr();
  26685. eventHandler.endNonterminal("CompDocConstructor", e0);
  26686. }
  26687. function try_CompDocConstructor()
  26688. {
  26689. shiftT(119); // 'document'
  26690. lookahead1W(87); // S^WS | '(:' | '{'
  26691. try_BlockExpr();
  26692. }
  26693. function parse_CompAttrConstructor()
  26694. {
  26695. eventHandler.startNonterminal("CompAttrConstructor", e0);
  26696. shift(82); // 'attribute'
  26697. lookahead1W(256); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26698. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  26699. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  26700. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  26701. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  26702. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  26703. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  26704. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  26705. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  26706. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  26707. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  26708. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  26709. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  26710. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  26711. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26712. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26713. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26714. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26715. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26716. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26717. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26718. // 'xquery' | '{'
  26719. switch (l1)
  26720. {
  26721. case 276: // '{'
  26722. shift(276); // '{'
  26723. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26724. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26725. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26726. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26727. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26728. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26729. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26730. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26731. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26732. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26733. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26734. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26735. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26736. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26737. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26738. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26739. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26740. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26741. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26742. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26743. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26744. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26745. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26746. // 'xquery' | '{' | '{|'
  26747. whitespace();
  26748. parse_Expr();
  26749. shift(282); // '}'
  26750. break;
  26751. default:
  26752. whitespace();
  26753. parse_EQName();
  26754. }
  26755. lookahead1W(87); // S^WS | '(:' | '{'
  26756. switch (l1)
  26757. {
  26758. case 276: // '{'
  26759. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26760. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26761. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26762. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26763. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26764. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26765. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26766. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26767. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26768. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26769. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26770. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26771. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26772. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26773. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26774. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26775. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26776. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26777. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26778. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26779. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26780. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26781. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26782. // 'xquery' | '{' | '{|' | '}'
  26783. break;
  26784. default:
  26785. lk = l1;
  26786. }
  26787. if (lk == 144660) // '{' '}'
  26788. {
  26789. lk = memoized(10, e0);
  26790. if (lk == 0)
  26791. {
  26792. var b0A = b0; var e0A = e0; var l1A = l1;
  26793. var b1A = b1; var e1A = e1; var l2A = l2;
  26794. var b2A = b2; var e2A = e2;
  26795. try
  26796. {
  26797. shiftT(276); // '{'
  26798. lookahead1W(88); // S^WS | '(:' | '}'
  26799. shiftT(282); // '}'
  26800. lk = -1;
  26801. }
  26802. catch (p1A)
  26803. {
  26804. lk = -2;
  26805. }
  26806. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26807. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26808. b2 = b2A; e2 = e2A; end = e2A; }}
  26809. memoize(10, e0, lk);
  26810. }
  26811. }
  26812. switch (lk)
  26813. {
  26814. case -1:
  26815. shift(276); // '{'
  26816. lookahead1W(88); // S^WS | '(:' | '}'
  26817. shift(282); // '}'
  26818. break;
  26819. default:
  26820. whitespace();
  26821. parse_BlockExpr();
  26822. }
  26823. eventHandler.endNonterminal("CompAttrConstructor", e0);
  26824. }
  26825. function try_CompAttrConstructor()
  26826. {
  26827. shiftT(82); // 'attribute'
  26828. lookahead1W(256); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26829. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  26830. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  26831. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  26832. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  26833. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  26834. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  26835. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  26836. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  26837. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  26838. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  26839. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  26840. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  26841. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  26842. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26843. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26844. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26845. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26846. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26847. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26848. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26849. // 'xquery' | '{'
  26850. switch (l1)
  26851. {
  26852. case 276: // '{'
  26853. shiftT(276); // '{'
  26854. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26855. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26856. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26857. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26858. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26859. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26860. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26861. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26862. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26863. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26864. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26865. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26866. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26867. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26868. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26869. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26870. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26871. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26872. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26873. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26874. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26875. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26876. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26877. // 'xquery' | '{' | '{|'
  26878. try_Expr();
  26879. shiftT(282); // '}'
  26880. break;
  26881. default:
  26882. try_EQName();
  26883. }
  26884. lookahead1W(87); // S^WS | '(:' | '{'
  26885. switch (l1)
  26886. {
  26887. case 276: // '{'
  26888. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26889. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26890. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26891. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26892. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26893. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26894. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26895. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26896. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26897. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26898. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26899. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26900. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26901. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26902. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26903. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  26904. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  26905. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  26906. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  26907. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  26908. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  26909. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26910. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26911. // 'xquery' | '{' | '{|' | '}'
  26912. break;
  26913. default:
  26914. lk = l1;
  26915. }
  26916. if (lk == 144660) // '{' '}'
  26917. {
  26918. lk = memoized(10, e0);
  26919. if (lk == 0)
  26920. {
  26921. var b0A = b0; var e0A = e0; var l1A = l1;
  26922. var b1A = b1; var e1A = e1; var l2A = l2;
  26923. var b2A = b2; var e2A = e2;
  26924. try
  26925. {
  26926. shiftT(276); // '{'
  26927. lookahead1W(88); // S^WS | '(:' | '}'
  26928. shiftT(282); // '}'
  26929. memoize(10, e0A, -1);
  26930. lk = -3;
  26931. }
  26932. catch (p1A)
  26933. {
  26934. lk = -2;
  26935. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  26936. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  26937. b2 = b2A; e2 = e2A; end = e2A; }}
  26938. memoize(10, e0A, -2);
  26939. }
  26940. }
  26941. }
  26942. switch (lk)
  26943. {
  26944. case -1:
  26945. shiftT(276); // '{'
  26946. lookahead1W(88); // S^WS | '(:' | '}'
  26947. shiftT(282); // '}'
  26948. break;
  26949. case -3:
  26950. break;
  26951. default:
  26952. try_BlockExpr();
  26953. }
  26954. }
  26955. function parse_CompPIConstructor()
  26956. {
  26957. eventHandler.startNonterminal("CompPIConstructor", e0);
  26958. shift(216); // 'processing-instruction'
  26959. lookahead1W(249); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  26960. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  26961. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  26962. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  26963. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  26964. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  26965. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  26966. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  26967. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  26968. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  26969. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  26970. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  26971. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  26972. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  26973. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  26974. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  26975. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  26976. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  26977. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  26978. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  26979. // 'xquery' | '{'
  26980. switch (l1)
  26981. {
  26982. case 276: // '{'
  26983. shift(276); // '{'
  26984. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  26985. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  26986. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  26987. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  26988. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  26989. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  26990. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  26991. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  26992. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  26993. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  26994. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  26995. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  26996. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  26997. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  26998. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  26999. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  27000. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27001. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27002. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27003. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27004. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27005. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27006. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27007. // 'xquery' | '{' | '{|'
  27008. whitespace();
  27009. parse_Expr();
  27010. shift(282); // '}'
  27011. break;
  27012. default:
  27013. whitespace();
  27014. parse_NCName();
  27015. }
  27016. lookahead1W(87); // S^WS | '(:' | '{'
  27017. switch (l1)
  27018. {
  27019. case 276: // '{'
  27020. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  27021. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  27022. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  27023. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  27024. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  27025. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  27026. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  27027. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  27028. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  27029. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  27030. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  27031. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  27032. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  27033. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  27034. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  27035. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  27036. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27037. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27038. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27039. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27040. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27041. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27042. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27043. // 'xquery' | '{' | '{|' | '}'
  27044. break;
  27045. default:
  27046. lk = l1;
  27047. }
  27048. if (lk == 144660) // '{' '}'
  27049. {
  27050. lk = memoized(11, e0);
  27051. if (lk == 0)
  27052. {
  27053. var b0A = b0; var e0A = e0; var l1A = l1;
  27054. var b1A = b1; var e1A = e1; var l2A = l2;
  27055. var b2A = b2; var e2A = e2;
  27056. try
  27057. {
  27058. shiftT(276); // '{'
  27059. lookahead1W(88); // S^WS | '(:' | '}'
  27060. shiftT(282); // '}'
  27061. lk = -1;
  27062. }
  27063. catch (p1A)
  27064. {
  27065. lk = -2;
  27066. }
  27067. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27068. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27069. b2 = b2A; e2 = e2A; end = e2A; }}
  27070. memoize(11, e0, lk);
  27071. }
  27072. }
  27073. switch (lk)
  27074. {
  27075. case -1:
  27076. shift(276); // '{'
  27077. lookahead1W(88); // S^WS | '(:' | '}'
  27078. shift(282); // '}'
  27079. break;
  27080. default:
  27081. whitespace();
  27082. parse_BlockExpr();
  27083. }
  27084. eventHandler.endNonterminal("CompPIConstructor", e0);
  27085. }
  27086. function try_CompPIConstructor()
  27087. {
  27088. shiftT(216); // 'processing-instruction'
  27089. lookahead1W(249); // NCName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  27090. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  27091. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27092. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27093. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27094. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27095. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27096. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27097. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27098. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27099. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27100. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  27101. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  27102. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  27103. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  27104. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  27105. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  27106. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  27107. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27108. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27109. // 'xquery' | '{'
  27110. switch (l1)
  27111. {
  27112. case 276: // '{'
  27113. shiftT(276); // '{'
  27114. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  27115. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  27116. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  27117. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  27118. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  27119. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  27120. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  27121. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  27122. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  27123. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  27124. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  27125. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  27126. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  27127. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  27128. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  27129. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  27130. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27131. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27132. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27133. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27134. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27135. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27136. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27137. // 'xquery' | '{' | '{|'
  27138. try_Expr();
  27139. shiftT(282); // '}'
  27140. break;
  27141. default:
  27142. try_NCName();
  27143. }
  27144. lookahead1W(87); // S^WS | '(:' | '{'
  27145. switch (l1)
  27146. {
  27147. case 276: // '{'
  27148. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  27149. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  27150. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  27151. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  27152. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  27153. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  27154. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  27155. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  27156. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  27157. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  27158. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  27159. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  27160. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  27161. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  27162. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  27163. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  27164. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27165. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27166. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27167. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27168. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27169. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27170. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27171. // 'xquery' | '{' | '{|' | '}'
  27172. break;
  27173. default:
  27174. lk = l1;
  27175. }
  27176. if (lk == 144660) // '{' '}'
  27177. {
  27178. lk = memoized(11, e0);
  27179. if (lk == 0)
  27180. {
  27181. var b0A = b0; var e0A = e0; var l1A = l1;
  27182. var b1A = b1; var e1A = e1; var l2A = l2;
  27183. var b2A = b2; var e2A = e2;
  27184. try
  27185. {
  27186. shiftT(276); // '{'
  27187. lookahead1W(88); // S^WS | '(:' | '}'
  27188. shiftT(282); // '}'
  27189. memoize(11, e0A, -1);
  27190. lk = -3;
  27191. }
  27192. catch (p1A)
  27193. {
  27194. lk = -2;
  27195. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27196. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27197. b2 = b2A; e2 = e2A; end = e2A; }}
  27198. memoize(11, e0A, -2);
  27199. }
  27200. }
  27201. }
  27202. switch (lk)
  27203. {
  27204. case -1:
  27205. shiftT(276); // '{'
  27206. lookahead1W(88); // S^WS | '(:' | '}'
  27207. shiftT(282); // '}'
  27208. break;
  27209. case -3:
  27210. break;
  27211. default:
  27212. try_BlockExpr();
  27213. }
  27214. }
  27215. function parse_CompCommentConstructor()
  27216. {
  27217. eventHandler.startNonterminal("CompCommentConstructor", e0);
  27218. shift(96); // 'comment'
  27219. lookahead1W(87); // S^WS | '(:' | '{'
  27220. whitespace();
  27221. parse_BlockExpr();
  27222. eventHandler.endNonterminal("CompCommentConstructor", e0);
  27223. }
  27224. function try_CompCommentConstructor()
  27225. {
  27226. shiftT(96); // 'comment'
  27227. lookahead1W(87); // S^WS | '(:' | '{'
  27228. try_BlockExpr();
  27229. }
  27230. function parse_CompTextConstructor()
  27231. {
  27232. eventHandler.startNonterminal("CompTextConstructor", e0);
  27233. shift(244); // 'text'
  27234. lookahead1W(87); // S^WS | '(:' | '{'
  27235. whitespace();
  27236. parse_BlockExpr();
  27237. eventHandler.endNonterminal("CompTextConstructor", e0);
  27238. }
  27239. function try_CompTextConstructor()
  27240. {
  27241. shiftT(244); // 'text'
  27242. lookahead1W(87); // S^WS | '(:' | '{'
  27243. try_BlockExpr();
  27244. }
  27245. function parse_PrimaryExpr()
  27246. {
  27247. eventHandler.startNonterminal("PrimaryExpr", e0);
  27248. switch (l1)
  27249. {
  27250. case 184: // 'namespace'
  27251. lookahead2W(254); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27252. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  27253. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27254. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27255. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27256. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27257. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27258. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27259. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27260. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27261. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27262. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  27263. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  27264. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  27265. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  27266. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  27267. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  27268. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  27269. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27270. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27271. // 'xquery' | '{'
  27272. break;
  27273. case 216: // 'processing-instruction'
  27274. lookahead2W(252); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27275. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  27276. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27277. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27278. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27279. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27280. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27281. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27282. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27283. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27284. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27285. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  27286. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  27287. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  27288. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  27289. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  27290. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  27291. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  27292. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27293. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27294. // 'xquery' | '{'
  27295. break;
  27296. case 276: // '{'
  27297. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  27298. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  27299. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  27300. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  27301. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  27302. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  27303. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  27304. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  27305. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  27306. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  27307. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  27308. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  27309. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  27310. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  27311. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  27312. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  27313. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27314. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27315. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27316. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27317. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27318. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27319. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27320. // 'xquery' | '{' | '{|' | '}'
  27321. break;
  27322. case 82: // 'attribute'
  27323. case 121: // 'element'
  27324. lookahead2W(257); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27325. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  27326. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27327. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27328. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27329. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27330. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27331. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27332. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27333. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27334. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27335. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  27336. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  27337. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  27338. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  27339. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  27340. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  27341. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  27342. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  27343. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27344. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27345. // 'xquery' | '{'
  27346. break;
  27347. case 96: // 'comment'
  27348. case 244: // 'text'
  27349. lookahead2W(93); // S^WS | '#' | '(:' | '{'
  27350. break;
  27351. case 119: // 'document'
  27352. case 202: // 'ordered'
  27353. case 256: // 'unordered'
  27354. lookahead2W(139); // S^WS | '#' | '(' | '(:' | '{'
  27355. break;
  27356. case 6: // EQName^Token
  27357. case 70: // 'after'
  27358. case 72: // 'allowing'
  27359. case 73: // 'ancestor'
  27360. case 74: // 'ancestor-or-self'
  27361. case 75: // 'and'
  27362. case 78: // 'array'
  27363. case 79: // 'as'
  27364. case 80: // 'ascending'
  27365. case 81: // 'at'
  27366. case 83: // 'base-uri'
  27367. case 84: // 'before'
  27368. case 85: // 'boundary-space'
  27369. case 86: // 'break'
  27370. case 88: // 'case'
  27371. case 89: // 'cast'
  27372. case 90: // 'castable'
  27373. case 91: // 'catch'
  27374. case 93: // 'child'
  27375. case 94: // 'collation'
  27376. case 97: // 'constraint'
  27377. case 98: // 'construction'
  27378. case 101: // 'context'
  27379. case 102: // 'continue'
  27380. case 103: // 'copy'
  27381. case 104: // 'copy-namespaces'
  27382. case 105: // 'count'
  27383. case 106: // 'decimal-format'
  27384. case 108: // 'declare'
  27385. case 109: // 'default'
  27386. case 110: // 'delete'
  27387. case 111: // 'descendant'
  27388. case 112: // 'descendant-or-self'
  27389. case 113: // 'descending'
  27390. case 118: // 'div'
  27391. case 122: // 'else'
  27392. case 123: // 'empty'
  27393. case 125: // 'encoding'
  27394. case 126: // 'end'
  27395. case 128: // 'eq'
  27396. case 129: // 'every'
  27397. case 131: // 'except'
  27398. case 132: // 'exit'
  27399. case 133: // 'external'
  27400. case 134: // 'first'
  27401. case 135: // 'following'
  27402. case 136: // 'following-sibling'
  27403. case 137: // 'for'
  27404. case 141: // 'ft-option'
  27405. case 146: // 'ge'
  27406. case 148: // 'group'
  27407. case 150: // 'gt'
  27408. case 151: // 'idiv'
  27409. case 153: // 'import'
  27410. case 154: // 'in'
  27411. case 155: // 'index'
  27412. case 159: // 'insert'
  27413. case 160: // 'instance'
  27414. case 161: // 'integrity'
  27415. case 162: // 'intersect'
  27416. case 163: // 'into'
  27417. case 164: // 'is'
  27418. case 167: // 'json-item'
  27419. case 170: // 'last'
  27420. case 171: // 'lax'
  27421. case 172: // 'le'
  27422. case 174: // 'let'
  27423. case 176: // 'loop'
  27424. case 178: // 'lt'
  27425. case 180: // 'mod'
  27426. case 181: // 'modify'
  27427. case 182: // 'module'
  27428. case 186: // 'ne'
  27429. case 192: // 'nodes'
  27430. case 194: // 'object'
  27431. case 198: // 'only'
  27432. case 199: // 'option'
  27433. case 200: // 'or'
  27434. case 201: // 'order'
  27435. case 203: // 'ordering'
  27436. case 206: // 'parent'
  27437. case 212: // 'preceding'
  27438. case 213: // 'preceding-sibling'
  27439. case 218: // 'rename'
  27440. case 219: // 'replace'
  27441. case 220: // 'return'
  27442. case 221: // 'returning'
  27443. case 222: // 'revalidation'
  27444. case 224: // 'satisfies'
  27445. case 225: // 'schema'
  27446. case 228: // 'score'
  27447. case 229: // 'self'
  27448. case 234: // 'sliding'
  27449. case 235: // 'some'
  27450. case 236: // 'stable'
  27451. case 237: // 'start'
  27452. case 240: // 'strict'
  27453. case 248: // 'to'
  27454. case 249: // 'treat'
  27455. case 250: // 'try'
  27456. case 251: // 'tumbling'
  27457. case 252: // 'type'
  27458. case 254: // 'union'
  27459. case 257: // 'updating'
  27460. case 260: // 'validate'
  27461. case 261: // 'value'
  27462. case 262: // 'variable'
  27463. case 263: // 'version'
  27464. case 266: // 'where'
  27465. case 267: // 'while'
  27466. case 270: // 'with'
  27467. case 274: // 'xquery'
  27468. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  27469. break;
  27470. default:
  27471. lk = l1;
  27472. }
  27473. if (lk == 2836 // '{' Wildcard
  27474. || lk == 3348 // '{' EQName^Token
  27475. || lk == 4372 // '{' IntegerLiteral
  27476. || lk == 4884 // '{' DecimalLiteral
  27477. || lk == 5396 // '{' DoubleLiteral
  27478. || lk == 5908 // '{' StringLiteral
  27479. || lk == 16148 // '{' '$'
  27480. || lk == 16660 // '{' '%'
  27481. || lk == 17684 // '{' '('
  27482. || lk == 18196 // '{' '(#'
  27483. || lk == 20756 // '{' '+'
  27484. || lk == 21780 // '{' '-'
  27485. || lk == 22804 // '{' '.'
  27486. || lk == 23316 // '{' '..'
  27487. || lk == 23828 // '{' '/'
  27488. || lk == 24340 // '{' '//'
  27489. || lk == 27924 // '{' '<'
  27490. || lk == 28436 // '{' '<!--'
  27491. || lk == 30484 // '{' '<?'
  27492. || lk == 34068 // '{' '@'
  27493. || lk == 35092 // '{' '['
  27494. || lk == 36116 // '{' 'after'
  27495. || lk == 37140 // '{' 'allowing'
  27496. || lk == 37652 // '{' 'ancestor'
  27497. || lk == 38164 // '{' 'ancestor-or-self'
  27498. || lk == 38676 // '{' 'and'
  27499. || lk == 39700 // '{' 'append'
  27500. || lk == 40212 // '{' 'array'
  27501. || lk == 40724 // '{' 'as'
  27502. || lk == 41236 // '{' 'ascending'
  27503. || lk == 41748 // '{' 'at'
  27504. || lk == 42260 // '{' 'attribute'
  27505. || lk == 42772 // '{' 'base-uri'
  27506. || lk == 43284 // '{' 'before'
  27507. || lk == 43796 // '{' 'boundary-space'
  27508. || lk == 44308 // '{' 'break'
  27509. || lk == 45332 // '{' 'case'
  27510. || lk == 45844 // '{' 'cast'
  27511. || lk == 46356 // '{' 'castable'
  27512. || lk == 46868 // '{' 'catch'
  27513. || lk == 47892 // '{' 'child'
  27514. || lk == 48404 // '{' 'collation'
  27515. || lk == 49428 // '{' 'comment'
  27516. || lk == 49940 // '{' 'constraint'
  27517. || lk == 50452 // '{' 'construction'
  27518. || lk == 51988 // '{' 'context'
  27519. || lk == 52500 // '{' 'continue'
  27520. || lk == 53012 // '{' 'copy'
  27521. || lk == 53524 // '{' 'copy-namespaces'
  27522. || lk == 54036 // '{' 'count'
  27523. || lk == 54548 // '{' 'decimal-format'
  27524. || lk == 55572 // '{' 'declare'
  27525. || lk == 56084 // '{' 'default'
  27526. || lk == 56596 // '{' 'delete'
  27527. || lk == 57108 // '{' 'descendant'
  27528. || lk == 57620 // '{' 'descendant-or-self'
  27529. || lk == 58132 // '{' 'descending'
  27530. || lk == 60692 // '{' 'div'
  27531. || lk == 61204 // '{' 'document'
  27532. || lk == 61716 // '{' 'document-node'
  27533. || lk == 62228 // '{' 'element'
  27534. || lk == 62740 // '{' 'else'
  27535. || lk == 63252 // '{' 'empty'
  27536. || lk == 63764 // '{' 'empty-sequence'
  27537. || lk == 64276 // '{' 'encoding'
  27538. || lk == 64788 // '{' 'end'
  27539. || lk == 65812 // '{' 'eq'
  27540. || lk == 66324 // '{' 'every'
  27541. || lk == 67348 // '{' 'except'
  27542. || lk == 67860 // '{' 'exit'
  27543. || lk == 68372 // '{' 'external'
  27544. || lk == 68884 // '{' 'first'
  27545. || lk == 69396 // '{' 'following'
  27546. || lk == 69908 // '{' 'following-sibling'
  27547. || lk == 70420 // '{' 'for'
  27548. || lk == 72468 // '{' 'ft-option'
  27549. || lk == 74516 // '{' 'function'
  27550. || lk == 75028 // '{' 'ge'
  27551. || lk == 76052 // '{' 'group'
  27552. || lk == 77076 // '{' 'gt'
  27553. || lk == 77588 // '{' 'idiv'
  27554. || lk == 78100 // '{' 'if'
  27555. || lk == 78612 // '{' 'import'
  27556. || lk == 79124 // '{' 'in'
  27557. || lk == 79636 // '{' 'index'
  27558. || lk == 81684 // '{' 'insert'
  27559. || lk == 82196 // '{' 'instance'
  27560. || lk == 82708 // '{' 'integrity'
  27561. || lk == 83220 // '{' 'intersect'
  27562. || lk == 83732 // '{' 'into'
  27563. || lk == 84244 // '{' 'is'
  27564. || lk == 84756 // '{' 'item'
  27565. || lk == 85780 // '{' 'json-item'
  27566. || lk == 87316 // '{' 'last'
  27567. || lk == 87828 // '{' 'lax'
  27568. || lk == 88340 // '{' 'le'
  27569. || lk == 89364 // '{' 'let'
  27570. || lk == 90388 // '{' 'loop'
  27571. || lk == 91412 // '{' 'lt'
  27572. || lk == 92436 // '{' 'mod'
  27573. || lk == 92948 // '{' 'modify'
  27574. || lk == 93460 // '{' 'module'
  27575. || lk == 94484 // '{' 'namespace'
  27576. || lk == 94996 // '{' 'namespace-node'
  27577. || lk == 95508 // '{' 'ne'
  27578. || lk == 98068 // '{' 'node'
  27579. || lk == 98580 // '{' 'nodes'
  27580. || lk == 99604 // '{' 'object'
  27581. || lk == 101652 // '{' 'only'
  27582. || lk == 102164 // '{' 'option'
  27583. || lk == 102676 // '{' 'or'
  27584. || lk == 103188 // '{' 'order'
  27585. || lk == 103700 // '{' 'ordered'
  27586. || lk == 104212 // '{' 'ordering'
  27587. || lk == 105748 // '{' 'parent'
  27588. || lk == 108820 // '{' 'preceding'
  27589. || lk == 109332 // '{' 'preceding-sibling'
  27590. || lk == 110868 // '{' 'processing-instruction'
  27591. || lk == 111892 // '{' 'rename'
  27592. || lk == 112404 // '{' 'replace'
  27593. || lk == 112916 // '{' 'return'
  27594. || lk == 113428 // '{' 'returning'
  27595. || lk == 113940 // '{' 'revalidation'
  27596. || lk == 114964 // '{' 'satisfies'
  27597. || lk == 115476 // '{' 'schema'
  27598. || lk == 115988 // '{' 'schema-attribute'
  27599. || lk == 116500 // '{' 'schema-element'
  27600. || lk == 117012 // '{' 'score'
  27601. || lk == 117524 // '{' 'self'
  27602. || lk == 120084 // '{' 'sliding'
  27603. || lk == 120596 // '{' 'some'
  27604. || lk == 121108 // '{' 'stable'
  27605. || lk == 121620 // '{' 'start'
  27606. || lk == 123156 // '{' 'strict'
  27607. || lk == 124692 // '{' 'switch'
  27608. || lk == 125204 // '{' 'text'
  27609. || lk == 127252 // '{' 'to'
  27610. || lk == 127764 // '{' 'treat'
  27611. || lk == 128276 // '{' 'try'
  27612. || lk == 128788 // '{' 'tumbling'
  27613. || lk == 129300 // '{' 'type'
  27614. || lk == 129812 // '{' 'typeswitch'
  27615. || lk == 130324 // '{' 'union'
  27616. || lk == 131348 // '{' 'unordered'
  27617. || lk == 131860 // '{' 'updating'
  27618. || lk == 133396 // '{' 'validate'
  27619. || lk == 133908 // '{' 'value'
  27620. || lk == 134420 // '{' 'variable'
  27621. || lk == 134932 // '{' 'version'
  27622. || lk == 136468 // '{' 'where'
  27623. || lk == 136980 // '{' 'while'
  27624. || lk == 138516 // '{' 'with'
  27625. || lk == 140564 // '{' 'xquery'
  27626. || lk == 141588 // '{' '{'
  27627. || lk == 142612 // '{' '{|'
  27628. || lk == 144660) // '{' '}'
  27629. {
  27630. lk = memoized(12, e0);
  27631. if (lk == 0)
  27632. {
  27633. var b0A = b0; var e0A = e0; var l1A = l1;
  27634. var b1A = b1; var e1A = e1; var l2A = l2;
  27635. var b2A = b2; var e2A = e2;
  27636. try
  27637. {
  27638. try_BlockExpr();
  27639. lk = -10;
  27640. }
  27641. catch (p10A)
  27642. {
  27643. lk = -11;
  27644. }
  27645. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  27646. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  27647. b2 = b2A; e2 = e2A; end = e2A; }}
  27648. memoize(12, e0, lk);
  27649. }
  27650. }
  27651. switch (lk)
  27652. {
  27653. case 8: // IntegerLiteral
  27654. case 9: // DecimalLiteral
  27655. case 10: // DoubleLiteral
  27656. case 11: // StringLiteral
  27657. parse_Literal();
  27658. break;
  27659. case 31: // '$'
  27660. parse_VarRef();
  27661. break;
  27662. case 34: // '('
  27663. parse_ParenthesizedExpr();
  27664. break;
  27665. case 44: // '.'
  27666. parse_ContextItemExpr();
  27667. break;
  27668. case 17414: // EQName^Token '('
  27669. case 17478: // 'after' '('
  27670. case 17480: // 'allowing' '('
  27671. case 17481: // 'ancestor' '('
  27672. case 17482: // 'ancestor-or-self' '('
  27673. case 17483: // 'and' '('
  27674. case 17486: // 'array' '('
  27675. case 17487: // 'as' '('
  27676. case 17488: // 'ascending' '('
  27677. case 17489: // 'at' '('
  27678. case 17491: // 'base-uri' '('
  27679. case 17492: // 'before' '('
  27680. case 17493: // 'boundary-space' '('
  27681. case 17494: // 'break' '('
  27682. case 17496: // 'case' '('
  27683. case 17497: // 'cast' '('
  27684. case 17498: // 'castable' '('
  27685. case 17499: // 'catch' '('
  27686. case 17501: // 'child' '('
  27687. case 17502: // 'collation' '('
  27688. case 17505: // 'constraint' '('
  27689. case 17506: // 'construction' '('
  27690. case 17509: // 'context' '('
  27691. case 17510: // 'continue' '('
  27692. case 17511: // 'copy' '('
  27693. case 17512: // 'copy-namespaces' '('
  27694. case 17513: // 'count' '('
  27695. case 17514: // 'decimal-format' '('
  27696. case 17516: // 'declare' '('
  27697. case 17517: // 'default' '('
  27698. case 17518: // 'delete' '('
  27699. case 17519: // 'descendant' '('
  27700. case 17520: // 'descendant-or-self' '('
  27701. case 17521: // 'descending' '('
  27702. case 17526: // 'div' '('
  27703. case 17527: // 'document' '('
  27704. case 17530: // 'else' '('
  27705. case 17531: // 'empty' '('
  27706. case 17533: // 'encoding' '('
  27707. case 17534: // 'end' '('
  27708. case 17536: // 'eq' '('
  27709. case 17537: // 'every' '('
  27710. case 17539: // 'except' '('
  27711. case 17540: // 'exit' '('
  27712. case 17541: // 'external' '('
  27713. case 17542: // 'first' '('
  27714. case 17543: // 'following' '('
  27715. case 17544: // 'following-sibling' '('
  27716. case 17545: // 'for' '('
  27717. case 17549: // 'ft-option' '('
  27718. case 17554: // 'ge' '('
  27719. case 17556: // 'group' '('
  27720. case 17558: // 'gt' '('
  27721. case 17559: // 'idiv' '('
  27722. case 17561: // 'import' '('
  27723. case 17562: // 'in' '('
  27724. case 17563: // 'index' '('
  27725. case 17567: // 'insert' '('
  27726. case 17568: // 'instance' '('
  27727. case 17569: // 'integrity' '('
  27728. case 17570: // 'intersect' '('
  27729. case 17571: // 'into' '('
  27730. case 17572: // 'is' '('
  27731. case 17575: // 'json-item' '('
  27732. case 17578: // 'last' '('
  27733. case 17579: // 'lax' '('
  27734. case 17580: // 'le' '('
  27735. case 17582: // 'let' '('
  27736. case 17584: // 'loop' '('
  27737. case 17586: // 'lt' '('
  27738. case 17588: // 'mod' '('
  27739. case 17589: // 'modify' '('
  27740. case 17590: // 'module' '('
  27741. case 17592: // 'namespace' '('
  27742. case 17594: // 'ne' '('
  27743. case 17600: // 'nodes' '('
  27744. case 17602: // 'object' '('
  27745. case 17606: // 'only' '('
  27746. case 17607: // 'option' '('
  27747. case 17608: // 'or' '('
  27748. case 17609: // 'order' '('
  27749. case 17610: // 'ordered' '('
  27750. case 17611: // 'ordering' '('
  27751. case 17614: // 'parent' '('
  27752. case 17620: // 'preceding' '('
  27753. case 17621: // 'preceding-sibling' '('
  27754. case 17626: // 'rename' '('
  27755. case 17627: // 'replace' '('
  27756. case 17628: // 'return' '('
  27757. case 17629: // 'returning' '('
  27758. case 17630: // 'revalidation' '('
  27759. case 17632: // 'satisfies' '('
  27760. case 17633: // 'schema' '('
  27761. case 17636: // 'score' '('
  27762. case 17637: // 'self' '('
  27763. case 17642: // 'sliding' '('
  27764. case 17643: // 'some' '('
  27765. case 17644: // 'stable' '('
  27766. case 17645: // 'start' '('
  27767. case 17648: // 'strict' '('
  27768. case 17656: // 'to' '('
  27769. case 17657: // 'treat' '('
  27770. case 17658: // 'try' '('
  27771. case 17659: // 'tumbling' '('
  27772. case 17660: // 'type' '('
  27773. case 17662: // 'union' '('
  27774. case 17664: // 'unordered' '('
  27775. case 17665: // 'updating' '('
  27776. case 17668: // 'validate' '('
  27777. case 17669: // 'value' '('
  27778. case 17670: // 'variable' '('
  27779. case 17671: // 'version' '('
  27780. case 17674: // 'where' '('
  27781. case 17675: // 'while' '('
  27782. case 17678: // 'with' '('
  27783. case 17682: // 'xquery' '('
  27784. parse_FunctionCall();
  27785. break;
  27786. case 141514: // 'ordered' '{'
  27787. parse_OrderedExpr();
  27788. break;
  27789. case 141568: // 'unordered' '{'
  27790. parse_UnorderedExpr();
  27791. break;
  27792. case 32: // '%'
  27793. case 120: // 'document-node'
  27794. case 124: // 'empty-sequence'
  27795. case 145: // 'function'
  27796. case 152: // 'if'
  27797. case 165: // 'item'
  27798. case 185: // 'namespace-node'
  27799. case 191: // 'node'
  27800. case 226: // 'schema-attribute'
  27801. case 227: // 'schema-element'
  27802. case 243: // 'switch'
  27803. case 253: // 'typeswitch'
  27804. case 14854: // EQName^Token '#'
  27805. case 14918: // 'after' '#'
  27806. case 14920: // 'allowing' '#'
  27807. case 14921: // 'ancestor' '#'
  27808. case 14922: // 'ancestor-or-self' '#'
  27809. case 14923: // 'and' '#'
  27810. case 14926: // 'array' '#'
  27811. case 14927: // 'as' '#'
  27812. case 14928: // 'ascending' '#'
  27813. case 14929: // 'at' '#'
  27814. case 14930: // 'attribute' '#'
  27815. case 14931: // 'base-uri' '#'
  27816. case 14932: // 'before' '#'
  27817. case 14933: // 'boundary-space' '#'
  27818. case 14934: // 'break' '#'
  27819. case 14936: // 'case' '#'
  27820. case 14937: // 'cast' '#'
  27821. case 14938: // 'castable' '#'
  27822. case 14939: // 'catch' '#'
  27823. case 14941: // 'child' '#'
  27824. case 14942: // 'collation' '#'
  27825. case 14944: // 'comment' '#'
  27826. case 14945: // 'constraint' '#'
  27827. case 14946: // 'construction' '#'
  27828. case 14949: // 'context' '#'
  27829. case 14950: // 'continue' '#'
  27830. case 14951: // 'copy' '#'
  27831. case 14952: // 'copy-namespaces' '#'
  27832. case 14953: // 'count' '#'
  27833. case 14954: // 'decimal-format' '#'
  27834. case 14956: // 'declare' '#'
  27835. case 14957: // 'default' '#'
  27836. case 14958: // 'delete' '#'
  27837. case 14959: // 'descendant' '#'
  27838. case 14960: // 'descendant-or-self' '#'
  27839. case 14961: // 'descending' '#'
  27840. case 14966: // 'div' '#'
  27841. case 14967: // 'document' '#'
  27842. case 14969: // 'element' '#'
  27843. case 14970: // 'else' '#'
  27844. case 14971: // 'empty' '#'
  27845. case 14973: // 'encoding' '#'
  27846. case 14974: // 'end' '#'
  27847. case 14976: // 'eq' '#'
  27848. case 14977: // 'every' '#'
  27849. case 14979: // 'except' '#'
  27850. case 14980: // 'exit' '#'
  27851. case 14981: // 'external' '#'
  27852. case 14982: // 'first' '#'
  27853. case 14983: // 'following' '#'
  27854. case 14984: // 'following-sibling' '#'
  27855. case 14985: // 'for' '#'
  27856. case 14989: // 'ft-option' '#'
  27857. case 14994: // 'ge' '#'
  27858. case 14996: // 'group' '#'
  27859. case 14998: // 'gt' '#'
  27860. case 14999: // 'idiv' '#'
  27861. case 15001: // 'import' '#'
  27862. case 15002: // 'in' '#'
  27863. case 15003: // 'index' '#'
  27864. case 15007: // 'insert' '#'
  27865. case 15008: // 'instance' '#'
  27866. case 15009: // 'integrity' '#'
  27867. case 15010: // 'intersect' '#'
  27868. case 15011: // 'into' '#'
  27869. case 15012: // 'is' '#'
  27870. case 15015: // 'json-item' '#'
  27871. case 15018: // 'last' '#'
  27872. case 15019: // 'lax' '#'
  27873. case 15020: // 'le' '#'
  27874. case 15022: // 'let' '#'
  27875. case 15024: // 'loop' '#'
  27876. case 15026: // 'lt' '#'
  27877. case 15028: // 'mod' '#'
  27878. case 15029: // 'modify' '#'
  27879. case 15030: // 'module' '#'
  27880. case 15032: // 'namespace' '#'
  27881. case 15034: // 'ne' '#'
  27882. case 15040: // 'nodes' '#'
  27883. case 15042: // 'object' '#'
  27884. case 15046: // 'only' '#'
  27885. case 15047: // 'option' '#'
  27886. case 15048: // 'or' '#'
  27887. case 15049: // 'order' '#'
  27888. case 15050: // 'ordered' '#'
  27889. case 15051: // 'ordering' '#'
  27890. case 15054: // 'parent' '#'
  27891. case 15060: // 'preceding' '#'
  27892. case 15061: // 'preceding-sibling' '#'
  27893. case 15064: // 'processing-instruction' '#'
  27894. case 15066: // 'rename' '#'
  27895. case 15067: // 'replace' '#'
  27896. case 15068: // 'return' '#'
  27897. case 15069: // 'returning' '#'
  27898. case 15070: // 'revalidation' '#'
  27899. case 15072: // 'satisfies' '#'
  27900. case 15073: // 'schema' '#'
  27901. case 15076: // 'score' '#'
  27902. case 15077: // 'self' '#'
  27903. case 15082: // 'sliding' '#'
  27904. case 15083: // 'some' '#'
  27905. case 15084: // 'stable' '#'
  27906. case 15085: // 'start' '#'
  27907. case 15088: // 'strict' '#'
  27908. case 15092: // 'text' '#'
  27909. case 15096: // 'to' '#'
  27910. case 15097: // 'treat' '#'
  27911. case 15098: // 'try' '#'
  27912. case 15099: // 'tumbling' '#'
  27913. case 15100: // 'type' '#'
  27914. case 15102: // 'union' '#'
  27915. case 15104: // 'unordered' '#'
  27916. case 15105: // 'updating' '#'
  27917. case 15108: // 'validate' '#'
  27918. case 15109: // 'value' '#'
  27919. case 15110: // 'variable' '#'
  27920. case 15111: // 'version' '#'
  27921. case 15114: // 'where' '#'
  27922. case 15115: // 'while' '#'
  27923. case 15118: // 'with' '#'
  27924. case 15122: // 'xquery' '#'
  27925. parse_FunctionItemExpr();
  27926. break;
  27927. case -10:
  27928. parse_BlockExpr();
  27929. break;
  27930. case -11:
  27931. parse_ObjectConstructor();
  27932. break;
  27933. case 68: // '['
  27934. parse_ArrayConstructor();
  27935. break;
  27936. case 278: // '{|'
  27937. parse_JSONSimpleObjectUnion();
  27938. break;
  27939. default:
  27940. parse_Constructor();
  27941. }
  27942. eventHandler.endNonterminal("PrimaryExpr", e0);
  27943. }
  27944. function try_PrimaryExpr()
  27945. {
  27946. switch (l1)
  27947. {
  27948. case 184: // 'namespace'
  27949. lookahead2W(254); // NCName^Token | S^WS | '#' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27950. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  27951. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27952. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27953. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27954. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27955. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27956. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27957. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27958. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27959. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27960. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  27961. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  27962. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  27963. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  27964. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  27965. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  27966. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  27967. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27968. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27969. // 'xquery' | '{'
  27970. break;
  27971. case 216: // 'processing-instruction'
  27972. lookahead2W(252); // NCName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  27973. // 'ancestor-or-self' | 'and' | 'as' | 'ascending' | 'at' | 'attribute' |
  27974. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  27975. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  27976. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  27977. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  27978. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  27979. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  27980. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  27981. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  27982. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  27983. // 'intersect' | 'into' | 'is' | 'item' | 'last' | 'lax' | 'le' | 'let' | 'loop' |
  27984. // 'lt' | 'mod' | 'modify' | 'module' | 'namespace' | 'namespace-node' | 'ne' |
  27985. // 'node' | 'nodes' | 'only' | 'option' | 'or' | 'order' | 'ordered' | 'ordering' |
  27986. // 'parent' | 'preceding' | 'preceding-sibling' | 'processing-instruction' |
  27987. // 'rename' | 'replace' | 'return' | 'returning' | 'revalidation' | 'satisfies' |
  27988. // 'schema' | 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' |
  27989. // 'some' | 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' |
  27990. // 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  27991. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  27992. // 'xquery' | '{'
  27993. break;
  27994. case 276: // '{'
  27995. lookahead2W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  27996. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  27997. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  27998. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  27999. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28000. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28001. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28002. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28003. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28004. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28005. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28006. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28007. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28008. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28009. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28010. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28011. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28012. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28013. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28014. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28015. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28016. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28017. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28018. // 'xquery' | '{' | '{|' | '}'
  28019. break;
  28020. case 82: // 'attribute'
  28021. case 121: // 'element'
  28022. lookahead2W(257); // EQName^Token | S^WS | '#' | '(:' | 'after' | 'allowing' | 'ancestor' |
  28023. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  28024. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  28025. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  28026. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  28027. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  28028. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  28029. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  28030. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  28031. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  28032. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  28033. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  28034. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  28035. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  28036. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28037. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28038. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28039. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28040. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28041. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28042. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28043. // 'xquery' | '{'
  28044. break;
  28045. case 96: // 'comment'
  28046. case 244: // 'text'
  28047. lookahead2W(93); // S^WS | '#' | '(:' | '{'
  28048. break;
  28049. case 119: // 'document'
  28050. case 202: // 'ordered'
  28051. case 256: // 'unordered'
  28052. lookahead2W(139); // S^WS | '#' | '(' | '(:' | '{'
  28053. break;
  28054. case 6: // EQName^Token
  28055. case 70: // 'after'
  28056. case 72: // 'allowing'
  28057. case 73: // 'ancestor'
  28058. case 74: // 'ancestor-or-self'
  28059. case 75: // 'and'
  28060. case 78: // 'array'
  28061. case 79: // 'as'
  28062. case 80: // 'ascending'
  28063. case 81: // 'at'
  28064. case 83: // 'base-uri'
  28065. case 84: // 'before'
  28066. case 85: // 'boundary-space'
  28067. case 86: // 'break'
  28068. case 88: // 'case'
  28069. case 89: // 'cast'
  28070. case 90: // 'castable'
  28071. case 91: // 'catch'
  28072. case 93: // 'child'
  28073. case 94: // 'collation'
  28074. case 97: // 'constraint'
  28075. case 98: // 'construction'
  28076. case 101: // 'context'
  28077. case 102: // 'continue'
  28078. case 103: // 'copy'
  28079. case 104: // 'copy-namespaces'
  28080. case 105: // 'count'
  28081. case 106: // 'decimal-format'
  28082. case 108: // 'declare'
  28083. case 109: // 'default'
  28084. case 110: // 'delete'
  28085. case 111: // 'descendant'
  28086. case 112: // 'descendant-or-self'
  28087. case 113: // 'descending'
  28088. case 118: // 'div'
  28089. case 122: // 'else'
  28090. case 123: // 'empty'
  28091. case 125: // 'encoding'
  28092. case 126: // 'end'
  28093. case 128: // 'eq'
  28094. case 129: // 'every'
  28095. case 131: // 'except'
  28096. case 132: // 'exit'
  28097. case 133: // 'external'
  28098. case 134: // 'first'
  28099. case 135: // 'following'
  28100. case 136: // 'following-sibling'
  28101. case 137: // 'for'
  28102. case 141: // 'ft-option'
  28103. case 146: // 'ge'
  28104. case 148: // 'group'
  28105. case 150: // 'gt'
  28106. case 151: // 'idiv'
  28107. case 153: // 'import'
  28108. case 154: // 'in'
  28109. case 155: // 'index'
  28110. case 159: // 'insert'
  28111. case 160: // 'instance'
  28112. case 161: // 'integrity'
  28113. case 162: // 'intersect'
  28114. case 163: // 'into'
  28115. case 164: // 'is'
  28116. case 167: // 'json-item'
  28117. case 170: // 'last'
  28118. case 171: // 'lax'
  28119. case 172: // 'le'
  28120. case 174: // 'let'
  28121. case 176: // 'loop'
  28122. case 178: // 'lt'
  28123. case 180: // 'mod'
  28124. case 181: // 'modify'
  28125. case 182: // 'module'
  28126. case 186: // 'ne'
  28127. case 192: // 'nodes'
  28128. case 194: // 'object'
  28129. case 198: // 'only'
  28130. case 199: // 'option'
  28131. case 200: // 'or'
  28132. case 201: // 'order'
  28133. case 203: // 'ordering'
  28134. case 206: // 'parent'
  28135. case 212: // 'preceding'
  28136. case 213: // 'preceding-sibling'
  28137. case 218: // 'rename'
  28138. case 219: // 'replace'
  28139. case 220: // 'return'
  28140. case 221: // 'returning'
  28141. case 222: // 'revalidation'
  28142. case 224: // 'satisfies'
  28143. case 225: // 'schema'
  28144. case 228: // 'score'
  28145. case 229: // 'self'
  28146. case 234: // 'sliding'
  28147. case 235: // 'some'
  28148. case 236: // 'stable'
  28149. case 237: // 'start'
  28150. case 240: // 'strict'
  28151. case 248: // 'to'
  28152. case 249: // 'treat'
  28153. case 250: // 'try'
  28154. case 251: // 'tumbling'
  28155. case 252: // 'type'
  28156. case 254: // 'union'
  28157. case 257: // 'updating'
  28158. case 260: // 'validate'
  28159. case 261: // 'value'
  28160. case 262: // 'variable'
  28161. case 263: // 'version'
  28162. case 266: // 'where'
  28163. case 267: // 'while'
  28164. case 270: // 'with'
  28165. case 274: // 'xquery'
  28166. lookahead2W(92); // S^WS | '#' | '(' | '(:'
  28167. break;
  28168. default:
  28169. lk = l1;
  28170. }
  28171. if (lk == 2836 // '{' Wildcard
  28172. || lk == 3348 // '{' EQName^Token
  28173. || lk == 4372 // '{' IntegerLiteral
  28174. || lk == 4884 // '{' DecimalLiteral
  28175. || lk == 5396 // '{' DoubleLiteral
  28176. || lk == 5908 // '{' StringLiteral
  28177. || lk == 16148 // '{' '$'
  28178. || lk == 16660 // '{' '%'
  28179. || lk == 17684 // '{' '('
  28180. || lk == 18196 // '{' '(#'
  28181. || lk == 20756 // '{' '+'
  28182. || lk == 21780 // '{' '-'
  28183. || lk == 22804 // '{' '.'
  28184. || lk == 23316 // '{' '..'
  28185. || lk == 23828 // '{' '/'
  28186. || lk == 24340 // '{' '//'
  28187. || lk == 27924 // '{' '<'
  28188. || lk == 28436 // '{' '<!--'
  28189. || lk == 30484 // '{' '<?'
  28190. || lk == 34068 // '{' '@'
  28191. || lk == 35092 // '{' '['
  28192. || lk == 36116 // '{' 'after'
  28193. || lk == 37140 // '{' 'allowing'
  28194. || lk == 37652 // '{' 'ancestor'
  28195. || lk == 38164 // '{' 'ancestor-or-self'
  28196. || lk == 38676 // '{' 'and'
  28197. || lk == 39700 // '{' 'append'
  28198. || lk == 40212 // '{' 'array'
  28199. || lk == 40724 // '{' 'as'
  28200. || lk == 41236 // '{' 'ascending'
  28201. || lk == 41748 // '{' 'at'
  28202. || lk == 42260 // '{' 'attribute'
  28203. || lk == 42772 // '{' 'base-uri'
  28204. || lk == 43284 // '{' 'before'
  28205. || lk == 43796 // '{' 'boundary-space'
  28206. || lk == 44308 // '{' 'break'
  28207. || lk == 45332 // '{' 'case'
  28208. || lk == 45844 // '{' 'cast'
  28209. || lk == 46356 // '{' 'castable'
  28210. || lk == 46868 // '{' 'catch'
  28211. || lk == 47892 // '{' 'child'
  28212. || lk == 48404 // '{' 'collation'
  28213. || lk == 49428 // '{' 'comment'
  28214. || lk == 49940 // '{' 'constraint'
  28215. || lk == 50452 // '{' 'construction'
  28216. || lk == 51988 // '{' 'context'
  28217. || lk == 52500 // '{' 'continue'
  28218. || lk == 53012 // '{' 'copy'
  28219. || lk == 53524 // '{' 'copy-namespaces'
  28220. || lk == 54036 // '{' 'count'
  28221. || lk == 54548 // '{' 'decimal-format'
  28222. || lk == 55572 // '{' 'declare'
  28223. || lk == 56084 // '{' 'default'
  28224. || lk == 56596 // '{' 'delete'
  28225. || lk == 57108 // '{' 'descendant'
  28226. || lk == 57620 // '{' 'descendant-or-self'
  28227. || lk == 58132 // '{' 'descending'
  28228. || lk == 60692 // '{' 'div'
  28229. || lk == 61204 // '{' 'document'
  28230. || lk == 61716 // '{' 'document-node'
  28231. || lk == 62228 // '{' 'element'
  28232. || lk == 62740 // '{' 'else'
  28233. || lk == 63252 // '{' 'empty'
  28234. || lk == 63764 // '{' 'empty-sequence'
  28235. || lk == 64276 // '{' 'encoding'
  28236. || lk == 64788 // '{' 'end'
  28237. || lk == 65812 // '{' 'eq'
  28238. || lk == 66324 // '{' 'every'
  28239. || lk == 67348 // '{' 'except'
  28240. || lk == 67860 // '{' 'exit'
  28241. || lk == 68372 // '{' 'external'
  28242. || lk == 68884 // '{' 'first'
  28243. || lk == 69396 // '{' 'following'
  28244. || lk == 69908 // '{' 'following-sibling'
  28245. || lk == 70420 // '{' 'for'
  28246. || lk == 72468 // '{' 'ft-option'
  28247. || lk == 74516 // '{' 'function'
  28248. || lk == 75028 // '{' 'ge'
  28249. || lk == 76052 // '{' 'group'
  28250. || lk == 77076 // '{' 'gt'
  28251. || lk == 77588 // '{' 'idiv'
  28252. || lk == 78100 // '{' 'if'
  28253. || lk == 78612 // '{' 'import'
  28254. || lk == 79124 // '{' 'in'
  28255. || lk == 79636 // '{' 'index'
  28256. || lk == 81684 // '{' 'insert'
  28257. || lk == 82196 // '{' 'instance'
  28258. || lk == 82708 // '{' 'integrity'
  28259. || lk == 83220 // '{' 'intersect'
  28260. || lk == 83732 // '{' 'into'
  28261. || lk == 84244 // '{' 'is'
  28262. || lk == 84756 // '{' 'item'
  28263. || lk == 85780 // '{' 'json-item'
  28264. || lk == 87316 // '{' 'last'
  28265. || lk == 87828 // '{' 'lax'
  28266. || lk == 88340 // '{' 'le'
  28267. || lk == 89364 // '{' 'let'
  28268. || lk == 90388 // '{' 'loop'
  28269. || lk == 91412 // '{' 'lt'
  28270. || lk == 92436 // '{' 'mod'
  28271. || lk == 92948 // '{' 'modify'
  28272. || lk == 93460 // '{' 'module'
  28273. || lk == 94484 // '{' 'namespace'
  28274. || lk == 94996 // '{' 'namespace-node'
  28275. || lk == 95508 // '{' 'ne'
  28276. || lk == 98068 // '{' 'node'
  28277. || lk == 98580 // '{' 'nodes'
  28278. || lk == 99604 // '{' 'object'
  28279. || lk == 101652 // '{' 'only'
  28280. || lk == 102164 // '{' 'option'
  28281. || lk == 102676 // '{' 'or'
  28282. || lk == 103188 // '{' 'order'
  28283. || lk == 103700 // '{' 'ordered'
  28284. || lk == 104212 // '{' 'ordering'
  28285. || lk == 105748 // '{' 'parent'
  28286. || lk == 108820 // '{' 'preceding'
  28287. || lk == 109332 // '{' 'preceding-sibling'
  28288. || lk == 110868 // '{' 'processing-instruction'
  28289. || lk == 111892 // '{' 'rename'
  28290. || lk == 112404 // '{' 'replace'
  28291. || lk == 112916 // '{' 'return'
  28292. || lk == 113428 // '{' 'returning'
  28293. || lk == 113940 // '{' 'revalidation'
  28294. || lk == 114964 // '{' 'satisfies'
  28295. || lk == 115476 // '{' 'schema'
  28296. || lk == 115988 // '{' 'schema-attribute'
  28297. || lk == 116500 // '{' 'schema-element'
  28298. || lk == 117012 // '{' 'score'
  28299. || lk == 117524 // '{' 'self'
  28300. || lk == 120084 // '{' 'sliding'
  28301. || lk == 120596 // '{' 'some'
  28302. || lk == 121108 // '{' 'stable'
  28303. || lk == 121620 // '{' 'start'
  28304. || lk == 123156 // '{' 'strict'
  28305. || lk == 124692 // '{' 'switch'
  28306. || lk == 125204 // '{' 'text'
  28307. || lk == 127252 // '{' 'to'
  28308. || lk == 127764 // '{' 'treat'
  28309. || lk == 128276 // '{' 'try'
  28310. || lk == 128788 // '{' 'tumbling'
  28311. || lk == 129300 // '{' 'type'
  28312. || lk == 129812 // '{' 'typeswitch'
  28313. || lk == 130324 // '{' 'union'
  28314. || lk == 131348 // '{' 'unordered'
  28315. || lk == 131860 // '{' 'updating'
  28316. || lk == 133396 // '{' 'validate'
  28317. || lk == 133908 // '{' 'value'
  28318. || lk == 134420 // '{' 'variable'
  28319. || lk == 134932 // '{' 'version'
  28320. || lk == 136468 // '{' 'where'
  28321. || lk == 136980 // '{' 'while'
  28322. || lk == 138516 // '{' 'with'
  28323. || lk == 140564 // '{' 'xquery'
  28324. || lk == 141588 // '{' '{'
  28325. || lk == 142612 // '{' '{|'
  28326. || lk == 144660) // '{' '}'
  28327. {
  28328. lk = memoized(12, e0);
  28329. if (lk == 0)
  28330. {
  28331. var b0A = b0; var e0A = e0; var l1A = l1;
  28332. var b1A = b1; var e1A = e1; var l2A = l2;
  28333. var b2A = b2; var e2A = e2;
  28334. try
  28335. {
  28336. try_BlockExpr();
  28337. memoize(12, e0A, -10);
  28338. lk = -14;
  28339. }
  28340. catch (p10A)
  28341. {
  28342. lk = -11;
  28343. b0 = b0A; e0 = e0A; l1 = l1A; if (l1 == 0) {end = e0A;} else {
  28344. b1 = b1A; e1 = e1A; l2 = l2A; if (l2 == 0) {end = e1A;} else {
  28345. b2 = b2A; e2 = e2A; end = e2A; }}
  28346. memoize(12, e0A, -11);
  28347. }
  28348. }
  28349. }
  28350. switch (lk)
  28351. {
  28352. case 8: // IntegerLiteral
  28353. case 9: // DecimalLiteral
  28354. case 10: // DoubleLiteral
  28355. case 11: // StringLiteral
  28356. try_Literal();
  28357. break;
  28358. case 31: // '$'
  28359. try_VarRef();
  28360. break;
  28361. case 34: // '('
  28362. try_ParenthesizedExpr();
  28363. break;
  28364. case 44: // '.'
  28365. try_ContextItemExpr();
  28366. break;
  28367. case 17414: // EQName^Token '('
  28368. case 17478: // 'after' '('
  28369. case 17480: // 'allowing' '('
  28370. case 17481: // 'ancestor' '('
  28371. case 17482: // 'ancestor-or-self' '('
  28372. case 17483: // 'and' '('
  28373. case 17486: // 'array' '('
  28374. case 17487: // 'as' '('
  28375. case 17488: // 'ascending' '('
  28376. case 17489: // 'at' '('
  28377. case 17491: // 'base-uri' '('
  28378. case 17492: // 'before' '('
  28379. case 17493: // 'boundary-space' '('
  28380. case 17494: // 'break' '('
  28381. case 17496: // 'case' '('
  28382. case 17497: // 'cast' '('
  28383. case 17498: // 'castable' '('
  28384. case 17499: // 'catch' '('
  28385. case 17501: // 'child' '('
  28386. case 17502: // 'collation' '('
  28387. case 17505: // 'constraint' '('
  28388. case 17506: // 'construction' '('
  28389. case 17509: // 'context' '('
  28390. case 17510: // 'continue' '('
  28391. case 17511: // 'copy' '('
  28392. case 17512: // 'copy-namespaces' '('
  28393. case 17513: // 'count' '('
  28394. case 17514: // 'decimal-format' '('
  28395. case 17516: // 'declare' '('
  28396. case 17517: // 'default' '('
  28397. case 17518: // 'delete' '('
  28398. case 17519: // 'descendant' '('
  28399. case 17520: // 'descendant-or-self' '('
  28400. case 17521: // 'descending' '('
  28401. case 17526: // 'div' '('
  28402. case 17527: // 'document' '('
  28403. case 17530: // 'else' '('
  28404. case 17531: // 'empty' '('
  28405. case 17533: // 'encoding' '('
  28406. case 17534: // 'end' '('
  28407. case 17536: // 'eq' '('
  28408. case 17537: // 'every' '('
  28409. case 17539: // 'except' '('
  28410. case 17540: // 'exit' '('
  28411. case 17541: // 'external' '('
  28412. case 17542: // 'first' '('
  28413. case 17543: // 'following' '('
  28414. case 17544: // 'following-sibling' '('
  28415. case 17545: // 'for' '('
  28416. case 17549: // 'ft-option' '('
  28417. case 17554: // 'ge' '('
  28418. case 17556: // 'group' '('
  28419. case 17558: // 'gt' '('
  28420. case 17559: // 'idiv' '('
  28421. case 17561: // 'import' '('
  28422. case 17562: // 'in' '('
  28423. case 17563: // 'index' '('
  28424. case 17567: // 'insert' '('
  28425. case 17568: // 'instance' '('
  28426. case 17569: // 'integrity' '('
  28427. case 17570: // 'intersect' '('
  28428. case 17571: // 'into' '('
  28429. case 17572: // 'is' '('
  28430. case 17575: // 'json-item' '('
  28431. case 17578: // 'last' '('
  28432. case 17579: // 'lax' '('
  28433. case 17580: // 'le' '('
  28434. case 17582: // 'let' '('
  28435. case 17584: // 'loop' '('
  28436. case 17586: // 'lt' '('
  28437. case 17588: // 'mod' '('
  28438. case 17589: // 'modify' '('
  28439. case 17590: // 'module' '('
  28440. case 17592: // 'namespace' '('
  28441. case 17594: // 'ne' '('
  28442. case 17600: // 'nodes' '('
  28443. case 17602: // 'object' '('
  28444. case 17606: // 'only' '('
  28445. case 17607: // 'option' '('
  28446. case 17608: // 'or' '('
  28447. case 17609: // 'order' '('
  28448. case 17610: // 'ordered' '('
  28449. case 17611: // 'ordering' '('
  28450. case 17614: // 'parent' '('
  28451. case 17620: // 'preceding' '('
  28452. case 17621: // 'preceding-sibling' '('
  28453. case 17626: // 'rename' '('
  28454. case 17627: // 'replace' '('
  28455. case 17628: // 'return' '('
  28456. case 17629: // 'returning' '('
  28457. case 17630: // 'revalidation' '('
  28458. case 17632: // 'satisfies' '('
  28459. case 17633: // 'schema' '('
  28460. case 17636: // 'score' '('
  28461. case 17637: // 'self' '('
  28462. case 17642: // 'sliding' '('
  28463. case 17643: // 'some' '('
  28464. case 17644: // 'stable' '('
  28465. case 17645: // 'start' '('
  28466. case 17648: // 'strict' '('
  28467. case 17656: // 'to' '('
  28468. case 17657: // 'treat' '('
  28469. case 17658: // 'try' '('
  28470. case 17659: // 'tumbling' '('
  28471. case 17660: // 'type' '('
  28472. case 17662: // 'union' '('
  28473. case 17664: // 'unordered' '('
  28474. case 17665: // 'updating' '('
  28475. case 17668: // 'validate' '('
  28476. case 17669: // 'value' '('
  28477. case 17670: // 'variable' '('
  28478. case 17671: // 'version' '('
  28479. case 17674: // 'where' '('
  28480. case 17675: // 'while' '('
  28481. case 17678: // 'with' '('
  28482. case 17682: // 'xquery' '('
  28483. try_FunctionCall();
  28484. break;
  28485. case 141514: // 'ordered' '{'
  28486. try_OrderedExpr();
  28487. break;
  28488. case 141568: // 'unordered' '{'
  28489. try_UnorderedExpr();
  28490. break;
  28491. case 32: // '%'
  28492. case 120: // 'document-node'
  28493. case 124: // 'empty-sequence'
  28494. case 145: // 'function'
  28495. case 152: // 'if'
  28496. case 165: // 'item'
  28497. case 185: // 'namespace-node'
  28498. case 191: // 'node'
  28499. case 226: // 'schema-attribute'
  28500. case 227: // 'schema-element'
  28501. case 243: // 'switch'
  28502. case 253: // 'typeswitch'
  28503. case 14854: // EQName^Token '#'
  28504. case 14918: // 'after' '#'
  28505. case 14920: // 'allowing' '#'
  28506. case 14921: // 'ancestor' '#'
  28507. case 14922: // 'ancestor-or-self' '#'
  28508. case 14923: // 'and' '#'
  28509. case 14926: // 'array' '#'
  28510. case 14927: // 'as' '#'
  28511. case 14928: // 'ascending' '#'
  28512. case 14929: // 'at' '#'
  28513. case 14930: // 'attribute' '#'
  28514. case 14931: // 'base-uri' '#'
  28515. case 14932: // 'before' '#'
  28516. case 14933: // 'boundary-space' '#'
  28517. case 14934: // 'break' '#'
  28518. case 14936: // 'case' '#'
  28519. case 14937: // 'cast' '#'
  28520. case 14938: // 'castable' '#'
  28521. case 14939: // 'catch' '#'
  28522. case 14941: // 'child' '#'
  28523. case 14942: // 'collation' '#'
  28524. case 14944: // 'comment' '#'
  28525. case 14945: // 'constraint' '#'
  28526. case 14946: // 'construction' '#'
  28527. case 14949: // 'context' '#'
  28528. case 14950: // 'continue' '#'
  28529. case 14951: // 'copy' '#'
  28530. case 14952: // 'copy-namespaces' '#'
  28531. case 14953: // 'count' '#'
  28532. case 14954: // 'decimal-format' '#'
  28533. case 14956: // 'declare' '#'
  28534. case 14957: // 'default' '#'
  28535. case 14958: // 'delete' '#'
  28536. case 14959: // 'descendant' '#'
  28537. case 14960: // 'descendant-or-self' '#'
  28538. case 14961: // 'descending' '#'
  28539. case 14966: // 'div' '#'
  28540. case 14967: // 'document' '#'
  28541. case 14969: // 'element' '#'
  28542. case 14970: // 'else' '#'
  28543. case 14971: // 'empty' '#'
  28544. case 14973: // 'encoding' '#'
  28545. case 14974: // 'end' '#'
  28546. case 14976: // 'eq' '#'
  28547. case 14977: // 'every' '#'
  28548. case 14979: // 'except' '#'
  28549. case 14980: // 'exit' '#'
  28550. case 14981: // 'external' '#'
  28551. case 14982: // 'first' '#'
  28552. case 14983: // 'following' '#'
  28553. case 14984: // 'following-sibling' '#'
  28554. case 14985: // 'for' '#'
  28555. case 14989: // 'ft-option' '#'
  28556. case 14994: // 'ge' '#'
  28557. case 14996: // 'group' '#'
  28558. case 14998: // 'gt' '#'
  28559. case 14999: // 'idiv' '#'
  28560. case 15001: // 'import' '#'
  28561. case 15002: // 'in' '#'
  28562. case 15003: // 'index' '#'
  28563. case 15007: // 'insert' '#'
  28564. case 15008: // 'instance' '#'
  28565. case 15009: // 'integrity' '#'
  28566. case 15010: // 'intersect' '#'
  28567. case 15011: // 'into' '#'
  28568. case 15012: // 'is' '#'
  28569. case 15015: // 'json-item' '#'
  28570. case 15018: // 'last' '#'
  28571. case 15019: // 'lax' '#'
  28572. case 15020: // 'le' '#'
  28573. case 15022: // 'let' '#'
  28574. case 15024: // 'loop' '#'
  28575. case 15026: // 'lt' '#'
  28576. case 15028: // 'mod' '#'
  28577. case 15029: // 'modify' '#'
  28578. case 15030: // 'module' '#'
  28579. case 15032: // 'namespace' '#'
  28580. case 15034: // 'ne' '#'
  28581. case 15040: // 'nodes' '#'
  28582. case 15042: // 'object' '#'
  28583. case 15046: // 'only' '#'
  28584. case 15047: // 'option' '#'
  28585. case 15048: // 'or' '#'
  28586. case 15049: // 'order' '#'
  28587. case 15050: // 'ordered' '#'
  28588. case 15051: // 'ordering' '#'
  28589. case 15054: // 'parent' '#'
  28590. case 15060: // 'preceding' '#'
  28591. case 15061: // 'preceding-sibling' '#'
  28592. case 15064: // 'processing-instruction' '#'
  28593. case 15066: // 'rename' '#'
  28594. case 15067: // 'replace' '#'
  28595. case 15068: // 'return' '#'
  28596. case 15069: // 'returning' '#'
  28597. case 15070: // 'revalidation' '#'
  28598. case 15072: // 'satisfies' '#'
  28599. case 15073: // 'schema' '#'
  28600. case 15076: // 'score' '#'
  28601. case 15077: // 'self' '#'
  28602. case 15082: // 'sliding' '#'
  28603. case 15083: // 'some' '#'
  28604. case 15084: // 'stable' '#'
  28605. case 15085: // 'start' '#'
  28606. case 15088: // 'strict' '#'
  28607. case 15092: // 'text' '#'
  28608. case 15096: // 'to' '#'
  28609. case 15097: // 'treat' '#'
  28610. case 15098: // 'try' '#'
  28611. case 15099: // 'tumbling' '#'
  28612. case 15100: // 'type' '#'
  28613. case 15102: // 'union' '#'
  28614. case 15104: // 'unordered' '#'
  28615. case 15105: // 'updating' '#'
  28616. case 15108: // 'validate' '#'
  28617. case 15109: // 'value' '#'
  28618. case 15110: // 'variable' '#'
  28619. case 15111: // 'version' '#'
  28620. case 15114: // 'where' '#'
  28621. case 15115: // 'while' '#'
  28622. case 15118: // 'with' '#'
  28623. case 15122: // 'xquery' '#'
  28624. try_FunctionItemExpr();
  28625. break;
  28626. case -10:
  28627. try_BlockExpr();
  28628. break;
  28629. case -11:
  28630. try_ObjectConstructor();
  28631. break;
  28632. case 68: // '['
  28633. try_ArrayConstructor();
  28634. break;
  28635. case 278: // '{|'
  28636. try_JSONSimpleObjectUnion();
  28637. break;
  28638. case -14:
  28639. break;
  28640. default:
  28641. try_Constructor();
  28642. }
  28643. }
  28644. function parse_JSONSimpleObjectUnion()
  28645. {
  28646. eventHandler.startNonterminal("JSONSimpleObjectUnion", e0);
  28647. shift(278); // '{|'
  28648. lookahead1W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28649. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28650. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28651. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28652. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28653. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28654. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28655. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28656. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28657. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28658. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28659. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28660. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28661. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28662. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28663. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28664. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28665. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28666. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28667. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28668. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28669. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28670. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28671. // 'xquery' | '{' | '{|' | '|}'
  28672. if (l1 != 281) // '|}'
  28673. {
  28674. whitespace();
  28675. parse_Expr();
  28676. }
  28677. shift(281); // '|}'
  28678. eventHandler.endNonterminal("JSONSimpleObjectUnion", e0);
  28679. }
  28680. function try_JSONSimpleObjectUnion()
  28681. {
  28682. shiftT(278); // '{|'
  28683. lookahead1W(272); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28684. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28685. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28686. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28687. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28688. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28689. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28690. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28691. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28692. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28693. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28694. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28695. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28696. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28697. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28698. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28699. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28700. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28701. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28702. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28703. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28704. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28705. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28706. // 'xquery' | '{' | '{|' | '|}'
  28707. if (l1 != 281) // '|}'
  28708. {
  28709. try_Expr();
  28710. }
  28711. shiftT(281); // '|}'
  28712. }
  28713. function parse_ObjectConstructor()
  28714. {
  28715. eventHandler.startNonterminal("ObjectConstructor", e0);
  28716. shift(276); // '{'
  28717. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28718. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28719. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28720. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28721. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28722. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28723. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28724. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28725. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28726. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28727. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28728. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28729. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28730. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28731. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28732. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28733. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28734. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28735. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28736. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28737. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28738. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28739. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28740. // 'xquery' | '{' | '{|' | '}'
  28741. if (l1 != 282) // '}'
  28742. {
  28743. whitespace();
  28744. parse_PairConstructor();
  28745. for (;;)
  28746. {
  28747. if (l1 != 41) // ','
  28748. {
  28749. break;
  28750. }
  28751. shift(41); // ','
  28752. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28753. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28754. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28755. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28756. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28757. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28758. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28759. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28760. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28761. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28762. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28763. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28764. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28765. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28766. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28767. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28768. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28769. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28770. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28771. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28772. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28773. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28774. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28775. // 'xquery' | '{' | '{|'
  28776. whitespace();
  28777. parse_PairConstructor();
  28778. }
  28779. }
  28780. shift(282); // '}'
  28781. eventHandler.endNonterminal("ObjectConstructor", e0);
  28782. }
  28783. function try_ObjectConstructor()
  28784. {
  28785. shiftT(276); // '{'
  28786. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28787. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28788. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28789. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28790. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28791. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28792. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28793. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28794. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28795. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28796. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28797. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28798. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28799. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28800. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28801. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28802. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28803. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28804. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28805. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28806. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28807. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28808. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28809. // 'xquery' | '{' | '{|' | '}'
  28810. if (l1 != 282) // '}'
  28811. {
  28812. try_PairConstructor();
  28813. for (;;)
  28814. {
  28815. if (l1 != 41) // ','
  28816. {
  28817. break;
  28818. }
  28819. shiftT(41); // ','
  28820. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28821. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28822. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28823. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28824. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28825. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28826. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28827. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28828. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28829. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28830. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28831. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28832. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28833. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28834. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28835. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28836. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28837. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28838. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28839. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28840. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28841. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28842. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28843. // 'xquery' | '{' | '{|'
  28844. try_PairConstructor();
  28845. }
  28846. }
  28847. shiftT(282); // '}'
  28848. }
  28849. function parse_PairConstructor()
  28850. {
  28851. eventHandler.startNonterminal("PairConstructor", e0);
  28852. parse_ExprSingle();
  28853. shift(49); // ':'
  28854. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28855. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28856. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28857. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28858. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28859. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28860. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28861. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28862. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28863. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28864. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28865. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28866. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28867. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28868. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28869. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28870. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28871. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28872. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28873. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28874. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28875. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28876. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28877. // 'xquery' | '{' | '{|'
  28878. whitespace();
  28879. parse_ExprSingle();
  28880. eventHandler.endNonterminal("PairConstructor", e0);
  28881. }
  28882. function try_PairConstructor()
  28883. {
  28884. try_ExprSingle();
  28885. shiftT(49); // ':'
  28886. lookahead1W(267); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28887. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28888. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28889. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28890. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28891. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28892. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28893. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28894. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28895. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28896. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28897. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28898. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28899. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28900. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28901. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28902. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28903. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28904. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28905. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28906. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28907. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28908. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28909. // 'xquery' | '{' | '{|'
  28910. try_ExprSingle();
  28911. }
  28912. function parse_ArrayConstructor()
  28913. {
  28914. eventHandler.startNonterminal("ArrayConstructor", e0);
  28915. shift(68); // '['
  28916. lookahead1W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28917. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28918. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | ']' | 'after' | 'allowing' |
  28919. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28920. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28921. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28922. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28923. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28924. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28925. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28926. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28927. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28928. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28929. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28930. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28931. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28932. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28933. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28934. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28935. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28936. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28937. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28938. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28939. // 'xquery' | '{' | '{|'
  28940. if (l1 != 69) // ']'
  28941. {
  28942. whitespace();
  28943. parse_Expr();
  28944. }
  28945. shift(69); // ']'
  28946. eventHandler.endNonterminal("ArrayConstructor", e0);
  28947. }
  28948. function try_ArrayConstructor()
  28949. {
  28950. shiftT(68); // '['
  28951. lookahead1W(271); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28952. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28953. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | ']' | 'after' | 'allowing' |
  28954. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28955. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28956. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28957. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28958. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28959. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28960. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28961. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28962. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28963. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28964. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28965. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  28966. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  28967. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  28968. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  28969. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  28970. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  28971. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  28972. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  28973. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  28974. // 'xquery' | '{' | '{|'
  28975. if (l1 != 69) // ']'
  28976. {
  28977. try_Expr();
  28978. }
  28979. shiftT(69); // ']'
  28980. }
  28981. function parse_BlockExpr()
  28982. {
  28983. eventHandler.startNonterminal("BlockExpr", e0);
  28984. shift(276); // '{'
  28985. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  28986. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  28987. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  28988. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  28989. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  28990. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  28991. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  28992. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  28993. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  28994. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  28995. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  28996. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  28997. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  28998. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  28999. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  29000. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  29001. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  29002. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  29003. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  29004. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  29005. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  29006. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  29007. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  29008. // 'xquery' | '{' | '{|' | '}'
  29009. whitespace();
  29010. parse_StatementsAndOptionalExpr();
  29011. shift(282); // '}'
  29012. eventHandler.endNonterminal("BlockExpr", e0);
  29013. }
  29014. function try_BlockExpr()
  29015. {
  29016. shiftT(276); // '{'
  29017. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  29018. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  29019. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  29020. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  29021. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  29022. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  29023. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  29024. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  29025. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  29026. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  29027. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  29028. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  29029. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  29030. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  29031. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  29032. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  29033. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  29034. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  29035. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  29036. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  29037. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  29038. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  29039. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  29040. // 'xquery' | '{' | '{|' | '}'
  29041. try_StatementsAndOptionalExpr();
  29042. shiftT(282); // '}'
  29043. }
  29044. function parse_FunctionDecl()
  29045. {
  29046. eventHandler.startNonterminal("FunctionDecl", e0);
  29047. shift(145); // 'function'
  29048. lookahead1W(253); // EQName^Token | S^WS | '(:' | 'after' | 'allowing' | 'ancestor' |
  29049. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  29050. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  29051. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  29052. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  29053. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  29054. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  29055. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  29056. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  29057. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  29058. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  29059. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  29060. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  29061. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  29062. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  29063. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  29064. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  29065. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  29066. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  29067. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  29068. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  29069. // 'xquery'
  29070. whitespace();
  29071. parse_EQName();
  29072. lookahead1W(22); // S^WS | '(' | '(:'
  29073. shift(34); // '('
  29074. lookahead1W(94); // S^WS | '$' | '(:' | ')'
  29075. if (l1 == 31) // '$'
  29076. {
  29077. whitespace();
  29078. parse_ParamList();
  29079. }
  29080. shift(37); // ')'
  29081. lookahead1W(148); // S^WS | '(:' | 'as' | 'external' | '{'
  29082. if (l1 == 79) // 'as'
  29083. {
  29084. shift(79); // 'as'
  29085. lookahead1W(259); // EQName^Token | S^WS | '%' | '(' | '(:' | 'after' | 'allowing' | 'ancestor' |
  29086. // 'ancestor-or-self' | 'and' | 'array' | 'as' | 'ascending' | 'at' | 'attribute' |
  29087. // 'base-uri' | 'before' | 'boundary-space' | 'break' | 'case' | 'cast' |
  29088. // 'castable' | 'catch' | 'child' | 'collation' | 'comment' | 'constraint' |
  29089. // 'construction' | 'context' | 'continue' | 'copy' | 'copy-namespaces' | 'count' |
  29090. // 'decimal-format' | 'declare' | 'default' | 'delete' | 'descendant' |
  29091. // 'descendant-or-self' | 'descending' | 'div' | 'document' | 'document-node' |
  29092. // 'element' | 'else' | 'empty' | 'empty-sequence' | 'encoding' | 'end' | 'eq' |
  29093. // 'every' | 'except' | 'exit' | 'external' | 'first' | 'following' |
  29094. // 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' | 'group' | 'gt' |
  29095. // 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' | 'instance' | 'integrity' |
  29096. // 'intersect' | 'into' | 'is' | 'item' | 'json-item' | 'last' | 'lax' | 'le' |
  29097. // 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' | 'namespace' |
  29098. // 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' | 'option' |
  29099. // 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  29100. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  29101. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  29102. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  29103. // 'stable' | 'start' | 'strict' | 'structured-item' | 'switch' | 'text' | 'to' |
  29104. // 'treat' | 'try' | 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' |
  29105. // 'updating' | 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' |
  29106. // 'with' | 'xquery'
  29107. whitespace();
  29108. parse_SequenceType();
  29109. }
  29110. lookahead1W(118); // S^WS | '(:' | 'external' | '{'
  29111. switch (l1)
  29112. {
  29113. case 276: // '{'
  29114. shift(276); // '{'
  29115. lookahead1W(273); // Wildcard | EQName^Token | IntegerLiteral | DecimalLiteral | DoubleLiteral |
  29116. // StringLiteral | S^WS | '$' | '%' | '(' | '(#' | '(:' | '+' | '-' | '.' | '..' |
  29117. // '/' | '//' | '<' | '<!--' | '<?' | '@' | '[' | 'after' | 'allowing' |
  29118. // 'ancestor' | 'ancestor-or-self' | 'and' | 'append' | 'array' | 'as' |
  29119. // 'ascending' | 'at' | 'attribute' | 'base-uri' | 'before' | 'boundary-space' |
  29120. // 'break' | 'case' | 'cast' | 'castable' | 'catch' | 'child' | 'collation' |
  29121. // 'comment' | 'constraint' | 'construction' | 'context' | 'continue' | 'copy' |
  29122. // 'copy-namespaces' | 'count' | 'decimal-format' | 'declare' | 'default' |
  29123. // 'delete' | 'descendant' | 'descendant-or-self' | 'descending' | 'div' |
  29124. // 'document' | 'document-node' | 'element' | 'else' | 'empty' | 'empty-sequence' |
  29125. // 'encoding' | 'end' | 'eq' | 'every' | 'except' | 'exit' | 'external' | 'first' |
  29126. // 'following' | 'following-sibling' | 'for' | 'ft-option' | 'function' | 'ge' |
  29127. // 'group' | 'gt' | 'idiv' | 'if' | 'import' | 'in' | 'index' | 'insert' |
  29128. // 'instance' | 'integrity' | 'intersect' | 'into' | 'is' | 'item' | 'json-item' |
  29129. // 'last' | 'lax' | 'le' | 'let' | 'loop' | 'lt' | 'mod' | 'modify' | 'module' |
  29130. // 'namespace' | 'namespace-node' | 'ne' | 'node' | 'nodes' | 'object' | 'only' |
  29131. // 'option' | 'or' | 'order' | 'ordered' | 'ordering' | 'parent' | 'preceding' |
  29132. // 'preceding-sibling' | 'processing-instruction' | 'rename' | 'replace' |
  29133. // 'return' | 'returning' | 'revalidation' | 'satisfies' | 'schema' |
  29134. // 'schema-attribute' | 'schema-element' | 'score' | 'self' | 'sliding' | 'some' |
  29135. // 'stable' | 'start' | 'strict' | 'switch' | 'text' | 'to' | 'treat' | 'try' |
  29136. // 'tumbling' | 'type' | 'typeswitch' | 'union' | 'unordered' | 'updating' |
  29137. // 'validate' | 'value' | 'variable' | 'version' | 'where' | 'while' | 'with' |
  29138. // 'xquery' | '{' | '{|' | '}'
  29139. whitespace();
  29140. parse_StatementsAndOptionalExpr();
  29141. shift(282); // '}'
  29142. break;
  29143. default:
  29144. shift(133); // 'external'
  29145. }
  29146. eventHandler.endNonterminal("FunctionDecl", e0);
  29147. }
  29148. var lk, b0, e0;
  29149. var l1, b1, e1;
  29150. var l2, b2, e2;
  29151. var bx, ex, sx, lx, tx;
  29152. var eventHandler;
  29153. var memo;
  29154. function memoize(i, e, v)
  29155. {
  29156. memo[(e << 4) + i] = v;
  29157. }
  29158. function memoized(i, e)
  29159. {
  29160. var v = memo[(e << 4) + i];
  29161. return typeof v != "undefined" ? v : 0;
  29162. }
  29163. function error(b, e, s, l, t)
  29164. {
  29165. if (e > ex)
  29166. {
  29167. bx = b;
  29168. ex = e;
  29169. sx = s;
  29170. lx = l;
  29171. tx = t;
  29172. }
  29173. throw new self.ParseException(bx, ex, sx, lx, tx);
  29174. }
  29175. function shift(t)
  29176. {
  29177. if (l1 == t)
  29178. {
  29179. whitespace();
  29180. eventHandler.terminal(XQueryParser.TOKEN[l1], b1, e1 > size ? size : e1);
  29181. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  29182. b1 = b2; e1 = e2; l2 = 0; }
  29183. }
  29184. else
  29185. {
  29186. error(b1, e1, 0, l1, t);
  29187. }
  29188. }
  29189. function shiftT(t)
  29190. {
  29191. if (l1 == t)
  29192. {
  29193. b0 = b1; e0 = e1; l1 = l2; if (l1 != 0) {
  29194. b1 = b2; e1 = e2; l2 = 0; }
  29195. }
  29196. else
  29197. {
  29198. error(b1, e1, 0, l1, t);
  29199. }
  29200. }
  29201. function skip(code)
  29202. {
  29203. var b0W = b0; var e0W = e0; var l1W = l1;
  29204. var b1W = b1; var e1W = e1;
  29205. l1 = code; b1 = begin; e1 = end;
  29206. l2 = 0;
  29207. try_Whitespace();
  29208. b0 = b0W; e0 = e0W; l1 = l1W; if (l1 != 0) {
  29209. b1 = b1W; e1 = e1W; }
  29210. }
  29211. function whitespace()
  29212. {
  29213. if (e0 != b1)
  29214. {
  29215. b0 = e0;
  29216. e0 = b1;
  29217. eventHandler.whitespace(b0, e0);
  29218. }
  29219. }
  29220. function matchW(set)
  29221. {
  29222. var code;
  29223. for (;;)
  29224. {
  29225. code = match(set);
  29226. if (code != 22) // S^WS
  29227. {
  29228. if (code != 36) // '(:'
  29229. {
  29230. break;
  29231. }
  29232. skip(code);
  29233. }
  29234. }
  29235. return code;
  29236. }
  29237. function lookahead1W(set)
  29238. {
  29239. if (l1 == 0)
  29240. {
  29241. l1 = matchW(set);
  29242. b1 = begin;
  29243. e1 = end;
  29244. }
  29245. }
  29246. function lookahead2W(set)
  29247. {
  29248. if (l2 == 0)
  29249. {
  29250. l2 = matchW(set);
  29251. b2 = begin;
  29252. e2 = end;
  29253. }
  29254. lk = (l2 << 9) | l1;
  29255. }
  29256. function lookahead1(set)
  29257. {
  29258. if (l1 == 0)
  29259. {
  29260. l1 = match(set);
  29261. b1 = begin;
  29262. e1 = end;
  29263. }
  29264. }
  29265. function lookahead2(set)
  29266. {
  29267. if (l2 == 0)
  29268. {
  29269. l2 = match(set);
  29270. b2 = begin;
  29271. e2 = end;
  29272. }
  29273. lk = (l2 << 9) | l1;
  29274. }
  29275. var input;
  29276. var size;
  29277. var begin;
  29278. var end;
  29279. function match(tokenSetId)
  29280. {
  29281. var nonbmp = false;
  29282. begin = end;
  29283. var current = end;
  29284. var result = XQueryParser.INITIAL[tokenSetId];
  29285. var state = 0;
  29286. for (var code = result & 4095; code != 0; )
  29287. {
  29288. var charclass;
  29289. var c0 = current < size ? input.charCodeAt(current) : 0;
  29290. ++current;
  29291. if (c0 < 0x80)
  29292. {
  29293. charclass = XQueryParser.MAP0[c0];
  29294. }
  29295. else if (c0 < 0xd800)
  29296. {
  29297. var c1 = c0 >> 4;
  29298. charclass = XQueryParser.MAP1[(c0 & 15) + XQueryParser.MAP1[(c1 & 31) + XQueryParser.MAP1[c1 >> 5]]];
  29299. }
  29300. else
  29301. {
  29302. if (c0 < 0xdc00)
  29303. {
  29304. var c1 = current < size ? input.charCodeAt(current) : 0;
  29305. if (c1 >= 0xdc00 && c1 < 0xe000)
  29306. {
  29307. ++current;
  29308. c0 = ((c0 & 0x3ff) << 10) + (c1 & 0x3ff) + 0x10000;
  29309. nonbmp = true;
  29310. }
  29311. }
  29312. var lo = 0, hi = 5;
  29313. for (var m = 3; ; m = (hi + lo) >> 1)
  29314. {
  29315. if (XQueryParser.MAP2[m] > c0) hi = m - 1;
  29316. else if (XQueryParser.MAP2[6 + m] < c0) lo = m + 1;
  29317. else {charclass = XQueryParser.MAP2[12 + m]; break;}
  29318. if (lo > hi) {charclass = 0; break;}
  29319. }
  29320. }
  29321. state = code;
  29322. var i0 = (charclass << 12) + code - 1;
  29323. code = XQueryParser.TRANSITION[(i0 & 15) + XQueryParser.TRANSITION[i0 >> 4]];
  29324. if (code > 4095)
  29325. {
  29326. result = code;
  29327. code &= 4095;
  29328. end = current;
  29329. }
  29330. }
  29331. result >>= 12;
  29332. if (result == 0)
  29333. {
  29334. end = current - 1;
  29335. var c1 = end < size ? input.charCodeAt(end) : 0;
  29336. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  29337. return error(begin, end, state, -1, -1);
  29338. }
  29339. if (nonbmp)
  29340. {
  29341. for (var i = result >> 9; i > 0; --i)
  29342. {
  29343. --end;
  29344. var c1 = end < size ? input.charCodeAt(end) : 0;
  29345. if (c1 >= 0xdc00 && c1 < 0xe000) --end;
  29346. }
  29347. }
  29348. else
  29349. {
  29350. end -= result >> 9;
  29351. }
  29352. return (result & 511) - 1;
  29353. }
  29354. }
  29355. XQueryParser.getTokenSet = function(tokenSetId)
  29356. {
  29357. var set = [];
  29358. var s = tokenSetId < 0 ? - tokenSetId : INITIAL[tokenSetId] & 4095;
  29359. for (var i = 0; i < 284; i += 32)
  29360. {
  29361. var j = i;
  29362. var i0 = (i >> 5) * 3684 + s - 1;
  29363. var i1 = i0 >> 2;
  29364. var i2 = i1 >> 2;
  29365. var f = XQueryParser.EXPECTED[(i0 & 3) + XQueryParser.EXPECTED[(i1 & 3) + XQueryParser.EXPECTED[(i2 & 7) + XQueryParser.EXPECTED[i2 >> 3]]]];
  29366. for ( ; f != 0; f >>>= 1, ++j)
  29367. {
  29368. if ((f & 1) != 0)
  29369. {
  29370. set.push(XQueryParser.TOKEN[j]);
  29371. }
  29372. }
  29373. }
  29374. return set;
  29375. };
  29376. XQueryParser.MAP0 =
  29377. [
  29378. /* 0 */ 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,
  29379. /* 36 */ 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,
  29380. /* 64 */ 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,
  29381. /* 91 */ 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,
  29382. /* 118 */ 61, 62, 63, 64, 65, 66, 67, 68, 38, 38
  29383. ];
  29384. XQueryParser.MAP1 =
  29385. [
  29386. /* 0 */ 108, 124, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 156, 181, 181, 181, 181,
  29387. /* 21 */ 181, 214, 215, 213, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  29388. /* 42 */ 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  29389. /* 63 */ 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  29390. /* 84 */ 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, 214,
  29391. /* 105 */ 214, 214, 214, 247, 261, 277, 293, 309, 355, 371, 387, 423, 423, 423, 415, 339, 331, 339, 331, 339, 339,
  29392. /* 126 */ 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 440, 440, 440, 440, 440, 440, 440,
  29393. /* 147 */ 324, 339, 339, 339, 339, 339, 339, 339, 339, 401, 423, 423, 424, 422, 423, 423, 339, 339, 339, 339, 339,
  29394. /* 168 */ 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 423, 423, 423, 423, 423, 423, 423, 423,
  29395. /* 189 */ 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423, 423,
  29396. /* 210 */ 423, 423, 423, 338, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339, 339,
  29397. /* 231 */ 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,
  29398. /* 256 */ 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,
  29399. /* 290 */ 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,
  29400. /* 317 */ 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,
  29401. /* 344 */ 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,
  29402. /* 371 */ 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,
  29403. /* 398 */ 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,
  29404. /* 425 */ 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,
  29405. /* 452 */ 69, 69, 69, 69
  29406. ];
  29407. XQueryParser.MAP2 =
  29408. [
  29409. /* 0 */ 57344, 63744, 64976, 65008, 65536, 983040, 63743, 64975, 65007, 65533, 983039, 1114111, 38, 30, 38, 30, 30,
  29410. /* 17 */ 38
  29411. ];
  29412. XQueryParser.INITIAL =
  29413. [
  29414. /* 0 */ 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,
  29415. /* 28 */ 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,
  29416. /* 55 */ 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,
  29417. /* 82 */ 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,
  29418. /* 107 */ 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
  29419. /* 128 */ 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
  29420. /* 149 */ 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
  29421. /* 170 */ 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
  29422. /* 191 */ 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
  29423. /* 212 */ 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
  29424. /* 233 */ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
  29425. /* 254 */ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
  29426. /* 275 */ 276, 277, 278, 279, 280, 281, 282, 283, 284
  29427. ];
  29428. XQueryParser.TRANSITION =
  29429. [
  29430. /* 0 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29431. /* 15 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29432. /* 30 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29433. /* 45 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29434. /* 60 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29435. /* 75 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29436. /* 90 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29437. /* 105 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29438. /* 120 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29439. /* 135 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29440. /* 150 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29441. /* 165 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29442. /* 180 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29443. /* 195 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29444. /* 210 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29445. /* 225 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29446. /* 240 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29447. /* 255 */ 23546, 22007, 18176, 18196, 18196, 18196, 18203, 18196, 18196, 18196, 18196, 18230, 18196, 18196, 18196,
  29448. /* 270 */ 18196, 18219, 18196, 18180, 18246, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546,
  29449. /* 285 */ 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327,
  29450. /* 300 */ 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544,
  29451. /* 315 */ 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582,
  29452. /* 330 */ 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766,
  29453. /* 345 */ 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814,
  29454. /* 360 */ 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127,
  29455. /* 375 */ 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150,
  29456. /* 390 */ 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749,
  29457. /* 405 */ 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692,
  29458. /* 420 */ 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825,
  29459. /* 435 */ 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113,
  29460. /* 450 */ 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127,
  29461. /* 465 */ 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632,
  29462. /* 480 */ 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29463. /* 495 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29464. /* 510 */ 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546, 23546, 23546, 21369, 18411, 20907,
  29465. /* 525 */ 20920, 20932, 20944, 22539, 18416, 20967, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 37625, 23546,
  29466. /* 540 */ 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 21008, 21032, 18282, 18849, 18305,
  29467. /* 555 */ 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521,
  29468. /* 570 */ 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546,
  29469. /* 585 */ 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745,
  29470. /* 600 */ 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628,
  29471. /* 615 */ 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090,
  29472. /* 630 */ 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278,
  29473. /* 645 */ 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472,
  29474. /* 660 */ 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452,
  29475. /* 675 */ 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798,
  29476. /* 690 */ 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090,
  29477. /* 705 */ 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392,
  29478. /* 720 */ 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616,
  29479. /* 735 */ 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29480. /* 750 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29481. /* 765 */ 23546, 23546, 23546, 21632, 21055, 23546, 23546, 23546, 21178, 23546, 23546, 23916, 42362, 21241, 23546,
  29482. /* 780 */ 23546, 23546, 23546, 19298, 47203, 21077, 21110, 23546, 23546, 23546, 35799, 23546, 23546, 21194, 23546,
  29483. /* 795 */ 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 21229, 18282, 18849,
  29484. /* 810 */ 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670,
  29485. /* 825 */ 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546,
  29486. /* 840 */ 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048,
  29487. /* 855 */ 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830,
  29488. /* 870 */ 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072,
  29489. /* 885 */ 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246,
  29490. /* 900 */ 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716,
  29491. /* 915 */ 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402,
  29492. /* 930 */ 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201,
  29493. /* 945 */ 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067,
  29494. /* 960 */ 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376,
  29495. /* 975 */ 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577,
  29496. /* 990 */ 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546,
  29497. /* 1005 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29498. /* 1020 */ 23546, 23546, 23546, 23546, 21358, 21323, 23546, 23546, 23546, 26152, 23546, 23546, 27593, 23546, 21369,
  29499. /* 1035 */ 29482, 21257, 21282, 21273, 21304, 21317, 21346, 20967, 23546, 23546, 23546, 28947, 23546, 23546, 21385,
  29500. /* 1050 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 20711, 21423,
  29501. /* 1065 */ 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495,
  29502. /* 1080 */ 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546,
  29503. /* 1095 */ 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 21446,
  29504. /* 1110 */ 26048, 18745, 18766, 18771, 20561, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808,
  29505. /* 1125 */ 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054,
  29506. /* 1140 */ 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225,
  29507. /* 1155 */ 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451,
  29508. /* 1170 */ 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797,
  29509. /* 1185 */ 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942,
  29510. /* 1200 */ 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042,
  29511. /* 1215 */ 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301,
  29512. /* 1230 */ 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555,
  29513. /* 1245 */ 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546,
  29514. /* 1260 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29515. /* 1275 */ 23546, 23546, 23546, 23546, 23546, 21089, 23540, 23546, 23546, 23546, 25880, 23545, 23546, 31245, 23546,
  29516. /* 1290 */ 21468, 23534, 21504, 23546, 21511, 23546, 21527, 21539, 20967, 23546, 23546, 23546, 35799, 23546, 23546,
  29517. /* 1305 */ 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 19723,
  29518. /* 1320 */ 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968,
  29519. /* 1335 */ 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606,
  29520. /* 1350 */ 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377,
  29521. /* 1365 */ 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792,
  29522. /* 1380 */ 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036,
  29523. /* 1395 */ 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171,
  29524. /* 1410 */ 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498,
  29525. /* 1425 */ 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190,
  29526. /* 1440 */ 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782,
  29527. /* 1455 */ 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827,
  29528. /* 1470 */ 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143,
  29529. /* 1485 */ 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641,
  29530. /* 1500 */ 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546,
  29531. /* 1515 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29532. /* 1530 */ 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 21567, 23546, 23546,
  29533. /* 1545 */ 23546, 31874, 23546, 23546, 21586, 23546, 23546, 21608, 21620, 20967, 23546, 23546, 23546, 35799, 23546,
  29534. /* 1560 */ 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660,
  29535. /* 1575 */ 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479,
  29536. /* 1590 */ 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546,
  29537. /* 1605 */ 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208,
  29538. /* 1620 */ 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546,
  29539. /* 1635 */ 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984,
  29540. /* 1650 */ 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137,
  29541. /* 1665 */ 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754,
  29542. /* 1680 */ 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657,
  29543. /* 1695 */ 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094,
  29544. /* 1710 */ 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679,
  29545. /* 1725 */ 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274,
  29546. /* 1740 */ 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515,
  29547. /* 1755 */ 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546,
  29548. /* 1770 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29549. /* 1785 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546,
  29550. /* 1800 */ 23546, 23546, 35211, 23546, 23546, 23546, 23546, 23546, 23546, 23424, 21648, 23546, 23546, 23546, 35799,
  29551. /* 1815 */ 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639,
  29552. /* 1830 */ 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463,
  29553. /* 1845 */ 18479, 18968, 18495, 19670, 21681, 18544, 18567, 18590, 50977, 18528, 18551, 18574, 18597, 20868, 18620,
  29554. /* 1860 */ 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505,
  29555. /* 1875 */ 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674,
  29556. /* 1890 */ 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051,
  29557. /* 1905 */ 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396,
  29558. /* 1920 */ 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477,
  29559. /* 1935 */ 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632,
  29560. /* 1950 */ 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746,
  29561. /* 1965 */ 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016,
  29562. /* 1980 */ 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139,
  29563. /* 1995 */ 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489,
  29564. /* 2010 */ 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546,
  29565. /* 2025 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29566. /* 2040 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21736, 21705, 23546, 23546, 23546, 44539, 23546,
  29567. /* 2055 */ 23546, 24265, 25689, 25607, 23546, 23546, 23546, 23546, 26450, 47502, 21724, 21752, 23546, 23546, 23546,
  29568. /* 2070 */ 35799, 23546, 23546, 21783, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926,
  29569. /* 2085 */ 50639, 20660, 20237, 21819, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458,
  29570. /* 2100 */ 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868,
  29571. /* 2115 */ 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024,
  29572. /* 2130 */ 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839,
  29573. /* 2145 */ 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011,
  29574. /* 2160 */ 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668,
  29575. /* 2175 */ 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721,
  29576. /* 2190 */ 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592,
  29577. /* 2205 */ 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492,
  29578. /* 2220 */ 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842,
  29579. /* 2235 */ 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222,
  29580. /* 2250 */ 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037,
  29581. /* 2265 */ 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546,
  29582. /* 2280 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29583. /* 2295 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21551, 21857, 21913, 21913, 21913, 21864,
  29584. /* 2310 */ 21908, 21913, 21918, 21967, 21842, 21949, 21880, 21961, 21896, 21934, 21983, 21995, 20967, 23546, 23546,
  29585. /* 2325 */ 23546, 26225, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639,
  29586. /* 2340 */ 19926, 50639, 20660, 19723, 18282, 18849, 18305, 22023, 23546, 23546, 18368, 23546, 18915, 18388, 18432,
  29587. /* 2355 */ 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597,
  29588. /* 2370 */ 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209,
  29589. /* 2385 */ 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776,
  29590. /* 2400 */ 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812,
  29591. /* 2415 */ 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604,
  29592. /* 2430 */ 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456,
  29593. /* 2445 */ 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574,
  29594. /* 2460 */ 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853,
  29595. /* 2475 */ 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977,
  29596. /* 2490 */ 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206,
  29597. /* 2505 */ 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258,
  29598. /* 2520 */ 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884,
  29599. /* 2535 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29600. /* 2550 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 28636, 23546, 23546, 23546,
  29601. /* 2565 */ 25912, 50946, 23546, 50080, 50952, 21369, 28635, 23546, 22054, 22060, 22076, 22111, 22121, 22137, 23546,
  29602. /* 2580 */ 23546, 23546, 30755, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208,
  29603. /* 2595 */ 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 22183, 23546, 23546, 18368, 23546, 18915, 18388,
  29604. /* 2610 */ 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574,
  29605. /* 2625 */ 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695,
  29606. /* 2640 */ 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639,
  29607. /* 2655 */ 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958,
  29608. /* 2670 */ 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129,
  29609. /* 2685 */ 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422,
  29610. /* 2700 */ 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717,
  29611. /* 2715 */ 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432,
  29612. /* 2730 */ 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980,
  29613. /* 2745 */ 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175,
  29614. /* 2760 */ 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729,
  29615. /* 2775 */ 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858,
  29616. /* 2790 */ 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29617. /* 2805 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 27655, 23546, 23546,
  29618. /* 2820 */ 23546, 25841, 23546, 23546, 23546, 51066, 39748, 22869, 22242, 22228, 22245, 22261, 22277, 22288, 20967,
  29619. /* 2835 */ 23546, 23546, 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629,
  29620. /* 2850 */ 19208, 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915,
  29621. /* 2865 */ 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 20285, 18528, 18551,
  29622. /* 2880 */ 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036,
  29623. /* 2895 */ 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750,
  29624. /* 2910 */ 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937,
  29625. /* 2925 */ 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092,
  29626. /* 2940 */ 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380,
  29627. /* 2955 */ 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554,
  29628. /* 2970 */ 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708,
  29629. /* 2985 */ 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905,
  29630. /* 3000 */ 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159,
  29631. /* 3015 */ 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639,
  29632. /* 3030 */ 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782,
  29633. /* 3045 */ 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29634. /* 3060 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546,
  29635. /* 3075 */ 23546, 23546, 25841, 23546, 23546, 23546, 18648, 40763, 24585, 22304, 22324, 22304, 22338, 24585, 22308,
  29636. /* 3090 */ 20967, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29637. /* 3105 */ 25629, 19208, 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 22361, 23546,
  29638. /* 3120 */ 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528,
  29639. /* 3135 */ 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664,
  29640. /* 3150 */ 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053,
  29641. /* 3165 */ 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885,
  29642. /* 3180 */ 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074,
  29643. /* 3195 */ 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186,
  29644. /* 3210 */ 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900,
  29645. /* 3225 */ 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692,
  29646. /* 3240 */ 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883,
  29647. /* 3255 */ 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446,
  29648. /* 3270 */ 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380,
  29649. /* 3285 */ 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743,
  29650. /* 3300 */ 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29651. /* 3315 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 22386,
  29652. /* 3330 */ 23546, 23546, 23546, 25841, 18403, 23546, 19576, 22382, 44281, 22402, 22429, 22434, 22434, 22450, 22385,
  29653. /* 3345 */ 22413, 20967, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546,
  29654. /* 3360 */ 23546, 25629, 19208, 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368,
  29655. /* 3375 */ 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663,
  29656. /* 3390 */ 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546,
  29657. /* 3405 */ 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639,
  29658. /* 3420 */ 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195,
  29659. /* 3435 */ 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056,
  29660. /* 3450 */ 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667,
  29661. /* 3465 */ 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530,
  29662. /* 3480 */ 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452,
  29663. /* 3495 */ 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950,
  29664. /* 3510 */ 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129,
  29665. /* 3525 */ 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462,
  29666. /* 3540 */ 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727,
  29667. /* 3555 */ 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29668. /* 3570 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22473,
  29669. /* 3585 */ 23546, 23546, 23546, 23546, 25841, 23546, 23546, 23546, 23546, 21369, 25653, 22498, 22518, 22498, 22532,
  29670. /* 3600 */ 25653, 22502, 22555, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546,
  29671. /* 3615 */ 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27132, 23546, 42897, 23546, 44844, 38626, 22584,
  29672. /* 3630 */ 22361, 37471, 23546, 23546, 23546, 23546, 22587, 47563, 46856, 47563, 47563, 22603, 35356, 22824, 22824,
  29673. /* 3645 */ 34828, 22804, 22621, 22804, 22804, 33187, 36943, 23546, 23546, 23546, 23546, 23546, 26071, 23546, 22641,
  29674. /* 3660 */ 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439,
  29675. /* 3675 */ 22804, 22804, 22804, 22804, 22804, 29885, 33201, 43701, 32739, 23546, 23546, 23546, 23546, 23546, 29474,
  29676. /* 3690 */ 22702, 23546, 33124, 44563, 47563, 47563, 47563, 47564, 22719, 35350, 22824, 22764, 22824, 22767, 35689,
  29677. /* 3705 */ 22783, 22804, 22803, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 27587, 23546, 23546, 47562,
  29678. /* 3720 */ 46826, 47563, 47563, 27195, 22821, 42846, 22824, 22824, 22824, 30376, 22804, 22841, 22804, 22804, 29883,
  29679. /* 3735 */ 33199, 23546, 23546, 21430, 23546, 49502, 48973, 47563, 47563, 36153, 45209, 22824, 22824, 39816, 27834,
  29680. /* 3750 */ 22804, 22804, 43796, 30403, 39964, 23546, 23546, 22861, 23546, 47560, 22885, 47563, 23113, 22903, 22824,
  29681. /* 3765 */ 33078, 22920, 22804, 38116, 23546, 23546, 22937, 29174, 22980, 47563, 34384, 42527, 22825, 23019, 22804,
  29682. /* 3780 */ 31964, 47447, 46606, 23083, 36624, 23105, 32340, 30673, 23131, 36549, 23164, 40907, 43074, 23200, 23229,
  29683. /* 3795 */ 23275, 36645, 36686, 33550, 48975, 23107, 30672, 23141, 39417, 23313, 23334, 47559, 33030, 33552, 39426,
  29684. /* 3810 */ 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29685. /* 3825 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29686. /* 3840 */ 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546, 23546, 24855, 21369, 23546, 23546, 23546, 23546,
  29687. /* 3855 */ 23546, 20980, 20992, 23383, 23546, 23546, 23546, 35799, 23546, 23546, 23420, 23546, 23546, 23546, 23546,
  29688. /* 3870 */ 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 23440, 27132, 23546, 23546, 23546, 44844, 23546,
  29689. /* 3885 */ 23546, 18368, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 22603, 22824, 22824,
  29690. /* 3900 */ 22824, 34828, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 26071, 23546,
  29691. /* 3915 */ 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824,
  29692. /* 3930 */ 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29693. /* 3945 */ 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767,
  29694. /* 3960 */ 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29695. /* 3975 */ 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804, 22804,
  29696. /* 3990 */ 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824, 22824,
  29697. /* 4005 */ 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824,
  29698. /* 4020 */ 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804,
  29699. /* 4035 */ 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673,
  29700. /* 4050 */ 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552,
  29701. /* 4065 */ 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29702. /* 4080 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29703. /* 4095 */ 23546, 21089, 23485, 23546, 23546, 23546, 26606, 23546, 23546, 23546, 23546, 21369, 28080, 23505, 23528,
  29704. /* 4110 */ 23563, 23575, 28081, 23512, 20967, 23546, 23546, 23546, 35799, 23546, 23546, 51042, 30821, 23546, 37478,
  29705. /* 4125 */ 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327,
  29706. /* 4140 */ 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544,
  29707. /* 4155 */ 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582,
  29708. /* 4170 */ 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766,
  29709. /* 4185 */ 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814,
  29710. /* 4200 */ 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127,
  29711. /* 4215 */ 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150,
  29712. /* 4230 */ 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749,
  29713. /* 4245 */ 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692,
  29714. /* 4260 */ 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825,
  29715. /* 4275 */ 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113,
  29716. /* 4290 */ 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127,
  29717. /* 4305 */ 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632,
  29718. /* 4320 */ 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29719. /* 4335 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29720. /* 4350 */ 23546, 23546, 21089, 23598, 23546, 23546, 23546, 25841, 23546, 23546, 23546, 23184, 21369, 23546, 23546,
  29721. /* 4365 */ 23546, 23546, 23546, 22653, 22665, 23615, 23546, 23546, 23546, 35799, 23546, 23546, 23644, 23546, 23546,
  29722. /* 4380 */ 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 23664, 27132, 23546, 23546, 23546,
  29723. /* 4395 */ 44844, 23546, 23546, 23688, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 22603,
  29724. /* 4410 */ 22824, 22824, 22824, 34828, 22804, 22804, 22804, 22804, 39677, 48779, 23733, 23546, 23546, 23546, 23546,
  29725. /* 4425 */ 34921, 23753, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824,
  29726. /* 4440 */ 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 23777, 48792, 23546, 23546, 23546, 23546,
  29727. /* 4455 */ 23546, 50620, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 41753, 22821, 22824, 22824, 22824,
  29728. /* 4470 */ 22824, 44122, 35849, 22804, 22804, 22804, 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546,
  29729. /* 4485 */ 23546, 23546, 47562, 47563, 47563, 47563, 34866, 22821, 22824, 22824, 22824, 22824, 23826, 22804, 22804,
  29730. /* 4500 */ 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824,
  29731. /* 4515 */ 22824, 22824, 41433, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563,
  29732. /* 4530 */ 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824,
  29733. /* 4545 */ 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561,
  29734. /* 4560 */ 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559,
  29735. /* 4575 */ 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29736. /* 4590 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29737. /* 4605 */ 23546, 23546, 23546, 21089, 39721, 23546, 23546, 23546, 30797, 25982, 23546, 23546, 23849, 21369, 20313,
  29738. /* 4620 */ 44188, 23887, 23893, 23909, 23546, 49114, 23932, 23546, 23546, 23546, 36603, 23546, 23546, 51042, 23546,
  29739. /* 4635 */ 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 24187, 24465, 24820, 25200, 24258, 18282, 18849,
  29740. /* 4650 */ 18305, 23964, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495, 19670,
  29741. /* 4665 */ 23993, 24116, 24017, 24046, 24001, 24088, 25090, 24132, 24812, 24103, 24159, 23546, 30606, 23546, 23546,
  29742. /* 4680 */ 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 24182, 25436,
  29743. /* 4695 */ 24884, 24206, 24190, 24890, 24819, 24363, 24227, 24819, 24414, 24143, 25214, 23546, 18792, 18808, 18830,
  29744. /* 4710 */ 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 24243, 24030, 25425,
  29745. /* 4725 */ 24281, 24706, 24308, 24337, 24350, 24389, 24405, 24517, 24423, 25208, 23396, 19137, 19171, 19225, 39246,
  29746. /* 4740 */ 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 24439, 19364, 24455, 25063, 24489, 24505, 24533,
  29747. /* 4755 */ 25266, 24373, 24545, 24561, 24577, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797, 19809,
  29748. /* 4770 */ 24679, 24601, 25048, 19406, 24473, 24617, 25251, 25017, 24736, 26492, 19746, 41094, 19782, 18942, 19201,
  29749. /* 4785 */ 19798, 24633, 24673, 24695, 24722, 24779, 24801, 24836, 23977, 20842, 20016, 18679, 20827, 20042, 24871,
  29750. /* 4800 */ 24906, 24935, 24951, 25006, 25411, 25295, 20159, 20175, 20206, 25033, 24292, 25079, 25281, 25106, 20376,
  29751. /* 4815 */ 20392, 19394, 24919, 24657, 20462, 19676, 24211, 24785, 32258, 19353, 24647, 24966, 20473, 24060, 25136,
  29752. /* 4830 */ 20616, 25172, 25188, 25236, 24072, 25311, 25362, 25396, 25452, 23546, 23546, 23546, 23546, 23546, 23546,
  29753. /* 4845 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29754. /* 4860 */ 23546, 23546, 23546, 23546, 21089, 21328, 23546, 23546, 23546, 25841, 25477, 23546, 23546, 25472, 32915,
  29755. /* 4875 */ 25493, 25501, 25501, 25501, 25517, 21330, 25540, 20967, 23546, 23546, 23546, 35799, 23546, 23546, 51042,
  29756. /* 4890 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 19723, 18282,
  29757. /* 4905 */ 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968, 18495,
  29758. /* 4920 */ 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606, 23546,
  29759. /* 4935 */ 23546, 23546, 23582, 25581, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377, 18724,
  29760. /* 4950 */ 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20499, 25597, 18792, 18808,
  29761. /* 4965 */ 18830, 23628, 18814, 25623, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036, 19054,
  29762. /* 4980 */ 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 21016, 25645, 19137, 19171, 19225,
  29763. /* 4995 */ 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 25669, 25705, 25721, 19477, 25754, 19498, 25737,
  29764. /* 5010 */ 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190, 20797,
  29765. /* 5025 */ 18708, 21452, 19692, 19708, 20143, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782, 18942,
  29766. /* 5040 */ 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827, 20042,
  29767. /* 5055 */ 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143, 20301,
  29768. /* 5070 */ 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641, 20555,
  29769. /* 5085 */ 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546, 23546,
  29770. /* 5100 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29771. /* 5115 */ 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546, 23546, 23546,
  29772. /* 5130 */ 50535, 23259, 25770, 25770, 25770, 25779, 21123, 21135, 20967, 23546, 23546, 23546, 35799, 23546, 23546,
  29773. /* 5145 */ 51042, 23546, 23546, 25220, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660, 25802,
  29774. /* 5160 */ 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479, 18968,
  29775. /* 5175 */ 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546, 30606,
  29776. /* 5190 */ 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208, 25377,
  29777. /* 5205 */ 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546, 18792,
  29778. /* 5220 */ 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984, 19036,
  29779. /* 5235 */ 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137, 19171,
  29780. /* 5250 */ 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754, 19498,
  29781. /* 5265 */ 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657, 20190,
  29782. /* 5280 */ 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094, 19782,
  29783. /* 5295 */ 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679, 20827,
  29784. /* 5310 */ 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274, 51143,
  29785. /* 5325 */ 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515, 19641,
  29786. /* 5340 */ 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546, 23546,
  29787. /* 5355 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29788. /* 5370 */ 23546, 23546, 23546, 23546, 23546, 23546, 21147, 20888, 23546, 23546, 23546, 25841, 23546, 23546, 23546,
  29789. /* 5385 */ 23546, 21369, 22959, 25825, 25825, 25825, 25834, 20891, 22964, 25857, 23546, 23546, 23546, 35799, 23546,
  29790. /* 5400 */ 23546, 51042, 23546, 23546, 27140, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639, 20660,
  29791. /* 5415 */ 25873, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479,
  29792. /* 5430 */ 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620, 23546,
  29793. /* 5445 */ 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208,
  29794. /* 5460 */ 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546,
  29795. /* 5475 */ 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984,
  29796. /* 5490 */ 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137,
  29797. /* 5505 */ 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754,
  29798. /* 5520 */ 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657,
  29799. /* 5535 */ 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094,
  29800. /* 5550 */ 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679,
  29801. /* 5565 */ 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274,
  29802. /* 5580 */ 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515,
  29803. /* 5595 */ 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546,
  29804. /* 5610 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29805. /* 5625 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25552, 25561, 23546, 23546, 23546, 26852, 23546, 23546,
  29806. /* 5640 */ 23546, 23546, 21369, 33245, 25896, 25896, 25896, 25905, 36950, 33250, 25928, 23546, 23546, 23546, 35799,
  29807. /* 5655 */ 23546, 23546, 51042, 23546, 23546, 22366, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639,
  29808. /* 5670 */ 20660, 25964, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463,
  29809. /* 5685 */ 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620,
  29810. /* 5700 */ 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505,
  29811. /* 5715 */ 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674,
  29812. /* 5730 */ 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051,
  29813. /* 5745 */ 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396,
  29814. /* 5760 */ 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477,
  29815. /* 5775 */ 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632,
  29816. /* 5790 */ 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746,
  29817. /* 5805 */ 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016,
  29818. /* 5820 */ 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139,
  29819. /* 5835 */ 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 25998, 25380, 50639, 18729, 32258, 26037, 20489,
  29820. /* 5850 */ 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546,
  29821. /* 5865 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29822. /* 5880 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 26099, 23546, 23546, 23546, 23546, 25841, 21661,
  29823. /* 5895 */ 23546, 23546, 21094, 43925, 23546, 23546, 23546, 21665, 26069, 21092, 26087, 20967, 23546, 23546, 23546,
  29824. /* 5910 */ 35799, 23546, 23546, 51042, 31389, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926,
  29825. /* 5925 */ 50639, 26115, 26145, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458,
  29826. /* 5940 */ 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868,
  29827. /* 5955 */ 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024,
  29828. /* 5970 */ 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839,
  29829. /* 5985 */ 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011,
  29830. /* 6000 */ 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668,
  29831. /* 6015 */ 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721,
  29832. /* 6030 */ 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592,
  29833. /* 6045 */ 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492,
  29834. /* 6060 */ 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842,
  29835. /* 6075 */ 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222,
  29836. /* 6090 */ 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037,
  29837. /* 6105 */ 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546,
  29838. /* 6120 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29839. /* 6135 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841,
  29840. /* 6150 */ 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 23546, 43987, 26168, 20967, 23546, 23546,
  29841. /* 6165 */ 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639,
  29842. /* 6180 */ 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432,
  29843. /* 6195 */ 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597,
  29844. /* 6210 */ 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209,
  29845. /* 6225 */ 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776,
  29846. /* 6240 */ 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812,
  29847. /* 6255 */ 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604,
  29848. /* 6270 */ 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456,
  29849. /* 6285 */ 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574,
  29850. /* 6300 */ 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853,
  29851. /* 6315 */ 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977,
  29852. /* 6330 */ 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206,
  29853. /* 6345 */ 20222, 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258,
  29854. /* 6360 */ 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884,
  29855. /* 6375 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29856. /* 6390 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546,
  29857. /* 6405 */ 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546,
  29858. /* 6420 */ 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563,
  29859. /* 6435 */ 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546,
  29860. /* 6450 */ 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804,
  29861. /* 6465 */ 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621, 23546, 23546, 23546, 23546, 48975,
  29862. /* 6480 */ 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804,
  29863. /* 6495 */ 22804, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620, 23546, 23546, 23546, 48976, 47563,
  29864. /* 6510 */ 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804,
  29865. /* 6525 */ 29879, 23672, 23807, 23546, 23546, 23546, 23546, 26285, 23546, 23546, 47562, 47563, 47563, 47563, 29369,
  29866. /* 6540 */ 22821, 22824, 22824, 22824, 22824, 28821, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546,
  29867. /* 6555 */ 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433, 22804, 22804, 22804, 30403,
  29868. /* 6570 */ 47447, 23546, 23546, 26302, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970,
  29869. /* 6585 */ 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585,
  29870. /* 6600 */ 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550,
  29871. /* 6615 */ 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351,
  29872. /* 6630 */ 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29873. /* 6645 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546,
  29874. /* 6660 */ 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204,
  29875. /* 6675 */ 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973,
  29876. /* 6690 */ 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546,
  29877. /* 6705 */ 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804,
  29878. /* 6720 */ 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621, 23546, 23546, 23546, 23546,
  29879. /* 6735 */ 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804,
  29880. /* 6750 */ 22804, 22804, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620, 23546, 23546, 23546, 48976,
  29881. /* 6765 */ 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804,
  29882. /* 6780 */ 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563,
  29883. /* 6795 */ 29369, 22821, 22824, 22824, 22824, 22824, 28821, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546,
  29884. /* 6810 */ 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433, 22804, 22804, 22804,
  29885. /* 6825 */ 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804,
  29886. /* 6840 */ 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606,
  29887. /* 6855 */ 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031,
  29888. /* 6870 */ 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448,
  29889. /* 6885 */ 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29890. /* 6900 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546,
  29891. /* 6915 */ 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077,
  29892. /* 6930 */ 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29893. /* 6945 */ 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546,
  29894. /* 6960 */ 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804,
  29895. /* 6975 */ 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621, 26321, 23546, 23546,
  29896. /* 6990 */ 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804,
  29897. /* 7005 */ 22804, 22804, 22804, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620, 23546, 23546, 23546,
  29898. /* 7020 */ 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804,
  29899. /* 7035 */ 22804, 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563,
  29900. /* 7050 */ 47563, 29369, 22821, 22824, 22824, 22824, 22824, 28821, 22804, 22804, 22804, 22804, 29883, 33199, 23546,
  29901. /* 7065 */ 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433, 22804, 22804,
  29902. /* 7080 */ 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804,
  29903. /* 7095 */ 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447,
  29904. /* 7110 */ 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759,
  29905. /* 7125 */ 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729,
  29906. /* 7140 */ 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29907. /* 7155 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546,
  29908. /* 7170 */ 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432,
  29909. /* 7185 */ 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29910. /* 7200 */ 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546,
  29911. /* 7215 */ 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762,
  29912. /* 7230 */ 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621, 23546, 23546,
  29913. /* 7245 */ 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804,
  29914. /* 7260 */ 22804, 22804, 22804, 22804, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 19867, 23546, 23546,
  29915. /* 7275 */ 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804,
  29916. /* 7290 */ 22804, 22804, 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563,
  29917. /* 7305 */ 47563, 47563, 29369, 22821, 22824, 22824, 22824, 22824, 28821, 22804, 22804, 22804, 22804, 29883, 33199,
  29918. /* 7320 */ 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433, 22804,
  29919. /* 7335 */ 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078,
  29920. /* 7350 */ 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964,
  29921. /* 7365 */ 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464,
  29922. /* 7380 */ 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307,
  29923. /* 7395 */ 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29924. /* 7410 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677,
  29925. /* 7425 */ 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262,
  29926. /* 7440 */ 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 26341, 23546, 23546, 23546, 23546, 23546,
  29927. /* 7455 */ 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546,
  29928. /* 7470 */ 26341, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824,
  29929. /* 7485 */ 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621, 23546,
  29930. /* 7500 */ 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439,
  29931. /* 7515 */ 22804, 22804, 22804, 22804, 22804, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620, 23546,
  29932. /* 7530 */ 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849,
  29933. /* 7545 */ 22804, 22804, 22804, 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562,
  29934. /* 7560 */ 47563, 47563, 47563, 29369, 22821, 22824, 22824, 22824, 22824, 28821, 22804, 22804, 22804, 22804, 29883,
  29935. /* 7575 */ 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433,
  29936. /* 7590 */ 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824,
  29937. /* 7605 */ 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804,
  29938. /* 7620 */ 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296,
  29939. /* 7635 */ 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426,
  29940. /* 7650 */ 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29941. /* 7665 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29942. /* 7680 */ 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546,
  29943. /* 7695 */ 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29944. /* 7710 */ 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546, 44844, 23546,
  29945. /* 7725 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824,
  29946. /* 7740 */ 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29947. /* 7755 */ 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824,
  29948. /* 7770 */ 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29949. /* 7785 */ 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767,
  29950. /* 7800 */ 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29951. /* 7815 */ 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804, 22804,
  29952. /* 7830 */ 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824, 22824,
  29953. /* 7845 */ 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824,
  29954. /* 7860 */ 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804,
  29955. /* 7875 */ 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673,
  29956. /* 7890 */ 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552,
  29957. /* 7905 */ 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29958. /* 7920 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29959. /* 7935 */ 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546,
  29960. /* 7950 */ 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546,
  29961. /* 7965 */ 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 23049, 23546, 23546, 23546, 44844,
  29962. /* 7980 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824,
  29963. /* 7995 */ 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546,
  29964. /* 8010 */ 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824,
  29965. /* 8025 */ 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546,
  29966. /* 8040 */ 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824,
  29967. /* 8055 */ 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29968. /* 8070 */ 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804,
  29969. /* 8085 */ 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824,
  29970. /* 8100 */ 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113,
  29971. /* 8115 */ 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825,
  29972. /* 8130 */ 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111,
  29973. /* 8145 */ 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030,
  29974. /* 8160 */ 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29975. /* 8175 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29976. /* 8190 */ 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546,
  29977. /* 8205 */ 23546, 23546, 19262, 39432, 32077, 26364, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546,
  29978. /* 8220 */ 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546, 23546,
  29979. /* 8235 */ 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418,
  29980. /* 8250 */ 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546,
  29981. /* 8265 */ 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824,
  29982. /* 8280 */ 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546,
  29983. /* 8295 */ 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824,
  29984. /* 8310 */ 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546,
  29985. /* 8325 */ 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804,
  29986. /* 8340 */ 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824,
  29987. /* 8355 */ 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563,
  29988. /* 8370 */ 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824,
  29989. /* 8385 */ 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561,
  29990. /* 8400 */ 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559,
  29991. /* 8415 */ 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29992. /* 8430 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  29993. /* 8445 */ 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 19293,
  29994. /* 8460 */ 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546,
  29995. /* 8475 */ 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546, 23546,
  29996. /* 8490 */ 23546, 44844, 23546, 23546, 23546, 31312, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563,
  29997. /* 8505 */ 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546,
  29998. /* 8520 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824,
  29999. /* 8535 */ 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546,
  30000. /* 8550 */ 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824,
  30001. /* 8565 */ 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546,
  30002. /* 8580 */ 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804,
  30003. /* 8595 */ 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209,
  30004. /* 8610 */ 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563,
  30005. /* 8625 */ 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109,
  30006. /* 8640 */ 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609,
  30007. /* 8655 */ 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551,
  30008. /* 8670 */ 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546,
  30009. /* 8685 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30010. /* 8700 */ 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369,
  30011. /* 8715 */ 23546, 23546, 23546, 23546, 37937, 26399, 26410, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546,
  30012. /* 8730 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546,
  30013. /* 8745 */ 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563,
  30014. /* 8760 */ 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546,
  30015. /* 8775 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823,
  30016. /* 8790 */ 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546,
  30017. /* 8805 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824,
  30018. /* 8820 */ 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546,
  30019. /* 8835 */ 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376,
  30020. /* 8850 */ 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563,
  30021. /* 8865 */ 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560,
  30022. /* 8880 */ 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563,
  30023. /* 8895 */ 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549,
  30024. /* 8910 */ 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030,
  30025. /* 8925 */ 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546,
  30026. /* 8940 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30027. /* 8955 */ 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546,
  30028. /* 8970 */ 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546,
  30029. /* 8985 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800,
  30030. /* 9000 */ 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563,
  30031. /* 9015 */ 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546,
  30032. /* 9030 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135,
  30033. /* 9045 */ 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546,
  30034. /* 9060 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821,
  30035. /* 9075 */ 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546,
  30036. /* 9090 */ 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824,
  30037. /* 9105 */ 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 26426, 23546, 48973, 47563, 47563,
  30038. /* 9120 */ 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546,
  30039. /* 9135 */ 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563,
  30040. /* 9150 */ 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804,
  30041. /* 9165 */ 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756,
  30042. /* 9180 */ 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546,
  30043. /* 9195 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30044. /* 9210 */ 23546, 23546, 23546, 23546, 23546, 23546, 26445, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546,
  30045. /* 9225 */ 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546,
  30046. /* 9240 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066,
  30047. /* 9255 */ 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563,
  30048. /* 9270 */ 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546,
  30049. /* 9285 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563,
  30050. /* 9300 */ 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546,
  30051. /* 9315 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564,
  30052. /* 9330 */ 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546,
  30053. /* 9345 */ 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824,
  30054. /* 9360 */ 22824, 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563,
  30055. /* 9375 */ 47563, 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546,
  30056. /* 9390 */ 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586,
  30057. /* 9405 */ 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673,
  30058. /* 9420 */ 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141,
  30059. /* 9435 */ 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546,
  30060. /* 9450 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30061. /* 9465 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546,
  30062. /* 9480 */ 23546, 23546, 21369, 41698, 26466, 26486, 26508, 26520, 41701, 26470, 20967, 23546, 23546, 23546, 35799,
  30063. /* 9495 */ 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926, 50639,
  30064. /* 9510 */ 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 38227, 18915, 18388, 18432, 18458, 18463,
  30065. /* 9525 */ 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620,
  30066. /* 9540 */ 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505,
  30067. /* 9555 */ 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674,
  30068. /* 9570 */ 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051,
  30069. /* 9585 */ 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396,
  30070. /* 9600 */ 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477,
  30071. /* 9615 */ 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632,
  30072. /* 9630 */ 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746,
  30073. /* 9645 */ 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 26543,
  30074. /* 9660 */ 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139,
  30075. /* 9675 */ 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489,
  30076. /* 9690 */ 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546,
  30077. /* 9705 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30078. /* 9720 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546,
  30079. /* 9735 */ 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 23546, 23546, 23424, 20967, 23546, 23546, 23546,
  30080. /* 9750 */ 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639, 19926,
  30081. /* 9765 */ 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458,
  30082. /* 9780 */ 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868,
  30083. /* 9795 */ 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024,
  30084. /* 9810 */ 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839,
  30085. /* 9825 */ 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011,
  30086. /* 9840 */ 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668,
  30087. /* 9855 */ 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721,
  30088. /* 9870 */ 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592,
  30089. /* 9885 */ 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492,
  30090. /* 9900 */ 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842,
  30091. /* 9915 */ 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222,
  30092. /* 9930 */ 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037,
  30093. /* 9945 */ 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546,
  30094. /* 9960 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30095. /* 9975 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841,
  30096. /* 9990 */ 23546, 23546, 23546, 23546, 21369, 28554, 23546, 26577, 26583, 26599, 47449, 44239, 20967, 23546, 23546,
  30097. /* 10005 */ 23546, 35799, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50639,
  30098. /* 10020 */ 19926, 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432,
  30099. /* 10035 */ 18458, 18463, 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597,
  30100. /* 10050 */ 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209,
  30101. /* 10065 */ 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776,
  30102. /* 10080 */ 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812,
  30103. /* 10095 */ 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604,
  30104. /* 10110 */ 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456,
  30105. /* 10125 */ 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574,
  30106. /* 10140 */ 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853,
  30107. /* 10155 */ 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977,
  30108. /* 10170 */ 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 26622, 20175, 20206,
  30109. /* 10185 */ 20222, 51139, 20274, 51143, 20301, 26638, 20392, 51127, 20418, 50802, 26654, 25380, 50639, 18729, 32258,
  30110. /* 10200 */ 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884,
  30111. /* 10215 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30112. /* 10230 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 27306, 23546, 23546, 23546,
  30113. /* 10245 */ 26527, 26683, 26714, 28322, 26699, 26731, 50814, 50823, 26775, 26789, 26801, 26817, 26829, 26204, 26845,
  30114. /* 10260 */ 23599, 23546, 25326, 21171, 35898, 34903, 26868, 26909, 26948, 33311, 26979, 26959, 26995, 27011, 45967,
  30115. /* 10275 */ 27047, 27063, 27101, 27117, 34536, 27156, 23546, 23546, 44844, 41240, 34846, 23546, 42415, 27173, 27664,
  30116. /* 10290 */ 23546, 42356, 28101, 47563, 47563, 47563, 27192, 27418, 22824, 22824, 42533, 43762, 22804, 22804, 22804,
  30117. /* 10305 */ 27211, 27231, 36943, 23546, 44839, 40944, 23546, 27267, 27287, 46640, 23546, 27304, 35519, 43402, 27322,
  30118. /* 10320 */ 27344, 47563, 47563, 27380, 27403, 27436, 31453, 22824, 33011, 27464, 27493, 27533, 27556, 22804, 38069,
  30119. /* 10335 */ 35418, 30315, 27573, 26241, 27609, 23546, 44532, 27629, 39107, 50620, 23546, 45009, 27646, 31107, 27698,
  30120. /* 10350 */ 47563, 27746, 27765, 23297, 27785, 27825, 36368, 22824, 27859, 48139, 23833, 27991, 44504, 49256, 22804,
  30121. /* 10365 */ 43572, 23672, 27877, 42988, 25683, 23546, 27893, 27913, 46094, 23546, 21213, 44018, 47563, 30489, 32462,
  30122. /* 10380 */ 27941, 34820, 22824, 45399, 49012, 28821, 27978, 22804, 22804, 28014, 28034, 49064, 28072, 35792, 28097,
  30123. /* 10395 */ 51046, 28117, 50856, 22994, 28137, 47563, 41728, 28206, 28229, 22824, 41433, 28267, 28290, 22804, 34572,
  30124. /* 10410 */ 28320, 28338, 23546, 23546, 39715, 47560, 28358, 45550, 23113, 28379, 35308, 33078, 28399, 36714, 31970,
  30125. /* 10425 */ 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585,
  30126. /* 10440 */ 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 41649, 28419, 28455, 40472, 38341,
  30127. /* 10455 */ 28471, 38828, 40452, 28791, 24756, 33030, 27540, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351,
  30128. /* 10470 */ 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30129. /* 10485 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 28526, 23546,
  30130. /* 10500 */ 23546, 26527, 23546, 23546, 23546, 23546, 34078, 28545, 23546, 28652, 28658, 28674, 28690, 28701, 26204,
  30131. /* 10515 */ 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 26963, 23546, 23546, 23546, 23546, 23546, 48973,
  30132. /* 10530 */ 47563, 22605, 35842, 45303, 43066, 27800, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546,
  30133. /* 10545 */ 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804,
  30134. /* 10560 */ 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 46230, 50621, 28718, 23546, 28717, 23546,
  30135. /* 10575 */ 48975, 47563, 47563, 47563, 27769, 28735, 22823, 22824, 22824, 22824, 49361, 49439, 22804, 22804, 22804,
  30136. /* 10590 */ 22804, 28781, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620, 23546, 23546, 23546, 48976,
  30137. /* 10605 */ 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804,
  30138. /* 10620 */ 22804, 29879, 23672, 23807, 23546, 18289, 23546, 23546, 44779, 49528, 23546, 36898, 47563, 47563, 47563,
  30139. /* 10635 */ 40417, 28807, 22824, 22824, 22824, 50340, 31197, 28844, 22804, 22804, 22804, 28863, 33199, 23546, 23546,
  30140. /* 10650 */ 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824, 41433, 22804, 22804, 22804,
  30141. /* 10665 */ 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804,
  30142. /* 10680 */ 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606,
  30143. /* 10695 */ 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031,
  30144. /* 10710 */ 33550, 21205, 28900, 28924, 28940, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448,
  30145. /* 10725 */ 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30146. /* 10740 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 28963,
  30147. /* 10755 */ 23546, 23546, 26527, 23546, 28992, 23546, 29010, 36977, 29029, 29038, 29054, 29069, 29081, 29097, 29109,
  30148. /* 10770 */ 26204, 23546, 23546, 33645, 49739, 23546, 28529, 23546, 23546, 31365, 23546, 23546, 23546, 35995, 23546,
  30149. /* 10785 */ 29125, 31167, 22824, 29149, 40337, 48749, 32108, 23546, 29172, 23546, 44844, 29190, 42384, 23546, 31347,
  30150. /* 10800 */ 50774, 29209, 23546, 25948, 29214, 29230, 29291, 47563, 47563, 29309, 29325, 22824, 22824, 45608, 49036,
  30151. /* 10815 */ 29349, 22804, 22804, 39677, 36943, 30220, 23546, 23546, 47099, 23546, 22095, 50621, 37205, 27682, 23546,
  30152. /* 10830 */ 23546, 48975, 28152, 40051, 47563, 29366, 37135, 45217, 46920, 46953, 36665, 22824, 49439, 49901, 29385,
  30153. /* 10845 */ 29404, 34563, 22804, 29885, 40883, 26241, 23546, 23546, 47600, 23546, 23546, 29423, 23546, 29445, 23546,
  30154. /* 10860 */ 48976, 47563, 47563, 47563, 44406, 47564, 22821, 22824, 22824, 49328, 42575, 22767, 35849, 22804, 22804,
  30155. /* 10875 */ 39288, 28274, 50448, 23672, 29464, 23546, 23546, 23546, 29498, 42828, 23546, 23546, 47562, 47563, 47563,
  30156. /* 10890 */ 46820, 29369, 22821, 22824, 22824, 37856, 22824, 28821, 22804, 22804, 30184, 22804, 29883, 33199, 23546,
  30157. /* 10905 */ 23546, 29517, 23546, 47519, 29538, 47563, 46768, 47563, 41728, 22824, 49353, 22824, 41433, 22804, 41641,
  30158. /* 10920 */ 22804, 27843, 29565, 23546, 23546, 23546, 29581, 33988, 49629, 29610, 50265, 49148, 29627, 30732, 37573,
  30159. /* 10935 */ 29644, 31970, 23546, 23546, 28626, 22586, 47563, 47563, 29661, 22824, 47375, 22804, 22804, 29679, 47447,
  30160. /* 10950 */ 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759,
  30161. /* 10965 */ 33031, 45087, 23089, 29701, 47077, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 27251,
  30162. /* 10980 */ 29717, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30163. /* 10995 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546,
  30164. /* 11010 */ 21570, 23546, 23546, 26527, 23546, 29745, 24166, 23546, 32508, 29764, 29773, 29789, 29803, 29812, 29828,
  30165. /* 11025 */ 29839, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 34673, 34671, 23546,
  30166. /* 11040 */ 38486, 38493, 29855, 28213, 35842, 29875, 43066, 27800, 23546, 40629, 29901, 44844, 23546, 29926, 30774,
  30167. /* 11055 */ 23546, 23546, 41541, 20026, 29946, 29989, 29293, 38320, 30005, 40270, 30031, 42116, 30052, 30082, 30100,
  30168. /* 11070 */ 49972, 39453, 30135, 41942, 39677, 36943, 23546, 23546, 23546, 42078, 23546, 30162, 50621, 23546, 23546,
  30169. /* 11085 */ 23546, 39564, 48975, 47563, 47563, 47563, 48721, 37135, 22823, 22824, 22824, 22824, 42777, 49439, 22804,
  30170. /* 11100 */ 22804, 22804, 22804, 30182, 30146, 30200, 30236, 23546, 23546, 23546, 30252, 30271, 50620, 23546, 23546,
  30171. /* 11115 */ 45468, 23469, 31420, 34156, 47563, 47563, 45201, 30292, 30331, 30348, 22824, 22824, 30365, 29156, 29407,
  30172. /* 11130 */ 22804, 22804, 22804, 30399, 23672, 23807, 23546, 23546, 23546, 23546, 45523, 28572, 23546, 33872, 47563,
  30173. /* 11145 */ 47563, 30419, 29369, 30438, 22824, 22824, 48645, 22824, 31904, 22804, 22804, 50360, 22804, 30539, 33199,
  30174. /* 11160 */ 49920, 23546, 30462, 23546, 50724, 48973, 36270, 47563, 30480, 41728, 35391, 22824, 30505, 41433, 50493,
  30175. /* 11175 */ 22804, 30530, 30403, 47447, 49732, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078,
  30176. /* 11190 */ 22804, 22804, 31970, 23546, 23251, 23546, 22586, 47563, 47563, 30555, 22824, 36108, 22804, 22804, 30575,
  30177. /* 11205 */ 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 30597, 46609, 47561, 23111, 30673, 39296, 30622,
  30178. /* 11220 */ 30648, 30668, 30689, 19013, 30707, 30727, 30748, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307,
  30179. /* 11235 */ 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30180. /* 11250 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677,
  30181. /* 11265 */ 23546, 23547, 30771, 23546, 26527, 25156, 30790, 23546, 30813, 24321, 30837, 30846, 30862, 30876, 30888,
  30182. /* 11280 */ 30904, 30915, 26204, 22703, 30931, 26561, 35799, 30978, 26921, 26341, 27925, 30994, 31013, 31032, 31061,
  30183. /* 11295 */ 31045, 31097, 31131, 31147, 31183, 31227, 31261, 31277, 39237, 39476, 31293, 33748, 31328, 22212, 31363,
  30184. /* 11310 */ 31381, 41158, 23546, 23546, 40033, 23546, 22587, 32449, 31405, 47817, 28510, 31441, 31475, 46890, 31498,
  30185. /* 11325 */ 30304, 31538, 22625, 36744, 47681, 39677, 36943, 23698, 29973, 31554, 29930, 31590, 23708, 31634, 39997,
  30186. /* 11340 */ 31661, 48812, 31689, 31711, 31727, 31763, 31798, 31814, 29245, 31850, 40093, 31890, 34721, 31940, 35662,
  30187. /* 11355 */ 31956, 31986, 27076, 32035, 32066, 32093, 32133, 26241, 50755, 23546, 43683, 23546, 32169, 19239, 32192,
  30188. /* 11370 */ 32249, 22951, 24750, 43255, 32274, 47563, 32292, 45560, 22821, 32317, 22824, 42593, 48588, 50230, 35849,
  30189. /* 11385 */ 32356, 22804, 45665, 32384, 32405, 32421, 23807, 25150, 32478, 32497, 47176, 23546, 32524, 45835, 36145,
  30190. /* 11400 */ 40407, 31425, 32550, 44054, 32586, 34739, 22824, 32631, 32657, 30066, 33080, 32683, 47042, 40501, 29883,
  30191. /* 11415 */ 33199, 23546, 45717, 33237, 23546, 23546, 32701, 31115, 42955, 32563, 41728, 45894, 41614, 32608, 41433,
  30192. /* 11430 */ 33712, 42499, 35727, 30403, 47447, 28590, 32719, 48060, 32755, 32790, 42232, 33671, 32806, 37745, 39609,
  30193. /* 11445 */ 32837, 40736, 33730, 32892, 32931, 32953, 19435, 22586, 32974, 48106, 28046, 33009, 33027, 33047, 48381,
  30194. /* 11460 */ 35461, 47447, 40617, 22585, 47563, 50257, 22824, 33074, 36473, 36549, 33096, 40786, 36807, 32667, 39296,
  30195. /* 11475 */ 33119, 43227, 48451, 49953, 33140, 24763, 23318, 45645, 33156, 33172, 33217, 47559, 33030, 30691, 33266,
  30196. /* 11490 */ 33282, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30197. /* 11505 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30198. /* 11520 */ 22677, 23546, 23546, 33306, 23546, 26527, 33327, 33345, 25456, 24849, 33370, 33400, 23546, 33386, 33428,
  30199. /* 11535 */ 33437, 33453, 33464, 26204, 23546, 23546, 33480, 35799, 23546, 23546, 23546, 23546, 27288, 23546, 23546,
  30200. /* 11550 */ 34477, 23546, 34484, 31605, 33499, 33519, 43660, 33545, 33568, 27800, 23546, 33621, 23546, 44844, 33621,
  30201. /* 11565 */ 23546, 23546, 30997, 23546, 33640, 34051, 23546, 22587, 33661, 47563, 47563, 47563, 33687, 22824, 22824,
  30202. /* 11580 */ 22824, 43762, 33703, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 50621,
  30203. /* 11595 */ 23546, 23546, 23546, 33746, 48975, 47563, 47563, 47563, 43863, 37135, 22823, 22824, 22824, 22824, 34733,
  30204. /* 11610 */ 49439, 22804, 22804, 22804, 22804, 33764, 29885, 40883, 26241, 23546, 23546, 23546, 23546, 23546, 50620,
  30205. /* 11625 */ 23546, 20258, 23546, 48976, 47563, 47563, 46759, 47563, 47564, 22821, 22824, 22824, 37850, 22824, 22767,
  30206. /* 11640 */ 35849, 22804, 22804, 33781, 22804, 29879, 23672, 23807, 23546, 23546, 23546, 23546, 23546, 43159, 23546,
  30207. /* 11655 */ 47562, 47563, 47563, 31773, 29369, 22821, 22824, 22824, 49239, 22824, 28821, 22804, 22804, 22804, 33801,
  30208. /* 11670 */ 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 41728, 22824, 22824, 22824,
  30209. /* 11685 */ 41433, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824,
  30210. /* 11700 */ 22824, 33078, 22804, 22804, 31970, 33820, 23546, 23546, 22586, 44762, 47563, 23109, 33840, 22825, 34299,
  30211. /* 11715 */ 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673,
  30212. /* 11730 */ 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 23335,
  30213. /* 11745 */ 32233, 42307, 22729, 33859, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30214. /* 11760 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30215. /* 11775 */ 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 32176, 23546, 23546, 41552, 33893, 33902, 33918,
  30216. /* 11790 */ 33924, 33940, 33956, 33967, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 37894, 23546, 23546, 23546,
  30217. /* 11805 */ 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 28765, 41920, 23546, 23546, 44844,
  30218. /* 11820 */ 23546, 23546, 23546, 39585, 23546, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824,
  30219. /* 11835 */ 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546,
  30220. /* 11850 */ 23546, 43177, 23546, 23546, 45738, 48975, 47563, 47563, 47563, 47563, 37135, 41960, 22824, 22824, 22824,
  30221. /* 11865 */ 22824, 47410, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 20340, 23546, 23178,
  30222. /* 11880 */ 20358, 23546, 23546, 20360, 33983, 47563, 47563, 34004, 47563, 47564, 22821, 22824, 36824, 22824, 22824,
  30223. /* 11895 */ 22767, 35849, 22804, 33785, 22804, 22804, 29879, 34024, 23546, 23546, 23546, 34050, 23546, 23546, 23546,
  30224. /* 11910 */ 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804,
  30225. /* 11925 */ 22804, 29883, 33199, 23546, 23546, 32147, 47539, 23546, 48973, 47563, 47563, 39206, 45209, 22824, 22824,
  30226. /* 11940 */ 43898, 27834, 22804, 22804, 34943, 30403, 47447, 34067, 47158, 34094, 23546, 34121, 32984, 34141, 34177,
  30227. /* 11955 */ 43533, 34196, 34244, 36447, 34263, 31970, 28608, 23546, 34315, 34336, 34355, 34372, 28875, 33605, 34412,
  30228. /* 11970 */ 34436, 34454, 31964, 47447, 46606, 43054, 32993, 34501, 34521, 30673, 34552, 36549, 46609, 47561, 23111,
  30229. /* 11985 */ 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030,
  30230. /* 12000 */ 33552, 39426, 43326, 34588, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30231. /* 12015 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30232. /* 12030 */ 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546,
  30233. /* 12045 */ 23546, 23546, 19262, 39432, 32077, 26204, 41690, 23546, 26286, 34628, 23546, 23546, 23546, 34692, 23546,
  30234. /* 12060 */ 34693, 23546, 23546, 34656, 34689, 40521, 22887, 37164, 34396, 43815, 34709, 34755, 23546, 23546, 29501,
  30235. /* 12075 */ 44844, 26383, 30255, 23546, 23546, 41921, 23546, 23546, 23546, 22587, 47563, 47563, 32276, 47563, 27418,
  30236. /* 12090 */ 22824, 22824, 35655, 43762, 22804, 22804, 35850, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546,
  30237. /* 12105 */ 23546, 23546, 23546, 23546, 34780, 43953, 48975, 47563, 47563, 47563, 47563, 29859, 22823, 22824, 22824,
  30238. /* 12120 */ 22824, 22824, 30446, 22804, 22804, 22804, 22804, 22804, 34799, 33201, 23546, 34844, 23546, 23546, 23546,
  30239. /* 12135 */ 23546, 23546, 23546, 23546, 42714, 48976, 34862, 47563, 47563, 47563, 47564, 34882, 22824, 22824, 22824,
  30240. /* 12150 */ 22824, 22767, 30383, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 34898, 23546, 23546,
  30241. /* 12165 */ 23546, 23546, 47562, 47563, 47563, 49594, 27195, 22821, 22824, 22824, 22824, 49007, 30376, 22804, 22804,
  30242. /* 12180 */ 22804, 28251, 29883, 33199, 23546, 23546, 45156, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824,
  30243. /* 12195 */ 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563,
  30244. /* 12210 */ 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 28617, 23546, 48860, 47563, 47563, 23109, 22824,
  30245. /* 12225 */ 22825, 22804, 22804, 48020, 34919, 46606, 50168, 47563, 35289, 22824, 34937, 22804, 34959, 46609, 47561,
  30246. /* 12240 */ 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559,
  30247. /* 12255 */ 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30248. /* 12270 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30249. /* 12285 */ 23546, 23546, 23546, 22677, 23546, 23546, 26217, 23546, 26527, 28994, 29429, 32937, 21397, 21407, 19607,
  30250. /* 12300 */ 19616, 34984, 34999, 35011, 35027, 35038, 26204, 23546, 23546, 23546, 21159, 35548, 23546, 23546, 29013,
  30251. /* 12315 */ 35054, 32876, 23546, 35263, 35074, 35112, 39498, 35166, 47961, 27448, 49402, 46199, 35202, 23546, 23546,
  30252. /* 12330 */ 23546, 38910, 23546, 47123, 35227, 23546, 23546, 23546, 35244, 44990, 22587, 44754, 35279, 47563, 35324,
  30253. /* 12345 */ 35372, 48187, 22824, 29333, 35407, 49176, 35434, 22804, 35477, 39677, 36943, 23546, 35515, 50019, 41319,
  30254. /* 12360 */ 42187, 35535, 23546, 19253, 43384, 35575, 35592, 35612, 35186, 47563, 42920, 37391, 20600, 22823, 35386,
  30255. /* 12375 */ 22824, 40181, 35635, 35678, 29350, 22804, 33765, 35713, 35750, 48433, 33201, 23546, 23546, 23546, 23546,
  30256. /* 12390 */ 35766, 20349, 35815, 44388, 23546, 23546, 40380, 47253, 47563, 47563, 41209, 36250, 35833, 43893, 22824,
  30257. /* 12405 */ 22824, 48653, 43541, 43789, 35866, 22804, 22804, 31917, 36853, 33195, 23546, 19730, 35885, 35914, 32534,
  30258. /* 12420 */ 35930, 35957, 45488, 36011, 28363, 36030, 36050, 36074, 36103, 39870, 50408, 42260, 32597, 45635, 22804,
  30259. /* 12435 */ 36124, 36169, 36204, 27085, 31863, 36220, 46659, 44955, 21826, 38142, 32958, 36266, 47872, 36286, 36321,
  30260. /* 12450 */ 36366, 36384, 36409, 36435, 36471, 36489, 36514, 36540, 36572, 23546, 23546, 18340, 36595, 30632, 36619,
  30261. /* 12465 */ 36640, 39370, 36661, 36681, 36702, 36740, 36760, 31970, 23546, 36781, 18841, 22586, 47563, 47563, 23109,
  30262. /* 12480 */ 22824, 22825, 22804, 22804, 31964, 34034, 46606, 22585, 31741, 36801, 36823, 36840, 38424, 36549, 46609,
  30263. /* 12495 */ 36869, 23111, 30673, 39296, 36886, 35338, 36933, 36966, 48975, 23107, 30672, 23141, 24756, 33030, 33551,
  30264. /* 12510 */ 42313, 47646, 36993, 39426, 42307, 22729, 23448, 37021, 23363, 23546, 23546, 23546, 23546, 23546, 23546,
  30265. /* 12525 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30266. /* 12540 */ 23546, 23546, 23546, 23546, 22677, 23546, 23546, 39988, 23546, 26527, 23546, 23546, 23546, 23546, 21369,
  30267. /* 12555 */ 50028, 21708, 39996, 40225, 24990, 37071, 37082, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546,
  30268. /* 12570 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800, 23546,
  30269. /* 12585 */ 23546, 23546, 44844, 23546, 23546, 23546, 23546, 31016, 23546, 23546, 23546, 22587, 47563, 47563, 47563,
  30270. /* 12600 */ 47563, 27418, 22824, 27420, 22824, 43762, 22804, 22804, 48012, 22804, 39677, 36943, 23546, 23546, 23546,
  30271. /* 12615 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823,
  30272. /* 12630 */ 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546,
  30273. /* 12645 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824,
  30274. /* 12660 */ 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546,
  30275. /* 12675 */ 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376,
  30276. /* 12690 */ 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563,
  30277. /* 12705 */ 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560,
  30278. /* 12720 */ 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563,
  30279. /* 12735 */ 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549,
  30280. /* 12750 */ 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030,
  30281. /* 12765 */ 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546,
  30282. /* 12780 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30283. /* 12795 */ 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 25524, 23546, 26527, 23546, 23546, 23546, 23546,
  30284. /* 12810 */ 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546,
  30285. /* 12825 */ 37098, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800,
  30286. /* 12840 */ 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563,
  30287. /* 12855 */ 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546,
  30288. /* 12870 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135,
  30289. /* 12885 */ 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 37115,
  30290. /* 12900 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 37134, 47563, 47563, 47563, 47564, 37151,
  30291. /* 12915 */ 22824, 22824, 22824, 22824, 22767, 28828, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546,
  30292. /* 12930 */ 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824,
  30293. /* 12945 */ 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563,
  30294. /* 12960 */ 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546,
  30295. /* 12975 */ 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563,
  30296. /* 12990 */ 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804,
  30297. /* 13005 */ 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756,
  30298. /* 13020 */ 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546,
  30299. /* 13035 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30300. /* 13050 */ 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 41164, 23546, 26527, 23546, 34764, 23546,
  30301. /* 13065 */ 19155, 37185, 37221, 37234, 37250, 37256, 37272, 37288, 37299, 26204, 23546, 37315, 23546, 35799, 23546,
  30302. /* 13080 */ 43426, 26746, 23546, 23546, 37335, 23546, 32153, 42194, 37334, 37351, 37380, 37407, 37443, 40833, 37430,
  30303. /* 13095 */ 32821, 37459, 23546, 23546, 34612, 23546, 23546, 40581, 34220, 23546, 41122, 29193, 49795, 34228, 47262,
  30304. /* 13110 */ 37494, 29549, 41774, 37514, 42784, 22904, 45886, 37530, 38036, 37570, 36188, 37589, 23034, 37618, 28342,
  30305. /* 13125 */ 23546, 23546, 23546, 23546, 50126, 23546, 23546, 23546, 23546, 23546, 48975, 28498, 44484, 47563, 28434,
  30306. /* 13140 */ 44023, 37641, 37671, 39810, 30349, 22824, 39853, 47704, 29645, 22804, 49383, 22804, 37657, 33201, 23546,
  30307. /* 13155 */ 23546, 50909, 37693, 23546, 32019, 38379, 23546, 23546, 23546, 48976, 47563, 47563, 46474, 32220, 37710,
  30308. /* 13170 */ 22821, 22824, 22824, 49321, 37734, 37761, 35849, 22804, 22804, 37788, 37809, 29879, 33195, 23546, 37872,
  30309. /* 13185 */ 23546, 23546, 37889, 23546, 23546, 23546, 47562, 27357, 47563, 47563, 27195, 22821, 40293, 22824, 22824,
  30310. /* 13200 */ 22824, 30376, 34247, 22804, 22804, 22804, 29883, 33199, 37910, 31075, 23546, 37928, 47744, 48973, 37953,
  30311. /* 13215 */ 47563, 47563, 37979, 38003, 22824, 22824, 38027, 38061, 22804, 22804, 38085, 47447, 23404, 23546, 28599,
  30312. /* 13230 */ 23546, 47560, 31782, 47563, 23113, 38011, 22824, 33078, 33721, 22804, 31970, 23546, 21592, 23546, 22586,
  30313. /* 13245 */ 47563, 50097, 23109, 22824, 40810, 22804, 22804, 38110, 47447, 46606, 22585, 47563, 24761, 22824, 30673,
  30314. /* 13260 */ 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141,
  30315. /* 13275 */ 33290, 45056, 38132, 38158, 38179, 33552, 39426, 27505, 38215, 23448, 23351, 23363, 23546, 23546, 23546,
  30316. /* 13290 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30317. /* 13305 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23648, 23546, 26527, 23546, 26305,
  30318. /* 13320 */ 23546, 23546, 29594, 20530, 20539, 38250, 38264, 38273, 38289, 38300, 26364, 23546, 23948, 23546, 35799,
  30319. /* 13335 */ 23546, 34320, 23546, 23546, 23546, 23948, 23546, 35554, 36579, 23947, 35559, 38316, 33588, 36393, 38336,
  30320. /* 13350 */ 43066, 27800, 23546, 23546, 38357, 44844, 23546, 39344, 42555, 23546, 39071, 23546, 23546, 38375, 41192,
  30321. /* 13365 */ 48530, 47563, 47812, 38395, 28750, 22824, 42121, 31482, 43762, 38449, 22804, 38419, 38440, 32050, 38473,
  30322. /* 13380 */ 38509, 46688, 34783, 23546, 23546, 23546, 23546, 23546, 38530, 23546, 23546, 48975, 47883, 38550, 42949,
  30323. /* 13395 */ 47563, 37135, 22823, 38568, 30084, 22824, 22824, 49439, 42031, 34293, 41837, 22804, 22804, 29885, 33201,
  30324. /* 13410 */ 23546, 38929, 23546, 38602, 23546, 44369, 37873, 23791, 38621, 23546, 48976, 27031, 38642, 47563, 38659,
  30325. /* 13425 */ 47564, 38683, 47916, 22824, 22824, 38702, 33843, 35849, 39277, 22804, 33804, 38724, 29879, 33195, 23546,
  30326. /* 13440 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824,
  30327. /* 13455 */ 22824, 22824, 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973,
  30328. /* 13470 */ 47563, 47563, 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 36556, 23546, 23546,
  30329. /* 13485 */ 23546, 23546, 47560, 38744, 47563, 30559, 22824, 22824, 46066, 22804, 22804, 31970, 23546, 23546, 49685,
  30330. /* 13500 */ 22586, 47563, 47563, 23109, 47427, 22825, 22804, 35452, 31964, 47447, 46606, 22585, 47563, 24761, 22824,
  30331. /* 13515 */ 30673, 22804, 36549, 38761, 47561, 38782, 38802, 43621, 23464, 38824, 38844, 33550, 48975, 23107, 30672,
  30332. /* 13530 */ 23141, 24756, 33030, 33551, 47559, 33030, 38045, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546,
  30333. /* 13545 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30334. /* 13560 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23810, 23546, 46101, 23546,
  30335. /* 13575 */ 29522, 38860, 33103, 38895, 38945, 38984, 38970, 38989, 38954, 39005, 39016, 26204, 23546, 24981, 39032,
  30336. /* 13590 */ 39052, 39135, 26183, 26715, 27157, 23546, 39087, 39123, 35972, 23871, 39151, 32436, 39187, 39222, 39262,
  30337. /* 13605 */ 39312, 39360, 27800, 27271, 23546, 23546, 40856, 29748, 35256, 26269, 47340, 39386, 28121, 33483, 41086,
  30338. /* 13620 */ 39406, 48539, 39200, 45029, 47563, 29260, 30036, 22824, 47369, 43762, 41883, 39448, 22787, 22804, 32852,
  30339. /* 13635 */ 39469, 27673, 33624, 23546, 39492, 23546, 23546, 30166, 23546, 19760, 23546, 25974, 48975, 39514, 47563,
  30340. /* 13650 */ 47563, 47563, 37135, 37987, 39541, 30332, 22824, 22824, 49439, 34278, 22804, 48403, 22804, 22804, 29885,
  30341. /* 13665 */ 33201, 23546, 23546, 23546, 23546, 49277, 23546, 23546, 39561, 44662, 39580, 20000, 47563, 47563, 38745,
  30342. /* 13680 */ 47563, 41583, 39601, 22824, 22824, 42751, 22824, 39625, 36344, 22804, 22804, 49650, 22804, 39663, 33195,
  30343. /* 13695 */ 39390, 39701, 21803, 40964, 23546, 28563, 39737, 39764, 42864, 39780, 30015, 27711, 27195, 22821, 39796,
  30344. /* 13710 */ 39832, 37838, 39869, 30376, 37543, 39886, 39910, 39936, 47724, 39958, 49087, 33227, 48840, 39980, 40013,
  30345. /* 13725 */ 20680, 50204, 40049, 40067, 40083, 45419, 22824, 40109, 40125, 36765, 22804, 40151, 40167, 47447, 40217,
  30346. /* 13740 */ 23546, 23546, 19121, 40241, 48114, 40263, 48445, 44596, 40286, 40309, 42808, 40330, 30581, 40353, 23546,
  30347. /* 13755 */ 23546, 40374, 28485, 40396, 27517, 40433, 40468, 40722, 40488, 31964, 30114, 48477, 40517, 36058, 24761,
  30348. /* 13770 */ 45115, 30673, 40537, 36549, 40555, 19020, 29663, 30673, 40603, 40652, 40668, 40708, 40752, 40779, 40802,
  30349. /* 13785 */ 40826, 40849, 24756, 33030, 33551, 47559, 33030, 33552, 40872, 40899, 22729, 23448, 40923, 23363, 23546,
  30350. /* 13800 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30351. /* 13815 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 40939, 26527,
  30352. /* 13830 */ 23546, 35150, 40960, 23546, 26932, 40980, 40989, 41005, 41019, 41028, 41044, 41055, 26204, 41071, 27176,
  30353. /* 13845 */ 35142, 41110, 22748, 41145, 23546, 41180, 29961, 41225, 35127, 41274, 41299, 41335, 41350, 41366, 41401,
  30354. /* 13860 */ 41487, 41458, 41474, 41503, 23546, 18442, 27630, 46235, 23546, 41314, 19147, 41528, 40358, 23546, 23546,
  30355. /* 13875 */ 45375, 22587, 47563, 36909, 41568, 47891, 27418, 38686, 27953, 41607, 41630, 22804, 23213, 41665, 46983,
  30356. /* 13890 */ 39677, 36943, 23546, 45937, 23546, 37118, 23546, 39337, 41681, 33824, 35058, 38605, 23546, 41717, 41752,
  30357. /* 13905 */ 28167, 41769, 47563, 43475, 41790, 42050, 41800, 22824, 22824, 41816, 41853, 50302, 41874, 22804, 49204,
  30358. /* 13920 */ 29885, 47656, 41907, 23546, 38879, 36785, 23546, 23546, 23546, 23546, 23546, 39036, 48976, 47563, 46791,
  30359. /* 13935 */ 34008, 47563, 47564, 22821, 22824, 44589, 46895, 22824, 22767, 35849, 22804, 41937, 38457, 22804, 29879,
  30360. /* 13950 */ 33195, 23546, 23546, 49550, 23546, 45766, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 32301, 41958,
  30361. /* 13965 */ 22824, 22824, 22824, 46046, 28243, 22804, 22804, 22804, 22804, 41977, 33199, 20951, 42005, 23546, 23546,
  30362. /* 13980 */ 23546, 44350, 47563, 31827, 47563, 41591, 22824, 49433, 22824, 28884, 22804, 42026, 22804, 30403, 31211,
  30363. /* 13995 */ 23546, 23546, 23546, 23546, 27328, 40247, 47563, 27241, 38708, 22824, 42285, 31924, 22804, 29685, 23546,
  30364. /* 14010 */ 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 22739, 46606, 49667, 46712,
  30365. /* 14025 */ 38403, 42047, 44103, 22804, 44463, 42066, 42221, 42103, 42137, 42175, 42210, 42248, 42276, 42301, 48975,
  30366. /* 14040 */ 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 35697, 39426, 36136, 22729, 23448, 42329, 23363,
  30367. /* 14055 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30368. /* 14070 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 26377,
  30369. /* 14085 */ 26527, 23546, 23546, 42378, 33354, 42400, 20758, 23546, 26429, 42436, 42448, 42464, 42475, 26204, 23546,
  30370. /* 14100 */ 23546, 25120, 35799, 23546, 23546, 23546, 31573, 31305, 23546, 23546, 31567, 25118, 23546, 48973, 37963,
  30371. /* 14115 */ 23115, 42491, 47011, 42515, 27800, 23546, 42549, 23546, 44844, 23546, 38766, 18352, 23546, 39064, 23546,
  30372. /* 14130 */ 23546, 22159, 22587, 48548, 38163, 45793, 48521, 47316, 42571, 42591, 47404, 42609, 44147, 39942, 22845,
  30373. /* 14145 */ 35499, 47057, 42343, 42636, 23546, 42657, 23546, 42010, 42641, 26759, 23546, 23546, 23546, 23546, 48975,
  30374. /* 14160 */ 47563, 47563, 36917, 47563, 37135, 22823, 22824, 22824, 42693, 22824, 49439, 22804, 22804, 28847, 22804,
  30375. /* 14175 */ 22804, 29885, 45066, 44270, 23546, 42713, 23546, 23546, 26553, 42677, 42730, 31574, 23546, 48976, 47563,
  30376. /* 14190 */ 48931, 47563, 47563, 47564, 42748, 22824, 42767, 22824, 22824, 34180, 35849, 22804, 42800, 22804, 22804,
  30377. /* 14205 */ 29879, 33195, 23546, 44983, 23546, 23546, 23546, 23546, 42824, 23546, 47562, 47563, 36034, 47563, 27749,
  30378. /* 14220 */ 22821, 22824, 22824, 42844, 22824, 48373, 22804, 22804, 38192, 22804, 29883, 33199, 23546, 23546, 23546,
  30379. /* 14235 */ 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403,
  30380. /* 14250 */ 47447, 23546, 18259, 23546, 23546, 42862, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 39325,
  30381. /* 14265 */ 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585,
  30382. /* 14280 */ 47563, 24761, 22824, 30673, 22804, 48281, 42880, 42913, 28181, 33529, 39296, 42936, 24759, 33031, 33550,
  30383. /* 14295 */ 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351,
  30384. /* 14310 */ 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30385. /* 14325 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546,
  30386. /* 14340 */ 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204,
  30387. /* 14355 */ 23546, 23546, 23546, 35799, 23546, 23546, 38514, 23546, 23546, 23546, 44073, 44076, 50916, 44069, 36233,
  30388. /* 14370 */ 42971, 33598, 40201, 40539, 43066, 29275, 42987, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546,
  30389. /* 14385 */ 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804,
  30390. /* 14400 */ 22804, 22804, 39677, 36943, 23546, 23546, 23546, 43004, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30391. /* 14415 */ 48975, 47563, 47563, 47563, 47563, 37135, 43023, 22824, 22824, 22824, 22824, 43497, 22804, 22804, 22804,
  30392. /* 14430 */ 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976,
  30393. /* 14445 */ 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804,
  30394. /* 14460 */ 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563,
  30395. /* 14475 */ 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546,
  30396. /* 14490 */ 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804,
  30397. /* 14505 */ 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804,
  30398. /* 14520 */ 31970, 23546, 23546, 23546, 22586, 30422, 47563, 23109, 38579, 22825, 32685, 22804, 31964, 47447, 46606,
  30399. /* 14535 */ 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031,
  30400. /* 14550 */ 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448,
  30401. /* 14565 */ 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30402. /* 14580 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546,
  30403. /* 14595 */ 23546, 22195, 38234, 23546, 23546, 22088, 23546, 31645, 43040, 31695, 43090, 43103, 43112, 43128, 43139,
  30404. /* 14610 */ 26204, 23546, 31341, 32732, 35799, 43366, 43155, 43175, 36087, 40692, 50768, 31673, 43193, 32904, 31522,
  30405. /* 14625 */ 31081, 43243, 43271, 43287, 43315, 43342, 40683, 23546, 23546, 23546, 45381, 43358, 40568, 43382, 43400,
  30406. /* 14640 */ 43418, 23546, 23546, 30119, 43208, 47563, 43442, 27364, 43462, 43491, 28908, 22824, 43513, 43557, 22804,
  30407. /* 14655 */ 43588, 41858, 43607, 43637, 43676, 23546, 23546, 23546, 18266, 35576, 23546, 23546, 43699, 43717, 43736,
  30408. /* 14670 */ 20331, 32703, 47563, 41378, 47563, 46720, 41989, 43754, 29628, 22824, 22824, 43651, 43778, 43812, 46171,
  30409. /* 14685 */ 22804, 44212, 43831, 43879, 33201, 23546, 23546, 45346, 23546, 43914, 43941, 23546, 27809, 23863, 43976,
  30410. /* 14700 */ 44003, 47563, 48620, 44039, 35181, 49990, 44092, 22824, 45449, 39545, 44119, 42697, 44138, 22804, 44163,
  30411. /* 14715 */ 27998, 44211, 35734, 33195, 39171, 23546, 23546, 23067, 44228, 32012, 23546, 44255, 36870, 46433, 23003,
  30412. /* 14730 */ 47563, 27195, 22821, 44297, 46134, 22824, 22824, 30376, 39647, 22804, 44322, 22804, 41442, 44340, 23546,
  30413. /* 14745 */ 44366, 44385, 23546, 23546, 34339, 44404, 47563, 47563, 44422, 22824, 22824, 22824, 44438, 22804, 22804,
  30414. /* 14760 */ 22804, 44454, 47447, 48298, 23546, 23546, 23546, 44479, 47563, 47563, 46130, 22824, 22824, 44500, 22804,
  30415. /* 14775 */ 22804, 44520, 23546, 40027, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447,
  30416. /* 14790 */ 46606, 22585, 47563, 24761, 22824, 30673, 22804, 38094, 49704, 44555, 44579, 44612, 44650, 23464, 24759,
  30417. /* 14805 */ 33031, 33550, 44685, 30652, 34420, 36724, 24756, 33030, 33551, 47559, 33030, 45310, 44716, 44744, 32641,
  30418. /* 14820 */ 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30419. /* 14835 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677, 23546,
  30420. /* 14850 */ 23546, 23546, 25786, 26527, 44778, 28976, 18999, 44795, 44824, 44860, 44808, 44885, 44899, 44911, 44927,
  30421. /* 14865 */ 44938, 26204, 44954, 40587, 23546, 44971, 23546, 23546, 43960, 23546, 50132, 23546, 45006, 35089, 26325,
  30422. /* 14880 */ 35096, 32207, 45025, 45045, 44306, 45082, 45103, 27800, 35987, 37200, 44669, 44844, 34640, 23546, 23546,
  30423. /* 14895 */ 23546, 23546, 45137, 45172, 23546, 19324, 45188, 43446, 47563, 47563, 45233, 45249, 45268, 22824, 43762,
  30424. /* 14910 */ 45291, 40314, 22804, 22804, 39677, 36943, 37912, 23546, 23546, 45326, 45362, 23546, 23546, 23546, 23546,
  30425. /* 14925 */ 23546, 37055, 48975, 48512, 31834, 47563, 47563, 46028, 22823, 45397, 45415, 22824, 22824, 36333, 38728,
  30426. /* 14940 */ 44324, 22804, 22804, 22804, 45435, 33201, 23546, 23546, 26251, 43720, 23546, 45465, 26758, 45484, 45504,
  30427. /* 14955 */ 23546, 45539, 47563, 47563, 47285, 43856, 45576, 45600, 22824, 22824, 47994, 48169, 45624, 45661, 22804,
  30428. /* 14970 */ 22804, 42152, 45681, 29879, 45697, 45713, 45733, 23546, 25942, 23546, 23546, 30214, 45754, 47562, 47563,
  30429. /* 14985 */ 27730, 45789, 27195, 22821, 22824, 47619, 47969, 22824, 30376, 22804, 22804, 45809, 22804, 29883, 33199,
  30430. /* 15000 */ 23546, 21039, 23546, 49467, 37049, 48973, 47563, 45851, 48716, 45584, 47934, 22824, 45868, 48003, 35869,
  30431. /* 15015 */ 22804, 45910, 30403, 47447, 23546, 48332, 18869, 22345, 47560, 47563, 47563, 23113, 22824, 22824, 33078,
  30432. /* 15030 */ 22804, 22804, 32000, 21288, 23546, 45931, 45953, 47563, 37498, 23109, 22824, 40444, 22804, 34438, 36455,
  30433. /* 15045 */ 45997, 44634, 19558, 46021, 50382, 46044, 28056, 22804, 34468, 46609, 35619, 30711, 46062, 46082, 23464,
  30434. /* 15060 */ 24759, 33031, 33550, 19538, 36296, 49945, 23141, 46117, 38586, 45823, 48503, 46150, 46187, 39426, 42307,
  30435. /* 15075 */ 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30436. /* 15090 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22677,
  30437. /* 15105 */ 23546, 23546, 23546, 23737, 26527, 23546, 23546, 34968, 23546, 46215, 26881, 26893, 46251, 46267, 46279,
  30438. /* 15120 */ 46295, 46306, 26204, 46322, 23241, 25565, 35799, 25341, 42889, 46340, 22204, 44869, 46352, 46368, 46377,
  30439. /* 15135 */ 46393, 46349, 46420, 46455, 46490, 46547, 46518, 46534, 32867, 46005, 19766, 34600, 44844, 46563, 23546,
  30440. /* 15150 */ 26188, 46580, 41258, 46596, 46625, 46675, 46736, 46784, 46807, 46842, 38552, 46877, 45877, 46911, 46944,
  30441. /* 15165 */ 36419, 46977, 46999, 47027, 27557, 39677, 37035, 47093, 47115, 35228, 23546, 47139, 47174, 23546, 47766,
  30442. /* 15180 */ 23546, 49770, 47192, 20591, 47219, 47244, 47278, 38643, 47301, 41736, 47356, 47391, 47426, 31459, 49439,
  30443. /* 15195 */ 36524, 39920, 40135, 22804, 35492, 33058, 47443, 23546, 20251, 43007, 37694, 47465, 46324, 47491, 47518,
  30444. /* 15210 */ 23546, 47535, 47555, 39525, 47841, 47563, 34125, 47580, 47616, 47635, 39844, 22824, 37169, 48362, 35849,
  30445. /* 15225 */ 47672, 47697, 22804, 41891, 47720, 33195, 23058, 47740, 23546, 45516, 47760, 23546, 47782, 18627, 47798,
  30446. /* 15240 */ 50186, 47833, 47857, 27195, 47907, 47932, 47950, 47985, 48036, 39636, 46165, 37602, 50472, 50517, 37554,
  30447. /* 15255 */ 27477, 48056, 18311, 23546, 35780, 48076, 48095, 44700, 47563, 47563, 48130, 48155, 37677, 22824, 48203,
  30448. /* 15270 */ 48236, 49183, 22804, 48272, 47447, 18372, 48297, 48314, 48330, 41202, 45981, 33877, 34811, 48348, 48040,
  30449. /* 15285 */ 48397, 48419, 37793, 31970, 48467, 23546, 23546, 48493, 46466, 31618, 34505, 49612, 47069, 35443, 43299,
  30450. /* 15300 */ 48564, 28304, 47475, 19993, 48611, 37364, 48636, 48669, 43591, 36549, 46609, 47561, 23111, 30673, 39296,
  30451. /* 15315 */ 23464, 24759, 33031, 33550, 48975, 23107, 30672, 44177, 29729, 48685, 36498, 48701, 45275, 48737, 39426,
  30452. /* 15330 */ 42307, 22729, 39685, 48765, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30453. /* 15345 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30454. /* 15360 */ 22677, 23546, 23546, 23546, 23546, 48828, 23546, 23546, 48856, 23546, 35941, 30944, 30953, 48876, 30953,
  30455. /* 15375 */ 30962, 48892, 48903, 26204, 23546, 23546, 23546, 40636, 23546, 26348, 23546, 23546, 23546, 23546, 26345,
  30456. /* 15390 */ 23546, 38923, 23546, 48973, 48919, 48178, 48947, 38808, 37005, 31513, 38873, 23546, 23546, 44844, 23546,
  30457. /* 15405 */ 23546, 27897, 48963, 23546, 23546, 23546, 23546, 48971, 46750, 47563, 47563, 34356, 48992, 22824, 22824,
  30458. /* 15420 */ 22824, 36305, 49028, 22804, 22804, 22804, 49052, 44728, 49080, 23546, 49103, 45341, 23546, 23546, 42732,
  30459. /* 15435 */ 48802, 47595, 38359, 35596, 48975, 47563, 49130, 41385, 43221, 47228, 22823, 48595, 46928, 41415, 49146,
  30460. /* 15450 */ 49164, 22804, 49199, 49220, 45915, 29388, 37824, 33201, 23546, 25346, 23546, 26261, 23546, 23546, 23546,
  30461. /* 15465 */ 49474, 23546, 23546, 48976, 33503, 47563, 47563, 47563, 47564, 49236, 37414, 22824, 22824, 22824, 22767,
  30462. /* 15480 */ 49255, 36180, 22804, 22804, 22804, 29879, 33195, 49272, 23546, 49293, 23546, 23546, 23546, 23546, 28581,
  30463. /* 15495 */ 36243, 47563, 47563, 47563, 27195, 49311, 22824, 22824, 22824, 22824, 37772, 22804, 22804, 22804, 22804,
  30464. /* 15510 */ 29883, 46502, 23546, 23546, 50321, 46564, 23546, 30276, 23289, 47563, 47563, 37718, 49344, 22824, 22824,
  30465. /* 15525 */ 30514, 49377, 22804, 22804, 42620, 47447, 39101, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824,
  30466. /* 15540 */ 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804,
  30467. /* 15555 */ 22804, 31964, 47447, 46606, 22585, 46439, 24761, 43524, 30673, 49399, 36549, 46609, 47561, 23111, 30673,
  30468. /* 15570 */ 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 49418, 45121, 44624, 47559, 33030, 33552,
  30469. /* 15585 */ 39426, 32368, 49455, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30470. /* 15600 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30471. /* 15615 */ 23546, 22677, 23546, 23546, 23546, 23546, 49490, 49547, 33412, 49525, 23546, 34105, 23546, 33409, 49544,
  30472. /* 15630 */ 42420, 41283, 49566, 49577, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546,
  30473. /* 15645 */ 23546, 23546, 23546, 23546, 48973, 49593, 35299, 27962, 22805, 43066, 27800, 23546, 33329, 27613, 44844,
  30474. /* 15660 */ 23546, 23546, 23546, 23546, 23546, 32481, 23546, 23546, 22587, 32570, 47563, 46861, 47563, 27418, 49610,
  30475. /* 15675 */ 22824, 32331, 43762, 42159, 22804, 27215, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546, 37318,
  30476. /* 15690 */ 23546, 23546, 23546, 20322, 23546, 48975, 47563, 47563, 49628, 47563, 37135, 22823, 22824, 32615, 22824,
  30477. /* 15705 */ 22824, 49439, 22804, 22804, 49645, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546,
  30478. /* 15720 */ 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824,
  30479. /* 15735 */ 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30480. /* 15750 */ 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804,
  30481. /* 15765 */ 22804, 29883, 33199, 23546, 23546, 49666, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824,
  30482. /* 15780 */ 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 49683, 23546, 23546, 47560, 47563, 47563, 23113,
  30483. /* 15795 */ 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825,
  30484. /* 15810 */ 22804, 22804, 31964, 47447, 49701, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111,
  30485. /* 15825 */ 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030,
  30486. /* 15840 */ 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30487. /* 15855 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30488. /* 15870 */ 23546, 23546, 22677, 23546, 23546, 23546, 23546, 49720, 23546, 50953, 23546, 25809, 49755, 49786, 23546,
  30489. /* 15885 */ 49811, 49825, 49837, 49853, 49864, 26204, 23546, 23546, 23546, 35799, 23546, 23546, 23546, 23546, 23546,
  30490. /* 15900 */ 23546, 23546, 23546, 23546, 23546, 48973, 27387, 22824, 49893, 38199, 49880, 34211, 23546, 23546, 23546,
  30491. /* 15915 */ 44844, 23546, 23546, 23546, 23546, 42672, 23546, 23546, 23546, 22587, 47563, 47563, 47563, 47563, 27418,
  30492. /* 15930 */ 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546, 23546, 23546, 23546,
  30493. /* 15945 */ 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824, 22824,
  30494. /* 15960 */ 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546, 23546,
  30495. /* 15975 */ 23546, 49917, 23546, 23546, 23546, 22167, 47563, 47563, 47563, 47563, 47564, 49936, 22824, 22824, 22824,
  30496. /* 15990 */ 22824, 22767, 49969, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 45149, 23546, 23546, 23546,
  30497. /* 16005 */ 23546, 23546, 47562, 47563, 49988, 47563, 50006, 22821, 22824, 48578, 22824, 41424, 30376, 22804, 39894,
  30498. /* 16020 */ 22804, 32389, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209, 22824,
  30499. /* 16035 */ 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563, 47563,
  30500. /* 16050 */ 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109, 22824,
  30501. /* 16065 */ 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609, 47561,
  30502. /* 16080 */ 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551, 47559,
  30503. /* 16095 */ 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30504. /* 16110 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30505. /* 16125 */ 23546, 23546, 23546, 26445, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369, 23546,
  30506. /* 16140 */ 23546, 23546, 23546, 41512, 50052, 50063, 26204, 23546, 23546, 23546, 35799, 50079, 30464, 23546, 23546,
  30507. /* 16155 */ 23546, 23546, 32774, 23546, 41129, 32770, 46701, 50096, 40191, 28190, 22805, 43066, 27800, 23546, 23546,
  30508. /* 16170 */ 23546, 50113, 28719, 34485, 45773, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 29611, 47563, 27026,
  30509. /* 16185 */ 27418, 22824, 35645, 28383, 43762, 22804, 22921, 22804, 48250, 39677, 50148, 50164, 23546, 23546, 23546,
  30510. /* 16200 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135, 22823, 22824,
  30511. /* 16215 */ 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546, 23546, 23546,
  30512. /* 16230 */ 23546, 23546, 41250, 23546, 23546, 23546, 48976, 47563, 47563, 50184, 47563, 45852, 22821, 22824, 38786,
  30513. /* 16245 */ 22824, 22824, 45252, 35849, 22804, 48256, 22804, 22804, 29879, 33195, 48079, 23546, 23546, 23546, 23546,
  30514. /* 16260 */ 23546, 23546, 23546, 47562, 50202, 47563, 47563, 27195, 22821, 50220, 22824, 22824, 22824, 30376, 48220,
  30515. /* 16275 */ 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563, 47563, 45209,
  30516. /* 16290 */ 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546, 47560, 47563,
  30517. /* 16305 */ 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563, 47563, 23109,
  30518. /* 16320 */ 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549, 46609,
  30519. /* 16335 */ 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030, 33551,
  30520. /* 16350 */ 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546, 23546,
  30521. /* 16365 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30522. /* 16380 */ 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546, 21369,
  30523. /* 16395 */ 23546, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 21798, 23546, 23546, 35799, 23546, 23546, 46652,
  30524. /* 16410 */ 23546, 23546, 23546, 23546, 46656, 23546, 23546, 50246, 28439, 22824, 50294, 36350, 50281, 47331, 23546,
  30525. /* 16425 */ 29448, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 35817, 22587, 47563, 47563, 47563,
  30526. /* 16440 */ 27723, 27418, 22824, 22824, 27861, 43762, 22804, 22804, 22804, 48212, 39677, 36943, 23546, 50318, 23546,
  30527. /* 16455 */ 23546, 23546, 23546, 23546, 23546, 37099, 23546, 23546, 48975, 38667, 47563, 36014, 47563, 37135, 22823,
  30528. /* 16470 */ 50337, 22824, 46961, 22824, 49439, 28018, 22804, 22804, 50356, 22804, 29885, 33201, 23546, 43738, 23546,
  30529. /* 16485 */ 23546, 23546, 23546, 23546, 38534, 23546, 23546, 48976, 47563, 50376, 47563, 47563, 47564, 50398, 41961,
  30530. /* 16500 */ 50424, 22824, 22824, 22767, 50443, 28403, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546, 23546,
  30531. /* 16515 */ 23546, 23546, 21488, 23546, 47562, 47563, 31747, 47563, 34161, 22821, 22824, 43024, 22824, 22824, 50464,
  30532. /* 16530 */ 22804, 22804, 50488, 22804, 43844, 33199, 23546, 23546, 18921, 23546, 23546, 48973, 47563, 47563, 47563,
  30533. /* 16545 */ 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 31241, 23546, 23546, 39165, 23546, 29133,
  30534. /* 16560 */ 47563, 47563, 33578, 22824, 22824, 50509, 22804, 22804, 31970, 23546, 49295, 23546, 22586, 47563, 31161,
  30535. /* 16575 */ 23109, 50427, 22825, 22804, 41830, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804, 36549,
  30536. /* 16590 */ 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756, 33030,
  30537. /* 16605 */ 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546, 23546,
  30538. /* 16620 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30539. /* 16635 */ 23546, 23546, 23546, 23546, 23546, 22677, 23546, 23546, 23546, 23546, 26527, 23546, 23546, 23546, 23546,
  30540. /* 16650 */ 21369, 21483, 23546, 23546, 23546, 19262, 39432, 32077, 26204, 23546, 23546, 23546, 35799, 23546, 23546,
  30541. /* 16665 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824, 35842, 22805, 43066, 27800,
  30542. /* 16680 */ 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 22587, 47563, 47563,
  30543. /* 16695 */ 47563, 47563, 27418, 22824, 22824, 22824, 43762, 22804, 22804, 22804, 22804, 39677, 36943, 23546, 23546,
  30544. /* 16710 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563, 47563, 47563, 47563, 37135,
  30545. /* 16725 */ 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804, 29885, 33201, 23546, 23546,
  30546. /* 16740 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563, 47563, 47563, 47564, 22821,
  30547. /* 16755 */ 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879, 33195, 23546, 23546, 23546,
  30548. /* 16770 */ 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821, 22824, 22824, 22824, 22824,
  30549. /* 16785 */ 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 47563,
  30550. /* 16800 */ 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447, 23546, 23546, 23546, 23546,
  30551. /* 16815 */ 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546, 23546, 23546, 22586, 47563,
  30552. /* 16830 */ 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563, 24761, 22824, 30673, 22804,
  30553. /* 16845 */ 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975, 23107, 30672, 23141, 24756,
  30554. /* 16860 */ 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363, 23546, 23546, 23546, 23546,
  30555. /* 16875 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30556. /* 16890 */ 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 46404, 21767, 21765, 32117,
  30557. /* 16905 */ 22038, 50563, 21058, 21061, 50533, 22036, 50551, 50579, 50591, 20967, 23546, 23546, 23546, 35799, 23546,
  30558. /* 16920 */ 23546, 50607, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208, 50637, 19916, 50639, 20660,
  30559. /* 16935 */ 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463, 18479,
  30560. /* 16950 */ 18968, 18495, 19670, 50655, 18544, 18567, 18590, 19934, 18528, 18551, 18574, 18597, 20868, 18620, 23546,
  30561. /* 16965 */ 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505, 19208,
  30562. /* 16980 */ 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674, 23546,
  30563. /* 16995 */ 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051, 18984,
  30564. /* 17010 */ 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396, 19137,
  30565. /* 17025 */ 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477, 25754,
  30566. /* 17040 */ 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632, 19657,
  30567. /* 17055 */ 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746, 41094,
  30568. /* 17070 */ 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016, 18679,
  30569. /* 17085 */ 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139, 20274,
  30570. /* 17100 */ 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489, 20515,
  30571. /* 17115 */ 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546, 23546,
  30572. /* 17130 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30573. /* 17145 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841, 23546, 23546,
  30574. /* 17160 */ 22150, 23546, 21369, 20766, 50679, 50692, 50708, 50717, 49509, 50740, 20967, 23546, 23546, 23546, 35799,
  30575. /* 17175 */ 23546, 23546, 51042, 23546, 23546, 23546, 23761, 23546, 23546, 23758, 25629, 19208, 50639, 19926, 50639,
  30576. /* 17190 */ 50790, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458, 18463,
  30577. /* 17205 */ 18479, 18968, 18495, 19670, 18521, 18544, 18567, 18590, 50663, 18528, 18551, 18574, 18597, 20868, 18620,
  30578. /* 17220 */ 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024, 18505,
  30579. /* 17235 */ 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839, 20674,
  30580. /* 17250 */ 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011, 20051,
  30581. /* 17265 */ 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668, 23396,
  30582. /* 17280 */ 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721, 19477,
  30583. /* 17295 */ 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592, 19632,
  30584. /* 17310 */ 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492, 19746,
  30585. /* 17325 */ 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842, 20016,
  30586. /* 17340 */ 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222, 51139,
  30587. /* 17355 */ 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037, 20489,
  30588. /* 17370 */ 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546, 23546,
  30589. /* 17385 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30590. /* 17400 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 42087, 23546,
  30591. /* 17415 */ 23546, 23546, 23546, 22568, 29910, 50839, 50872, 50878, 50849, 23148, 50894, 20967, 23546, 23546, 23546,
  30592. /* 17430 */ 35799, 23546, 23546, 50932, 23546, 23546, 22686, 23546, 23546, 23546, 22682, 25629, 19208, 50639, 19926,
  30593. /* 17445 */ 50639, 20660, 19723, 18282, 18849, 18305, 18327, 23546, 23546, 18368, 23546, 18915, 18388, 18432, 18458,
  30594. /* 17460 */ 18463, 18479, 18968, 18495, 19670, 50969, 18544, 18567, 18590, 21689, 18528, 18551, 18574, 18597, 20868,
  30595. /* 17475 */ 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695, 19209, 26024,
  30596. /* 17490 */ 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639, 18776, 19839,
  30597. /* 17505 */ 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958, 20812, 26011,
  30598. /* 17520 */ 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129, 18604, 20668,
  30599. /* 17535 */ 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422, 19456, 25721,
  30600. /* 17550 */ 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717, 19574, 19592,
  30601. /* 17565 */ 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432, 19853, 26492,
  30602. /* 17580 */ 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980, 23977, 20842,
  30603. /* 17595 */ 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 20159, 20175, 20206, 20222,
  30604. /* 17610 */ 51139, 20274, 51143, 20301, 20376, 20392, 51127, 20418, 50802, 20462, 25380, 50639, 18729, 32258, 26037,
  30605. /* 17625 */ 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858, 20884, 23546,
  30606. /* 17640 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30607. /* 17655 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 21089, 23546, 23546, 23546, 23546, 25841,
  30608. /* 17670 */ 23546, 23546, 23546, 23546, 21369, 23546, 23546, 23546, 23546, 23546, 23546, 23489, 26204, 23546, 23546,
  30609. /* 17685 */ 23546, 35799, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48973, 47563, 22824,
  30610. /* 17700 */ 35842, 22805, 43066, 27132, 23546, 23546, 23546, 44844, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30611. /* 17715 */ 23546, 22587, 47563, 47563, 47563, 47563, 22603, 22824, 22824, 22824, 34828, 22804, 22804, 22804, 22804,
  30612. /* 17730 */ 39677, 36943, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48975, 47563,
  30613. /* 17745 */ 47563, 47563, 47563, 37135, 22823, 22824, 22824, 22824, 22824, 49439, 22804, 22804, 22804, 22804, 22804,
  30614. /* 17760 */ 29885, 33201, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 48976, 47563, 47563,
  30615. /* 17775 */ 47563, 47563, 47564, 22821, 22824, 22824, 22824, 22824, 22767, 35849, 22804, 22804, 22804, 22804, 29879,
  30616. /* 17790 */ 33195, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 47562, 47563, 47563, 47563, 27195, 22821,
  30617. /* 17805 */ 22824, 22824, 22824, 22824, 30376, 22804, 22804, 22804, 22804, 29883, 33199, 23546, 23546, 23546, 23546,
  30618. /* 17820 */ 23546, 48973, 47563, 47563, 47563, 45209, 22824, 22824, 22824, 27834, 22804, 22804, 22804, 30403, 47447,
  30619. /* 17835 */ 23546, 23546, 23546, 23546, 47560, 47563, 47563, 23113, 22824, 22824, 33078, 22804, 22804, 31970, 23546,
  30620. /* 17850 */ 23546, 23546, 22586, 47563, 47563, 23109, 22824, 22825, 22804, 22804, 31964, 47447, 46606, 22585, 47563,
  30621. /* 17865 */ 24761, 22824, 30673, 22804, 36549, 46609, 47561, 23111, 30673, 39296, 23464, 24759, 33031, 33550, 48975,
  30622. /* 17880 */ 23107, 30672, 23141, 24756, 33030, 33551, 47559, 33030, 33552, 39426, 42307, 22729, 23448, 23351, 23363,
  30623. /* 17895 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30624. /* 17910 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30625. /* 17925 */ 23546, 23546, 23546, 22457, 23546, 23546, 22482, 50993, 50998, 50998, 51019, 22480, 51014, 51035, 23546,
  30626. /* 17940 */ 23546, 23546, 23546, 23546, 23546, 51042, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 25629, 19208,
  30627. /* 17955 */ 50639, 19926, 50639, 20660, 19723, 18282, 18849, 18305, 51062, 23546, 23546, 18368, 23546, 18915, 18388,
  30628. /* 17970 */ 18432, 18458, 18463, 18479, 18968, 18495, 19670, 50655, 18544, 18567, 18590, 19934, 18528, 18551, 18574,
  30629. /* 17985 */ 18597, 20868, 18620, 23546, 30606, 23546, 23546, 23546, 23582, 23367, 18643, 23546, 18664, 50036, 18695,
  30630. /* 18000 */ 19209, 26024, 18505, 19208, 25377, 18724, 26048, 18745, 18766, 18771, 19889, 50639, 26053, 18750, 50639,
  30631. /* 18015 */ 18776, 19839, 20674, 23546, 18792, 18808, 18830, 23628, 18814, 18865, 23546, 44195, 18885, 18937, 18958,
  30632. /* 18030 */ 20812, 26011, 20051, 18984, 19036, 19054, 19072, 19090, 26127, 19108, 19038, 19056, 19074, 19092, 26129,
  30633. /* 18045 */ 18604, 20668, 23396, 19137, 19171, 19225, 39246, 19278, 47150, 19314, 19340, 26667, 19186, 19380, 19422,
  30634. /* 18060 */ 19456, 25721, 19477, 25754, 19498, 19451, 25716, 19472, 25749, 19493, 19514, 19530, 18900, 19554, 23717,
  30635. /* 18075 */ 19574, 19592, 19632, 19657, 20190, 20797, 20402, 21452, 19692, 19708, 19964, 21452, 19692, 19708, 20432,
  30636. /* 18090 */ 19853, 26492, 19746, 41094, 19782, 18942, 19201, 19798, 19825, 19883, 19905, 19950, 19883, 19905, 19980,
  30637. /* 18105 */ 23977, 20842, 20016, 18679, 20827, 20042, 20067, 20090, 20113, 20074, 20097, 20129, 20446, 51082, 20175,
  30638. /* 18120 */ 20206, 20222, 51139, 20274, 51143, 20301, 51098, 20392, 51127, 20418, 50802, 51114, 25380, 50639, 18729,
  30639. /* 18135 */ 32258, 26037, 20489, 20515, 19641, 20555, 20577, 20616, 20632, 20648, 20696, 20727, 20743, 20782, 20858,
  30640. /* 18150 */ 20884, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546,
  30641. /* 18165 */ 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 23546, 94503, 94503, 90406, 90406,
  30642. /* 18180 */ 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 1, 12290, 3, 0, 94503,
  30643. /* 18197 */ 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503,
  30644. /* 18212 */ 362, 94503, 90406, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 0,
  30645. /* 18228 */ 94503, 90406, 94503, 94503, 94503, 94503, 94503, 94503, 94503, 69632, 73728, 94503, 94503, 94503, 94503,
  30646. /* 18243 */ 94503, 65536, 94503, 0, 2183168, 0, 0, 0, 90406, 94503, 296, 297, 0, 2134016, 300, 301, 0, 0, 0, 0, 0, 0,
  30647. /* 18265 */ 2985, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1631, 0, 0, 0, 0, 0, 1637, 0, 0, 2424832, 2433024, 0, 0, 2457600, 0, 0,
  30648. /* 18291 */ 0, 0, 0, 0, 0, 0, 0, 0, 2454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2904064, 2908160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30649. /* 18321 */ 0, 2751, 0, 0, 0, 0, 0, 0, 0, 3117056, 0, 0, 0, 0, 0, 0, 0, 362, 362, 0, 0, 0, 0, 0, 0, 2997, 0, 0, 0, 0,
  30650. /* 18351 */ 3001, 0, 0, 0, 0, 0, 0, 1186, 0, 0, 0, 1191, 0, 0, 0, 0, 1107, 0, 0, 0, 2138112, 0, 0, 0, 0, 0, 0, 0, 0,
  30651. /* 18380 */ 0, 0, 0, 0, 0, 2978, 0, 0, 0, 2424832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2625536, 0, 0, 0, 0, 0, 172032,
  30652. /* 18409 */ 0, 172032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 1,
  30653. /* 18429 */ 12290, 3, 0, 2699264, 2715648, 0, 0, 2772992, 2805760, 2830336, 0, 2863104, 2920448, 0, 0, 0, 0, 0, 0, 0,
  30654. /* 18449 */ 1114, 0, 0, 0, 0, 1118, 0, 0, 1121, 0, 2805760, 2920448, 0, 0, 0, 0, 0, 2920448, 0, 0, 0, 0, 0, 0, 0,
  30655. /* 18474 */ 2732032, 0, 2179072, 2179072, 2179072, 2424832, 2433024, 2179072, 2179072, 2179072, 2179072, 2179072,
  30656. /* 18486 */ 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2625536, 2805760, 2179072,
  30657. /* 18497 */ 2830336, 2179072, 2179072, 2863104, 2179072, 2179072, 2179072, 2920448, 2179072, 2179072, 2179072,
  30658. /* 18508 */ 2179072, 2179072, 2179072, 2179072, 2801664, 2813952, 2179072, 2838528, 2179072, 2179072, 2179072,
  30659. /* 18519 */ 2179072, 2179072, 0, 914, 2125824, 2125824, 2125824, 2125824, 2424832, 2433024, 2125824, 2125824, 2125824,
  30660. /* 18532 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2625536,
  30661. /* 18543 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2625536, 2125824, 2125824, 2125824, 2125824,
  30662. /* 18554 */ 2125824, 2125824, 2699264, 2125824, 2715648, 2125824, 2723840, 2125824, 2732032, 2772992, 2125824,
  30663. /* 18565 */ 2125824, 2125824, 2723840, 2125824, 2732032, 2772992, 2125824, 2125824, 2125824, 2805760, 2125824,
  30664. /* 18576 */ 2830336, 2125824, 2125824, 2863104, 2125824, 2125824, 2125824, 2125824, 2920448, 2125824, 2125824,
  30665. /* 18587 */ 2125824, 2125824, 2125824, 2125824, 2920448, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30666. /* 18598 */ 2125824, 2125824, 2125824, 2125824, 2125824, 3117056, 2125824, 2125824, 2125824, 2125824, 2125824,
  30667. /* 18609 */ 2125824, 2125824, 2125824, 2125824, 3207168, 2125824, 2125824, 2179072, 2125824, 2125824, 2125824,
  30668. /* 18620 */ 2125824, 2457600, 2125824, 2125824, 2125824, 2125824, 2183168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2518, 0, 0,
  30669. /* 18640 */ 0, 0, 0, 0, 0, 0, 0, 2375680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167936, 0, 0, 0, 0, 0, 0, 2408448, 0, 0,
  30670. /* 18670 */ 2584576, 0, 0, 0, 0, 2838528, 0, 0, 2838528, 0, 0, 0, 0, 0, 2469888, 2506752, 2756608, 0, 0, 2580480, 0,
  30671. /* 18691 */ 0, 0, 2396160, 2400256, 2412544, 0, 0, 2838528, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2408448,
  30672. /* 18708 */ 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3223552, 914, 0, 2125824, 2125824, 2125824, 2125824,
  30673. /* 18721 */ 2125824, 2445312, 2125824, 0, 2125824, 2125824, 2125824, 2408448, 2125824, 2125824, 2125824, 2125824,
  30674. /* 18733 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 2502656, 0, 0, 3010560, 2125824,
  30675. /* 18746 */ 2125824, 2125824, 2125824, 2125824, 2662400, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30676. /* 18757 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2801664, 2813952, 2125824, 2838528, 2125824, 2801664,
  30677. /* 18768 */ 2813952, 2125824, 2838528, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30678. /* 18779 */ 2125824, 2125824, 2125824, 2125824, 2125824, 3125248, 2125824, 2125824, 2125824, 2125824, 2125824,
  30679. /* 18790 */ 2125824, 2125824, 2461696, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2600960, 0, 2674688, 0, 2768896, 2777088,
  30680. /* 18811 */ 2781184, 0, 2822144, 0, 0, 2883584, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3055616, 0, 0, 0, 3080192,
  30681. /* 18834 */ 3100672, 3104768, 0, 0, 0, 0, 3186688, 0, 0, 0, 0, 0, 0, 0, 3182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2732032, 0,
  30682. /* 18860 */ 0, 0, 0, 0, 0, 0, 0, 0, 3133440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3003, 3004, 0, 2719744, 0, 0, 0,
  30683. /* 18889 */ 0, 0, 0, 0, 0, 0, 0, 3014656, 3207168, 0, 2691072, 0, 0, 0, 0, 0, 2818048, 2846720, 0, 2916352, 0, 0,
  30684. /* 18911 */ 3002368, 0, 0, 3022848, 0, 0, 0, 0, 0, 2871296, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2766, 0, 0, 0, 0, 0,
  30685. /* 18938 */ 3215360, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30686. /* 18953 */ 2494464, 2179072, 2179072, 2514944, 2179072, 2179072, 2461696, 2465792, 2179072, 2179072, 2179072,
  30687. /* 18964 */ 2179072, 2179072, 2179072, 2523136, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2699264,
  30688. /* 18975 */ 2179072, 2715648, 2179072, 2723840, 2179072, 2732032, 2772992, 2179072, 2179072, 3100672, 2179072,
  30689. /* 18986 */ 2179072, 3133440, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30690. /* 18997 */ 3207168, 2179072, 0, 0, 0, 0, 391, 392, 0, 393, 0, 0, 0, 0, 0, 393, 0, 0, 0, 0, 0, 3504, 0, 0, 0, 540,
  30691. /* 19023 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3399, 540, 540, 0, 0, 0, 2125824, 2125824, 2125824,
  30692. /* 19042 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2461696, 2465792, 2125824, 2125824,
  30693. /* 19053 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2523136, 2125824, 2125824, 2125824, 2125824,
  30694. /* 19064 */ 2125824, 2125824, 2125824, 2125824, 2600960, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30695. /* 19075 */ 2641920, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2719744, 2125824, 2125824, 2125824,
  30696. /* 19086 */ 2125824, 2125824, 2768896, 2777088, 2768896, 2777088, 2125824, 2797568, 2822144, 2125824, 2125824,
  30697. /* 19097 */ 2125824, 2883584, 2125824, 2912256, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30698. /* 19108 */ 2125824, 3133440, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30699. /* 19119 */ 3207168, 2125824, 0, 0, 0, 0, 0, 0, 3011, 0, 0, 0, 0, 0, 0, 3018, 0, 0, 0, 0, 2605056, 0, 0, 0, 0,
  30700. /* 19144 */ 2887680, 0, 2924544, 0, 0, 0, 0, 0, 0, 0, 1135, 0, 0, 0, 0, 0, 0, 0, 0, 400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30701. /* 19174 */ 3162112, 3170304, 0, 0, 3219456, 3035136, 0, 0, 0, 0, 0, 3072000, 2650112, 2179072, 2179072, 2179072,
  30702. /* 19190 */ 2707456, 2179072, 2736128, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2887680,
  30703. /* 19201 */ 2179072, 2179072, 2543616, 2547712, 2179072, 2179072, 2596864, 2179072, 2179072, 2179072, 2179072,
  30704. /* 19212 */ 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30705. /* 19223 */ 2179072, 2584576, 0, 0, 2809856, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3088384, 0, 0, 0, 0, 0, 1670, 0, 0, 0, 0,
  30706. /* 19249 */ 0, 0, 0, 2112, 0, 0, 0, 0, 0, 1680, 1681, 0, 1683, 0, 0, 0, 0, 0, 0, 0, 540, 561, 540, 561, 540, 540, 561,
  30707. /* 19276 */ 540, 585, 0, 0, 2576384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2420736, 0, 0, 0, 0, 429, 0, 0, 0, 0, 0, 0, 0,
  30708. /* 19305 */ 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, 0, 3121152, 3141632, 0, 0, 0, 2924544, 0, 2682880, 0, 0, 0, 0, 0, 0, 0,
  30709. /* 19331 */ 1242, 1272, 1273, 0, 1242, 0, 540, 540, 540, 3112960, 2387968, 2179072, 2179072, 2179072, 2179072,
  30710. /* 19346 */ 2179072, 2179072, 2179072, 2453504, 2179072, 2473984, 2482176, 2179072, 2179072, 2179072, 2179072,
  30711. /* 19357 */ 2179072, 3010560, 2179072, 2179072, 2126737, 2126737, 2503569, 2126737, 2126737, 2126737, 2126737,
  30712. /* 19368 */ 2126737, 2126737, 2532241, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2605969,
  30713. /* 19379 */ 2126737, 2924544, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30714. /* 19390 */ 3035136, 2179072, 2179072, 3072000, 2179072, 2179072, 2179072, 3137536, 2126737, 2126737, 2499473,
  30715. /* 19401 */ 2126737, 2126737, 2126737, 2556817, 2565009, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737,
  30716. /* 19412 */ 3224465, 0, 0, 2126810, 2126810, 2126810, 2126810, 2126810, 2446298, 2126810, 3121152, 2179072, 2179072,
  30717. /* 19425 */ 3141632, 2179072, 2179072, 2179072, 3170304, 2179072, 2179072, 3190784, 3194880, 2179072, 0, 0, 0, 0, 0,
  30718. /* 19440 */ 0, 3181, 0, 0, 0, 3184, 3185, 3186, 0, 0, 3189, 3194880, 2125824, 0, 0, 0, 0, 0, 0, 2387968, 2125824,
  30719. /* 19461 */ 2125824, 2420736, 2125824, 2125824, 2125824, 2125824, 2125824, 2453504, 2125824, 2473984, 2482176,
  30720. /* 19472 */ 2125824, 2125824, 2125824, 2605056, 2125824, 2629632, 2125824, 2125824, 2650112, 2125824, 2125824,
  30721. /* 19483 */ 2125824, 2707456, 2125824, 2736128, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30722. /* 19494 */ 2125824, 2125824, 2125824, 3035136, 2125824, 2125824, 3072000, 2125824, 2125824, 3121152, 2125824,
  30723. /* 19505 */ 2125824, 3141632, 2125824, 2125824, 2125824, 3170304, 2125824, 2125824, 3190784, 2125824, 3170304,
  30724. /* 19516 */ 2125824, 2125824, 3190784, 3194880, 2125824, 2125824, 2179072, 2125824, 2125824, 2125824, 2179072,
  30725. /* 19527 */ 2179072, 3112960, 3219456, 2125824, 2125824, 3112960, 3219456, 2125824, 2125824, 3112960, 3219456, 0, 0,
  30726. /* 19540 */ 0, 0, 0, 0, 0, 0, 0, 3507, 540, 540, 540, 540, 540, 540, 0, 3145728, 0, 3203072, 0, 0, 0, 0, 0, 0, 0, 0,
  30727. /* 19566 */ 0, 0, 0, 0, 0, 3314, 0, 540, 0, 3067904, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172032, 0, 0, 0, 0,
  30728. /* 19596 */ 2895872, 0, 0, 0, 2445312, 0, 2842624, 0, 0, 0, 2637824, 0, 0, 0, 0, 432, 0, 0, 0, 329, 467, 467, 467,
  30729. /* 19619 */ 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, 467, 0, 0, 0, 2621440, 0, 3182592, 2899968, 0,
  30730. /* 19640 */ 2961408, 0, 0, 2179072, 2179072, 2179072, 2179072, 2179072, 2592768, 2179072, 2179072, 2179072, 2179072,
  30731. /* 19653 */ 2179072, 2179072, 2179072, 2125824, 2445312, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30732. /* 19664 */ 2179072, 2179072, 2179072, 2179072, 2179072, 2551808, 2179072, 2179072, 2179072, 2179072, 2179072,
  30733. /* 19675 */ 3117056, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30734. /* 19686 */ 2179072, 2179072, 2126737, 2126737, 2126737, 2126737, 2637824, 2125824, 2125824, 2125824, 2125824,
  30735. /* 19697 */ 2727936, 2752512, 2125824, 2125824, 2125824, 2125824, 2842624, 2846720, 2125824, 2895872, 2916352,
  30736. /* 19708 */ 2125824, 2125824, 2945024, 2125824, 2125824, 2994176, 2125824, 3002368, 2125824, 2125824, 3022848,
  30737. /* 19719 */ 2125824, 3067904, 3084288, 3096576, 2125824, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0,
  30738. /* 19734 */ 0, 0, 0, 0, 0, 0, 2442, 2443, 0, 0, 2446, 0, 0, 0, 0, 0, 2928640, 0, 0, 0, 3059712, 0, 2543616, 2666496,
  30739. /* 19758 */ 0, 2633728, 0, 0, 0, 0, 0, 1697, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1116, 0, 0, 0, 0, 0, 2494464, 0, 0, 0, 0,
  30740. /* 19787 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3211264, 2179072, 2928640, 2179072, 2179072, 2179072, 2998272, 2179072,
  30741. /* 19805 */ 2179072, 2179072, 2179072, 3059712, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3223552, 0, 0,
  30742. /* 19818 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2446225, 2126737, 2179072, 3178496, 2125824, 2125824,
  30743. /* 19829 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2494464, 2125824, 2125824, 2514944, 2125824,
  30744. /* 19840 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2179072, 2125824, 2125824, 2125824, 2179072, 2179072,
  30745. /* 19851 */ 2179072, 2179072, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 2510848, 2514944, 0, 0, 2547712, 2596864, 0, 0, 0,
  30746. /* 19870 */ 0, 0, 1670, 0, 0, 0, 0, 0, 0, 0, 0, 2113, 0, 2125824, 2543616, 2547712, 2125824, 2125824, 2596864,
  30747. /* 19889 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 2125824,
  30748. /* 19902 */ 2125824, 2125824, 2408448, 2125824, 2928640, 2125824, 2125824, 2125824, 2998272, 2125824, 2125824,
  30749. /* 19913 */ 2125824, 2125824, 3059712, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 2125824,
  30750. /* 19925 */ 2126811, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 2125824, 2125824, 2125824,
  30751. /* 19937 */ 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 2125824, 2125824, 2125824, 2125824, 2424832,
  30752. /* 19950 */ 2125824, 3178496, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2494464,
  30753. /* 19961 */ 2125824, 2125824, 2514944, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3223552, 0, 0, 2125824,
  30754. /* 19974 */ 2125824, 2125824, 2125824, 2125824, 2445312, 2125824, 2125824, 3178496, 2125824, 2179072, 2125824,
  30755. /* 19985 */ 2125824, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2441216, 0, 0, 0, 0, 0, 0, 3311, 0, 0, 0,
  30756. /* 20003 */ 0, 0, 0, 0, 0, 540, 540, 540, 2165, 540, 540, 540, 540, 0, 0, 0, 2740224, 0, 0, 0, 0, 0, 2793472, 0, 0, 0,
  30757. /* 20029 */ 0, 0, 0, 0, 1244, 0, 0, 0, 0, 1247, 0, 1194, 0, 2646016, 2179072, 2179072, 2695168, 2756608, 2179072,
  30758. /* 20048 */ 2179072, 2179072, 2932736, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  30759. /* 20059 */ 2179072, 3039232, 2179072, 3063808, 2179072, 2179072, 2179072, 2179072, 3129344, 2179072, 2179072,
  30760. /* 20070 */ 3153920, 3166208, 3174400, 2396160, 2400256, 2125824, 2125824, 2441216, 2125824, 2469888, 2125824,
  30761. /* 20081 */ 2125824, 2125824, 2519040, 2125824, 2125824, 2125824, 2125824, 2588672, 2125824, 2519040, 2125824,
  30762. /* 20092 */ 2125824, 2125824, 2125824, 2588672, 2125824, 2613248, 2646016, 2125824, 2125824, 2695168, 2756608,
  30763. /* 20103 */ 2125824, 2125824, 2125824, 2125824, 2932736, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30764. /* 20114 */ 2932736, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3129344, 2125824, 2125824,
  30765. /* 20125 */ 3153920, 3166208, 3174400, 2396160, 2125824, 2125824, 3129344, 2125824, 2125824, 3153920, 3166208,
  30766. /* 20136 */ 3174400, 2125824, 2506752, 2506752, 2506752, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824,
  30767. /* 20147 */ 2125824, 2125824, 3223552, 987, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 2445312, 2125824, 0,
  30768. /* 20160 */ 3043328, 0, 3149824, 2936832, 0, 2760704, 3176, 0, 0, 0, 0, 2953216, 0, 0, 2826240, 3158016, 2437120, 0,
  30769. /* 20178 */ 2785280, 0, 0, 0, 2428928, 0, 3018752, 2764800, 2572288, 0, 0, 3051520, 2179072, 2179072, 2637824,
  30770. /* 20193 */ 2179072, 2179072, 2179072, 2179072, 2727936, 2752512, 2179072, 2179072, 2179072, 2842624, 2846720,
  30771. /* 20204 */ 2179072, 2916352, 2428928, 2437120, 2179072, 2486272, 2179072, 2179072, 2179072, 2179072, 2179072,
  30772. /* 20215 */ 2179072, 2179072, 2179072, 2654208, 2678784, 2760704, 2764800, 2854912, 2969600, 2179072, 3006464,
  30773. /* 20226 */ 2179072, 3018752, 2179072, 2179072, 2179072, 3149824, 2125824, 2428928, 2437120, 2125824, 2486272,
  30774. /* 20237 */ 2125824, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 297, 0, 0, 0, 0, 0, 2043, 2044,
  30775. /* 20258 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2140, 0, 0, 0, 0, 0, 0, 2125824, 3018752, 2125824, 2125824, 2125824, 3149824,
  30776. /* 20280 */ 2125824, 2428928, 2437120, 2125824, 2486272, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30777. /* 20291 */ 2125824, 2125824, 0, 24576, 987, 2125824, 2125824, 2125824, 2125824, 2424832, 2125824, 3149824, 2125824,
  30778. /* 20304 */ 2179072, 3051520, 2125824, 3051520, 2125824, 3051520, 0, 2490368, 2498560, 0, 0, 0, 0, 0, 0, 304, 0,
  30779. /* 20321 */ 204800, 0, 0, 0, 0, 0, 0, 0, 0, 1713, 0, 0, 0, 0, 0, 0, 0, 0, 1727, 0, 0, 0, 0, 0, 0, 0, 0, 2068, 0, 0, 0,
  30780. /* 20352 */ 0, 0, 0, 0, 0, 2095, 0, 0, 0, 0, 0, 0, 0, 0, 2107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2875392, 0, 0, 0, 3176, 0,
  30781. /* 20382 */ 0, 2834432, 0, 3227648, 2568192, 0, 0, 0, 0, 2564096, 0, 2940928, 2179072, 2179072, 2498560, 2179072,
  30782. /* 20398 */ 2179072, 2179072, 2555904, 2564096, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 3223552, 0, 0,
  30783. /* 20411 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2445312, 2125824, 2125824, 2125824, 2125824, 2125824,
  30784. /* 20422 */ 2125824, 3137536, 2125824, 2125824, 2498560, 2125824, 2125824, 2125824, 2555904, 2564096, 2125824,
  30785. /* 20433 */ 2125824, 2125824, 2125824, 2125824, 2125824, 3223552, 2125824, 2179072, 2416640, 2125824, 2125824,
  30786. /* 20444 */ 2179072, 2179072, 2125824, 2125824, 0, 2486272, 0, 0, 0, 0, 0, 2678784, 2854912, 3006464, 0, 3108864,
  30787. /* 20460 */ 3198976, 0, 0, 2748416, 2879488, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2179072,
  30788. /* 20479 */ 2179072, 2592768, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2126737, 2125824,
  30789. /* 20490 */ 2125824, 2125824, 2125824, 3010560, 2125824, 2125824, 2125824, 2125824, 2502656, 2125824, 2125824,
  30790. /* 20501 */ 2125824, 2125824, 2125824, 2125824, 296, 0, 0, 0, 296, 0, 297, 0, 0, 0, 2125824, 2125824, 2125824,
  30791. /* 20518 */ 3010560, 2125824, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 0, 2592768, 0, 0, 0, 0, 433, 0, 0, 0, 453, 469, 469,
  30792. /* 20541 */ 469, 469, 469, 469, 469, 469, 469, 479, 469, 469, 469, 469, 469, 469, 2125824, 2125824, 2125824, 2125824,
  30793. /* 20559 */ 2592768, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30794. /* 20570 */ 2125824, 0, 1918, 2125824, 2125824, 2125824, 2408448, 2125824, 2592768, 2125824, 2125824, 2125824,
  30795. /* 20582 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2449408, 0, 2535424, 3031040, 0, 0, 0, 0, 0, 1734, 0, 1736,
  30796. /* 20599 */ 1710, 540, 540, 540, 540, 540, 540, 540, 540, 1816, 1818, 540, 540, 540, 540, 540, 1360, 0, 2859008, 0, 0,
  30797. /* 20620 */ 2179072, 2449408, 2179072, 2535424, 2179072, 2609152, 2179072, 2859008, 2179072, 2179072, 2179072,
  30798. /* 20631 */ 3031040, 2125824, 2449408, 2125824, 2535424, 2125824, 2609152, 2125824, 2859008, 2125824, 2125824,
  30799. /* 20642 */ 2125824, 3031040, 2125824, 2449408, 2125824, 2535424, 2125824, 2609152, 2125824, 2859008, 2125824,
  30800. /* 20653 */ 2125824, 2125824, 3031040, 2125824, 2527232, 0, 0, 0, 0, 0, 2179072, 2125824, 2125824, 2125824, 2179072,
  30801. /* 20668 */ 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30802. /* 20679 */ 2125824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2804, 540, 540, 540, 540, 2527232, 2179072, 2179072, 2179072,
  30803. /* 20700 */ 2179072, 2179072, 2125824, 2527232, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2527232,
  30804. /* 20711 */ 2125824, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0, 1080, 1084, 0, 0, 1088, 2125824,
  30805. /* 20728 */ 2125824, 2125824, 2125824, 3092480, 0, 0, 0, 0, 3026944, 2404352, 2179072, 2179072, 2179072, 2179072,
  30806. /* 20742 */ 3026944, 2404352, 2125824, 2125824, 2125824, 2125824, 3026944, 2404352, 2125824, 2125824, 2125824,
  30807. /* 20753 */ 2125824, 3026944, 2539520, 0, 2949120, 0, 0, 0, 0, 434, 0, 0, 446, 0, 0, 0, 0, 0, 0, 0, 0, 457, 1147354,
  30808. /* 20776 */ 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 2179072, 2658304, 2973696, 2179072, 2125824,
  30809. /* 20787 */ 2658304, 2973696, 2125824, 2125824, 2658304, 2973696, 2125824, 2711552, 0, 2560000, 2179072, 2179072,
  30810. /* 20799 */ 2945024, 2179072, 2179072, 2994176, 2179072, 3002368, 2179072, 2179072, 3022848, 2179072, 3067904,
  30811. /* 20810 */ 3084288, 3096576, 2179072, 2179072, 2600960, 2179072, 2179072, 2179072, 2179072, 2641920, 2179072,
  30812. /* 20821 */ 2179072, 2179072, 2179072, 2179072, 2179072, 2719744, 2179072, 2179072, 2441216, 2179072, 2469888,
  30813. /* 20832 */ 2179072, 2179072, 2179072, 2519040, 2179072, 2179072, 2179072, 2179072, 2588672, 2179072, 2613248,
  30814. /* 20843 */ 2703360, 0, 0, 0, 0, 2977792, 0, 0, 3047424, 3129344, 0, 2981888, 2396160, 0, 3153920, 2560000, 2125824,
  30815. /* 20860 */ 2560000, 2125824, 0, 2179072, 2125824, 2125824, 0, 2179072, 2125824, 2125824, 0, 2179072, 2125824,
  30816. /* 20873 */ 2125824, 2125824, 2457600, 2179072, 2179072, 2179072, 2179072, 2457600, 2125824, 2125824, 2125824,
  30817. /* 20884 */ 2985984, 2985984, 2985984, 2985984, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 249856, 0, 0, 0, 0, 0, 111050,
  30818. /* 20908 */ 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050, 111050,
  30819. /* 20921 */ 111050, 111050, 458, 458, 111050, 458, 458, 458, 458, 458, 458, 458, 458, 458, 458, 111050, 111050,
  30820. /* 20938 */ 111050, 111050, 111050, 111050, 111050, 111050, 111050, 458, 111050, 111050, 111050, 111050, 111050, 0, 0,
  30821. /* 20953 */ 0, 0, 0, 0, 0, 0, 0, 0, 2738, 0, 0, 0, 0, 0, 0, 2183168, 0, 0, 0, 0, 0, 296, 297, 0, 2134016, 300, 301, 0,
  30822. /* 20981 */ 0, 0, 0, 0, 0, 184723, 184931, 184931, 184931, 0, 184931, 184931, 184931, 184931, 184931, 0, 0, 0, 0, 0,
  30823. /* 21001 */ 184931, 0, 184931, 1, 12290, 3, 78112, 1059, 0, 0, 2179072, 2125824, 2125824, 2125824, 2179072, 2179072,
  30824. /* 21017 */ 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 296, 0,
  30825. /* 21030 */ 297, 0, 2125824, 1059, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2750, 0,
  30826. /* 21051 */ 0, 0, 0, 2755, 0, 300, 118784, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 300, 300,
  30827. /* 21079 */ 300, 300, 0, 0, 0, 0, 0, 300, 0, 300, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 266240, 0, 0,
  30828. /* 21109 */ 0, 0, 2183168, 0, 0, 0, 0, 0, 33403, 297, 0, 2134016, 49791, 301, 0, 0, 0, 0, 0, 0, 225889, 225889,
  30829. /* 21131 */ 225889, 225889, 225740, 225889, 225889, 225889, 225889, 225889, 225740, 225740, 225740, 225740, 225740,
  30830. /* 21144 */ 225906, 225740, 225906, 1, 12290, 3, 0, 0, 0, 0, 249856, 0, 0, 0, 249856, 0, 0, 0, 0, 0, 0, 697, 698, 0,
  30831. /* 21168 */ 362, 362, 362, 0, 0, 0, 0, 0, 0, 711, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 296, 0, 0, 0, 0, 0, 0, 0, 0,
  30832. /* 21197 */ 2134016, 0, 0, 0, 0, 0, 0, 57344, 0, 0, 0, 0, 0, 0, 0, 3506, 0, 540, 540, 540, 540, 540, 540, 540, 2530,
  30833. /* 21222 */ 540, 540, 540, 540, 540, 540, 540, 2125824, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 296,
  30834. /* 21240 */ 0, 0, 0, 300, 0, 0, 0, 300, 119195, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 122880, 122880, 122880, 122880,
  30835. /* 21262 */ 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 0, 0, 0, 0,
  30836. /* 21277 */ 122880, 122880, 122880, 122880, 122880, 122880, 122880, 122880, 0, 0, 122880, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30837. /* 21297 */ 0, 0, 3166, 3167, 0, 0, 0, 0, 0, 122880, 0, 122880, 122880, 122880, 0, 0, 0, 0, 0, 122880, 0, 122880, 0,
  30838. /* 21320 */ 0, 0, 0, 0, 0, 0, 0, 122880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30839. /* 21350 */ 122880, 122880, 122880, 122880, 122880, 0, 122880, 0, 2105629, 12290, 3, 0, 0, 291, 0, 0, 0, 0, 291, 0, 0,
  30840. /* 21371 */ 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 746, 0, 0, 0,
  30841. /* 21400 */ 0, 0, 0, 328, 0, 0, 0, 0, 0, 0, 0, 328, 0, 0, 69632, 73728, 0, 416, 416, 0, 0, 65536, 416, 1092, 0,
  30842. /* 21425 */ 2424832, 2433024, 0, 0, 2457600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2765, 0, 0, 0, 0, 0, 1824, 2125824,
  30843. /* 21448 */ 2125824, 2125824, 2408448, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  30844. /* 21459 */ 2125824, 2125824, 2125824, 2551808, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 131072, 0, 0, 0,
  30845. /* 21475 */ 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2507, 0, 0, 0, 0, 0,
  30846. /* 21505 */ 131072, 0, 0, 131072, 131072, 0, 0, 0, 0, 0, 0, 131072, 0, 131072, 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30847. /* 21530 */ 0, 131072, 0, 131072, 131072, 131072, 131072, 0, 131072, 131072, 131072, 131072, 131072, 0, 0, 0, 0, 0,
  30848. /* 21548 */ 131072, 0, 131072, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 298, 0, 135168, 135168, 0, 0, 0, 0, 0,
  30849. /* 21575 */ 0, 0, 0, 0, 0, 0, 0, 0, 320, 321, 0, 0, 0, 135168, 0, 0, 135168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3174, 0,
  30850. /* 21605 */ 0, 0, 0, 0, 0, 0, 135168, 135168, 135168, 135168, 135168, 135168, 135168, 0, 135168, 135168, 135168,
  30851. /* 21622 */ 135168, 135168, 0, 0, 0, 0, 0, 135168, 0, 135168, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118784,
  30852. /* 21647 */ 296, 0, 2183168, 0, 0, 0, 0, 0, 636, 637, 0, 2134016, 640, 641, 0, 0, 0, 0, 0, 0, 266240, 0, 0, 0, 0, 0,
  30853. /* 21673 */ 0, 0, 0, 0, 0, 266240, 0, 0, 0, 1361, 2125824, 2125824, 2125824, 2125824, 2424832, 2433024, 2125824,
  30854. /* 21690 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 986, 2125824, 2125824, 2125824,
  30855. /* 21703 */ 2125824, 2424832, 0, 301, 139264, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 331, 0, 331, 301, 301, 301, 301,
  30856. /* 21728 */ 0, 0, 0, 0, 0, 301, 0, 301, 1, 12290, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 139264, 297, 0, 2183168, 0, 0,
  30857. /* 21756 */ 0, 0, 0, 296, 33406, 0, 2134016, 300, 49794, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30858. /* 21782 */ 1134592, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61440, 0, 0, 0, 0, 647, 0, 0, 0, 0, 0, 0, 0, 0,
  30859. /* 21811 */ 0, 0, 0, 2455, 0, 0, 0, 0, 0, 301, 2424832, 2433024, 0, 0, 2457600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2779, 0,
  30860. /* 21838 */ 0, 0, 0, 0, 298, 298, 143728, 298, 298, 298, 143728, 69632, 73728, 298, 298, 143658, 298, 298, 65536, 298,
  30861. /* 21858 */ 298, 0, 0, 298, 298, 143658, 298, 298, 298, 298, 298, 298, 298, 298, 298, 363, 298, 0, 143658, 298, 298,
  30862. /* 21879 */ 298, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658,
  30863. /* 21892 */ 143658, 143658, 143658, 143658, 298, 298, 298, 298, 143658, 143658, 143658, 143658, 143658, 143658,
  30864. /* 21906 */ 143658, 143658, 298, 298, 298, 143658, 368, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298,
  30865. /* 21925 */ 298, 298, 298, 298, 143658, 298, 298, 143658, 298, 298, 143658, 143658, 143658, 143658, 143658, 143658,
  30866. /* 21941 */ 298, 0, 298, 0, 298, 298, 298, 143658, 298, 298, 298, 298, 298, 298, 298, 298, 298, 143658, 298, 143658,
  30867. /* 21961 */ 143658, 143658, 143658, 298, 298, 143658, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 143728,
  30868. /* 21979 */ 298, 298, 298, 298, 298, 298, 298, 143658, 143658, 143658, 143658, 143658, 143658, 143728, 143658, 143728,
  30869. /* 21995 */ 143728, 143728, 143728, 143728, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 143658, 1, 12290,
  30870. /* 22009 */ 3, 0, 0, 0, 0, 0, 0, 0, 90406, 90406, 90406, 90406, 0, 94503, 0, 0, 0, 3117056, 0, 0, 0, 0, 0, 0, 0,
  30871. /* 22034 */ 2200252, 2200252, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 0, 0, 0, 0, 0, 155648,
  30872. /* 22058 */ 155648, 0, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648,
  30873. /* 22072 */ 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 155648, 0, 0, 0, 0,
  30874. /* 22087 */ 155648, 0, 0, 0, 0, 0, 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1663, 0, 0, 0, 0, 0, 0, 0, 0, 155648, 0, 0,
  30875. /* 22116 */ 155648, 0, 0, 0, 0, 0, 0, 0, 155648, 0, 0, 0, 155648, 155648, 0, 155648, 155648, 0, 12290, 3, 0, 0,
  30876. /* 22138 */ 2183168, 126976, 0, 0, 0, 0, 296, 297, 0, 2134016, 300, 301, 0, 0, 0, 0, 0, 0, 1146880, 0, 1146880, 0, 0,
  30877. /* 22161 */ 0, 0, 0, 0, 0, 1107, 0, 0, 0, 0, 0, 0, 0, 0, 540, 2163, 540, 540, 540, 540, 540, 540, 0, 0, 0, 3117056, 0,
  30878. /* 22188 */ 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 0, 0, 345, 346, 347, 0, 0, 0, 0, 0, 0, 0, 757, 0, 0, 0, 0, 0, 0, 0, 0,
  30879. /* 22220 */ 1156, 0, 0, 0, 0, 0, 0, 0, 159744, 159744, 159744, 0, 0, 159744, 0, 0, 0, 0, 0, 0, 0, 0, 159744, 159744,
  30880. /* 22244 */ 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 159744,
  30881. /* 22257 */ 159744, 163840, 159744, 159744, 159744, 163840, 159744, 159744, 159744, 159744, 159744, 0, 0, 0, 0, 0, 0,
  30882. /* 22274 */ 0, 0, 25160, 0, 0, 159744, 0, 0, 0, 0, 25160, 25160, 25160, 159744, 25160, 25160, 25160, 25160, 25160,
  30883. /* 22293 */ 159744, 159744, 159744, 159744, 25160, 159744, 25160, 1, 12290, 3, 0, 167936, 167936, 167936, 167936,
  30884. /* 22308 */ 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 167936, 1, 12290,
  30885. /* 22322 */ 3, 0, 167936, 167936, 167936, 0, 0, 167936, 0, 0, 0, 0, 0, 0, 0, 0, 167936, 167936, 167936, 167936,
  30886. /* 22342 */ 167936, 167936, 167936, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3015, 0, 0, 0, 0, 0, 0, 0, 0, 2138112, 1183, 0, 0,
  30887. /* 22368 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 262144, 0, 0, 0, 0, 172032, 172032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 172032, 0,
  30888. /* 22397 */ 0, 0, 0, 0, 0, 172032, 172032, 0, 172032, 0, 0, 172032, 0, 172032, 0, 172032, 0, 0, 0, 0, 172032, 172032,
  30889. /* 22419 */ 172032, 172032, 172032, 172032, 172032, 172032, 1, 12290, 3, 0, 172032, 0, 172032, 172032, 0, 172032,
  30890. /* 22435 */ 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032,
  30891. /* 22448 */ 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 172032, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30892. /* 22467 */ 106496, 0, 0, 0, 0, 0, 1, 286, 3, 0, 0, 0, 292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 106496, 0, 106496, 0, 0, 0,
  30893. /* 22496 */ 0, 106496, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 176128,
  30894. /* 22510 */ 176128, 176128, 176128, 176128, 1, 0, 3, 78112, 176128, 176128, 176128, 0, 0, 176128, 0, 0, 0, 0, 0, 0, 0,
  30895. /* 22531 */ 0, 176128, 176128, 176128, 176128, 176128, 176128, 176128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111050, 0, 0, 0,
  30896. /* 22553 */ 0, 0, 78112, 290, 0, 634, 0, 0, 0, 296, 297, 0, 2134016, 300, 301, 0, 0, 0, 0, 0, 0, 1159168, 414, 414, 0,
  30897. /* 22578 */ 0, 0, 0, 0, 414, 0, 1164, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 0, 914, 561, 561,
  30898. /* 22607 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 959, 561, 585, 585, 585, 1490, 585, 585, 585,
  30899. /* 22628 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1498, 585, 585, 0, 0, 229376, 0, 0, 0, 0, 0, 0, 0, 0,
  30900. /* 22652 */ 1686, 0, 0, 0, 0, 0, 0, 404, 404, 404, 404, 0, 404, 404, 404, 404, 404, 0, 0, 0, 0, 0, 404, 0, 404, 1,
  30901. /* 22678 */ 12290, 3, 78112, 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1155072, 0, 0, 0, 0, 0, 0, 0, 2131, 0, 0, 0, 0,
  30902. /* 22707 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 658, 0, 0, 0, 561, 561, 561, 561, 561, 561, 2250, 561, 561, 561, 561,
  30903. /* 22733 */ 561, 561, 585, 585, 585, 585, 585, 585, 0, 0, 0, 0, 0, 0, 3295, 0, 0, 0, 0, 0, 0, 0, 712, 0, 0, 0, 716, 0,
  30904. /* 22761 */ 0, 719, 0, 561, 561, 2287, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 585,
  30905. /* 22784 */ 585, 585, 2347, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1514, 585, 585, 2372,
  30906. /* 22804 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 561, 561,
  30907. /* 22826 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 585, 585, 585, 585, 2671, 585, 585,
  30908. /* 22847 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1515, 585, 585, 0, 0, 0, 2994, 0, 0, 0, 2998, 0, 0,
  30909. /* 22871 */ 0, 0, 0, 0, 0, 0, 0, 159744, 159744, 159744, 159744, 159744, 159744, 159744, 540, 3035, 540, 540, 540,
  30910. /* 22890 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 910, 540, 3075, 561, 561, 561, 561, 561, 561, 561,
  30911. /* 22911 */ 561, 561, 561, 561, 561, 561, 561, 561, 1417, 3116, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  30912. /* 22932 */ 585, 585, 585, 585, 1501, 0, 0, 3178, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3187, 0, 0, 0, 0, 0, 2046, 0, 2149, 0,
  30913. /* 22960 */ 0, 0, 0, 0, 0, 0, 0, 0, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 1, 12290, 3, 0,
  30914. /* 22980 */ 540, 540, 540, 3203, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3211, 540, 540, 540, 540, 540, 2813,
  30915. /* 23000 */ 540, 540, 2817, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2555, 540, 540, 540, 540, 540, 540, 3255,
  30916. /* 23020 */ 585, 585, 585, 3258, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3266, 585, 561, 0, 1287, 585, 1467,
  30917. /* 23040 */ 1376, 540, 540, 1339, 540, 540, 561, 561, 1430, 561, 0, 585, 585, 585, 585, 585, 288, 1079, 0, 0, 0, 0, 0,
  30918. /* 23063 */ 0, 0, 0, 2427, 0, 0, 0, 0, 0, 0, 0, 0, 2465, 0, 0, 2468, 0, 0, 0, 0, 0, 0, 0, 0, 3309, 0, 0, 0, 0, 0, 0,
  30919. /* 23094 */ 0, 0, 0, 0, 540, 3508, 540, 3509, 540, 540, 540, 3326, 3327, 540, 540, 540, 540, 540, 540, 540, 540, 561,
  30920. /* 23116 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 961, 561, 585, 585, 585, 3361, 585, 585,
  30921. /* 23137 */ 585, 585, 3362, 3363, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1159168, 0, 0, 0,
  30922. /* 23162 */ 0, 0, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 3387, 0, 0, 0, 0, 0, 2092, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30923. /* 23194 */ 404, 0, 0, 0, 0, 0, 561, 3416, 561, 561, 561, 561, 585, 585, 585, 585, 585, 585, 3425, 585, 585, 585, 585,
  30924. /* 23217 */ 585, 585, 1492, 585, 585, 585, 585, 585, 585, 585, 1499, 585, 585, 585, 585, 3431, 585, 585, 585, 585,
  30925. /* 23237 */ 3435, 540, 561, 585, 0, 0, 0, 0, 0, 0, 665, 0, 0, 668, 0, 0, 0, 0, 0, 0, 0, 3172, 0, 0, 0, 0, 0, 0, 0, 0,
  30926. /* 23267 */ 0, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 3450,
  30927. /* 23289 */ 540, 540, 540, 540, 540, 2814, 540, 2816, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2233, 540, 540,
  30928. /* 23309 */ 540, 540, 540, 0, 561, 561, 561, 3573, 561, 561, 561, 561, 561, 561, 561, 561, 585, 585, 585, 585, 585,
  30929. /* 23330 */ 585, 3538, 585, 585, 3585, 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 0, 3627, 561, 561,
  30930. /* 23353 */ 585, 585, 0, 540, 561, 585, 0, 540, 561, 585, 0, 540, 561, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30931. /* 23380 */ 2662400, 0, 2813952, 78112, 290, 0, 0, 0, 0, 0, 296, 297, 0, 2134016, 300, 301, 0, 0, 0, 0, 0, 0, 2473984,
  30932. /* 23403 */ 2478080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2976, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2134756, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30933. /* 23433 */ 0, 0, 0, 1, 12290, 3, 0, 0, 0, 188416, 540, 585, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561,
  30934. /* 23456 */ 585, 585, 585, 585, 0, 0, 540, 540, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540, 540,
  30935. /* 23482 */ 540, 540, 2169, 0, 0, 0, 302, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12290, 3, 78112, 192971, 192971,
  30936. /* 23507 */ 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971,
  30937. /* 23520 */ 192971, 0, 192971, 0, 1, 12290, 3, 0, 192971, 192971, 192971, 0, 0, 192971, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  30938. /* 23544 */ 0, 131072, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 322, 0, 0, 0, 0, 192971, 192971, 192971,
  30939. /* 23570 */ 192971, 192971, 192971, 192971, 192971, 192971, 0, 192971, 192971, 192971, 192971, 192971, 0, 0, 0, 0, 0,
  30940. /* 23587 */ 0, 0, 0, 0, 0, 2801664, 0, 0, 0, 0, 2142208, 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 674, 78112,
  30941. /* 23616 */ 290, 0, 0, 0, 0, 0, 296, 297, 0, 299, 300, 301, 0, 0, 0, 0, 0, 0, 2797568, 0, 0, 0, 0, 0, 0, 0, 2850816,
  30942. /* 23643 */ 2867200, 0, 0, 740, 404, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 335, 0, 0, 0, 0, 0, 740, 540, 585, 585, 561,
  30943. /* 23671 */ 540, 540, 540, 540, 540, 561, 561, 561, 561, 585, 585, 585, 585, 2029, 0, 2031, 0, 0, 0, 0, 740, 1184, 0,
  30944. /* 23694 */ 0, 0, 0, 1188, 0, 0, 0, 0, 0, 0, 0, 1583, 0, 1585, 0, 0, 0, 0, 0, 0, 0, 1661, 1662, 0, 0, 0, 0, 0, 0, 0,
  30945. /* 23724 */ 0, 2727936, 0, 0, 0, 3084288, 0, 0, 0, 0, 0, 0, 1577, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 351, 352, 353,
  30946. /* 23752 */ 354, 0, 0, 0, 1188, 1670, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1150976, 0, 0, 0, 0, 0, 0, 561, 561, 585,
  30947. /* 23780 */ 585, 585, 585, 1559, 2029, 0, 0, 0, 0, 1565, 2031, 0, 0, 0, 0, 0, 2120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2130,
  30948. /* 23807 */ 2033, 0, 2035, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 336, 337, 338, 561, 561, 2323, 2648, 0, 0, 0, 0,
  30949. /* 23834 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2339, 585, 585, 2342, 0, 304, 0, 304, 0, 0, 0, 0,
  30950. /* 23857 */ 0, 0, 0, 0, 0, 304, 0, 0, 0, 0, 0, 2136, 0, 2138, 0, 0, 0, 0, 0, 0, 0, 0, 791, 817, 0, 817, 812, 0, 0, 0,
  30951. /* 23887 */ 0, 0, 0, 204800, 204800, 0, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800, 204800,
  30952. /* 23902 */ 204800, 204800, 204800, 204800, 205104, 204800, 204800, 205103, 205104, 204800, 205103, 205103, 204800,
  30953. /* 23915 */ 204800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 296, 0, 0, 0, 0, 0, 0, 0, 2183801, 0, 0, 0, 0, 0, 296, 297, 151552,
  30954. /* 23942 */ 2134016, 300, 301, 0, 212992, 0, 0, 0, 0, 662, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3117056, 0, 0,
  30955. /* 23970 */ 0, 0, 0, 0, 0, 0, 2200253, 0, 0, 0, 0, 0, 0, 2932736, 2965504, 0, 0, 3076096, 0, 0, 2695168, 3174400,
  30956. /* 23992 */ 2646016, 0, 914, 2126737, 2126737, 2126737, 2126737, 2425745, 2433937, 2126737, 2126737, 2126737, 2126737,
  30957. /* 24005 */ 2126737, 2126737, 2126737, 2126737, 0, 0, 987, 2126810, 2126810, 2126810, 2126810, 2425818, 2724753,
  30958. /* 24018 */ 2126737, 2732945, 2773905, 2126737, 2126737, 2126737, 2806673, 2126737, 2831249, 2126737, 2126737,
  30959. /* 24029 */ 2864017, 2126737, 2126737, 2126737, 2126737, 2126737, 2524049, 2126737, 2126737, 2126737, 2126737,
  30960. /* 24040 */ 2126737, 2126737, 2126737, 2126737, 2601873, 2126737, 2126737, 2921361, 2126737, 2126737, 2126737,
  30961. /* 24051 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 3117969, 2126737, 2126737,
  30962. /* 24062 */ 2126737, 2126737, 2593681, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126810,
  30963. /* 24073 */ 2126810, 2126810, 2126810, 3093393, 0, 0, 0, 0, 3026944, 2404352, 2179072, 2179072, 2179072, 2179072,
  30964. /* 24087 */ 3026944, 2434010, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  30965. /* 24098 */ 2126810, 2126810, 2126810, 2126810, 2626522, 2126810, 2126737, 0, 2179072, 2126810, 2126810, 2126737,
  30966. /* 24110 */ 2457600, 2179072, 2179072, 2179072, 2179072, 2458513, 2126737, 2126737, 2126737, 2126737, 2126737,
  30967. /* 24121 */ 2626449, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2700177, 2126737, 2716561, 2126737,
  30968. /* 24132 */ 2806746, 2126810, 2831322, 2126810, 2126810, 2864090, 2126810, 2126810, 2126810, 2126810, 2921434,
  30969. /* 24143 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126737, 2179072, 2126810, 2126810, 2126737, 2179072,
  30970. /* 24154 */ 2179072, 2179072, 2179072, 2126737, 2126737, 2126737, 2458586, 2126810, 2126810, 2126810, 2126810,
  30971. /* 24165 */ 2183168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 321, 395, 0, 0, 0, 321, 0, 0, 2126737, 2126737, 2126737, 2409361,
  30972. /* 24187 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737,
  30973. /* 24198 */ 2126737, 2126737, 2126737, 2126737, 2126737, 3126161, 2126737, 2126737, 2126737, 2802577, 2814865,
  30974. /* 24209 */ 2126737, 2839441, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737,
  30975. /* 24220 */ 2126737, 2126737, 2126810, 2126810, 2126810, 2126810, 2126810, 2663386, 2126810, 2126810, 2126810,
  30976. /* 24231 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2802650, 2814938, 2126810,
  30977. /* 24242 */ 2839514, 0, 0, 0, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737,
  30978. /* 24255 */ 2126737, 2462609, 2466705, 2126737, 0, 2126810, 2126810, 2126810, 2126810, 2126810, 0, 0, 0, 0, 0, 0, 0,
  30979. /* 24272 */ 0, 0, 297, 0, 0, 0, 0, 0, 0, 2769809, 2778001, 2126737, 2798481, 2823057, 2126737, 2126737, 2126737,
  30980. /* 24289 */ 2884497, 2126737, 2913169, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2655121,
  30981. /* 24300 */ 2679697, 2761617, 2765713, 2786193, 2855825, 2970513, 2126737, 3007377, 2126737, 3134353, 2126737,
  30982. /* 24311 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 3208081, 2126737, 0, 0, 0, 0, 0,
  30983. /* 24326 */ 325, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  30984. /* 24344 */ 2126810, 2126810, 2126810, 2126810, 2462682, 2466778, 2126810, 2126810, 2126810, 2524122, 2126810,
  30985. /* 24355 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2601946, 2126810, 2126810, 2126810,
  30986. /* 24366 */ 2585562, 2126810, 2126810, 2126810, 2126810, 2126810, 2618330, 2126810, 2126810, 2126810, 2126810,
  30987. /* 24377 */ 2126810, 2126810, 2126810, 2888666, 2126810, 2126810, 2925530, 2126810, 2126810, 2126810, 2126810,
  30988. /* 24388 */ 2126810, 2126810, 2642906, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2720730, 2126810,
  30989. /* 24399 */ 2126810, 2126810, 2126810, 2126810, 2769882, 2778074, 2126810, 2798554, 2823130, 2126810, 2126810,
  30990. /* 24410 */ 2126810, 2884570, 2126810, 2913242, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  30991. /* 24421 */ 2126810, 3126234, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  30992. /* 24432 */ 3208154, 2126810, 2126737, 2179072, 2126810, 2126810, 2126737, 0, 0, 0, 2388881, 2126737, 2126737,
  30993. /* 24445 */ 2421649, 2126737, 2126737, 2126737, 2126737, 2126737, 2454417, 2126737, 2474897, 2483089, 2630545,
  30994. /* 24456 */ 2126737, 2126737, 2651025, 2126737, 2126737, 2126737, 2708369, 2126737, 2737041, 2126737, 2126737,
  30995. /* 24467 */ 2126737, 2126737, 2126737, 2126737, 2126737, 985, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  30996. /* 24479 */ 2126810, 2126810, 2126810, 2126810, 2552794, 2126810, 2126810, 2126810, 2126810, 2126810, 2126737,
  30997. /* 24490 */ 2126737, 3072913, 2126737, 2126737, 3122065, 2126737, 2126737, 3142545, 2126737, 2126737, 2126737,
  30998. /* 24501 */ 3171217, 2126737, 2126737, 3191697, 3195793, 2126737, 0, 0, 0, 0, 0, 0, 2388954, 2126810, 2126810,
  30999. /* 24516 */ 2421722, 2126810, 2126810, 2126810, 2126810, 2126810, 3040218, 2126810, 3064794, 2126810, 2126810,
  31000. /* 24527 */ 2126810, 2126810, 3101658, 2126810, 2126810, 3134426, 2126810, 2454490, 2126810, 2474970, 2483162,
  31001. /* 24538 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2532314, 2126810, 2126810, 2126810, 2126810,
  31002. /* 24549 */ 3036122, 2126810, 2126810, 3072986, 2126810, 2126810, 3122138, 2126810, 2126810, 3142618, 2126810,
  31003. /* 24560 */ 2126810, 2126810, 3171290, 2126810, 2126810, 3191770, 3195866, 2126810, 2126737, 2179072, 2126810,
  31004. /* 24571 */ 2126810, 2126737, 2179072, 2179072, 3112960, 3219456, 2126737, 2126737, 3113873, 3220369, 2126810,
  31005. /* 24582 */ 2126810, 3113946, 3220442, 0, 0, 0, 0, 0, 0, 0, 0, 0, 167936, 167936, 167936, 167936, 167936, 167936,
  31006. /* 24600 */ 167936, 2638737, 2126737, 2126737, 2126737, 2126737, 2728849, 2753425, 2126737, 2126737, 2126737, 2126737,
  31007. /* 24612 */ 2843537, 2847633, 2126737, 2896785, 2917265, 2638810, 2126810, 2126810, 2126810, 2126810, 2728922,
  31008. /* 24623 */ 2753498, 2126810, 2126810, 2126810, 2126810, 2843610, 2847706, 2126810, 2896858, 2917338, 2179072,
  31009. /* 24634 */ 3178496, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2495377, 2126737,
  31010. /* 24645 */ 2126737, 2515857, 2126737, 2126737, 2126737, 2126737, 3011473, 2126737, 2126737, 2126810, 2126810,
  31011. /* 24656 */ 2503642, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 3138522, 2126737, 2940928,
  31012. /* 24667 */ 2941841, 2941914, 0, 0, 0, 0, 2126737, 2544529, 2548625, 2126737, 2126737, 2597777, 2126737, 2126737,
  31013. /* 24681 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2552721, 2126737, 2126737,
  31014. /* 24692 */ 2126737, 2126737, 2126737, 2126737, 2929553, 2126737, 2126737, 2126737, 2999185, 2126737, 2126737,
  31015. /* 24703 */ 2126737, 2126737, 3060625, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 3040145,
  31016. /* 24714 */ 2126737, 3064721, 2126737, 2126737, 2126737, 2126737, 3101585, 2126737, 2126737, 3179409, 2126810,
  31017. /* 24725 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2495450, 2126810, 2126810, 2515930,
  31018. /* 24736 */ 2126810, 2126810, 0, 0, 0, 0, 0, 0, 2510848, 2514944, 0, 0, 2547712, 2596864, 0, 0, 0, 0, 0, 2160, 0, 0,
  31019. /* 24758 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 561, 3525, 561,
  31020. /* 24779 */ 2126810, 2544602, 2548698, 2126810, 2126810, 2597850, 2126810, 2126810, 2126810, 2126810, 2126810,
  31021. /* 24790 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126737, 0, 2502656, 0, 0, 3010560, 2126810, 2929626,
  31022. /* 24803 */ 2126810, 2126810, 2126810, 2999258, 2126810, 2126810, 2126810, 2126810, 3060698, 2126810, 2126810,
  31023. /* 24814 */ 2126810, 2126810, 2126810, 2126810, 3118042, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810,
  31024. /* 24825 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126737,
  31025. /* 24836 */ 2126810, 3179482, 2126737, 2179072, 2126810, 2126737, 2179072, 2179072, 2126737, 2126737, 2126810,
  31026. /* 24847 */ 2126810, 2441216, 0, 0, 0, 0, 0, 326, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 403, 0, 0, 0, 0, 0, 3129344, 2179072,
  31027. /* 24873 */ 2179072, 3153920, 3166208, 3174400, 2397073, 2401169, 2126737, 2126737, 2442129, 2126737, 2470801,
  31028. /* 24884 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2663313, 2126737, 2126737, 2126737, 2126737, 2126737,
  31029. /* 24895 */ 2126737, 2126737, 2126737, 2126737, 2126737, 0, 0, 2126810, 2126810, 2126810, 2409434, 2519953, 2126737,
  31030. /* 24908 */ 2126737, 2126737, 2126737, 2589585, 2126737, 2614161, 2646929, 2126737, 2126737, 2696081, 2757521,
  31031. /* 24919 */ 2126737, 2126737, 2126737, 2126737, 2126737, 3138449, 2126810, 2126810, 2499546, 2126810, 2126810,
  31032. /* 24930 */ 2126810, 2556890, 2565082, 2126810, 2126810, 2126737, 2933649, 2126737, 2126737, 2126737, 2126737,
  31033. /* 24941 */ 2126737, 2126737, 2126737, 3130257, 2126737, 2126737, 3154833, 3167121, 3175313, 2397146, 2401242,
  31034. /* 24952 */ 2126810, 2126810, 2442202, 2126810, 2470874, 2126810, 2126810, 2126810, 2520026, 2126810, 2126810,
  31035. /* 24963 */ 2126810, 2126810, 2589658, 2126810, 2126810, 2126810, 3011546, 2126810, 2126810, 2126737, 0, 0, 0, 0, 0,
  31036. /* 24978 */ 0, 0, 2592768, 0, 0, 0, 0, 663, 0, 0, 666, 667, 0, 0, 0, 0, 0, 0, 0, 540, 571, 540, 571, 540, 540, 571,
  31037. /* 25004 */ 540, 595, 2614234, 2647002, 2126810, 2126810, 2696154, 2757594, 2126810, 2126810, 2126810, 2126810,
  31038. /* 25016 */ 2933722, 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 3224538, 2126737, 2179072, 2417626,
  31039. /* 25027 */ 2126810, 2126737, 2179072, 2179072, 2126737, 2126737, 2854912, 2969600, 2179072, 3006464, 2179072,
  31040. /* 25038 */ 3018752, 2179072, 2179072, 2179072, 3149824, 2126737, 2429841, 2438033, 2126737, 2487185, 2126737,
  31041. /* 25049 */ 2126737, 2945937, 2126737, 2126737, 2995089, 2126737, 3003281, 2126737, 2126737, 3023761, 2126737,
  31042. /* 25060 */ 3068817, 3085201, 3097489, 2126737, 2126737, 2888593, 2126737, 2126737, 2925457, 2126737, 2126737,
  31043. /* 25071 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 3036049, 2126737, 3019665, 2126737,
  31044. /* 25082 */ 2126737, 2126737, 3150737, 2126810, 2429914, 2438106, 2126810, 2487258, 2126810, 2126810, 2126810,
  31045. /* 25093 */ 2126810, 2126810, 2700250, 2126810, 2716634, 2126810, 2724826, 2126810, 2733018, 2773978, 2126810,
  31046. /* 25104 */ 2126810, 2126810, 2126810, 3150810, 2126737, 2179072, 3051520, 2126737, 3052433, 2126810, 3052506, 0,
  31047. /* 25116 */ 2490368, 2498560, 0, 0, 0, 0, 0, 0, 679, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2126810, 2593754, 2126810,
  31048. /* 25139 */ 2126810, 2126810, 2126810, 2126810, 2126810, 2126810, 2126737, 2449408, 0, 2535424, 3031040, 0, 0, 0, 0,
  31049. /* 25154 */ 0, 2439, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 369, 0, 0, 370, 0, 0, 2126737, 2450321, 2126737, 2536337, 2126737,
  31050. /* 25177 */ 2610065, 2126737, 2859921, 2126737, 2126737, 2126737, 3031953, 2126810, 2450394, 2126810, 2536410,
  31051. /* 25188 */ 2126810, 2610138, 2126810, 2859994, 2126810, 2126810, 2126810, 3032026, 2126737, 2527232, 0, 0, 0, 0, 0,
  31052. /* 25203 */ 2179072, 2126810, 2126810, 2126737, 2179072, 2179072, 2179072, 2179072, 2179072, 2126737, 2126737,
  31053. /* 25214 */ 2126737, 2126737, 2126810, 2126810, 2126810, 2126810, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237568, 0, 0, 0, 0,
  31054. /* 25236 */ 2527232, 2179072, 2179072, 2179072, 2179072, 2179072, 2126737, 2528145, 2126737, 2126737, 2126737,
  31055. /* 25247 */ 2126737, 2126737, 2126810, 2528218, 2126810, 2126810, 2946010, 2126810, 2126810, 2995162, 2126810,
  31056. /* 25258 */ 3003354, 2126810, 2126810, 3023834, 2126810, 3068890, 3085274, 3097562, 2126810, 2126810, 2126810,
  31057. /* 25269 */ 2606042, 2126810, 2630618, 2126810, 2126810, 2651098, 2126810, 2126810, 2126810, 2708442, 2126810,
  31058. /* 25280 */ 2737114, 2126810, 2126810, 2126810, 2655194, 2679770, 2761690, 2765786, 2786266, 2855898, 2970586,
  31059. /* 25291 */ 2126810, 3007450, 2126810, 3019738, 2126810, 2126810, 0, 2486272, 0, 0, 0, 0, 0, 2678784, 2854912,
  31060. /* 25306 */ 3006464, 0, 3108864, 3198976, 0, 2405265, 2126737, 2126737, 2126737, 2126737, 3027857, 2405338, 2126810,
  31061. /* 25319 */ 2126810, 2126810, 2126810, 3027930, 2539520, 0, 2949120, 0, 0, 0, 0, 695, 0, 0, 0, 0, 362, 362, 362, 0, 0,
  31062. /* 25340 */ 704, 0, 0, 0, 0, 709, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2049, 0, 0, 0, 0, 2179072, 2658304, 2973696,
  31063. /* 25365 */ 2179072, 2126737, 2659217, 2974609, 2126737, 2126810, 2659290, 2974682, 2126810, 2711552, 0, 2560000,
  31064. /* 25377 */ 2179072, 2179072, 3125248, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  31065. /* 25388 */ 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824, 2125824, 2560913, 2126737, 2560986,
  31066. /* 25399 */ 2126810, 0, 2179072, 2126737, 2126810, 0, 2179072, 2126737, 2126810, 0, 2179072, 2126737, 2126810,
  31067. /* 25412 */ 2126810, 3130330, 2126810, 2126810, 3154906, 3167194, 3175386, 2126737, 2506752, 2507738, 2507665,
  31068. /* 25423 */ 2179072, 2179072, 2126737, 2126737, 2126737, 2642833, 2126737, 2126737, 2126737, 2126737, 2126737,
  31069. /* 25434 */ 2126737, 2720657, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2126737, 2585489,
  31070. /* 25445 */ 2126737, 2126737, 2126737, 2126737, 2126737, 2618257, 2126737, 2985984, 2985984, 2986897, 2986970, 0, 0,
  31071. /* 25458 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 397, 0, 0, 0, 0, 221184, 221184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 221184, 221184,
  31072. /* 25486 */ 0, 0, 221184, 221184, 221184, 0, 0, 0, 0, 0, 0, 221184, 0, 0, 0, 221184, 221184, 221184, 221184, 221184,
  31073. /* 25506 */ 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184,
  31074. /* 25519 */ 221184, 221184, 221184, 221184, 221184, 0, 0, 0, 0, 0, 0, 0, 0, 0, 332, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31075. /* 25544 */ 221184, 221184, 221184, 221184, 221184, 221184, 221184, 221184, 1, 12290, 3, 0, 0, 0, 0, 0, 253952, 0, 0,
  31076. /* 25563 */ 0, 253952, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 687, 688, 0, 0, 0, 0, 0, 98304, 0, 0, 0, 53248, 0, 0, 0, 0,
  31077. /* 25593 */ 0, 2662400, 0, 2813952, 297, 0, 300, 0, 0, 0, 300, 0, 301, 0, 0, 0, 301, 0, 0, 0, 301, 69632, 139679, 0,
  31078. /* 25617 */ 0, 0, 0, 0, 65536, 0, 0, 0, 0, 3133440, 0, 98304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2179072, 2179072,
  31079. /* 25642 */ 2179072, 2179072, 2179072, 300, 0, 301, 0, 0, 0, 2473984, 2478080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 176128,
  31080. /* 25663 */ 176128, 176128, 176128, 176128, 176128, 176128, 3121152, 2179072, 2179072, 3141632, 2179072, 2179072,
  31081. /* 25675 */ 2179072, 3170304, 2179072, 2179072, 3190784, 3194880, 2179072, 914, 0, 0, 0, 0, 0, 2451, 0, 0, 0, 0, 0, 0,
  31082. /* 25695 */ 0, 0, 0, 0, 301, 301, 0, 0, 0, 0, 0, 914, 0, 2387968, 2125824, 2125824, 2420736, 2125824, 2125824,
  31083. /* 25714 */ 2125824, 2125824, 2125824, 2453504, 2125824, 2473984, 2482176, 2125824, 2125824, 2125824, 2125824,
  31084. /* 25725 */ 2125824, 2125824, 2531328, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2605056,
  31085. /* 25736 */ 2125824, 3194880, 2125824, 987, 0, 0, 0, 987, 0, 2387968, 2125824, 2125824, 2420736, 2125824, 2125824,
  31086. /* 25751 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2887680, 2125824, 2125824, 2924544, 2125824, 2125824,
  31087. /* 25762 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 3035136, 225740, 225740, 225740, 225740,
  31088. /* 25774 */ 225740, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 225740, 0, 0, 0,
  31089. /* 25789 */ 0, 0, 0, 0, 0, 0, 348, 349, 350, 0, 0, 0, 0, 2125824, 237568, 2125824, 2125824, 2125824, 2125824, 2125824,
  31090. /* 25809 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 358, 249856, 249856, 249856, 249856, 249856, 249856,
  31091. /* 25831 */ 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 249856, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31092. /* 25850 */ 362, 0, 0, 0, 0, 0, 0, 0, 2183168, 0, 0, 0, 0, 0, 296, 297, 0, 2134016, 300, 301, 0, 0, 217088, 2125824,
  31093. /* 25874 */ 241664, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 131072,
  31094. /* 25895 */ 131072, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413,
  31095. /* 25908 */ 254413, 254413, 254413, 254413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 0, 0, 0, 155648, 0, 0, 2183168, 0, 0,
  31096. /* 25932 */ 270336, 0, 0, 296, 297, 0, 2134016, 300, 301, 200704, 0, 0, 0, 0, 0, 2462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31097. /* 25958 */ 1261, 0, 0, 0, 0, 0, 2125824, 0, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 180224, 0, 0, 0, 0, 0,
  31098. /* 25979 */ 0, 0, 1726, 0, 0, 0, 0, 0, 0, 0, 0, 304, 304, 304, 0, 0, 0, 0, 0, 0, 2748416, 2879488, 0, 20480, 0, 0, 0,
  31099. /* 26006 */ 0, 0, 0, 0, 0, 2179072, 2179072, 2179072, 2179072, 2768896, 2777088, 2797568, 2822144, 2179072, 2179072,
  31100. /* 26021 */ 2179072, 2883584, 2912256, 2179072, 2179072, 2179072, 2179072, 2179072, 2617344, 2179072, 2179072,
  31101. /* 26032 */ 2179072, 2179072, 2179072, 2179072, 2662400, 2179072, 2179072, 2179072, 2179072, 2179072, 3010560,
  31102. /* 26043 */ 2179072, 2179072, 2125824, 2125824, 2502656, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  31103. /* 26054 */ 2125824, 2125824, 2584576, 2125824, 2125824, 2125824, 2125824, 2125824, 2617344, 2125824, 2125824,
  31104. /* 26065 */ 2125824, 2125824, 2125824, 2125824, 0, 266240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2142208, 0, 0,
  31105. /* 26089 */ 0, 266240, 0, 0, 0, 0, 0, 0, 0, 0, 1, 12290, 2113823, 0, 0, 0, 0, 0, 0, 293, 0, 0, 0, 293, 0, 0, 245760,
  31106. /* 26116 */ 0, 0, 2179072, 2125824, 2125824, 2125824, 2179072, 2179072, 2179072, 2179072, 2179072, 2125824, 2125824,
  31107. /* 26129 */ 2125824, 2125824, 2125824, 2125824, 2125824, 3039232, 2125824, 3063808, 2125824, 2125824, 2125824,
  31108. /* 26140 */ 2125824, 3100672, 2125824, 2125824, 3133440, 2125824, 245760, 2125824, 2125824, 2125824, 2125824, 2125824,
  31109. /* 26152 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 0, 122880, 122880, 0, 0, 274432, 274432, 274432, 274432, 0, 0, 0, 0, 0,
  31110. /* 26177 */ 274432, 0, 274432, 1, 12290, 3, 0, 0, 0, 0, 725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1192, 0, 1195, 0, 0,
  31111. /* 26204 */ 78112, 290, 0, 0, 0, 0, 0, 296, 297, 0, 0, 300, 301, 0, 0, 0, 0, 0, 328, 329, 330, 0, 0, 0, 0, 0, 0, 0, 0,
  31112. /* 26233 */ 0, 2200252, 2200252, 2200252, 0, 0, 0, 0, 0, 0, 0, 2033, 0, 0, 0, 0, 0, 2035, 0, 0, 0, 0, 0, 0, 0, 2055,
  31113. /* 26259 */ 0, 2056, 0, 0, 0, 0, 0, 0, 0, 2067, 0, 0, 0, 0, 0, 0, 0, 0, 1187, 0, 0, 0, 0, 0, 0, 1104, 2483, 0, 0, 0,
  31114. /* 26289 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 690, 0, 0, 2993, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 383, 335, 0,
  31115. /* 26321 */ 0, 0, 0, 1679, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 694, 0, 0, 0, 0, 0, 0, 741, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31116. /* 26354 */ 0, 0, 0, 730, 0, 0, 0, 0, 0, 0, 78456, 290, 0, 0, 0, 0, 0, 296, 297, 0, 0, 300, 301, 0, 0, 0, 0, 0, 344,
  31117. /* 26383 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1158, 0, 0, 0, 0, 0, 562, 562, 562, 562, 562, 562, 562, 586, 586, 586, 540,
  31118. /* 26410 */ 586, 586, 586, 586, 586, 562, 562, 540, 562, 586, 562, 586, 1, 12290, 3, 78112, 0, 0, 2771, 0, 0, 0, 0, 0,
  31119. /* 26434 */ 0, 0, 0, 0, 0, 0, 0, 0, 514, 521, 521, 1, 12290, 3, 78113, 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0,
  31120. /* 26463 */ 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624,
  31121. /* 26478 */ 282624, 282624, 282624, 282624, 1, 12290, 3, 0, 282624, 282624, 282624, 0, 0, 282624, 0, 0, 0, 0, 0, 0, 0,
  31122. /* 26499 */ 0, 0, 0, 0, 3178496, 2670592, 0, 2744320, 0, 0, 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624,
  31123. /* 26518 */ 282624, 282624, 282624, 0, 282624, 282624, 282624, 282624, 282624, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 290,
  31124. /* 26539 */ 0, 0, 0, 0, 3176, 0, 0, 2740224, 0, 0, 0, 0, 0, 2793472, 0, 0, 0, 0, 0, 0, 0, 2094, 0, 0, 0, 0, 0, 0, 0,
  31125. /* 26568 */ 0, 683, 684, 685, 0, 0, 0, 689, 0, 0, 0, 0, 286720, 286720, 0, 286720, 286720, 286720, 286720, 286720,
  31126. /* 26588 */ 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720, 286720,
  31127. /* 26601 */ 286720, 286720, 286720, 286720, 286720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 302, 0, 0, 0, 0, 0, 3043328, 0,
  31128. /* 26625 */ 3149824, 2936832, 0, 2760704, 3301, 0, 0, 0, 0, 2953216, 0, 0, 2826240, 2875392, 0, 0, 0, 3381, 0, 0,
  31129. /* 26645 */ 2834432, 0, 3227648, 2568192, 0, 0, 0, 0, 2564096, 0, 2748416, 2879488, 0, 3381, 0, 0, 0, 0, 0, 0, 0, 0,
  31130. /* 26667 */ 2179072, 2179072, 2179072, 2531328, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072, 2179072,
  31131. /* 26678 */ 2605056, 2179072, 2629632, 2179072, 2179072, 0, 0, 0, 306, 0, 0, 0, 0, 0, 305, 0, 305, 306, 0, 305, 305,
  31132. /* 26699 */ 0, 0, 0, 305, 305, 306, 306, 0, 0, 0, 0, 0, 0, 305, 405, 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31133. /* 26730 */ 750, 0, 0, 0, 306, 410, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 742, 0, 0, 0, 0, 742, 0,
  31134. /* 26757 */ 748, 0, 0, 0, 0, 0, 0, 1192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 462, 462, 462, 488, 488, 462, 488, 488, 488,
  31135. /* 26784 */ 488, 488, 488, 488, 513, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 488, 533, 488, 488,
  31136. /* 26805 */ 488, 488, 488, 541, 563, 541, 563, 541, 541, 563, 541, 587, 563, 563, 563, 563, 563, 563, 563, 587, 587,
  31137. /* 26826 */ 587, 541, 613, 613, 613, 613, 613, 587, 563, 563, 541, 563, 587, 563, 587, 1, 12290, 3, 78112, 0, 0, 645,
  31138. /* 26848 */ 0, 0, 648, 649, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 253952, 0, 0, 0, 0, 0, 645, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31139. /* 26879 */ 0, 762, 0, 0, 0, 0, 0, 353, 0, 351, 0, 472, 472, 472, 472, 472, 472, 472, 477, 472, 472, 472, 472, 472,
  31140. /* 26903 */ 472, 472, 472, 472, 477, 472, 0, 768, 0, 0, 772, 0, 0, 0, 0, 0, 0, 781, 0, 0, 0, 0, 0, 0, 727, 0, 0, 0,
  31141. /* 26931 */ 731, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 343, 342, 65536, 341, 0, 788, 0, 0, 0, 0, 792, 0, 0, 0,
  31142. /* 26958 */ 0, 0, 0, 0, 796, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 782, 0, 0, 0, 0, 736, 0, 796, 0, 0, 0, 0, 648, 0, 0,
  31143. /* 26990 */ 0, 0, 0, 0, 820, 0, 0, 648, 0, 0, 0, 0, 0, 837, 792, 0, 0, 0, 0, 0, 841, 842, 792, 792, 0, 0, 0, 0, 792,
  31144. /* 27019 */ 736, 792, 0, 540, 540, 851, 855, 540, 540, 540, 540, 1345, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31145. /* 27040 */ 540, 540, 2181, 540, 540, 540, 540, 561, 561, 561, 921, 925, 561, 561, 561, 561, 561, 561, 951, 561, 956,
  31146. /* 27061 */ 561, 963, 561, 966, 561, 561, 980, 561, 561, 0, 585, 585, 585, 994, 998, 585, 585, 585, 585, 585, 585,
  31147. /* 27082 */ 1963, 1964, 1966, 585, 585, 585, 585, 585, 585, 585, 561, 2713, 585, 2715, 2716, 540, 540, 540, 540, 585,
  31148. /* 27102 */ 585, 585, 1024, 585, 1029, 585, 1036, 585, 1039, 585, 585, 1053, 585, 585, 966, 0, 0, 0, 855, 585, 998,
  31149. /* 27123 */ 925, 851, 1065, 894, 540, 540, 921, 1070, 966, 561, 0, 585, 585, 585, 585, 585, 78112, 0, 0, 0, 0, 0, 0,
  31150. /* 27146 */ 0, 0, 0, 114688, 0, 241664, 258048, 0, 0, 0, 1093, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 766, 0, 0,
  31151. /* 27175 */ 1214, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 672, 673, 0, 540, 540, 1342, 540, 540, 540, 540, 540, 540,
  31152. /* 27201 */ 540, 540, 540, 540, 540, 540, 540, 0, 0, 0, 585, 585, 585, 1524, 585, 585, 585, 585, 585, 585, 585, 585,
  31153. /* 27223 */ 585, 585, 585, 585, 585, 1517, 585, 585, 585, 1433, 0, 540, 585, 585, 561, 540, 540, 540, 540, 540, 561,
  31154. /* 27244 */ 561, 561, 561, 561, 561, 561, 3070, 561, 561, 561, 561, 561, 561, 585, 585, 585, 585, 585, 585, 0, 0, 0,
  31155. /* 27266 */ 3662, 0, 0, 0, 1641, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1103, 1104, 1105, 1106, 1654, 0, 0, 0, 0, 0, 0,
  31156. /* 27294 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 785, 0, 1693, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 305, 306, 0, 1732, 0,
  31157. /* 27325 */ 0, 1733, 0, 0, 0, 0, 540, 540, 540, 540, 540, 540, 540, 3030, 540, 540, 540, 540, 540, 540, 540, 1745,
  31158. /* 27347 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 1758, 540, 540, 540, 540, 540, 540, 2540, 540, 540, 540, 540,
  31159. /* 27368 */ 540, 540, 540, 540, 540, 540, 1329, 540, 540, 540, 540, 540, 540, 540, 540, 1795, 540, 540, 1798, 540,
  31160. /* 27388 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 900, 540, 540, 540, 540, 540, 540, 1810, 540, 540, 540, 540,
  31161. /* 27409 */ 540, 1815, 540, 540, 540, 540, 540, 540, 540, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31162. /* 27430 */ 561, 561, 561, 561, 1416, 561, 1825, 561, 561, 561, 561, 1831, 561, 561, 561, 561, 561, 1837, 561, 561,
  31163. /* 27450 */ 561, 561, 561, 983, 561, 0, 585, 585, 585, 585, 585, 1002, 585, 1010, 561, 1892, 561, 561, 561, 561, 561,
  31164. /* 27471 */ 561, 561, 561, 561, 561, 1904, 561, 561, 561, 561, 585, 585, 585, 585, 0, 0, 0, 2726, 0, 0, 2729, 2730,
  31165. /* 27493 */ 561, 561, 1909, 561, 561, 561, 561, 561, 561, 561, 26027, 1919, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0,
  31166. /* 27515 */ 540, 3649, 540, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 561, 561, 3231, 3232, 561, 1925, 585,
  31167. /* 27535 */ 585, 585, 585, 585, 1931, 585, 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 3596, 1944,
  31168. /* 27557 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1540, 561, 561, 2025, 585, 585,
  31169. /* 27578 */ 585, 0, 2029, 0, 0, 0, 0, 0, 2031, 0, 0, 0, 0, 0, 2487, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122880, 0, 0, 0,
  31170. /* 27608 */ 0, 0, 0, 0, 2041, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1132, 0, 0, 0, 2075, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31171. /* 27640 */ 0, 0, 0, 0, 0, 1135, 0, 2145, 0, 0, 0, 2143, 0, 0, 2150, 0, 0, 0, 0, 0, 0, 0, 0, 159744, 0, 0, 0, 0, 0, 0,
  31172. /* 27670 */ 0, 0, 1234, 0, 0, 0, 0, 0, 0, 0, 0, 1584, 0, 0, 0, 0, 0, 0, 0, 0, 1700, 0, 0, 0, 0, 1705, 0, 0, 540, 540,
  31173. /* 27700 */ 2171, 540, 540, 2174, 540, 540, 540, 540, 540, 540, 2182, 540, 540, 540, 540, 540, 540, 2568, 540, 540,
  31174. /* 27720 */ 540, 540, 2572, 540, 540, 540, 540, 540, 540, 1347, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31175. /* 27740 */ 2556, 540, 540, 540, 540, 540, 540, 540, 2201, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31176. /* 27761 */ 540, 0, 0, 2242, 540, 540, 540, 2214, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31177. /* 27782 */ 1805, 540, 540, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2254, 561, 0, 585, 585,
  31178. /* 27804 */ 585, 585, 585, 78112, 1079, 0, 0, 0, 0, 0, 0, 0, 0, 2123, 0, 2125, 2126, 0, 0, 0, 0, 561, 2257, 561, 561,
  31179. /* 27829 */ 561, 561, 561, 561, 2265, 561, 561, 561, 561, 561, 561, 561, 0, 0, 585, 585, 585, 585, 585, 585, 585, 561,
  31180. /* 27851 */ 540, 585, 585, 561, 540, 2952, 561, 2954, 561, 2299, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31181. /* 27871 */ 561, 561, 561, 561, 1438, 561, 2033, 0, 2035, 0, 0, 2426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2434, 0, 0, 0, 2475,
  31182. /* 27897 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1193, 0, 0, 0, 0, 2484, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2493, 0, 0, 0, 0,
  31183. /* 27929 */ 0, 0, 756, 0, 0, 0, 0, 0, 0, 763, 0, 0, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 2592, 561, 561,
  31184. /* 27955 */ 561, 561, 561, 1408, 561, 561, 1412, 561, 561, 561, 561, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585,
  31185. /* 27976 */ 1008, 585, 2656, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2664, 585, 585, 585, 585, 585,
  31186. /* 27996 */ 585, 2350, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2379, 585, 585, 585, 585, 585, 585, 585, 585,
  31187. /* 28017 */ 2699, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1940, 585, 585, 2708, 585, 585,
  31188. /* 28037 */ 585, 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 540, 540, 540, 540, 561, 561, 561, 3229, 561, 561,
  31189. /* 28058 */ 561, 561, 561, 561, 585, 585, 585, 3352, 585, 585, 585, 3355, 585, 585, 2731, 0, 0, 0, 0, 0, 0, 2736, 0,
  31190. /* 28081 */ 0, 0, 0, 0, 0, 0, 0, 0, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 192971, 0, 0, 0, 2759, 0,
  31191. /* 28102 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1234, 540, 540, 540, 0, 0, 0, 2788, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31192. /* 28133 */ 1238, 0, 0, 0, 540, 540, 540, 2826, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2833, 540, 540, 540,
  31193. /* 28155 */ 540, 1748, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1760, 540, 540, 540, 540, 1765, 540, 540, 540,
  31194. /* 28175 */ 540, 540, 540, 540, 540, 1772, 540, 540, 540, 540, 561, 3406, 561, 561, 3408, 561, 561, 561, 561, 561,
  31195. /* 28195 */ 561, 561, 0, 585, 585, 585, 585, 585, 585, 1009, 585, 561, 561, 561, 2860, 561, 561, 2864, 561, 561, 561,
  31196. /* 28216 */ 561, 561, 561, 561, 561, 561, 944, 561, 561, 561, 561, 561, 561, 561, 2873, 561, 561, 561, 561, 561, 561,
  31197. /* 28237 */ 561, 561, 561, 561, 561, 2881, 561, 561, 0, 0, 0, 2649, 0, 1920, 585, 585, 585, 585, 585, 585, 585, 585,
  31198. /* 28259 */ 585, 2703, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2908, 585, 585, 2912, 585, 585, 585, 585, 585,
  31199. /* 28279 */ 585, 585, 585, 585, 585, 2393, 2394, 585, 585, 585, 585, 585, 2921, 585, 585, 585, 585, 585, 585, 585,
  31200. /* 28299 */ 585, 585, 585, 585, 2929, 585, 585, 0, 0, 0, 3292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3297, 2955, 585, 0, 0, 0, 0,
  31201. /* 28326 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 306, 305, 0, 0, 0, 2970, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1588, 1589, 0,
  31202. /* 28357 */ 0, 540, 540, 540, 540, 3036, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2546, 540, 540,
  31203. /* 28378 */ 540, 561, 561, 561, 3076, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1436, 561, 561, 561,
  31204. /* 28399 */ 585, 585, 585, 3117, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2356, 585, 2358, 0,
  31205. /* 28420 */ 0, 0, 0, 3176, 3442, 0, 3444, 0, 0, 0, 0, 0, 540, 3451, 540, 540, 540, 540, 1796, 540, 540, 540, 540, 540,
  31206. /* 28444 */ 540, 540, 540, 540, 540, 540, 905, 540, 540, 540, 540, 3453, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31207. /* 28465 */ 540, 540, 561, 3466, 561, 3468, 0, 0, 3501, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540, 3510, 540, 540, 540,
  31208. /* 28488 */ 540, 540, 3204, 3205, 540, 540, 540, 540, 3209, 3210, 540, 540, 540, 540, 540, 1749, 1750, 540, 540, 540,
  31209. /* 28508 */ 540, 1757, 540, 540, 540, 540, 540, 540, 1346, 540, 540, 540, 540, 540, 540, 1356, 540, 540, 307, 308,
  31210. /* 28528 */ 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 734, 0, 0, 0, 0, 418, 0, 0, 0, 0, 0, 449, 0, 0, 0, 0, 0, 0, 0,
  31211. /* 28561 */ 0, 286720, 0, 0, 0, 0, 0, 0, 0, 0, 2490, 0, 0, 0, 0, 0, 0, 0, 0, 2504, 0, 0, 0, 0, 0, 0, 0, 0, 2517, 0, 0,
  31212. /* 28592 */ 0, 0, 0, 0, 0, 0, 2975, 0, 0, 0, 0, 0, 0, 0, 0, 2999, 0, 0, 0, 0, 0, 0, 0, 0, 3164, 0, 0, 0, 0, 0, 0, 0,
  31213. /* 28624 */ 0, 3173, 0, 0, 0, 0, 0, 0, 0, 0, 3183, 0, 0, 0, 0, 0, 0, 0, 0, 155648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31214. /* 28655 */ 449, 449, 418, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 449, 532, 449, 532, 532, 532, 449,
  31215. /* 28676 */ 532, 532, 532, 532, 449, 542, 564, 542, 564, 542, 542, 564, 542, 588, 564, 564, 564, 564, 564, 564, 564,
  31216. /* 28697 */ 588, 588, 588, 542, 588, 588, 588, 588, 588, 564, 564, 616, 621, 588, 621, 627, 1, 12290, 3, 78112, 0,
  31217. /* 28718 */ 1677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1163, 540, 540, 540, 1811, 540, 540, 540, 540, 540,
  31218. /* 28744 */ 540, 540, 540, 540, 540, 540, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1377,
  31219. /* 28765 */ 561, 0, 585, 585, 585, 585, 585, 78112, 1079, 0, 0, 1082, 1086, 0, 0, 1090, 585, 585, 585, 1993, 585, 585,
  31220. /* 28787 */ 585, 585, 585, 1999, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 3551, 0, 3553, 0, 0, 0, 0, 0, 561,
  31221. /* 28811 */ 561, 561, 561, 561, 2589, 561, 561, 561, 561, 2593, 561, 561, 0, 2648, 0, 0, 0, 0, 585, 585, 585, 585,
  31222. /* 28833 */ 585, 585, 585, 585, 585, 2338, 585, 585, 585, 585, 585, 585, 585, 2657, 585, 585, 585, 585, 585, 585, 585,
  31223. /* 28854 */ 585, 585, 585, 585, 585, 585, 585, 1971, 585, 585, 585, 2709, 585, 585, 585, 585, 561, 540, 585, 585, 561,
  31224. /* 28875 */ 540, 540, 540, 540, 540, 540, 561, 561, 3228, 561, 561, 561, 561, 561, 561, 561, 0, 0, 585, 2900, 585,
  31225. /* 28896 */ 585, 585, 585, 585, 540, 3514, 540, 3516, 540, 540, 3518, 540, 561, 561, 561, 561, 561, 561, 561, 561,
  31226. /* 28916 */ 1396, 1398, 561, 561, 561, 561, 561, 561, 3527, 561, 3529, 561, 561, 3531, 561, 585, 585, 585, 585, 585,
  31227. /* 28936 */ 585, 585, 585, 3540, 585, 3542, 585, 585, 3544, 585, 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 362, 0, 0,
  31228. /* 28961 */ 0, 147456, 0, 0, 0, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 0, 0, 0, 0, 0, 373, 0, 0, 0, 0, 365,
  31229. /* 28987 */ 0, 382, 0, 348, 0, 0, 310, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 328, 0, 0, 0, 313, 0, 0, 0, 0, 0, 0,
  31230. /* 29019 */ 0, 0, 0, 0, 0, 0, 0, 764, 0, 0, 420, 428, 419, 428, 0, 310, 428, 441, 450, 463, 463, 463, 463, 463, 463,
  31231. /* 29044 */ 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, 484, 489, 489, 500, 489, 489, 489, 489, 489,
  31232. /* 29065 */ 489, 489, 489, 515, 515, 528, 528, 529, 529, 529, 529, 529, 529, 529, 529, 529, 529, 515, 529, 529, 529,
  31233. /* 29086 */ 529, 529, 543, 565, 543, 565, 543, 543, 565, 543, 589, 565, 565, 565, 565, 565, 565, 565, 589, 589, 589,
  31234. /* 29107 */ 612, 589, 589, 589, 589, 589, 614, 615, 615, 612, 615, 614, 615, 614, 1, 12290, 3, 78112, 0, 702, 0, 0, 0,
  31235. /* 29130 */ 0, 0, 702, 0, 0, 0, 540, 540, 540, 540, 540, 3028, 540, 540, 540, 540, 540, 540, 540, 561, 967, 561, 561,
  31236. /* 29153 */ 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 585, 585, 2337, 585, 585, 585, 585, 2341, 585, 0, 1108, 0,
  31237. /* 29175 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 3200, 0, 1150, 1108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31238. /* 29206 */ 1102, 0, 0, 0, 1228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1240, 0, 0, 540, 540, 1276, 1278, 540, 540,
  31239. /* 29233 */ 540, 540, 540, 540, 540, 540, 1292, 540, 1297, 540, 540, 1301, 540, 540, 540, 540, 1812, 540, 540, 540,
  31240. /* 29253 */ 540, 540, 540, 540, 540, 540, 1823, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31241. /* 29274 */ 1378, 561, 0, 585, 585, 585, 585, 585, 78112, 1079, 0, 0, 1083, 1087, 0, 0, 1091, 540, 1304, 540, 540,
  31242. /* 29295 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1302, 540, 1360, 914, 561, 561, 1364, 561,
  31243. /* 29315 */ 1367, 561, 561, 561, 561, 561, 561, 561, 561, 1381, 561, 1386, 561, 561, 1390, 561, 561, 1393, 561, 561,
  31244. /* 29335 */ 561, 561, 561, 561, 561, 561, 1431, 561, 561, 1435, 561, 561, 561, 561, 1484, 585, 585, 585, 585, 585,
  31245. /* 29355 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1942, 540, 1793, 1794, 540, 540, 540, 540, 540, 540,
  31246. /* 29375 */ 540, 540, 540, 540, 540, 540, 540, 0, 2584, 0, 585, 585, 1946, 585, 585, 585, 585, 585, 585, 585, 585,
  31247. /* 29396 */ 585, 585, 585, 585, 585, 585, 2005, 585, 585, 585, 1959, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31248. /* 29417 */ 585, 585, 585, 585, 2357, 585, 2102, 0, 0, 0, 0, 1670, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 328, 379, 381, 0, 0,
  31249. /* 29444 */ 0, 0, 0, 2133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1119, 0, 0, 2033, 0, 2035, 0, 0, 0, 0, 0, 0, 2428,
  31250. /* 29474 */ 0, 0, 0, 0, 0, 0, 0, 2122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 122880, 0, 122880, 122880, 122880, 122880, 122880,
  31251. /* 29498 */ 0, 0, 2474, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1133, 0, 0, 0, 0, 0, 0, 2760, 0, 0, 0, 0, 0, 0, 0, 0,
  31252. /* 29530 */ 0, 0, 0, 380, 0, 0, 0, 384, 0, 0, 2799, 0, 0, 0, 0, 0, 0, 0, 2803, 540, 540, 540, 540, 540, 540, 540,
  31253. /* 29556 */ 1326, 540, 540, 540, 540, 540, 540, 540, 1339, 585, 2956, 0, 0, 0, 0, 0, 2962, 0, 0, 0, 0, 0, 0, 0, 2966,
  31254. /* 29581 */ 0, 0, 0, 3008, 0, 0, 0, 0, 0, 0, 0, 0, 3017, 0, 0, 0, 0, 0, 383, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0,
  31255. /* 29610 */ 3048, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1320, 3089, 561, 561,
  31256. /* 29630 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1858, 3130, 585, 585, 585, 585, 585, 585,
  31257. /* 29651 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 1957, 540, 3225, 540, 540, 540, 540, 561, 561, 561, 561, 561,
  31258. /* 29672 */ 561, 561, 561, 561, 561, 561, 3414, 585, 585, 585, 3281, 585, 585, 585, 585, 561, 540, 585, 561, 540, 540,
  31259. /* 29693 */ 561, 561, 585, 585, 0, 0, 0, 3157, 3513, 540, 540, 540, 540, 540, 540, 540, 561, 3521, 561, 3522, 561,
  31260. /* 29714 */ 561, 561, 3526, 540, 540, 540, 3664, 561, 561, 561, 3666, 585, 585, 585, 3668, 0, 0, 540, 540, 540, 3560,
  31261. /* 29735 */ 540, 540, 540, 540, 540, 540, 540, 540, 3568, 561, 321, 321, 371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31262. /* 29761 */ 1161, 0, 0, 0, 0, 371, 0, 430, 436, 0, 442, 451, 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, 464,
  31263. /* 29784 */ 464, 464, 464, 464, 464, 464, 464, 464, 490, 490, 501, 490, 490, 490, 490, 490, 490, 490, 490, 516, 516,
  31264. /* 29805 */ 516, 516, 516, 516, 516, 516, 516, 516, 516, 516, 516, 516, 516, 516, 544, 566, 544, 566, 544, 544, 566,
  31265. /* 29826 */ 544, 590, 566, 566, 566, 566, 566, 566, 566, 590, 590, 590, 544, 590, 590, 590, 590, 590, 566, 566, 544,
  31266. /* 29847 */ 566, 590, 566, 590, 1, 12290, 3, 78112, 540, 540, 540, 874, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31267. /* 29868 */ 540, 540, 540, 540, 1822, 540, 1360, 585, 1017, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31268. /* 29888 */ 585, 585, 561, 540, 585, 585, 561, 540, 540, 540, 540, 561, 561, 1122, 0, 1124, 1125, 0, 0, 0, 1127, 1128,
  31269. /* 29910 */ 0, 0, 0, 0, 0, 0, 0, 0, 1159168, 0, 1159168, 0, 0, 0, 0, 1159168, 0, 0, 1166, 1167, 0, 0, 0, 0, 0, 0, 0,
  31270. /* 29937 */ 0, 0, 0, 0, 0, 1634, 0, 0, 0, 1113, 0, 1253, 0, 0, 0, 0, 0, 1128, 0, 0, 0, 0, 0, 1236, 0, 0, 0, 0, 773,
  31271. /* 29966 */ 774, 0, 0, 778, 779, 0, 675, 0, 0, 0, 0, 0, 0, 1598, 0, 0, 0, 0, 0, 0, 0, 0, 1605, 0, 0, 1268, 1127, 0, 0,
  31272. /* 29995 */ 0, 0, 0, 0, 0, 0, 0, 540, 540, 1277, 540, 540, 540, 1323, 540, 540, 1325, 540, 540, 1328, 540, 540, 540,
  31273. /* 30018 */ 540, 540, 540, 540, 540, 2554, 540, 540, 540, 540, 540, 540, 2560, 1360, 914, 561, 561, 1365, 561, 561,
  31274. /* 30038 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 1400, 561, 561, 561, 561, 561, 561, 1404, 561, 561, 561, 561,
  31275. /* 30059 */ 561, 561, 561, 1413, 561, 561, 1415, 561, 561, 0, 2648, 0, 0, 0, 0, 585, 585, 585, 585, 585, 585, 585,
  31276. /* 30081 */ 2655, 561, 1419, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1874, 561, 561,
  31277. /* 30101 */ 561, 1443, 561, 561, 561, 561, 561, 26027, 1360, 987, 585, 585, 1456, 585, 585, 0, 0, 3291, 0, 0, 0, 0, 0,
  31278. /* 30124 */ 0, 0, 0, 0, 0, 0, 1262, 0, 0, 0, 1266, 585, 585, 585, 1504, 585, 585, 1506, 585, 585, 585, 1510, 585, 585,
  31279. /* 30148 */ 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 540, 2020, 561, 561, 0, 0, 0, 1657, 0, 0, 0, 0, 0, 0, 0,
  31280. /* 30173 */ 0, 0, 0, 0, 0, 1675, 0, 0, 0, 585, 1991, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31281. /* 30197 */ 585, 585, 2695, 561, 2024, 585, 585, 585, 2028, 0, 2029, 0, 0, 0, 0, 0, 2031, 0, 0, 0, 0, 0, 2502, 0, 0,
  31282. /* 30222 */ 0, 0, 0, 0, 0, 0, 0, 0, 1586, 1587, 0, 0, 0, 0, 0, 0, 0, 2033, 0, 0, 0, 0, 0, 2035, 0, 0, 0, 0, 0, 2038,
  31283. /* 30252 */ 0, 0, 2077, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1177, 0, 0, 0, 0, 0, 0, 2091, 0, 0, 0, 0, 0, 0, 0, 0,
  31284. /* 30284 */ 0, 0, 0, 540, 540, 540, 2807, 540, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 2252, 561, 561, 561,
  31285. /* 30307 */ 561, 561, 1447, 561, 561, 26027, 1360, 987, 585, 585, 585, 585, 585, 561, 540, 585, 585, 561, 2017, 540,
  31286. /* 30327 */ 540, 540, 2021, 561, 2256, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31287. /* 30347 */ 1875, 2272, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1890, 561, 561,
  31288. /* 30367 */ 561, 2314, 561, 2316, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 0, 0, 0, 585, 585, 585, 585, 585, 585,
  31289. /* 30390 */ 585, 585, 585, 585, 585, 585, 2340, 585, 585, 585, 2399, 585, 2401, 585, 585, 585, 585, 585, 585, 585,
  31290. /* 30410 */ 561, 540, 585, 585, 561, 540, 540, 561, 561, 540, 540, 2564, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31291. /* 30431 */ 540, 540, 540, 540, 540, 3212, 540, 0, 0, 0, 561, 561, 561, 561, 2588, 561, 561, 561, 561, 561, 561, 561,
  31292. /* 30453 */ 561, 1916, 561, 26027, 0, 585, 585, 585, 585, 0, 2757, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 735, 0,
  31293. /* 30480 */ 2834, 540, 540, 540, 540, 540, 540, 540, 2840, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2571, 540,
  31294. /* 30500 */ 540, 540, 540, 540, 540, 2882, 561, 561, 561, 561, 561, 561, 561, 2888, 561, 561, 561, 561, 561, 561, 561,
  31295. /* 30521 */ 0, 0, 585, 585, 585, 2902, 585, 585, 585, 2930, 585, 585, 585, 585, 585, 585, 585, 2936, 585, 585, 585,
  31296. /* 30542 */ 585, 585, 585, 585, 561, 540, 2714, 585, 561, 540, 540, 540, 540, 540, 540, 3226, 540, 540, 540, 561, 561,
  31297. /* 30563 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3074, 585, 585, 585, 585, 3282, 585, 585, 585, 561,
  31298. /* 30584 */ 540, 585, 561, 540, 540, 561, 561, 585, 585, 0, 0, 3156, 0, 585, 585, 3369, 540, 540, 561, 561, 585, 585,
  31299. /* 30606 */ 0, 0, 0, 0, 0, 0, 0, 0, 2617344, 0, 0, 0, 0, 0, 2789376, 0, 0, 0, 0, 0, 3176, 0, 0, 0, 3445, 0, 0, 0, 0,
  31300. /* 30635 */ 540, 540, 540, 540, 3027, 540, 540, 540, 540, 3031, 540, 540, 540, 540, 540, 540, 3456, 540, 540, 540,
  31301. /* 30655 */ 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 3524, 561, 561, 561, 561, 3471, 561, 561, 561, 561, 561,
  31302. /* 30676 */ 561, 561, 561, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3486, 585, 585, 585, 585, 585, 585,
  31303. /* 30697 */ 585, 585, 561, 0, 0, 0, 0, 0, 3626, 540, 540, 540, 3515, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561,
  31304. /* 30720 */ 561, 561, 561, 561, 561, 3413, 561, 561, 3528, 561, 561, 561, 561, 561, 585, 585, 585, 585, 585, 585, 585,
  31305. /* 30741 */ 585, 585, 585, 3113, 585, 585, 585, 3541, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362,
  31306. /* 30765 */ 362, 208896, 0, 0, 0, 0, 323, 324, 325, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1194, 1196, 0, 0, 0, 0,
  31307. /* 30793 */ 322, 370, 325, 369, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 0, 0, 0, 0, 0, 0, 322, 0, 0, 369, 369, 399, 0, 325, 0,
  31308. /* 30822 */ 0, 0, 0, 0, 0, 0, 0, 0, 233472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 324, 0, 0, 0, 322, 452, 465, 465, 465, 465,
  31309. /* 30850 */ 465, 465, 465, 478, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 465, 491, 491, 465, 491, 491, 506,
  31310. /* 30871 */ 508, 491, 491, 506, 491, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 517, 534, 517, 517,
  31311. /* 30892 */ 517, 517, 517, 545, 567, 545, 567, 545, 545, 567, 545, 591, 567, 567, 567, 567, 567, 567, 567, 591, 591,
  31312. /* 30913 */ 591, 545, 591, 591, 591, 591, 591, 567, 567, 545, 567, 591, 567, 591, 1, 12290, 3, 78112, 659, 0, 0, 0, 0,
  31313. /* 30936 */ 0, 0, 0, 0, 0, 0, 670, 671, 0, 0, 0, 0, 0, 439, 0, 0, 0, 473, 473, 473, 473, 473, 473, 473, 473, 473, 473,
  31314. /* 30963 */ 473, 473, 473, 473, 473, 473, 557, 580, 557, 580, 557, 557, 580, 557, 604, 0, 0, 707, 708, 0, 0, 0, 0, 0,
  31315. /* 30987 */ 714, 0, 0, 0, 718, 0, 720, 0, 769, 770, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1209, 0, 0, 787, 0, 789, 0,
  31316. /* 31017 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1224, 0, 0, 0, 801, 0, 806, 0, 809, 0, 0, 0, 0, 806, 809, 0, 0, 0,
  31317. /* 31047 */ 809, 0, 707, 0, 0, 826, 0, 0, 0, 0, 0, 826, 826, 829, 809, 806, 0, 0, 0, 0, 0, 0, 0, 789, 0, 801, 0, 818,
  31318. /* 31075 */ 0, 0, 0, 0, 0, 2745, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 811, 540, 540, 854, 540, 540, 0, 0, 0, 789, 0, 0, 0, 0,
  31319. /* 31105 */ 0, 838, 0, 0, 0, 0, 0, 0, 0, 2142, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2819, 540, 540, 540,
  31320. /* 31129 */ 540, 540, 0, 0, 0, 787, 0, 0, 0, 838, 818, 838, 0, 540, 540, 852, 540, 858, 540, 540, 871, 540, 881, 540,
  31321. /* 31153 */ 886, 540, 540, 893, 896, 901, 540, 909, 540, 540, 540, 540, 540, 3215, 540, 540, 540, 540, 540, 540, 540,
  31322. /* 31174 */ 540, 540, 540, 895, 540, 540, 540, 540, 540, 561, 561, 561, 922, 561, 928, 561, 561, 941, 561, 561, 952,
  31323. /* 31195 */ 561, 957, 561, 561, 0, 2648, 0, 0, 0, 0, 585, 585, 585, 585, 585, 2653, 585, 585, 0, 0, 2959, 0, 0, 0, 0,
  31324. /* 31220 */ 0, 0, 0, 0, 0, 2965, 0, 965, 968, 973, 561, 981, 561, 561, 0, 585, 585, 585, 995, 585, 1001, 585, 585, 0,
  31325. /* 31244 */ 2958, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131072, 131072, 0, 0, 1014, 585, 585, 1025, 585, 1030, 585, 585,
  31326. /* 31269 */ 1038, 1041, 1046, 585, 1054, 585, 585, 968, 0, 0, 0, 540, 585, 585, 561, 852, 540, 1066, 901, 540, 922,
  31327. /* 31290 */ 561, 1071, 973, 0, 0, 0, 1110, 0, 0, 0, 0, 0, 0, 0, 1117, 0, 0, 0, 0, 0, 0, 775, 0, 0, 0, 0, 0, 0, 0, 0,
  31328. /* 31320 */ 0, 1205, 0, 0, 0, 0, 0, 0, 0, 1137, 1138, 0, 0, 0, 0, 1142, 0, 0, 0, 362, 362, 0, 0, 0, 0, 0, 664, 0, 0,
  31329. /* 31349 */ 0, 0, 0, 0, 0, 0, 0, 0, 1206, 0, 0, 0, 0, 0, 0, 1165, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 784, 0, 0,
  31330. /* 31382 */ 0, 1182, 741, 0, 0, 0, 1134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 245760, 0, 0, 0, 0, 0, 0, 1303, 540, 540, 540,
  31331. /* 31409 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1318, 540, 540, 540, 540, 2173, 540, 540, 540, 540, 540,
  31332. /* 31430 */ 540, 540, 540, 540, 540, 540, 540, 2558, 540, 540, 540, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561,
  31333. /* 31451 */ 561, 1372, 561, 561, 561, 561, 561, 1850, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1902, 1903,
  31334. /* 31471 */ 561, 561, 561, 561, 561, 561, 1387, 561, 561, 561, 1392, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31335. /* 31491 */ 1432, 561, 561, 561, 561, 561, 1439, 561, 561, 561, 1421, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31336. /* 31511 */ 561, 1437, 561, 0, 585, 585, 585, 1049, 585, 78112, 1079, 0, 0, 0, 0, 0, 0, 0, 836, 0, 0, 0, 0, 0, 0, 811,
  31337. /* 31537 */ 0, 585, 585, 585, 585, 1463, 585, 585, 585, 585, 585, 585, 1478, 585, 585, 585, 1483, 0, 0, 1608, 1609,
  31338. /* 31558 */ 1610, 0, 1612, 1613, 0, 0, 0, 0, 1618, 0, 0, 0, 0, 0, 679, 751, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31339. /* 31588 */ 0, 2144, 0, 0, 1640, 0, 0, 1643, 0, 1645, 0, 0, 0, 0, 0, 1651, 1652, 0, 0, 0, 0, 785, 0, 0, 0, 0, 0, 0,
  31340. /* 31616 */ 540, 846, 540, 540, 540, 540, 540, 540, 3216, 540, 540, 540, 540, 540, 3221, 540, 3223, 540, 0, 1668, 0,
  31341. /* 31637 */ 0, 1670, 0, 0, 0, 0, 1672, 1673, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 347, 345, 65536, 0, 1692, 0,
  31342. /* 31663 */ 0, 0, 0, 0, 1698, 1699, 0, 1701, 1702, 1703, 0, 0, 0, 0, 0, 0, 810, 811, 0, 0, 0, 0, 811, 0, 0, 0, 1719,
  31343. /* 31690 */ 0, 0, 0, 1723, 1724, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 346, 0, 0, 0, 0, 0, 0, 0, 1715, 0, 0, 0, 1735, 1585,
  31344. /* 31719 */ 1585, 1737, 540, 1739, 540, 1740, 540, 1742, 540, 540, 540, 1746, 540, 540, 540, 540, 540, 540, 540, 540,
  31345. /* 31739 */ 540, 1759, 540, 540, 540, 540, 540, 3318, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2557,
  31346. /* 31759 */ 540, 540, 540, 540, 540, 540, 1763, 540, 540, 540, 540, 1767, 540, 1769, 540, 540, 540, 540, 540, 540,
  31347. /* 31779 */ 540, 540, 2570, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3041, 540, 540, 540, 540, 540, 540, 540, 540,
  31348. /* 31800 */ 1777, 1778, 1780, 540, 540, 540, 540, 540, 540, 1787, 1788, 540, 540, 1791, 1792, 540, 540, 540, 540, 540,
  31349. /* 31820 */ 540, 540, 1800, 540, 540, 540, 1804, 540, 540, 540, 540, 540, 540, 2829, 540, 540, 540, 540, 540, 540,
  31350. /* 31840 */ 540, 540, 540, 540, 1770, 540, 540, 540, 540, 540, 0, 1828, 561, 1830, 561, 561, 1832, 561, 1834, 561,
  31351. /* 31860 */ 561, 561, 1838, 561, 561, 561, 561, 585, 585, 585, 585, 0, 0, 2725, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0,
  31352. /* 31884 */ 135168, 135168, 0, 0, 65536, 135168, 1859, 561, 1861, 561, 561, 561, 561, 561, 561, 561, 561, 1869, 1870,
  31353. /* 31903 */ 1872, 561, 561, 0, 2648, 0, 0, 0, 0, 585, 585, 585, 585, 2652, 585, 585, 585, 585, 585, 585, 2390, 585,
  31354. /* 31925 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 3124, 585, 585, 585, 585, 585, 561, 561, 561, 1894, 561, 561,
  31355. /* 31946 */ 561, 1898, 561, 561, 561, 561, 561, 561, 561, 1906, 585, 1926, 585, 1928, 585, 585, 585, 1932, 585, 585,
  31356. /* 31966 */ 585, 585, 585, 585, 585, 585, 561, 540, 585, 561, 540, 540, 561, 561, 585, 585, 0, 0, 0, 0, 585, 1945,
  31357. /* 31988 */ 585, 585, 585, 585, 1949, 585, 585, 585, 585, 1953, 585, 1955, 585, 585, 561, 3146, 3147, 3148, 540, 540,
  31358. /* 32008 */ 561, 561, 585, 585, 0, 0, 0, 0, 0, 0, 2488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2096, 0, 0, 0, 0, 0, 0, 1974, 1975,
  31359. /* 32037 */ 1976, 585, 585, 1979, 1980, 585, 585, 585, 585, 585, 585, 585, 1988, 585, 561, 0, 1288, 585, 1468, 1377,
  31360. /* 32057 */ 540, 540, 540, 1549, 540, 561, 561, 561, 1553, 585, 585, 1992, 585, 585, 585, 585, 585, 585, 585, 2000,
  31361. /* 32077 */ 585, 585, 585, 585, 585, 561, 561, 540, 561, 585, 561, 585, 1, 12290, 3, 78112, 585, 585, 585, 585, 2011,
  31362. /* 32098 */ 561, 540, 2014, 585, 561, 1792, 540, 2019, 540, 1886, 561, 0, 585, 585, 1040, 585, 585, 78112, 1079, 0, 0,
  31363. /* 32119 */ 0, 0, 0, 0, 0, 0, 1134592, 0, 0, 1134592, 0, 0, 0, 0, 2023, 561, 1980, 585, 2027, 585, 0, 2029, 0, 0, 0,
  31364. /* 32144 */ 0, 0, 2031, 0, 0, 0, 0, 0, 2761, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 661, 0, 0, 0, 0, 0, 0, 2089, 0, 0, 0, 0,
  31365. /* 32175 */ 2093, 0, 0, 0, 0, 0, 0, 0, 0, 0, 377, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2119, 0, 2121, 0, 0, 0, 0, 0, 0, 0,
  31366. /* 32206 */ 2129, 0, 0, 0, 0, 786, 0, 805, 0, 0, 0, 0, 540, 849, 540, 540, 540, 540, 540, 2216, 540, 540, 540, 540,
  31367. /* 32230 */ 540, 540, 2221, 540, 540, 540, 540, 540, 540, 3633, 561, 561, 561, 561, 561, 561, 3639, 585, 585, 0, 0, 0,
  31368. /* 32252 */ 2134, 0, 0, 0, 0, 2139, 0, 0, 0, 0, 0, 0, 0, 0, 2990080, 2179072, 2179072, 2502656, 2179072, 2179072,
  31369. /* 32272 */ 2179072, 2179072, 540, 2187, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1337,
  31370. /* 32291 */ 540, 2211, 2212, 540, 540, 540, 540, 540, 540, 2219, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2582,
  31371. /* 32311 */ 540, 540, 540, 0, 0, 0, 561, 561, 2258, 561, 2260, 561, 561, 561, 561, 561, 561, 2268, 561, 2270, 561,
  31372. /* 32332 */ 561, 561, 561, 1426, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3343, 561, 561, 561, 561,
  31373. /* 32352 */ 3344, 3345, 561, 561, 2343, 585, 2345, 585, 585, 585, 585, 585, 585, 2353, 585, 2355, 585, 585, 585, 585,
  31374. /* 32372 */ 561, 0, 0, 0, 3648, 0, 540, 540, 540, 540, 3652, 540, 585, 585, 585, 585, 2389, 585, 585, 585, 585, 585,
  31375. /* 32394 */ 585, 585, 585, 585, 585, 585, 585, 2705, 585, 585, 585, 585, 585, 585, 585, 2402, 585, 585, 2405, 2406,
  31376. /* 32414 */ 585, 585, 561, 2177, 585, 2345, 2260, 540, 2414, 540, 540, 561, 2418, 561, 561, 585, 2422, 585, 585, 2029,
  31377. /* 32434 */ 0, 2031, 0, 0, 0, 0, 795, 663, 844, 0, 0, 0, 0, 540, 848, 540, 540, 540, 540, 540, 1283, 540, 540, 540,
  31378. /* 32458 */ 540, 540, 540, 1298, 540, 540, 540, 540, 540, 540, 2580, 540, 540, 540, 540, 540, 540, 0, 2584, 0, 0, 0,
  31379. /* 32480 */ 2450, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1239, 0, 0, 0, 2459, 0, 0, 0, 0, 0, 2464, 0, 2466, 2467, 0,
  31380. /* 32509 */ 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 371, 0, 65536, 0, 0, 2498, 0, 0, 0, 0, 0, 0, 0, 2505, 0, 0, 0, 0,
  31381. /* 32538 */ 0, 0, 0, 2479, 0, 0, 0, 2481, 0, 0, 0, 0, 2561, 540, 540, 540, 2566, 540, 540, 540, 540, 540, 540, 540,
  31382. /* 32562 */ 2573, 540, 540, 540, 540, 540, 540, 2838, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1296, 540,
  31383. /* 32582 */ 540, 540, 540, 540, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 2591, 561, 561, 561, 561, 561, 561, 2640,
  31384. /* 32604 */ 561, 561, 561, 2643, 561, 561, 561, 561, 561, 561, 2886, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31385. /* 32624 */ 1867, 561, 561, 561, 561, 561, 561, 2621, 561, 561, 561, 561, 2625, 561, 561, 561, 2630, 561, 561, 561,
  31386. /* 32644 */ 561, 561, 561, 585, 585, 585, 585, 585, 585, 0, 3661, 0, 0, 561, 2637, 561, 561, 561, 561, 561, 561, 561,
  31387. /* 32666 */ 2642, 561, 561, 561, 561, 561, 561, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3427, 585, 2669, 585,
  31388. /* 32686 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3267, 2797, 2798, 0, 0, 0, 0, 0, 0,
  31389. /* 32709 */ 0, 0, 0, 540, 540, 540, 540, 540, 1741, 540, 0, 0, 2982, 2983, 0, 2984, 0, 2986, 0, 0, 0, 0, 2988, 0, 0,
  31390. /* 32734 */ 0, 0, 0, 680, 681, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2047, 0, 0, 0, 0, 0, 0, 0, 0, 3007, 0, 0, 2988, 0, 0, 3013,
  31391. /* 32764 */ 3014, 0, 3016, 0, 0, 3019, 0, 0, 0, 0, 800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 800, 0, 0, 0, 0, 3022,
  31392. /* 32793 */ 540, 540, 540, 540, 540, 540, 3029, 540, 540, 540, 540, 540, 3033, 3062, 540, 561, 561, 561, 561, 561,
  31393. /* 32813 */ 561, 3069, 561, 561, 561, 561, 561, 3073, 561, 0, 585, 585, 1042, 585, 585, 288, 1079, 0, 0, 1082, 1086,
  31394. /* 32834 */ 0, 0, 1090, 3103, 561, 585, 585, 585, 585, 585, 585, 3110, 585, 585, 585, 585, 585, 3114, 585, 561, 0,
  31395. /* 32855 */ 1543, 585, 1545, 1546, 540, 540, 1548, 540, 540, 561, 561, 1552, 561, 0, 585, 585, 1044, 585, 585, 78112,
  31396. /* 32875 */ 1079, 0, 0, 0, 0, 0, 0, 0, 794, 0, 0, 0, 0, 0, 0, 0, 798, 3144, 585, 561, 540, 585, 561, 540, 3150, 561,
  31397. /* 32901 */ 3152, 585, 3154, 0, 0, 0, 0, 0, 0, 825, 0, 819, 0, 664, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 221184, 0, 0,
  31398. /* 32927 */ 0, 0, 65536, 0, 0, 0, 3160, 0, 0, 3163, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 396, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31399. /* 32957 */ 3170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 2806, 540, 540, 540, 3202, 540, 540, 540, 540, 540, 540,
  31400. /* 32982 */ 540, 3207, 540, 540, 540, 540, 540, 540, 540, 540, 3040, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31401. /* 33002 */ 3322, 540, 540, 540, 540, 540, 540, 561, 3234, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31402. /* 33023 */ 561, 561, 1889, 561, 3245, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 585, 585,
  31403. /* 33044 */ 585, 585, 585, 585, 585, 3257, 585, 585, 585, 585, 585, 585, 585, 3262, 585, 585, 585, 585, 585, 561,
  31404. /* 33064 */ 2013, 585, 2015, 2016, 540, 2018, 540, 540, 561, 2022, 561, 561, 561, 3349, 561, 561, 585, 585, 585, 585,
  31405. /* 33084 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2667, 0, 3378, 3379, 0, 3176, 0, 3383, 0, 0, 0, 0,
  31406. /* 33107 */ 0, 0, 0, 0, 0, 384, 0, 0, 0, 0, 0, 384, 0, 0, 0, 3441, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540,
  31407. /* 33136 */ 540, 2167, 540, 540, 0, 0, 0, 0, 3503, 0, 0, 0, 0, 540, 540, 540, 540, 540, 540, 3512, 0, 0, 3557, 3558,
  31408. /* 33160 */ 3559, 540, 540, 540, 3562, 540, 3564, 540, 540, 540, 540, 3569, 3570, 3571, 561, 561, 561, 3574, 561,
  31409. /* 33179 */ 3576, 561, 561, 561, 561, 3581, 3582, 3583, 585, 561, 1203, 540, 585, 585, 561, 540, 540, 540, 540, 540,
  31410. /* 33199 */ 561, 561, 561, 561, 585, 585, 585, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 585, 585, 3586, 585, 3588, 585, 585,
  31411. /* 33224 */ 585, 585, 3593, 0, 0, 0, 0, 0, 0, 0, 2747, 2748, 2749, 0, 0, 0, 0, 0, 0, 0, 2763, 0, 0, 0, 0, 0, 0, 0, 0,
  31412. /* 33253 */ 0, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 254413, 1, 12290, 0, 0, 540, 3628, 540, 540,
  31413. /* 33270 */ 540, 3632, 561, 561, 3634, 561, 561, 561, 3638, 585, 585, 3640, 585, 585, 585, 3644, 561, 0, 0, 0, 0, 0,
  31414. /* 33292 */ 540, 540, 540, 540, 540, 540, 540, 3563, 540, 3565, 540, 540, 540, 561, 0, 0, 0, 326, 327, 0, 0, 0, 0, 0,
  31415. /* 33316 */ 0, 0, 0, 0, 0, 0, 674, 0, 0, 0, 0, 0, 366, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1120, 0, 0, 0, 0,
  31416. /* 33348 */ 366, 0, 0, 0, 374, 376, 0, 0, 0, 0, 0, 0, 0, 344, 0, 402, 0, 0, 0, 0, 0, 402, 0, 0, 409, 0, 0, 0, 409,
  31417. /* 33377 */ 69632, 73728, 0, 366, 366, 0, 421, 65536, 366, 0, 0, 366, 421, 498, 502, 498, 498, 507, 498, 498, 498,
  31418. /* 33398 */ 507, 498, 421, 421, 327, 421, 0, 0, 421, 0, 421, 0, 0, 0, 0, 0, 0, 0, 372, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31419. /* 33427 */ 0, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 421, 546, 568, 546, 568,
  31420. /* 33448 */ 546, 546, 568, 546, 592, 568, 568, 568, 568, 568, 568, 568, 592, 592, 592, 546, 592, 592, 592, 592, 592,
  31421. /* 33469 */ 568, 568, 546, 568, 592, 568, 592, 1, 12290, 3, 78112, 0, 0, 677, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31422. /* 33496 */ 1248, 0, 0, 540, 540, 540, 875, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2183,
  31423. /* 33517 */ 540, 540, 561, 561, 915, 561, 561, 561, 561, 561, 561, 945, 561, 561, 561, 561, 561, 561, 585, 3421, 585,
  31424. /* 33538 */ 585, 3423, 585, 585, 585, 585, 585, 585, 1018, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31425. /* 33559 */ 585, 561, 0, 0, 0, 0, 0, 0, 540, 0, 0, 0, 540, 988, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561,
  31426. /* 33584 */ 561, 3068, 561, 561, 561, 561, 561, 561, 561, 561, 932, 561, 561, 946, 561, 561, 561, 561, 561, 561, 934,
  31427. /* 33605 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 3240, 561, 561, 561, 561, 561, 561, 0, 0, 1109, 0, 0, 0, 0,
  31428. /* 33628 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1604, 0, 0, 0, 0, 1229, 0, 1109, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 686, 0, 0, 0,
  31429. /* 33660 */ 0, 540, 540, 540, 1281, 540, 540, 540, 540, 540, 1293, 540, 540, 540, 540, 540, 540, 540, 540, 3054, 3056,
  31430. /* 33681 */ 540, 540, 540, 3059, 540, 3061, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 1370, 561, 561, 561, 561,
  31431. /* 33701 */ 561, 1382, 585, 585, 1461, 585, 585, 585, 585, 585, 1473, 585, 585, 585, 585, 585, 585, 585, 585, 2914,
  31432. /* 33721 */ 585, 585, 585, 585, 585, 585, 585, 585, 3122, 585, 585, 585, 585, 585, 585, 585, 585, 3136, 3138, 585,
  31433. /* 33741 */ 585, 585, 3141, 585, 3143, 0, 1720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1134, 0, 1990, 585, 585,
  31434. /* 33767 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1972, 585, 585, 585, 2373, 585, 585, 585,
  31435. /* 33788 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2370, 585, 585, 585, 585, 2698, 585, 585, 585, 585, 585,
  31436. /* 33809 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 2383, 585, 0, 0, 0, 3161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31437. /* 33836 */ 1688, 0, 0, 0, 561, 561, 3235, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 2325,
  31438. /* 33858 */ 0, 3663, 540, 540, 540, 3665, 561, 561, 561, 3667, 585, 585, 585, 0, 0, 540, 540, 540, 2526, 540, 540,
  31439. /* 33879 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3058, 540, 540, 540, 422, 422, 0, 422, 431, 0, 422, 0,
  31440. /* 33901 */ 422, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 466, 492,
  31441. /* 33922 */ 492, 466, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492, 492,
  31442. /* 33943 */ 492, 492, 492, 492, 547, 569, 547, 569, 547, 547, 569, 547, 593, 569, 569, 569, 569, 569, 569, 569, 593,
  31443. /* 33964 */ 593, 593, 547, 593, 593, 593, 593, 593, 569, 569, 547, 569, 593, 569, 593, 1, 12290, 3, 78112, 0, 0, 0, 0,
  31444. /* 33987 */ 2159, 0, 0, 0, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3032, 540, 540, 540, 540, 540, 2202, 540,
  31445. /* 34009 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2208, 540, 540, 2413, 540, 540, 540, 2417,
  31446. /* 34029 */ 561, 561, 561, 2421, 585, 585, 585, 0, 0, 0, 0, 3293, 0, 0, 0, 0, 0, 3296, 0, 0, 0, 2458, 0, 0, 0, 0, 0,
  31447. /* 34056 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1250, 2967, 0, 0, 0, 2971, 0, 0, 0, 0, 0, 2977, 0, 0, 0, 0, 0, 0, 0, 69632,
  31448. /* 34086 */ 73728, 0, 0, 0, 418, 0, 65536, 0, 0, 2992, 0, 0, 2995, 0, 0, 0, 0, 0, 3000, 0, 0, 0, 0, 0, 0, 0, 69632,
  31449. /* 34113 */ 73728, 0, 367, 367, 0, 0, 65536, 367, 0, 0, 0, 3023, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31450. /* 34135 */ 540, 540, 540, 2222, 540, 540, 540, 540, 3049, 540, 540, 540, 540, 540, 540, 540, 540, 3057, 540, 540,
  31451. /* 34155 */ 3060, 540, 540, 540, 540, 2189, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2583, 0, 0, 0,
  31452. /* 34177 */ 540, 540, 3063, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 2326, 0, 561, 561,
  31453. /* 34198 */ 3090, 561, 561, 561, 561, 561, 561, 561, 561, 3098, 561, 561, 3101, 561, 0, 585, 585, 1045, 585, 585,
  31454. /* 34218 */ 78112, 1079, 0, 0, 0, 0, 0, 0, 0, 1102, 1101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 1275, 540, 561,
  31455. /* 34245 */ 561, 3104, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2666, 585, 585, 585,
  31456. /* 34265 */ 3131, 585, 585, 585, 585, 585, 585, 585, 585, 3139, 585, 585, 3142, 585, 585, 585, 585, 585, 1930, 585,
  31457. /* 34285 */ 585, 585, 585, 585, 585, 585, 585, 1941, 585, 585, 585, 585, 585, 1948, 585, 585, 585, 585, 585, 585, 585,
  31458. /* 34306 */ 585, 585, 585, 585, 3263, 585, 585, 585, 585, 0, 0, 0, 0, 3179, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 732, 0,
  31459. /* 34333 */ 0, 0, 0, 0, 0, 3192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540, 2808, 3201, 540, 540, 540, 540,
  31460. /* 34360 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1359, 540, 3213, 540, 540, 540, 540, 540, 540, 540,
  31461. /* 34381 */ 3218, 540, 3220, 540, 540, 540, 540, 540, 540, 561, 3227, 561, 561, 561, 3230, 561, 561, 561, 561, 561,
  31462. /* 34401 */ 982, 561, 0, 585, 585, 585, 585, 999, 585, 585, 585, 561, 561, 3246, 561, 3248, 561, 561, 561, 561, 561,
  31463. /* 34422 */ 561, 561, 561, 561, 561, 585, 585, 585, 585, 585, 3537, 585, 585, 585, 585, 3256, 585, 585, 585, 585, 585,
  31464. /* 34443 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3278, 585, 585, 3268, 585, 585, 585, 585, 585, 585, 585,
  31465. /* 34464 */ 585, 3274, 585, 3276, 585, 585, 561, 3370, 540, 3371, 561, 3372, 585, 0, 0, 0, 0, 0, 0, 0, 785, 0, 0, 0,
  31466. /* 34488 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1179, 540, 540, 3328, 540, 540, 540, 540, 540, 540, 540, 561, 561,
  31467. /* 34513 */ 561, 561, 561, 561, 561, 561, 561, 3233, 561, 561, 561, 561, 3340, 561, 561, 561, 561, 561, 561, 561, 561,
  31468. /* 34534 */ 561, 3346, 561, 0, 994, 1075, 1039, 585, 585, 78112, 1079, 0, 0, 1081, 1085, 0, 0, 1089, 3358, 585, 585,
  31469. /* 34555 */ 585, 585, 585, 585, 585, 585, 585, 3364, 585, 585, 585, 585, 585, 585, 585, 1981, 1982, 585, 585, 585,
  31470. /* 34575 */ 585, 585, 585, 585, 561, 540, 585, 585, 561, 2951, 540, 2953, 561, 561, 561, 3654, 3655, 561, 561, 585,
  31471. /* 34595 */ 585, 3658, 3659, 585, 585, 0, 0, 0, 0, 0, 0, 1126, 0, 0, 0, 1130, 1131, 0, 0, 0, 0, 0, 0, 1141, 0, 1143,
  31472. /* 34621 */ 0, 0, 362, 362, 0, 0, 0, 691, 0, 0, 0, 0, 696, 0, 0, 0, 362, 362, 362, 0, 0, 0, 0, 0, 0, 1154, 0, 0, 0, 0,
  31473. /* 34651 */ 0, 1160, 0, 1162, 0, 758, 0, 0, 0, 0, 0, 0, 758, 0, 0, 0, 0, 0, 758, 758, 0, 0, 0, 0, 803, 0, 0, 0, 0, 0,
  31474. /* 34681 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 832, 0, 0, 0, 0, 0, 0, 0, 0, 0, 758, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 856, 585,
  31475. /* 34714 */ 999, 926, 540, 540, 540, 540, 910, 561, 561, 561, 561, 561, 1880, 1881, 1882, 561, 561, 1885, 1886, 561,
  31476. /* 34734 */ 561, 561, 561, 561, 1896, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2603, 561, 2605, 561, 561,
  31477. /* 34754 */ 561, 982, 0, 585, 585, 585, 585, 1055, 78112, 1079, 0, 0, 0, 0, 0, 0, 0, 375, 0, 378, 0, 0, 0, 378, 0, 0,
  31478. /* 34780 */ 0, 0, 1709, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1619, 0, 0, 585, 585, 585, 2010, 585, 561, 540, 585,
  31479. /* 34807 */ 585, 561, 540, 540, 540, 540, 561, 561, 561, 3066, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2600,
  31480. /* 34828 */ 561, 561, 561, 561, 561, 561, 561, 561, 0, 0, 987, 585, 585, 585, 585, 585, 0, 2039, 0, 0, 0, 0, 0, 0, 0,
  31481. /* 34853 */ 0, 0, 0, 0, 0, 0, 0, 1178, 0, 540, 540, 540, 2172, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31482. /* 34877 */ 540, 540, 2238, 2584, 0, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2255, 0, 0,
  31483. /* 34900 */ 0, 0, 2461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 747, 0, 0, 0, 0, 3288, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31484. /* 34932 */ 0, 0, 0, 1184, 1184, 561, 561, 561, 561, 3350, 561, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31485. /* 34954 */ 2939, 585, 585, 585, 585, 3368, 585, 561, 540, 540, 561, 561, 585, 585, 0, 0, 0, 0, 0, 0, 0, 394, 0, 0, 0,
  31486. /* 34979 */ 0, 0, 394, 0, 0, 467, 467, 485, 493, 493, 485, 493, 493, 493, 493, 493, 493, 493, 493, 518, 526, 526, 526,
  31487. /* 35002 */ 526, 526, 526, 526, 526, 526, 526, 526, 526, 526, 535, 526, 526, 526, 526, 526, 548, 570, 548, 570, 548,
  31488. /* 35023 */ 548, 570, 548, 594, 570, 570, 570, 570, 570, 570, 570, 594, 594, 594, 548, 594, 594, 594, 594, 594, 570,
  31489. /* 35044 */ 570, 548, 570, 594, 570, 594, 1, 12290, 3, 78112, 767, 0, 0, 771, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31490. /* 35070 */ 1704, 0, 0, 0, 821, 0, 0, 0, 798, 0, 0, 821, 0, 0, 0, 0, 0, 821, 821, 0, 0, 0, 0, 805, 0, 0, 786, 0, 0, 0,
  31491. /* 35100 */ 0, 805, 0, 0, 0, 0, 0, 0, 0, 805, 0, 0, 0, 0, 0, 798, 0, 0, 0, 0, 0, 0, 839, 794, 0, 0, 839, 0, 0, 0, 0,
  31492. /* 35131 */ 808, 0, 0, 692, 0, 0, 672, 0, 692, 0, 813, 675, 676, 0, 0, 0, 0, 0, 682, 0, 0, 0, 0, 0, 0, 0, 0, 340, 0,
  31493. /* 35160 */ 0, 0, 0, 0, 0, 0, 540, 867, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 911, 540, 540,
  31494. /* 35183 */ 540, 540, 2215, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1756, 540, 540, 540, 540, 983, 0,
  31495. /* 35204 */ 585, 585, 585, 1077, 1056, 78112, 1079, 0, 0, 0, 0, 0, 0, 0, 412, 412, 0, 0, 0, 0, 0, 412, 0, 1180, 0, 0,
  31496. /* 35230 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1621, 0, 0, 1241, 0, 0, 0, 0, 0, 0, 0, 0, 1246, 0, 0, 0, 0, 0, 0,
  31497. /* 35262 */ 1170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 816, 0, 0, 0, 0, 0, 0, 540, 1305, 540, 540, 540, 540, 540, 540, 540,
  31498. /* 35288 */ 1313, 540, 540, 540, 540, 540, 540, 540, 540, 3332, 540, 561, 561, 561, 561, 561, 561, 935, 561, 561, 561,
  31499. /* 35309 */ 561, 561, 561, 561, 561, 561, 3094, 561, 3096, 561, 561, 561, 561, 561, 561, 1340, 540, 540, 1344, 540,
  31500. /* 35329 */ 540, 540, 540, 540, 1350, 540, 540, 540, 1357, 540, 540, 540, 540, 540, 3458, 540, 3460, 3461, 540, 3463,
  31501. /* 35349 */ 540, 561, 561, 561, 561, 561, 2262, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1399, 561, 561, 561,
  31502. /* 35370 */ 561, 561, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1375, 561, 561, 561, 561,
  31503. /* 35390 */ 1848, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2868, 561, 561, 561, 561, 561, 1441, 561,
  31504. /* 35410 */ 561, 561, 1448, 561, 561, 26027, 1360, 987, 585, 585, 585, 585, 585, 585, 585, 1998, 585, 585, 585, 585,
  31505. /* 35430 */ 585, 2003, 585, 585, 1485, 585, 585, 585, 585, 585, 585, 585, 1493, 585, 585, 585, 585, 585, 585, 585,
  31506. /* 35450 */ 585, 3261, 585, 585, 585, 585, 585, 585, 585, 585, 3272, 585, 585, 585, 585, 585, 585, 585, 585, 3283,
  31507. /* 35470 */ 540, 585, 561, 540, 540, 561, 561, 585, 1522, 585, 585, 1526, 585, 585, 585, 585, 585, 1532, 585, 585,
  31508. /* 35490 */ 585, 1539, 585, 585, 585, 585, 585, 1996, 1997, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1531, 585,
  31509. /* 35510 */ 585, 585, 585, 585, 585, 0, 0, 0, 1595, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1716, 0, 0, 0, 0, 0, 1656, 0,
  31510. /* 35539 */ 0, 0, 0, 0, 0, 0, 0, 0, 1665, 0, 0, 0, 0, 0, 710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 662, 0, 0, 0, 0, 0, 540,
  31511. /* 35571 */ 540, 540, 540, 540, 1708, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1653, 0, 0, 0, 1722, 0, 0, 0, 0, 0,
  31512. /* 35601 */ 0, 0, 0, 0, 0, 0, 0, 1729, 0, 0, 0, 0, 0, 0, 1706, 0, 0, 0, 0, 0, 540, 540, 540, 540, 540, 540, 540, 540,
  31513. /* 35629 */ 540, 540, 3398, 540, 3400, 540, 561, 561, 1893, 561, 561, 561, 561, 561, 561, 1901, 561, 561, 561, 561,
  31514. /* 35649 */ 561, 561, 1410, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1428, 561, 561, 561, 561, 561, 561, 561, 561,
  31515. /* 35670 */ 561, 1917, 26027, 0, 1922, 585, 1924, 585, 561, 561, 561, 1910, 1912, 561, 561, 561, 561, 561, 26027, 0,
  31516. /* 35690 */ 585, 585, 585, 585, 585, 585, 2335, 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 3622, 0, 3624, 0, 0,
  31517. /* 35712 */ 540, 585, 585, 585, 585, 1978, 585, 585, 585, 585, 585, 585, 585, 585, 1987, 585, 585, 585, 585, 585, 585,
  31518. /* 35733 */ 2934, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2407, 561, 540, 585, 585, 561, 585, 585, 585, 585,
  31519. /* 35754 */ 1995, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2004, 2006, 0, 0, 0, 2078, 0, 0, 0, 2081, 0, 0, 0, 0,
  31520. /* 35778 */ 0, 2087, 0, 0, 0, 0, 0, 2774, 0, 0, 0, 2778, 0, 2780, 0, 0, 0, 0, 0, 0, 2746, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31521. /* 35808 */ 362, 362, 362, 0, 0, 0, 0, 0, 2103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1265, 0, 0, 0, 0, 561, 561,
  31522. /* 35838 */ 561, 561, 561, 2249, 561, 561, 561, 561, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31523. /* 35859 */ 585, 585, 585, 585, 585, 585, 1519, 585, 585, 2346, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31524. /* 35880 */ 585, 585, 585, 2919, 585, 2448, 0, 0, 0, 0, 0, 0, 0, 0, 2453, 0, 0, 2456, 0, 0, 0, 0, 0, 726, 0, 0, 0, 0,
  31525. /* 35908 */ 0, 0, 0, 0, 0, 736, 0, 0, 0, 2460, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2471, 0, 0, 0, 2485, 2486, 0, 0, 2489,
  31526. /* 35938 */ 0, 0, 2492, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 417, 417, 0, 0, 65536, 417, 0, 0, 2499, 0, 0, 0, 0, 0,
  31527. /* 35965 */ 0, 0, 0, 0, 0, 0, 2510, 0, 0, 0, 0, 815, 0, 812, 795, 0, 0, 817, 0, 667, 0, 791, 0, 0, 0, 0, 1096, 0, 0,
  31528. /* 35994 */ 1098, 0, 0, 0, 0, 0, 0, 0, 0, 827, 0, 0, 0, 0, 0, 0, 0, 0, 540, 2524, 540, 540, 540, 540, 540, 540, 540,
  31529. /* 36021 */ 540, 540, 540, 540, 540, 540, 1789, 540, 540, 540, 540, 540, 2551, 540, 540, 540, 540, 540, 540, 540, 540,
  31530. /* 36042 */ 540, 540, 540, 540, 540, 2559, 540, 540, 2562, 540, 540, 540, 540, 540, 540, 2569, 540, 540, 540, 540,
  31531. /* 36062 */ 540, 540, 540, 540, 540, 540, 3323, 540, 540, 540, 540, 540, 540, 2576, 540, 540, 540, 2579, 540, 540,
  31532. /* 36082 */ 540, 540, 540, 540, 540, 0, 0, 0, 0, 0, 755, 0, 0, 0, 0, 0, 0, 0, 0, 765, 0, 0, 0, 0, 561, 2586, 561, 561,
  31533. /* 36110 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 3254, 561, 561, 561, 585, 585, 585, 585, 585, 2672, 585, 585,
  31534. /* 36131 */ 585, 585, 585, 585, 2677, 585, 585, 585, 585, 561, 0, 3646, 0, 0, 0, 540, 540, 540, 540, 540, 540, 2529,
  31535. /* 36153 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2842, 540, 540, 540, 540, 540, 585, 585, 585, 2683, 585,
  31536. /* 36174 */ 585, 585, 585, 585, 585, 2690, 585, 585, 585, 585, 585, 585, 585, 2351, 585, 585, 585, 585, 585, 585, 585,
  31537. /* 36195 */ 585, 1508, 585, 585, 585, 585, 585, 585, 585, 585, 2697, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31538. /* 36215 */ 2704, 585, 585, 585, 2707, 0, 0, 0, 0, 2735, 0, 0, 0, 0, 0, 0, 0, 2739, 0, 0, 0, 0, 0, 799, 0, 0, 0, 0, 0,
  31539. /* 36244 */ 540, 540, 540, 540, 540, 2528, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2234, 540, 540, 540, 540,
  31540. /* 36265 */ 0, 540, 540, 540, 2811, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2821, 540, 540,
  31541. /* 36286 */ 540, 540, 540, 2836, 540, 540, 540, 2839, 540, 2841, 540, 540, 540, 540, 540, 540, 540, 540, 3520, 561,
  31542. /* 36306 */ 561, 561, 561, 561, 561, 561, 1450, 26027, 1360, 987, 585, 585, 585, 585, 585, 2845, 540, 540, 540, 540,
  31543. /* 36326 */ 540, 540, 0, 0, 561, 561, 2853, 561, 561, 561, 561, 561, 1913, 561, 561, 561, 561, 26027, 0, 585, 585,
  31544. /* 36347 */ 585, 585, 2333, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1050, 585, 585, 585, 585, 561, 561,
  31545. /* 36367 */ 2858, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2284, 561, 561, 561, 2874,
  31546. /* 36387 */ 2875, 561, 561, 561, 561, 2878, 561, 561, 561, 561, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 1005,
  31547. /* 36408 */ 585, 561, 561, 561, 2884, 561, 561, 561, 2887, 561, 2889, 561, 561, 561, 561, 561, 561, 1449, 561, 26027,
  31548. /* 36428 */ 1360, 987, 1453, 585, 585, 585, 585, 2893, 561, 561, 561, 561, 561, 561, 0, 0, 585, 585, 2901, 585, 585,
  31549. /* 36449 */ 585, 585, 585, 585, 585, 3121, 585, 585, 585, 585, 585, 585, 585, 585, 561, 540, 585, 561, 540, 3285, 561,
  31550. /* 36470 */ 3287, 585, 2906, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3367, 585,
  31551. /* 36490 */ 585, 2922, 2923, 585, 585, 585, 585, 2926, 585, 585, 585, 585, 585, 585, 585, 585, 3592, 561, 0, 0, 0, 0,
  31552. /* 36512 */ 3595, 0, 585, 585, 585, 2932, 585, 585, 585, 2935, 585, 2937, 585, 585, 585, 585, 585, 585, 585, 1933,
  31553. /* 36532 */ 585, 585, 585, 585, 1939, 585, 585, 585, 2941, 585, 585, 585, 585, 585, 585, 561, 540, 585, 585, 561, 540,
  31554. /* 36553 */ 540, 561, 561, 585, 585, 0, 0, 0, 0, 0, 0, 0, 0, 2963, 0, 0, 0, 0, 0, 585, 585, 2957, 0, 0, 2960, 2961, 0,
  31555. /* 36580 */ 0, 0, 0, 0, 0, 0, 0, 0, 662, 0, 662, 0, 0, 0, 0, 0, 0, 0, 0, 3009, 0, 0, 3012, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31556. /* 36612 */ 2200253, 151552, 2200253, 0, 0, 0, 151552, 540, 540, 540, 540, 3037, 540, 540, 540, 540, 540, 540, 540,
  31557. /* 36631 */ 540, 540, 540, 540, 540, 3325, 540, 540, 540, 540, 540, 540, 540, 3051, 540, 540, 540, 540, 540, 540, 540,
  31558. /* 36652 */ 540, 540, 540, 540, 540, 3465, 561, 561, 561, 561, 561, 561, 3077, 561, 561, 561, 561, 561, 561, 561, 561,
  31559. /* 36673 */ 561, 561, 561, 561, 1887, 1888, 561, 561, 561, 561, 561, 561, 3092, 561, 561, 561, 561, 561, 561, 561,
  31560. /* 36693 */ 561, 561, 561, 561, 3480, 585, 585, 585, 585, 561, 561, 585, 585, 585, 585, 3108, 585, 585, 585, 585,
  31561. /* 36713 */ 3112, 585, 585, 585, 585, 585, 585, 585, 3135, 585, 3137, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0,
  31562. /* 36735 */ 0, 3552, 0, 0, 0, 585, 585, 585, 3118, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1512,
  31563. /* 36757 */ 585, 585, 585, 585, 585, 585, 585, 3133, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2917,
  31564. /* 36778 */ 585, 585, 2920, 0, 0, 3168, 3169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2071, 0, 0, 0, 540, 540, 540, 540,
  31565. /* 36805 */ 3329, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3412, 561, 561, 3336, 561,
  31566. /* 36825 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2285, 3347, 561, 561, 561, 561, 561,
  31567. /* 36846 */ 585, 585, 585, 585, 585, 585, 3354, 585, 585, 585, 585, 585, 585, 2404, 585, 585, 585, 585, 561, 2178,
  31568. /* 36866 */ 585, 2346, 2261, 3389, 0, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2534, 0,
  31569. /* 36887 */ 0, 0, 0, 3176, 0, 0, 0, 0, 0, 3447, 3448, 0, 540, 540, 540, 540, 2527, 540, 540, 540, 540, 2531, 540, 540,
  31570. /* 36911 */ 540, 540, 540, 540, 540, 1312, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1784, 540, 540, 540, 540, 540,
  31571. /* 36932 */ 540, 561, 561, 561, 561, 3473, 561, 3475, 3476, 561, 3478, 561, 585, 585, 585, 585, 585, 1079, 0, 0, 0, 0,
  31572. /* 36954 */ 0, 0, 0, 0, 0, 0, 254413, 0, 0, 0, 0, 0, 585, 585, 585, 3488, 585, 3490, 3491, 585, 3493, 585, 3495, 0, 0,
  31573. /* 36979 */ 0, 0, 0, 0, 0, 69632, 73728, 313, 314, 314, 419, 420, 65536, 427, 585, 585, 3617, 585, 3618, 585, 585,
  31574. /* 37000 */ 585, 561, 0, 0, 0, 0, 0, 0, 540, 585, 585, 561, 540, 540, 540, 904, 540, 561, 561, 561, 976, 561, 561,
  31575. /* 37023 */ 585, 585, 3673, 3674, 3675, 3676, 0, 540, 561, 585, 0, 540, 561, 585, 585, 585, 585, 585, 1079, 0, 0,
  31576. /* 37044 */ 1563, 0, 0, 0, 1569, 0, 0, 0, 0, 0, 2789, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1591, 0, 0, 0, 0, 0, 571, 571,
  31577. /* 37073 */ 571, 571, 571, 571, 571, 595, 595, 595, 540, 595, 595, 595, 595, 595, 571, 571, 540, 571, 595, 571, 595,
  31578. /* 37094 */ 1, 12290, 3, 78112, 737, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1707, 0, 0, 2040, 0, 0, 0, 0, 0, 0,
  31579. /* 37124 */ 0, 0, 0, 0, 0, 0, 0, 1635, 0, 0, 2170, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31580. /* 37148 */ 540, 540, 1360, 0, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2253, 561, 561, 561, 561, 926, 561,
  31581. /* 37170 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2307, 561, 561, 561, 2310, 400, 0, 0, 0, 0, 378, 0,
  31582. /* 37192 */ 69632, 73728, 0, 0, 0, 0, 423, 65536, 0, 0, 0, 0, 1111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1687, 0, 1689, 0,
  31583. /* 37220 */ 0, 423, 423, 0, 423, 0, 437, 423, 0, 423, 468, 468, 468, 475, 468, 468, 468, 468, 468, 468, 468, 468, 475,
  31584. /* 37243 */ 468, 468, 468, 468, 468, 468, 468, 468, 482, 468, 494, 494, 468, 494, 494, 494, 494, 494, 494, 494, 494,
  31585. /* 37264 */ 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 494, 537, 549, 572, 549, 572, 549, 549,
  31586. /* 37285 */ 572, 549, 596, 572, 572, 572, 572, 572, 572, 572, 596, 596, 596, 549, 596, 596, 596, 596, 596, 572, 572,
  31587. /* 37306 */ 549, 572, 596, 572, 596, 1, 12290, 3, 78112, 0, 660, 661, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1666, 0,
  31588. /* 37333 */ 0, 830, 0, 0, 0, 661, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 729, 0, 742, 661, 0, 0, 0, 0, 0, 540, 847,
  31589. /* 37364 */ 540, 540, 540, 540, 540, 540, 3330, 540, 540, 540, 561, 561, 561, 561, 561, 3335, 861, 540, 540, 540, 540,
  31590. /* 37385 */ 540, 540, 540, 540, 540, 897, 540, 540, 540, 540, 540, 540, 540, 1799, 540, 540, 540, 540, 540, 540, 1807,
  31591. /* 37406 */ 540, 561, 561, 916, 561, 561, 561, 931, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2266, 561, 561, 561,
  31592. /* 37427 */ 561, 561, 561, 0, 0, 0, 540, 989, 585, 561, 540, 540, 897, 540, 540, 561, 561, 969, 561, 561, 561, 561,
  31593. /* 37449 */ 561, 0, 585, 585, 989, 585, 585, 585, 1004, 585, 1094, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1101, 1102, 0, 0, 0, 0,
  31594. /* 37475 */ 0, 0, 1203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196608, 0, 0, 0, 0, 0, 540, 540, 540, 1308, 540, 540, 540, 540,
  31595. /* 37502 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 3222, 540, 540, 1360, 914, 561, 1363, 561, 561, 561, 561,
  31596. /* 37522 */ 561, 561, 561, 561, 561, 561, 1376, 1383, 561, 561, 561, 1444, 561, 561, 561, 561, 26027, 1360, 987, 585,
  31597. /* 37542 */ 1454, 585, 585, 585, 585, 585, 585, 2659, 585, 585, 2662, 2663, 585, 585, 585, 585, 585, 585, 585, 2712,
  31598. /* 37562 */ 540, 585, 585, 561, 540, 540, 540, 540, 585, 585, 1488, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31599. /* 37583 */ 585, 585, 585, 585, 3128, 585, 1521, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1535, 585,
  31600. /* 37603 */ 585, 585, 585, 585, 585, 2673, 585, 585, 585, 2676, 585, 585, 2678, 585, 2679, 561, 585, 585, 1521, 585,
  31601. /* 37623 */ 585, 1079, 0, 0, 0, 0, 0, 0, 0, 0, 0, 759, 0, 0, 0, 0, 0, 0, 1826, 561, 561, 561, 561, 561, 561, 561, 561,
  31602. /* 37650 */ 561, 561, 561, 561, 561, 1841, 1842, 585, 585, 2009, 585, 585, 561, 540, 585, 585, 561, 540, 540, 540,
  31603. /* 37670 */ 540, 561, 561, 561, 561, 1849, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2880, 561, 561, 561,
  31604. /* 37691 */ 561, 561, 2063, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2074, 540, 540, 2226, 540, 540, 540, 540,
  31605. /* 37717 */ 540, 540, 540, 540, 540, 540, 540, 540, 0, 0, 561, 561, 561, 2854, 561, 561, 561, 561, 561, 561, 2301,
  31606. /* 37738 */ 561, 561, 561, 561, 561, 561, 2306, 561, 561, 561, 561, 561, 561, 3079, 561, 561, 561, 561, 561, 3085,
  31607. /* 37758 */ 561, 561, 3088, 2311, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 0, 0, 0, 585,
  31608. /* 37781 */ 585, 585, 585, 585, 585, 2654, 585, 585, 585, 585, 585, 2374, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31609. /* 37802 */ 585, 585, 585, 3140, 585, 585, 585, 585, 2386, 585, 585, 585, 585, 585, 585, 2391, 585, 585, 585, 585,
  31610. /* 37822 */ 585, 2396, 585, 585, 585, 585, 585, 2012, 540, 585, 585, 561, 540, 540, 540, 540, 561, 561, 561, 561,
  31611. /* 37842 */ 2624, 561, 561, 561, 561, 561, 561, 2632, 561, 561, 561, 561, 561, 2288, 561, 561, 561, 561, 561, 561,
  31612. /* 37862 */ 561, 561, 561, 561, 2631, 561, 561, 561, 561, 561, 2435, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31613. /* 37888 */ 2114, 0, 0, 0, 0, 2476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 748, 0, 0, 0, 0, 0, 2732, 0, 0, 0, 0, 0, 0, 0, 0,
  31614. /* 37920 */ 0, 0, 0, 0, 0, 0, 1590, 1591, 0, 0, 0, 2772, 0, 0, 0, 0, 2777, 0, 0, 0, 0, 0, 0, 0, 540, 562, 540, 562,
  31615. /* 37948 */ 540, 540, 562, 540, 586, 540, 540, 2810, 540, 540, 540, 540, 540, 540, 2818, 540, 540, 540, 540, 540, 540,
  31616. /* 37969 */ 540, 889, 540, 540, 540, 540, 907, 540, 540, 540, 540, 540, 540, 540, 2849, 540, 540, 0, 0, 561, 561, 561,
  31617. /* 37991 */ 561, 561, 561, 561, 561, 561, 1836, 561, 561, 561, 561, 561, 2857, 561, 561, 561, 561, 561, 561, 2865,
  31618. /* 38011 */ 561, 561, 561, 561, 561, 561, 561, 561, 3081, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2897,
  31619. /* 38032 */ 561, 561, 0, 0, 585, 585, 585, 585, 585, 585, 585, 1467, 1474, 585, 585, 585, 585, 585, 585, 585, 585,
  31620. /* 38053 */ 3621, 0, 0, 0, 0, 0, 0, 540, 2905, 585, 585, 585, 585, 585, 585, 2913, 585, 585, 585, 585, 585, 585, 585,
  31621. /* 38076 */ 585, 585, 1983, 585, 585, 1986, 585, 585, 585, 585, 585, 585, 585, 2945, 585, 585, 561, 540, 585, 585,
  31622. /* 38096 */ 561, 540, 540, 561, 561, 585, 585, 0, 0, 0, 0, 0, 3376, 0, 585, 3280, 585, 585, 585, 585, 585, 585, 561,
  31623. /* 38119 */ 540, 585, 561, 540, 540, 561, 561, 585, 585, 0, 3155, 0, 0, 585, 585, 585, 3587, 585, 3589, 585, 585, 585,
  31624. /* 38141 */ 561, 0, 0, 0, 0, 0, 0, 0, 2791, 0, 0, 0, 2793, 0, 0, 0, 0, 0, 0, 0, 0, 3600, 540, 540, 540, 540, 540, 540,
  31625. /* 38169 */ 540, 540, 540, 540, 540, 1314, 540, 540, 540, 540, 3607, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31626. /* 38190 */ 561, 3614, 585, 585, 585, 585, 585, 585, 2686, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1045, 585,
  31627. /* 38210 */ 585, 585, 585, 585, 972, 561, 3653, 561, 561, 561, 561, 585, 3657, 585, 585, 585, 585, 0, 0, 0, 0, 0, 0,
  31628. /* 38233 */ 1204, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 0, 290, 0, 0, 0, 345, 469, 469, 469, 453, 453, 469, 453, 453, 453,
  31629. /* 38259 */ 453, 453, 453, 453, 453, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
  31630. /* 38280 */ 550, 573, 550, 573, 550, 550, 573, 550, 597, 573, 573, 573, 573, 573, 573, 573, 597, 597, 597, 550, 597,
  31631. /* 38301 */ 597, 597, 597, 597, 573, 573, 550, 573, 597, 573, 597, 1, 12290, 3, 78112, 862, 540, 540, 876, 540, 540,
  31632. /* 38322 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1315, 540, 540, 540, 585, 1019, 585, 585, 585, 585, 585,
  31633. /* 38343 */ 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 3498, 0, 0, 1123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31634. /* 38370 */ 0, 0, 0, 1607, 0, 0, 0, 0, 1254, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2111, 0, 0, 0, 540, 1341, 540, 540,
  31635. /* 38399 */ 540, 540, 540, 1348, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3333, 561, 561, 561, 561, 561, 585,
  31636. /* 38420 */ 585, 585, 585, 1505, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3365, 585, 585, 585, 585,
  31637. /* 38441 */ 585, 1523, 585, 585, 585, 585, 585, 1530, 585, 585, 585, 585, 585, 585, 585, 1468, 585, 585, 585, 585,
  31638. /* 38461 */ 585, 585, 585, 585, 585, 2378, 585, 585, 585, 585, 585, 585, 561, 585, 585, 585, 1557, 585, 1079, 0, 1561,
  31639. /* 38482 */ 0, 0, 0, 1567, 0, 0, 0, 0, 0, 803, 0, 0, 0, 0, 0, 0, 0, 803, 0, 0, 0, 0, 540, 540, 540, 540, 540, 1573, 0,
  31640. /* 38511 */ 0, 0, 1579, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 749, 0, 0, 0, 0, 0, 0, 0, 1695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31641. /* 38544 */ 0, 0, 2127, 0, 0, 0, 540, 1762, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31642. /* 38566 */ 1358, 540, 1843, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1854, 561, 561, 561, 561, 561, 561, 3239,
  31643. /* 38586 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 3578, 561, 561, 585, 585, 585, 585, 0, 2064, 2065, 0, 0, 0,
  31644. /* 38608 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1717, 0, 0, 0, 0, 0, 0, 2135, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1159, 0, 0,
  31645. /* 38640 */ 0, 0, 2186, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1808, 540, 540,
  31646. /* 38661 */ 2213, 540, 540, 540, 540, 2218, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1754, 540, 540, 540, 540,
  31647. /* 38681 */ 540, 540, 2240, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1401, 561, 561,
  31648. /* 38702 */ 2298, 561, 561, 561, 561, 2303, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3083, 561, 561, 561,
  31649. /* 38722 */ 561, 561, 585, 585, 585, 2388, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1938, 585, 585,
  31650. /* 38743 */ 585, 3034, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2210, 0, 0, 0, 3380,
  31651. /* 38765 */ 3176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1175, 0, 0, 0, 0, 540, 540, 3404, 540, 561, 561, 561, 561, 561,
  31652. /* 38791 */ 561, 561, 561, 561, 561, 561, 561, 2282, 561, 561, 561, 561, 561, 561, 561, 3419, 561, 585, 585, 585, 585,
  31653. /* 38812 */ 585, 585, 585, 585, 585, 585, 1049, 585, 585, 585, 585, 561, 540, 3454, 540, 540, 540, 540, 540, 540, 540,
  31654. /* 38833 */ 540, 540, 540, 561, 561, 561, 561, 3523, 561, 561, 561, 3469, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31655. /* 38854 */ 561, 585, 585, 585, 585, 3484, 385, 387, 337, 0, 0, 0, 0, 0, 0, 336, 0, 0, 337, 0, 0, 0, 0, 0, 1097, 0, 0,
  31656. /* 38881 */ 0, 0, 0, 0, 0, 0, 0, 0, 2057, 0, 0, 0, 0, 0, 0, 0, 0, 384, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0,
  31657. /* 38911 */ 0, 0, 0, 1139, 1140, 0, 0, 0, 0, 0, 362, 362, 0, 0, 0, 0, 0, 703, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2048, 0,
  31658. /* 38941 */ 0, 0, 0, 0, 0, 0, 336, 0, 0, 438, 0, 444, 0, 470, 470, 470, 470, 470, 470, 470, 551, 574, 551, 574, 551,
  31659. /* 38966 */ 551, 574, 551, 598, 480, 470, 470, 470, 499, 476, 499, 499, 499, 499, 499, 499, 499, 499, 470, 470, 476,
  31660. /* 38987 */ 470, 470, 470, 470, 470, 470, 470, 470, 470, 470, 480, 470, 481, 480, 470, 470, 470, 470, 574, 574, 574,
  31661. /* 39008 */ 574, 574, 574, 574, 598, 598, 598, 551, 598, 598, 598, 598, 598, 574, 574, 551, 574, 598, 574, 598, 1,
  31662. /* 39029 */ 12290, 3, 78112, 0, 0, 0, 678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2153, 0, 0, 0, 0, 0, 693, 0, 0, 0, 0,
  31663. /* 39059 */ 0, 0, 362, 362, 362, 0, 0, 0, 0, 0, 0, 1217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1220, 0, 0, 1223, 0, 0, 0, 0, 0,
  31664. /* 39089 */ 0, 663, 0, 791, 0, 0, 0, 0, 0, 0, 0, 795, 0, 0, 0, 0, 0, 2972, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2097, 0,
  31665. /* 39119 */ 2099, 0, 0, 0, 0, 0, 804, 0, 0, 0, 0, 0, 812, 0, 0, 0, 0, 706, 0, 0, 0, 0, 0, 0, 0, 0, 715, 0, 717, 0, 0,
  31666. /* 39150 */ 0, 831, 0, 0, 0, 663, 834, 0, 791, 0, 0, 0, 0, 0, 840, 0, 0, 0, 0, 0, 2996, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31667. /* 39181 */ 2429, 2430, 0, 0, 0, 0, 863, 540, 540, 877, 540, 540, 540, 888, 540, 540, 540, 540, 906, 540, 540, 540,
  31668. /* 39203 */ 540, 540, 1311, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2843, 540, 540, 540, 540, 561, 561,
  31669. /* 39224 */ 917, 561, 561, 561, 933, 561, 561, 947, 561, 561, 561, 561, 960, 561, 0, 995, 585, 1076, 1046, 585, 78112,
  31670. /* 39245 */ 1079, 0, 0, 0, 0, 0, 0, 0, 0, 2686976, 2736128, 0, 0, 2531328, 2707456, 0, 3190784, 561, 561, 561, 978,
  31671. /* 39266 */ 561, 561, 561, 0, 585, 585, 990, 585, 585, 585, 1006, 585, 585, 585, 585, 585, 2349, 585, 585, 585, 585,
  31672. /* 39287 */ 2354, 585, 585, 585, 585, 585, 585, 585, 2377, 585, 585, 585, 585, 585, 585, 585, 585, 561, 540, 561, 585,
  31673. /* 39308 */ 0, 0, 0, 0, 585, 1020, 585, 585, 585, 585, 1033, 585, 585, 585, 585, 1051, 585, 585, 585, 561, 540, 585,
  31674. /* 39330 */ 561, 3149, 540, 3151, 561, 3153, 585, 0, 0, 0, 0, 0, 0, 1660, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1173, 0, 0, 0, 0,
  31675. /* 39358 */ 0, 0, 0, 0, 0, 540, 990, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561, 3067, 561, 561, 561, 561,
  31676. /* 39381 */ 3071, 561, 561, 561, 561, 0, 0, 0, 1215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2431, 0, 2433, 0, 1238, 0, 0,
  31677. /* 39409 */ 0, 0, 1270, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540, 3561, 540, 540, 540, 540, 540, 540, 540, 540, 561,
  31678. /* 39433 */ 561, 561, 561, 561, 561, 561, 585, 585, 585, 540, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1491, 585,
  31679. /* 39454 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1495, 585, 585, 585, 585, 561, 585, 585, 1556, 585, 585,
  31680. /* 39475 */ 1079, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1100, 0, 0, 0, 0, 0, 0, 1622, 0, 0, 1625, 0, 1627, 0, 0, 0, 0, 0, 0, 0,
  31681. /* 39505 */ 0, 0, 0, 839, 540, 540, 540, 540, 859, 540, 1744, 540, 540, 540, 540, 540, 540, 540, 540, 1755, 540, 540,
  31682. /* 39527 */ 540, 540, 540, 540, 540, 2176, 540, 540, 2180, 540, 540, 540, 2184, 540, 561, 561, 561, 1847, 561, 561,
  31683. /* 39547 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2294, 561, 561, 561, 0, 0, 2117, 0, 0, 0, 0, 0, 0, 0, 0,
  31684. /* 39572 */ 0, 0, 0, 0, 0, 1730, 0, 0, 0, 0, 0, 0, 2148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1207, 0, 0, 0, 0, 0, 0, 0,
  31685. /* 39604 */ 561, 561, 561, 561, 2248, 561, 561, 561, 561, 561, 561, 561, 561, 3095, 3097, 561, 561, 561, 3100, 561,
  31686. /* 39624 */ 3102, 561, 561, 2313, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 0, 0, 0, 585, 585, 2651,
  31687. /* 39647 */ 585, 585, 585, 585, 585, 585, 585, 2660, 585, 585, 585, 585, 585, 2665, 585, 585, 2398, 585, 585, 585,
  31688. /* 39667 */ 585, 585, 585, 585, 585, 585, 585, 561, 540, 2410, 585, 561, 0, 540, 585, 585, 561, 540, 540, 540, 540,
  31689. /* 39688 */ 540, 561, 561, 561, 561, 585, 585, 585, 585, 0, 3669, 540, 3670, 0, 2436, 0, 0, 0, 0, 0, 0, 2441, 0, 0, 0,
  31690. /* 39713 */ 2444, 2445, 0, 0, 0, 0, 0, 3010, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 303, 304, 0, 0, 0, 0, 2497, 0, 0, 0, 0, 0,
  31691. /* 39743 */ 0, 0, 0, 0, 2506, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 163840, 0, 0, 0, 0, 65536, 0, 2512, 0, 0, 0, 0, 2515,
  31692. /* 39770 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2523, 540, 2536, 2537, 540, 540, 540, 540, 540, 2542, 540, 2544, 540, 540, 540,
  31693. /* 39794 */ 540, 2548, 561, 2595, 561, 561, 2598, 2599, 561, 561, 561, 561, 561, 2604, 561, 2606, 561, 561, 561, 561,
  31694. /* 39814 */ 1863, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2890, 561, 561, 561, 561, 561, 561, 561,
  31695. /* 39834 */ 2610, 561, 561, 561, 561, 561, 561, 561, 561, 2616, 561, 561, 561, 561, 561, 2276, 561, 561, 2279, 561,
  31696. /* 39854 */ 561, 561, 561, 561, 561, 561, 1915, 561, 561, 26027, 1920, 585, 585, 585, 585, 2636, 561, 561, 561, 561,
  31697. /* 39874 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2608, 2668, 585, 2670, 585, 585, 585, 585, 2674,
  31698. /* 39894 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 2675, 585, 585, 585, 585, 585, 585, 2680, 585, 585, 585, 585,
  31699. /* 39915 */ 585, 585, 585, 585, 2688, 585, 585, 585, 585, 585, 585, 585, 1950, 585, 585, 585, 585, 1954, 585, 585,
  31700. /* 39935 */ 585, 2696, 585, 585, 585, 585, 2700, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1494, 585, 585,
  31701. /* 39955 */ 585, 585, 585, 561, 2720, 561, 561, 585, 2722, 585, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2964, 0, 0, 0, 0,
  31702. /* 39980 */ 2770, 0, 0, 0, 2773, 0, 0, 2776, 0, 0, 0, 0, 0, 0, 0, 0, 331, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31703. /* 40012 */ 1691, 0, 2786, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2795, 0, 0, 0, 0, 0, 3171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31704. /* 40043 */ 1245, 0, 0, 0, 0, 0, 540, 2825, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31705. /* 40065 */ 1773, 540, 540, 2835, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2844, 540, 540,
  31706. /* 40085 */ 2847, 540, 540, 2850, 540, 0, 0, 2851, 561, 561, 561, 561, 561, 561, 1851, 561, 561, 561, 561, 1855, 561,
  31707. /* 40106 */ 561, 561, 561, 561, 2883, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2892, 561, 561,
  31708. /* 40127 */ 2895, 561, 561, 2898, 561, 0, 0, 2899, 585, 585, 585, 585, 585, 585, 585, 1965, 585, 585, 585, 1970, 585,
  31709. /* 40148 */ 585, 585, 585, 585, 2931, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2940, 585, 585,
  31710. /* 40169 */ 2943, 585, 585, 2946, 585, 561, 2948, 585, 2949, 2950, 540, 540, 561, 561, 561, 561, 1878, 561, 561, 561,
  31711. /* 40189 */ 561, 1884, 561, 561, 561, 561, 561, 561, 936, 561, 561, 561, 561, 561, 561, 561, 561, 561, 984, 0, 585,
  31712. /* 40210 */ 585, 585, 585, 585, 585, 1007, 585, 0, 2968, 2969, 0, 0, 0, 0, 2974, 0, 0, 0, 0, 0, 0, 0, 0, 331, 0, 331,
  31713. /* 40236 */ 331, 0, 0, 0, 0, 3020, 0, 0, 540, 540, 3025, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3043,
  31714. /* 40259 */ 540, 540, 540, 540, 540, 540, 540, 3050, 540, 540, 3052, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31715. /* 40280 */ 1352, 540, 540, 540, 540, 540, 561, 561, 561, 3091, 561, 561, 3093, 561, 561, 561, 561, 561, 561, 561,
  31716. /* 40300 */ 561, 561, 2602, 561, 561, 561, 561, 561, 561, 561, 561, 585, 585, 3106, 585, 585, 585, 585, 585, 585, 585,
  31717. /* 40321 */ 585, 585, 585, 585, 1496, 585, 585, 585, 1500, 585, 585, 585, 3132, 585, 585, 3134, 585, 585, 585, 585,
  31718. /* 40341 */ 585, 585, 585, 585, 585, 1040, 585, 585, 585, 585, 585, 967, 3158, 0, 0, 0, 3162, 0, 0, 0, 0, 0, 0, 0, 0,
  31719. /* 40366 */ 0, 0, 0, 1222, 0, 0, 1225, 0, 3190, 0, 0, 3193, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 540, 2166,
  31720. /* 40393 */ 540, 540, 540, 540, 540, 3214, 540, 540, 540, 540, 540, 540, 540, 3219, 540, 540, 540, 540, 540, 540, 540,
  31721. /* 40414 */ 2541, 540, 2543, 540, 540, 540, 540, 540, 540, 540, 540, 2581, 540, 540, 540, 540, 0, 2584, 0, 561, 561,
  31722. /* 40435 */ 561, 3236, 3237, 561, 561, 561, 561, 561, 3241, 561, 561, 561, 561, 561, 561, 3250, 561, 561, 561, 561,
  31723. /* 40455 */ 561, 561, 561, 561, 585, 585, 585, 585, 3536, 585, 585, 585, 585, 561, 561, 561, 3247, 561, 561, 561, 561,
  31724. /* 40476 */ 561, 561, 561, 561, 561, 561, 561, 585, 3481, 585, 3483, 585, 585, 585, 585, 3269, 585, 585, 585, 585,
  31725. /* 40496 */ 585, 585, 585, 585, 3275, 585, 585, 585, 585, 585, 585, 2701, 585, 585, 585, 585, 585, 585, 585, 2706,
  31726. /* 40516 */ 585, 0, 0, 3308, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 540, 856, 540, 585, 3359, 585, 585, 585,
  31727. /* 40542 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1057, 561, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0,
  31728. /* 40567 */ 3386, 0, 0, 0, 0, 0, 1169, 0, 1171, 0, 0, 0, 0, 1176, 0, 0, 0, 0, 0, 1185, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31729. /* 40597 */ 669, 0, 0, 0, 0, 0, 585, 3429, 585, 585, 585, 585, 585, 585, 561, 540, 561, 585, 0, 3437, 0, 0, 0, 0, 0,
  31730. /* 40622 */ 3300, 0, 3176, 3302, 0, 0, 3305, 0, 0, 0, 0, 0, 0, 1113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 362, 0, 703,
  31731. /* 40650 */ 0, 0, 3440, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540, 3452, 540, 540, 540, 540, 3457, 540, 540,
  31732. /* 40675 */ 540, 540, 3462, 540, 540, 561, 561, 3467, 561, 0, 997, 1037, 585, 1048, 585, 78112, 1079, 0, 0, 0, 0, 0,
  31733. /* 40697 */ 0, 0, 776, 0, 0, 0, 0, 0, 783, 0, 0, 561, 561, 561, 3472, 561, 561, 561, 561, 3477, 561, 561, 585, 585,
  31734. /* 40721 */ 3482, 585, 585, 585, 585, 585, 585, 3259, 3260, 585, 585, 585, 585, 3264, 3265, 585, 585, 585, 585, 585,
  31735. /* 40741 */ 585, 3120, 585, 585, 585, 585, 585, 3126, 585, 585, 3129, 585, 585, 3487, 585, 585, 585, 585, 3492, 585,
  31736. /* 40761 */ 585, 561, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 167936, 0, 0, 0, 0, 65536, 0, 3499, 0, 0, 0, 0, 0, 3505, 0,
  31737. /* 40787 */ 0, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3397, 540, 540, 540, 540, 540, 540, 540, 540, 3517, 540,
  31738. /* 40808 */ 540, 3519, 561, 561, 561, 561, 561, 561, 561, 561, 3252, 561, 561, 561, 561, 561, 561, 585, 561, 561, 561,
  31739. /* 40829 */ 3530, 561, 561, 3532, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1042, 585, 585, 585, 585, 585, 969,
  31740. /* 40849 */ 585, 585, 3543, 585, 585, 3545, 561, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1144, 0, 362, 362, 0, 1147, 0, 540, 540,
  31741. /* 40874 */ 3629, 3630, 540, 540, 561, 561, 561, 3635, 3636, 561, 561, 585, 585, 585, 585, 0, 2029, 0, 0, 0, 0, 0,
  31742. /* 40896 */ 2031, 0, 0, 3641, 3642, 585, 585, 561, 0, 0, 0, 0, 0, 540, 540, 540, 540, 540, 540, 3395, 540, 540, 540,
  31743. /* 40919 */ 540, 540, 540, 3401, 561, 561, 585, 585, 0, 540, 561, 585, 0, 540, 561, 585, 3681, 3682, 3683, 3684, 339,
  31744. /* 40940 */ 340, 341, 342, 343, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1617, 0, 0, 0, 0, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0,
  31745. /* 40971 */ 0, 0, 0, 0, 0, 2469, 0, 2470, 0, 342, 342, 343, 342, 0, 341, 342, 445, 454, 471, 471, 471, 471, 471, 471,
  31746. /* 40995 */ 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 471, 486, 495, 495, 503, 495, 505, 495, 495, 505,
  31747. /* 41016 */ 505, 495, 505, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 520, 552, 575,
  31748. /* 41037 */ 552, 575, 552, 552, 575, 552, 599, 575, 575, 575, 575, 575, 575, 575, 599, 599, 599, 552, 599, 599, 599,
  31749. /* 41058 */ 599, 599, 575, 575, 552, 575, 599, 575, 599, 1, 12290, 3, 78112, 0, 0, 0, 646, 0, 0, 0, 0, 651, 652, 653,
  31750. /* 41082 */ 654, 655, 656, 657, 0, 0, 0, 0, 1144, 0, 0, 1259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2957312, 0, 0, 0, 0, 0, 0, 0,
  31751. /* 41111 */ 692, 0, 0, 0, 0, 0, 0, 699, 362, 362, 362, 0, 0, 0, 0, 0, 0, 1232, 0, 0, 0, 0, 0, 0, 0, 0, 0, 735, 0, 800,
  31752. /* 41141 */ 0, 0, 0, 0, 721, 0, 723, 0, 0, 0, 0, 0, 0, 0, 0, 0, 733, 0, 0, 0, 0, 0, 1202, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31753. /* 41173 */ 0, 333, 334, 0, 0, 0, 0, 0, 646, 752, 753, 754, 0, 0, 0, 0, 0, 760, 761, 0, 0, 0, 0, 0, 0, 1271, 0, 0, 0,
  31754. /* 41202 */ 0, 0, 0, 540, 540, 540, 3026, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2220, 540, 540, 540, 540,
  31755. /* 41224 */ 540, 0, 761, 0, 0, 790, 0, 0, 0, 0, 0, 0, 0, 0, 0, 797, 0, 0, 0, 0, 1152, 0, 0, 0, 0, 1157, 0, 0, 0, 0, 0,
  31756. /* 41255 */ 0, 0, 2106, 0, 0, 0, 0, 0, 0, 0, 0, 1219, 0, 0, 0, 0, 0, 0, 0, 723, 0, 692, 814, 0, 0, 0, 0, 761, 0, 0, 0,
  31757. /* 41286 */ 0, 0, 0, 0, 558, 581, 558, 581, 558, 558, 581, 558, 605, 0, 754, 823, 824, 0, 0, 0, 0, 0, 0, 754, 0, 0,
  31758. /* 41312 */ 828, 699, 0, 0, 0, 0, 1168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1633, 0, 0, 0, 0, 0, 0, 833, 0, 0, 0, 835, 0,
  31759. /* 41343 */ 0, 0, 692, 699, 0, 0, 692, 833, 0, 0, 0, 0, 0, 0, 0, 0, 0, 692, 540, 540, 853, 857, 860, 540, 868, 540,
  31760. /* 41369 */ 540, 882, 884, 887, 540, 540, 540, 898, 902, 540, 540, 540, 540, 540, 540, 1766, 540, 540, 540, 540, 540,
  31761. /* 41390 */ 540, 540, 540, 540, 540, 1786, 540, 540, 540, 540, 540, 561, 561, 561, 923, 927, 930, 561, 938, 561, 561,
  31762. /* 41411 */ 561, 953, 955, 958, 561, 561, 561, 561, 1879, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2641,
  31763. /* 41432 */ 561, 561, 561, 561, 561, 561, 561, 561, 2648, 0, 585, 585, 585, 585, 585, 585, 585, 561, 540, 585, 585,
  31764. /* 41453 */ 561, 2717, 540, 540, 540, 585, 585, 585, 1026, 1028, 1031, 585, 585, 585, 1043, 1047, 585, 585, 585, 585,
  31765. /* 41473 */ 970, 0, 0, 0, 1060, 585, 1062, 1063, 853, 540, 898, 902, 1068, 923, 561, 970, 974, 561, 561, 561, 561, 0,
  31766. /* 41495 */ 585, 585, 585, 996, 1000, 1003, 585, 1011, 1073, 0, 996, 585, 1043, 1047, 1078, 78112, 1079, 0, 0, 0, 0,
  31767. /* 41516 */ 0, 0, 0, 560, 583, 560, 583, 560, 560, 583, 560, 607, 0, 0, 1199, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1208, 0, 0,
  31768. /* 41543 */ 0, 0, 0, 1231, 0, 0, 0, 0, 1236, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 422, 65536, 0, 540, 1322,
  31769. /* 41570 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 1331, 540, 540, 1338, 540, 540, 540, 540, 2228, 540, 540,
  31770. /* 41590 */ 540, 540, 540, 540, 540, 540, 540, 540, 0, 0, 561, 2852, 561, 561, 561, 561, 561, 561, 561, 561, 1422,
  31771. /* 41611 */ 561, 561, 1429, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2879, 561, 561, 561, 561, 561, 561, 561,
  31772. /* 41631 */ 1442, 561, 561, 561, 561, 561, 561, 26027, 1360, 987, 585, 585, 585, 585, 585, 585, 585, 2925, 585, 585,
  31773. /* 41651 */ 585, 585, 585, 585, 585, 585, 561, 540, 561, 585, 3436, 0, 3438, 0, 585, 1503, 585, 585, 585, 585, 585,
  31774. /* 41672 */ 585, 585, 585, 585, 585, 1513, 585, 585, 1520, 1667, 0, 1669, 0, 0, 0, 1671, 0, 748, 0, 0, 0, 0, 0, 0, 0,
  31775. /* 41697 */ 650, 0, 0, 0, 0, 0, 0, 0, 0, 0, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624, 282624,
  31776. /* 41716 */ 282624, 0, 0, 1602, 0, 0, 0, 0, 0, 0, 540, 1738, 540, 540, 540, 540, 540, 540, 540, 2584, 0, 561, 561,
  31777. /* 41739 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 1839, 561, 561, 561, 1743, 540, 540, 540, 540, 540, 540, 540,
  31778. /* 41760 */ 540, 540, 540, 540, 540, 540, 540, 540, 2238, 540, 1776, 540, 540, 1781, 540, 540, 540, 540, 540, 540,
  31779. /* 41780 */ 540, 540, 540, 540, 540, 1353, 540, 540, 540, 540, 0, 561, 1829, 561, 561, 561, 561, 561, 561, 1835, 561,
  31780. /* 41801 */ 561, 561, 561, 561, 561, 1864, 561, 561, 561, 1868, 561, 561, 1873, 561, 561, 1907, 561, 561, 561, 561,
  31781. /* 41821 */ 561, 561, 561, 561, 561, 26027, 0, 585, 1923, 585, 585, 585, 585, 585, 585, 3270, 585, 585, 585, 585, 585,
  31782. /* 41842 */ 585, 585, 585, 585, 1968, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1929, 585, 585, 585, 585, 585,
  31783. /* 41863 */ 585, 585, 585, 585, 585, 585, 1511, 585, 585, 585, 585, 585, 1958, 585, 585, 585, 1962, 585, 585, 1967,
  31784. /* 41883 */ 585, 585, 585, 585, 585, 585, 585, 1469, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2392, 585, 585, 585,
  31785. /* 41904 */ 2395, 585, 585, 0, 1086, 0, 0, 0, 2034, 0, 1090, 0, 0, 0, 2036, 0, 1094, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31786. /* 41932 */ 0, 0, 0, 0, 1226, 585, 585, 585, 585, 2362, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1534,
  31787. /* 41954 */ 585, 585, 585, 585, 2585, 0, 1826, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31788. /* 41975 */ 561, 2271, 585, 585, 585, 2710, 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 540, 540, 540, 540,
  31789. /* 41995 */ 1814, 540, 540, 540, 540, 1820, 540, 540, 540, 1360, 0, 0, 0, 0, 2744, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31790. /* 42021 */ 1649, 0, 0, 0, 0, 585, 585, 585, 585, 2924, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1937,
  31791. /* 42043 */ 585, 585, 585, 585, 561, 561, 3338, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1857,
  31792. /* 42064 */ 561, 561, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 3385, 0, 0, 0, 0, 0, 0, 1628, 1629, 1630, 0, 0, 0, 0, 0, 0,
  31793. /* 42093 */ 0, 0, 1159168, 362, 0, 0, 0, 0, 0, 0, 3402, 540, 540, 540, 561, 561, 561, 3407, 561, 561, 561, 561, 3411,
  31794. /* 42116 */ 561, 561, 561, 561, 1391, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1414, 561, 561, 561, 561,
  31795. /* 42137 */ 561, 561, 3417, 561, 561, 561, 585, 585, 585, 3422, 585, 585, 585, 585, 3426, 585, 585, 585, 585, 585,
  31796. /* 42157 */ 2375, 2376, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1476, 585, 585, 585, 585, 585, 585, 585, 585,
  31797. /* 42177 */ 585, 585, 3432, 585, 585, 585, 561, 540, 561, 585, 0, 0, 0, 0, 0, 0, 1644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 661,
  31798. /* 42204 */ 0, 661, 0, 0, 0, 0, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 3446, 0, 0, 0, 540, 540, 540, 3392, 540, 540, 540, 540,
  31799. /* 42231 */ 3396, 540, 540, 540, 540, 540, 540, 540, 3039, 540, 540, 540, 540, 540, 3045, 540, 540, 540, 540, 3455,
  31800. /* 42251 */ 540, 540, 540, 3459, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 2626, 561, 561, 561, 561, 561, 561,
  31801. /* 42272 */ 2633, 561, 561, 561, 561, 3470, 561, 561, 561, 3474, 561, 561, 561, 561, 561, 585, 585, 585, 585, 585,
  31802. /* 42292 */ 585, 585, 3111, 585, 585, 585, 585, 585, 585, 3485, 585, 585, 585, 3489, 585, 585, 585, 585, 585, 561, 0,
  31803. /* 42313 */ 0, 0, 0, 0, 540, 540, 540, 540, 540, 540, 3603, 540, 3604, 540, 540, 540, 561, 561, 585, 585, 0, 540, 561,
  31804. /* 42336 */ 585, 3677, 3678, 3679, 3680, 0, 540, 561, 585, 585, 585, 585, 585, 1079, 0, 1562, 0, 0, 0, 1568, 0, 0, 0,
  31805. /* 42359 */ 0, 0, 1256, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 300, 300, 0, 0, 0, 0, 386, 0, 0, 0, 390, 386, 0, 0, 0, 0, 0, 0,
  31806. /* 42390 */ 0, 0, 0, 0, 1174, 0, 0, 0, 0, 0, 0, 0, 0, 402, 0, 344, 0, 69632, 73728, 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0,
  31807. /* 42419 */ 1201, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 357, 0, 0, 0, 0, 521, 521, 521, 521, 0, 0, 0, 0, 0, 0, 0, 0, 521,
  31808. /* 42449 */ 521, 521, 521, 521, 521, 521, 553, 576, 553, 576, 553, 553, 576, 553, 600, 576, 576, 576, 576, 576, 576,
  31809. /* 42470 */ 576, 600, 600, 600, 553, 600, 600, 600, 600, 600, 576, 576, 617, 622, 600, 622, 628, 1, 12290, 3, 78112,
  31810. /* 42491 */ 561, 561, 561, 979, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2927, 585, 585, 585,
  31811. /* 42512 */ 585, 585, 585, 0, 0, 0, 540, 1061, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 3238, 561,
  31812. /* 42534 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 1433, 561, 561, 561, 561, 561, 1107, 0, 0, 0, 0, 1112, 0, 0,
  31813. /* 42557 */ 0, 0, 0, 0, 0, 0, 0, 0, 1190, 0, 0, 0, 0, 0, 561, 561, 561, 1389, 561, 561, 561, 561, 561, 561, 561, 561,
  31814. /* 42583 */ 561, 561, 561, 561, 2308, 2309, 561, 561, 561, 1403, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31815. /* 42603 */ 561, 561, 561, 561, 2296, 2297, 1440, 561, 561, 561, 561, 561, 561, 561, 26027, 1360, 987, 585, 585, 585,
  31816. /* 42623 */ 585, 585, 585, 585, 2947, 540, 585, 585, 561, 540, 540, 561, 561, 1574, 0, 0, 0, 1580, 0, 0, 0, 0, 0, 0,
  31817. /* 42647 */ 0, 0, 0, 0, 0, 1664, 0, 0, 0, 0, 1606, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1620, 0, 0, 0, 0, 1216, 0,
  31818. /* 42678 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2110, 0, 0, 0, 0, 561, 561, 561, 1877, 561, 561, 561, 561, 561, 561, 561,
  31819. /* 42704 */ 561, 561, 561, 561, 561, 2322, 0, 0, 0, 2052, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2155, 0, 2116,
  31820. /* 42732 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1676, 0, 2241, 0, 0, 561, 561, 561, 561, 561, 561, 561, 561,
  31821. /* 42759 */ 561, 561, 561, 561, 561, 2295, 561, 561, 561, 561, 2274, 561, 561, 561, 561, 2278, 561, 2280, 561, 561,
  31822. /* 42779 */ 561, 561, 561, 561, 1897, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1397, 561, 561, 561, 561, 561, 561,
  31823. /* 42800 */ 2359, 585, 585, 585, 585, 2363, 585, 2365, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3123, 585, 3125,
  31824. /* 42820 */ 585, 585, 585, 585, 0, 0, 0, 2500, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2494, 2495, 0, 0, 561, 2622, 561,
  31825. /* 42847 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2607, 561, 0, 3021, 0, 540, 540, 540,
  31826. /* 42868 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2533, 540, 0, 0, 0, 0, 3176, 3382, 0, 0, 3384, 0, 0, 0,
  31827. /* 42892 */ 0, 0, 0, 0, 728, 0, 0, 0, 0, 0, 0, 0, 0, 1115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 3391, 540, 540, 3393, 540,
  31828. /* 42921 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 1785, 540, 540, 540, 1790, 540, 0, 0, 0, 0, 3176, 0, 3443, 0,
  31829. /* 42944 */ 0, 0, 0, 0, 3449, 540, 540, 540, 540, 540, 1782, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31830. /* 42966 */ 2832, 540, 540, 540, 540, 864, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 912,
  31831. /* 42987 */ 1095, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2447, 0, 0, 1624, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31832. /* 43019 */ 0, 2060, 0, 0, 1827, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2620, 345,
  31833. /* 43041 */ 345, 347, 345, 0, 0, 345, 0, 345, 0, 0, 0, 0, 346, 0, 0, 0, 0, 0, 3310, 0, 0, 3312, 0, 0, 0, 0, 0, 0, 540,
  31834. /* 43070 */ 585, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 561, 3410, 561, 561, 561, 561, 561, 0, 0,
  31835. /* 43092 */ 0, 345, 345, 347, 345, 345, 345, 345, 345, 345, 512, 345, 345, 345, 345, 345, 345, 345, 345, 345, 345,
  31836. /* 43113 */ 345, 345, 345, 345, 345, 345, 554, 577, 554, 577, 554, 554, 577, 554, 601, 577, 577, 577, 577, 577, 577,
  31837. /* 43134 */ 577, 601, 601, 601, 554, 601, 601, 601, 601, 601, 577, 577, 554, 577, 601, 577, 601, 1, 12290, 3, 78112,
  31838. /* 43155 */ 0, 722, 0, 724, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2508, 0, 0, 0, 0, 739, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31839. /* 43187 */ 0, 0, 0, 0, 1690, 0, 0, 0, 811, 0, 0, 810, 0, 0, 0, 0, 0, 755, 0, 0, 819, 0, 0, 0, 0, 1269, 0, 0, 0, 0, 0,
  31840. /* 43218 */ 0, 0, 1181, 540, 540, 540, 540, 540, 1797, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3464,
  31841. /* 43239 */ 561, 561, 561, 561, 540, 540, 872, 540, 540, 540, 540, 890, 892, 540, 540, 903, 540, 540, 540, 540, 540,
  31842. /* 43260 */ 540, 2175, 540, 2177, 540, 540, 540, 540, 540, 540, 2185, 561, 561, 918, 924, 561, 561, 561, 561, 942,
  31843. /* 43280 */ 561, 561, 561, 561, 561, 962, 964, 561, 561, 975, 561, 561, 561, 561, 0, 585, 585, 991, 997, 585, 585,
  31844. /* 43301 */ 585, 585, 585, 585, 585, 3271, 585, 585, 585, 585, 585, 585, 3277, 585, 1015, 585, 585, 585, 585, 585,
  31845. /* 43321 */ 1035, 1037, 585, 585, 1048, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 540, 540, 3650, 3651, 540, 540, 0, 0,
  31846. /* 43344 */ 0, 540, 991, 585, 561, 854, 892, 540, 903, 540, 924, 964, 561, 975, 0, 0, 0, 1151, 0, 1153, 0, 1155, 0, 0,
  31847. /* 43368 */ 0, 0, 0, 0, 0, 0, 713, 0, 0, 0, 0, 0, 0, 0, 0, 1181, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1706, 0, 0,
  31848. /* 43401 */ 1198, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1731, 0, 1212, 1213, 0, 0, 0, 0, 0, 1218, 0, 0, 0, 0, 0,
  31849. /* 43431 */ 0, 0, 0, 729, 0, 0, 0, 0, 0, 0, 0, 540, 540, 1307, 1309, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31850. /* 43456 */ 540, 540, 1316, 540, 540, 1319, 540, 540, 1343, 540, 540, 540, 540, 540, 540, 540, 540, 1354, 1355, 540,
  31851. /* 43476 */ 540, 540, 540, 540, 1813, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1360, 1360, 914, 561, 561, 561,
  31852. /* 43496 */ 1366, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 26027, 1921, 585, 585, 585, 585, 561, 561, 1420,
  31853. /* 43516 */ 561, 561, 561, 561, 561, 561, 561, 1434, 561, 561, 561, 561, 561, 561, 3342, 561, 561, 561, 561, 561, 561,
  31854. /* 43537 */ 561, 561, 561, 3080, 561, 561, 561, 561, 561, 561, 561, 561, 2319, 561, 561, 561, 561, 0, 0, 0, 561, 561,
  31855. /* 43559 */ 561, 1445, 1446, 561, 561, 561, 26027, 1360, 987, 585, 585, 585, 1457, 585, 585, 585, 585, 585, 2403, 585,
  31856. /* 43579 */ 585, 585, 585, 585, 561, 2409, 585, 2411, 2412, 585, 1487, 1489, 585, 585, 585, 585, 585, 585, 585, 585,
  31857. /* 43599 */ 585, 585, 585, 585, 585, 585, 3366, 585, 585, 585, 585, 1525, 585, 585, 585, 585, 585, 585, 585, 585,
  31858. /* 43619 */ 1536, 1537, 585, 585, 585, 585, 585, 585, 3434, 585, 561, 540, 561, 585, 0, 0, 0, 3439, 585, 1542, 0, 540,
  31859. /* 43641 */ 585, 585, 561, 540, 1547, 540, 540, 1550, 561, 1551, 561, 561, 561, 561, 1895, 561, 561, 561, 1900, 561,
  31860. /* 43661 */ 561, 561, 561, 561, 561, 561, 0, 585, 585, 988, 585, 585, 585, 585, 585, 1554, 585, 1555, 585, 585, 1558,
  31861. /* 43682 */ 1079, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2069, 0, 0, 0, 0, 2073, 0, 0, 1678, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31862. /* 43713 */ 0, 0, 2037, 0, 0, 0, 1694, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2072, 0, 0, 0, 1637, 0, 0, 0, 0, 0, 0,
  31863. /* 43744 */ 0, 0, 0, 0, 0, 0, 0, 0, 2051, 0, 0, 561, 561, 561, 561, 561, 561, 1833, 561, 561, 561, 561, 561, 561, 561,
  31864. /* 43769 */ 561, 26027, 1360, 987, 585, 585, 585, 585, 585, 561, 1908, 561, 561, 561, 561, 1914, 561, 561, 561, 26027,
  31865. /* 43789 */ 0, 585, 585, 585, 585, 585, 2334, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2938, 585, 585, 585,
  31866. /* 43810 */ 585, 585, 585, 585, 1927, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1055, 585, 561,
  31867. /* 43831 */ 585, 585, 585, 1994, 585, 585, 585, 585, 585, 585, 585, 585, 2002, 585, 585, 585, 585, 585, 585, 2711,
  31868. /* 43851 */ 561, 540, 585, 585, 561, 540, 540, 540, 540, 540, 540, 2217, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31869. /* 43872 */ 540, 1802, 540, 540, 540, 540, 540, 585, 2008, 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 540, 540,
  31870. /* 43893 */ 561, 561, 561, 561, 2261, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2891, 561, 561, 561, 561,
  31871. /* 43914 */ 0, 2076, 0, 0, 0, 0, 0, 0, 0, 0, 2084, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 266240, 0, 0, 0, 0, 65536, 0,
  31872. /* 43941 */ 2088, 0, 0, 2090, 0, 0, 0, 0, 0, 0, 0, 2098, 0, 0, 0, 0, 0, 0, 1725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 643, 0, 0,
  31873. /* 43972 */ 0, 0, 0, 0, 0, 0, 2146, 0, 0, 0, 2146, 0, 0, 2151, 2152, 0, 0, 0, 0, 0, 0, 0, 274432, 274432, 274432, 0,
  31874. /* 43998 */ 274432, 274432, 274432, 274432, 274432, 2156, 0, 0, 0, 0, 0, 0, 0, 2162, 540, 540, 540, 540, 540, 2168,
  31875. /* 44018 */ 540, 540, 540, 540, 2538, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1821, 540, 540,
  31876. /* 44038 */ 1360, 540, 2200, 540, 2203, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2209, 540, 540, 540, 540,
  31877. /* 44058 */ 2578, 540, 540, 540, 540, 540, 540, 540, 540, 0, 2584, 0, 0, 0, 0, 799, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31878. /* 44085 */ 0, 799, 0, 0, 0, 0, 0, 0, 0, 0, 2244, 561, 561, 561, 561, 561, 561, 2251, 561, 561, 561, 561, 561, 561,
  31879. /* 44109 */ 3351, 585, 585, 585, 585, 585, 585, 585, 3356, 585, 561, 561, 2300, 561, 561, 561, 561, 561, 561, 561,
  31880. /* 44129 */ 561, 561, 561, 561, 561, 561, 2323, 0, 0, 0, 2329, 585, 585, 585, 585, 585, 585, 2336, 585, 585, 585, 585,
  31881. /* 44151 */ 585, 585, 585, 1470, 585, 585, 585, 585, 1480, 585, 585, 585, 585, 585, 2360, 585, 585, 585, 585, 585,
  31882. /* 44171 */ 585, 2366, 585, 2368, 585, 2371, 585, 585, 585, 585, 585, 585, 3546, 0, 0, 3549, 3550, 0, 0, 0, 0, 0, 0,
  31883. /* 44194 */ 303, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2912256, 0, 3207168, 2465792, 0, 0, 2385, 585, 585, 585, 585, 585, 585,
  31884. /* 44218 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 1989, 2472, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2480, 0, 0, 0, 0, 0,
  31885. /* 44244 */ 0, 0, 286720, 286720, 0, 286720, 286720, 1, 12290, 3, 0, 0, 0, 0, 0, 2514, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31886. /* 44269 */ 2522, 0, 0, 0, 0, 1575, 0, 0, 0, 0, 0, 1581, 0, 0, 0, 0, 0, 0, 0, 69632, 73728, 172032, 0, 0, 0, 0, 65536,
  31887. /* 44296 */ 0, 561, 561, 2596, 561, 561, 561, 561, 561, 2601, 561, 561, 561, 561, 561, 561, 561, 0, 585, 585, 992,
  31888. /* 44317 */ 585, 585, 585, 585, 585, 585, 2681, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  31889. /* 44338 */ 1956, 585, 2719, 561, 561, 561, 2721, 585, 585, 585, 2723, 2724, 0, 0, 0, 0, 0, 0, 0, 2801, 0, 0, 0, 540,
  31890. /* 44362 */ 2805, 540, 540, 540, 2742, 0, 2743, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2100, 0, 0, 0, 0, 2758, 0, 0,
  31891. /* 44390 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2128, 0, 0, 540, 2809, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31892. /* 44416 */ 540, 540, 540, 540, 2223, 2224, 540, 2846, 540, 540, 540, 540, 540, 0, 0, 561, 561, 561, 561, 2855, 561,
  31893. /* 44437 */ 2856, 561, 2894, 561, 561, 561, 561, 561, 0, 0, 585, 585, 585, 585, 2903, 585, 2904, 585, 2942, 585, 585,
  31894. /* 44458 */ 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 561, 561, 585, 585, 0, 0, 0, 3374, 0, 0, 3377, 0, 0, 0,
  31895. /* 44482 */ 540, 3024, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1771, 540, 540, 540, 540, 561, 561, 585,
  31896. /* 44503 */ 3105, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2369, 585, 585, 585, 585, 585, 3145,
  31897. /* 44523 */ 540, 585, 561, 540, 540, 561, 561, 585, 585, 0, 0, 0, 0, 0, 0, 2066, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 297,
  31898. /* 44550 */ 0, 0, 0, 0, 0, 0, 0, 3390, 540, 540, 540, 540, 3394, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2179,
  31899. /* 44573 */ 540, 540, 540, 540, 540, 540, 540, 3403, 540, 540, 3405, 561, 561, 561, 561, 3409, 561, 561, 561, 561,
  31900. /* 44593 */ 561, 561, 2277, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3082, 561, 3084, 561, 561, 561, 561, 561,
  31901. /* 44613 */ 561, 561, 3418, 561, 561, 3420, 585, 585, 585, 585, 3424, 585, 585, 585, 585, 585, 585, 585, 3591, 585,
  31902. /* 44633 */ 561, 0, 0, 0, 0, 0, 0, 0, 3176, 0, 3303, 0, 0, 0, 0, 3307, 0, 585, 585, 585, 585, 585, 3433, 585, 585,
  31903. /* 44658 */ 561, 540, 561, 585, 0, 0, 0, 0, 0, 0, 2137, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1129, 0, 0, 0, 0, 0, 0, 0, 3500, 0,
  31904. /* 44688 */ 3502, 0, 0, 0, 0, 0, 540, 540, 540, 540, 540, 3511, 540, 540, 540, 540, 2812, 540, 2815, 540, 540, 540,
  31905. /* 44710 */ 540, 2820, 540, 540, 540, 2823, 540, 540, 540, 540, 3631, 540, 561, 561, 561, 561, 561, 3637, 561, 585,
  31906. /* 44730 */ 585, 585, 585, 585, 1079, 0, 0, 0, 1564, 0, 0, 0, 1570, 0, 585, 585, 3643, 585, 561, 3645, 0, 3647, 0, 0,
  31907. /* 44754 */ 540, 540, 540, 540, 540, 540, 540, 1286, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3208, 540, 540,
  31908. /* 44775 */ 540, 540, 540, 365, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2496, 398, 0, 0, 0, 0, 0, 365, 373, 401,
  31909. /* 44804 */ 0, 0, 0, 0, 0, 365, 0, 0, 393, 0, 0, 0, 0, 348, 0, 0, 365, 0, 393, 0, 406, 408, 0, 0, 365, 373, 0, 69632,
  31910. /* 44832 */ 73728, 0, 0, 0, 0, 424, 65536, 0, 0, 0, 0, 1596, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 0, 0, 0, 424,
  31911. /* 44861 */ 424, 0, 424, 0, 408, 424, 447, 455, 0, 0, 0, 0, 0, 0, 0, 777, 0, 0, 0, 0, 0, 0, 0, 644, 0, 406, 0, 496,
  31912. /* 44889 */ 496, 0, 496, 496, 496, 496, 496, 496, 496, 496, 522, 522, 522, 522, 455, 455, 455, 530, 455, 531, 455,
  31913. /* 44910 */ 455, 522, 536, 522, 522, 522, 522, 538, 555, 578, 555, 578, 555, 555, 578, 555, 602, 578, 578, 578, 608,
  31914. /* 44931 */ 608, 608, 578, 602, 602, 602, 555, 602, 602, 602, 602, 602, 578, 578, 618, 623, 602, 623, 629, 1, 12290,
  31915. /* 44952 */ 3, 78112, 643, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2769, 0, 0, 0, 694, 0, 0, 0, 0, 0, 362, 362,
  31916. /* 44982 */ 362, 0, 0, 0, 0, 0, 0, 2440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1260, 0, 0, 0, 0, 0, 0, 0, 0, 805, 0, 0, 0, 0, 0,
  31917. /* 45014 */ 0, 0, 0, 0, 0, 0, 0, 0, 2142, 2143, 0, 540, 540, 540, 878, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31918. /* 45038 */ 540, 540, 540, 1332, 540, 540, 540, 561, 561, 919, 561, 561, 561, 561, 561, 561, 948, 950, 561, 561, 561,
  31919. /* 45059 */ 561, 561, 561, 3575, 561, 3577, 561, 561, 561, 585, 585, 585, 585, 0, 0, 1563, 0, 0, 0, 0, 0, 1569, 0,
  31920. /* 45082 */ 585, 1021, 1023, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 561, 3496, 0, 3497, 0, 0, 0,
  31921. /* 45104 */ 0, 0, 540, 992, 585, 561, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 3341, 561, 561, 561, 561, 561,
  31922. /* 45126 */ 561, 561, 561, 561, 561, 3579, 561, 585, 585, 585, 585, 0, 0, 0, 1098, 1230, 0, 0, 0, 0, 0, 0, 1237, 0, 0,
  31923. /* 45151 */ 0, 0, 0, 0, 2452, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2764, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1242, 0, 0, 0, 0, 0, 0, 0,
  31924. /* 45183 */ 0, 0, 0, 1242, 1251, 540, 540, 1280, 540, 540, 540, 1284, 540, 540, 1295, 540, 540, 1299, 540, 540, 540,
  31925. /* 45204 */ 540, 540, 2229, 540, 2231, 540, 540, 540, 540, 540, 540, 540, 0, 0, 561, 561, 561, 561, 561, 561, 561,
  31926. /* 45225 */ 561, 561, 561, 561, 561, 1840, 561, 561, 1360, 914, 561, 561, 561, 561, 561, 561, 1369, 561, 561, 561,
  31927. /* 45245 */ 1373, 561, 561, 1384, 561, 561, 1388, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31928. /* 45265 */ 2324, 0, 0, 561, 561, 1405, 561, 561, 561, 1409, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3612, 3613,
  31929. /* 45286 */ 561, 585, 585, 585, 585, 585, 1460, 585, 585, 585, 1464, 585, 585, 1475, 585, 585, 1479, 585, 585, 585,
  31930. /* 45306 */ 585, 585, 585, 1032, 585, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 3625, 0, 540, 0, 1623, 0, 0,
  31931. /* 45330 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1636, 0, 0, 0, 0, 1626, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2058, 2059, 0,
  31932. /* 45360 */ 2061, 2062, 1638, 0, 0, 0, 1642, 0, 0, 0, 1646, 0, 0, 0, 1650, 0, 0, 0, 0, 0, 1257, 0, 0, 0, 0, 0, 0, 0,
  31933. /* 45388 */ 0, 0, 0, 1145, 362, 362, 0, 0, 1148, 561, 1844, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31934. /* 45410 */ 561, 561, 561, 2635, 561, 561, 561, 561, 1862, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  31935. /* 45431 */ 2869, 561, 561, 2872, 2007, 585, 585, 585, 585, 561, 1752, 585, 1938, 1844, 540, 540, 540, 540, 561, 561,
  31936. /* 45451 */ 561, 561, 2275, 561, 561, 561, 561, 561, 561, 2281, 561, 2283, 561, 2286, 0, 0, 2056, 0, 0, 0, 0, 0, 0, 0,
  31937. /* 45475 */ 0, 0, 0, 0, 0, 0, 2154, 0, 0, 0, 0, 0, 2118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2520, 0, 0, 0, 0, 2132,
  31938. /* 45506 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2141, 0, 0, 0, 0, 0, 0, 2463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2491, 0, 0, 0, 0, 0,
  31939. /* 45538 */ 0, 0, 0, 0, 2158, 0, 0, 2161, 0, 540, 540, 2164, 540, 540, 540, 540, 540, 540, 540, 3053, 540, 3055, 540,
  31940. /* 45561 */ 540, 540, 540, 540, 540, 540, 540, 2232, 540, 540, 2235, 2236, 540, 540, 0, 540, 540, 540, 2227, 540, 540,
  31941. /* 45582 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 0, 2242, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 561,
  31942. /* 45604 */ 561, 2246, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 26027, 1360, 987, 585, 585, 1455, 585, 1458,
  31943. /* 45624 */ 561, 2312, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 0, 0, 0, 0, 0, 0, 585, 2650, 585, 585,
  31944. /* 45647 */ 585, 585, 585, 585, 561, 3547, 3548, 0, 0, 0, 0, 0, 0, 3554, 0, 585, 585, 2331, 585, 585, 585, 585, 585,
  31945. /* 45670 */ 585, 585, 585, 585, 585, 585, 585, 2381, 2382, 585, 585, 585, 585, 2387, 585, 585, 585, 585, 585, 585,
  31946. /* 45690 */ 585, 585, 585, 585, 585, 585, 2397, 540, 540, 2415, 2416, 561, 561, 2419, 2420, 585, 585, 2423, 2424, 0,
  31947. /* 45710 */ 1563, 0, 1569, 0, 1575, 0, 1581, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2752, 0, 0, 0, 0, 0, 0, 0, 2438, 0,
  31948. /* 45739 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1728, 0, 0, 0, 0, 0, 2513, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2519, 0, 0, 0, 0, 0,
  31949. /* 45771 */ 0, 2478, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1189, 0, 0, 0, 0, 0, 0, 540, 540, 540, 2565, 540, 540, 540, 540, 540,
  31950. /* 45798 */ 540, 540, 540, 540, 540, 540, 540, 1333, 540, 540, 540, 585, 585, 2682, 585, 585, 585, 585, 585, 585, 585,
  31951. /* 45819 */ 585, 585, 585, 2693, 585, 585, 585, 585, 585, 585, 3590, 585, 585, 561, 0, 3594, 0, 0, 0, 0, 0, 0, 2516,
  31952. /* 45842 */ 2466, 0, 0, 0, 0, 0, 2521, 0, 0, 2824, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31953. /* 45865 */ 540, 540, 2239, 561, 561, 561, 561, 2885, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1395,
  31954. /* 45885 */ 561, 561, 561, 561, 561, 561, 561, 561, 1430, 561, 561, 561, 561, 561, 561, 561, 561, 2866, 561, 561, 561,
  31955. /* 45906 */ 561, 561, 561, 561, 585, 585, 585, 585, 2933, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1985,
  31956. /* 45927 */ 585, 585, 585, 585, 0, 3177, 0, 0, 0, 3180, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1601, 1602, 0, 0, 0, 0, 0, 0, 0,
  31957. /* 45956 */ 0, 3194, 0, 0, 0, 0, 0, 0, 3197, 0, 3199, 540, 540, 540, 540, 880, 540, 885, 540, 891, 540, 894, 540, 540,
  31958. /* 45980 */ 908, 540, 540, 540, 540, 540, 3038, 540, 540, 540, 540, 540, 540, 540, 540, 3046, 540, 585, 3289, 3290, 0,
  31959. /* 46001 */ 0, 0, 0, 3294, 0, 0, 0, 0, 0, 0, 0, 0, 1099, 0, 0, 0, 0, 0, 0, 0, 540, 540, 3316, 540, 540, 540, 3319,
  31960. /* 46028 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1819, 540, 540, 540, 540, 1360, 561, 3337, 561, 561,
  31961. /* 46048 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2646, 561, 3415, 561, 561, 561, 561, 561, 585,
  31962. /* 46069 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3115, 3428, 585, 3430, 585, 585, 585, 585,
  31963. /* 46089 */ 585, 561, 540, 561, 585, 0, 0, 0, 0, 0, 0, 2503, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 336, 290, 0, 0, 0, 0,
  31964. /* 46117 */ 3555, 0, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3566, 540, 540, 561, 3064, 561, 561, 561, 561,
  31965. /* 46138 */ 561, 561, 561, 561, 561, 561, 561, 561, 2617, 561, 561, 561, 561, 561, 3608, 561, 3609, 561, 561, 561,
  31966. /* 46158 */ 561, 561, 561, 561, 585, 585, 3615, 585, 585, 585, 585, 585, 2658, 585, 585, 585, 585, 585, 585, 585, 585,
  31967. /* 46179 */ 585, 585, 1952, 585, 585, 585, 585, 585, 3616, 585, 585, 585, 585, 585, 585, 585, 561, 0, 0, 0, 0, 0, 0,
  31968. /* 46202 */ 540, 585, 585, 561, 540, 540, 540, 1067, 911, 561, 561, 561, 1072, 407, 353, 0, 0, 0, 0, 0, 69632, 73728,
  31969. /* 46224 */ 0, 0, 0, 0, 0, 65536, 0, 0, 0, 0, 1658, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 1146, 0, 0, 472, 483,
  31970. /* 46253 */ 472, 0, 0, 472, 0, 0, 0, 0, 0, 0, 0, 0, 523, 523, 527, 527, 527, 527, 472, 472, 472, 472, 472, 477, 472,
  31971. /* 46278 */ 472, 527, 523, 527, 527, 527, 527, 539, 556, 579, 556, 579, 556, 556, 579, 556, 603, 579, 579, 579, 579,
  31972. /* 46299 */ 579, 579, 579, 603, 603, 603, 556, 603, 603, 603, 603, 603, 579, 579, 619, 624, 603, 624, 630, 1, 12290,
  31973. /* 46320 */ 3, 78112, 0, 644, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2101, 0, 738, 0, 0, 0, 644, 738, 0, 744, 745,
  31974. /* 46349 */ 644, 0, 0, 0, 0, 0, 0, 0, 0, 793, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 802, 0, 807, 0, 0, 0, 0, 0, 0, 807, 0, 0,
  31975. /* 46381 */ 0, 0, 0, 644, 0, 0, 0, 802, 0, 807, 0, 793, 0, 822, 0, 0, 0, 665, 0, 0, 0, 0, 822, 0, 0, 0, 0, 0, 0, 0,
  31976. /* 46411 */ 1134592, 0, 362, 0, 0, 0, 1134592, 0, 0, 0, 793, 793, 0, 644, 0, 0, 793, 807, 845, 0, 540, 850, 540, 540,
  31977. /* 46435 */ 540, 540, 540, 2539, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3324, 540, 540, 540, 540, 540,
  31978. /* 46456 */ 869, 873, 879, 883, 540, 540, 540, 540, 540, 899, 540, 540, 540, 540, 540, 540, 540, 3206, 540, 540, 540,
  31979. /* 46477 */ 540, 540, 540, 540, 540, 540, 2205, 540, 540, 540, 540, 540, 540, 561, 561, 920, 561, 561, 561, 561, 939,
  31980. /* 46498 */ 943, 949, 561, 954, 561, 561, 561, 561, 585, 585, 585, 585, 0, 0, 0, 0, 0, 2728, 0, 0, 1016, 1022, 585,
  31981. /* 46521 */ 1027, 585, 585, 585, 585, 585, 1044, 585, 585, 585, 585, 585, 1058, 0, 0, 0, 540, 993, 585, 561, 540, 540,
  31982. /* 46543 */ 899, 540, 540, 561, 561, 971, 561, 561, 561, 561, 561, 0, 585, 585, 993, 585, 585, 585, 585, 1012, 1149,
  31983. /* 46564 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2784, 0, 0, 0, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1211,
  31984. /* 46596 */ 1227, 0, 0, 1099, 0, 0, 0, 1233, 0, 1235, 0, 0, 0, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  31985. /* 46626 */ 0, 0, 1243, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1249, 0, 0, 0, 0, 1670, 0, 0, 0, 0, 0, 0, 1674, 0, 0, 0, 0, 0,
  31986. /* 46657 */ 0, 743, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2753, 2754, 0, 1252, 1200, 0, 1233, 1255, 0, 1258, 0, 0, 0,
  31987. /* 46685 */ 0, 0, 1130, 0, 0, 0, 0, 0, 1597, 0, 0, 0, 1600, 0, 0, 1603, 0, 0, 0, 0, 0, 843, 0, 0, 0, 0, 0, 540, 540,
  31988. /* 46714 */ 540, 540, 540, 540, 540, 3320, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1801, 540, 540, 540, 1806,
  31989. /* 46734 */ 540, 540, 0, 1267, 0, 0, 0, 0, 0, 1267, 0, 0, 1149, 1267, 0, 1274, 540, 540, 540, 540, 1282, 540, 540,
  31990. /* 46757 */ 540, 1291, 540, 540, 540, 540, 540, 540, 540, 540, 2204, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31991. /* 46777 */ 2830, 540, 540, 540, 540, 540, 540, 540, 1279, 540, 540, 540, 540, 1285, 540, 540, 540, 540, 540, 540,
  31992. /* 46797 */ 540, 540, 540, 540, 2194, 540, 540, 540, 540, 540, 540, 1306, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  31993. /* 46818 */ 540, 1317, 540, 540, 540, 540, 540, 2567, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2545,
  31994. /* 46838 */ 540, 540, 540, 540, 1321, 540, 540, 540, 540, 540, 540, 540, 1327, 540, 540, 540, 1334, 1336, 540, 540,
  31995. /* 46858 */ 540, 540, 1310, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1335, 540, 540, 540, 1360,
  31996. /* 46878 */ 914, 1362, 561, 561, 561, 561, 1368, 561, 561, 561, 561, 1374, 561, 561, 561, 561, 1407, 561, 561, 561,
  31997. /* 46898 */ 561, 561, 561, 561, 561, 561, 561, 561, 2293, 561, 561, 561, 561, 561, 561, 1406, 561, 561, 561, 561,
  31998. /* 46918 */ 1411, 561, 561, 561, 561, 561, 561, 561, 561, 1852, 561, 561, 561, 561, 561, 561, 561, 561, 1866, 561,
  31999. /* 46938 */ 561, 561, 561, 561, 561, 561, 1418, 561, 561, 561, 1425, 1427, 561, 561, 561, 561, 561, 561, 561, 561,
  32000. /* 46958 */ 561, 561, 1865, 561, 561, 561, 561, 561, 561, 561, 561, 1883, 561, 561, 561, 561, 561, 561, 561, 1459,
  32001. /* 46978 */ 585, 585, 585, 585, 1465, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1533, 585, 585, 585, 585, 585,
  32002. /* 46999 */ 1486, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1497, 585, 585, 585, 585, 585, 585, 1034, 585,
  32003. /* 47019 */ 585, 585, 585, 1052, 585, 585, 585, 561, 1502, 585, 585, 585, 585, 585, 585, 585, 585, 1509, 585, 585,
  32004. /* 47039 */ 585, 1516, 1518, 585, 585, 585, 585, 585, 2685, 585, 585, 585, 585, 2689, 585, 585, 585, 2694, 585, 561,
  32005. /* 47059 */ 0, 1290, 1544, 1470, 1379, 540, 540, 540, 540, 540, 561, 561, 561, 561, 561, 3249, 561, 3251, 561, 561,
  32006. /* 47079 */ 561, 561, 561, 561, 561, 585, 3534, 585, 3535, 585, 585, 585, 3539, 585, 0, 1575, 0, 0, 0, 1581, 0, 0, 0,
  32007. /* 47102 */ 0, 0, 0, 0, 0, 0, 0, 1632, 0, 0, 0, 0, 0, 1592, 1593, 0, 0, 0, 0, 0, 1599, 0, 0, 0, 0, 0, 0, 0, 0, 1172,
  32008. /* 47132 */ 0, 0, 0, 0, 0, 0, 0, 0, 1639, 0, 0, 0, 0, 0, 0, 0, 1647, 1648, 0, 0, 0, 0, 0, 0, 0, 2387968, 0, 0, 0, 0,
  32009. /* 47162 */ 0, 0, 0, 0, 0, 2987, 0, 0, 0, 0, 0, 2990, 0, 1655, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2482, 0, 0,
  32010. /* 47193 */ 0, 1721, 0, 0, 0, 0, 0, 0, 0, 1718, 0, 0, 0, 0, 0, 0, 300, 300, 300, 300, 0, 300, 300, 300, 300, 300, 540,
  32011. /* 47220 */ 540, 540, 1747, 540, 540, 540, 540, 1753, 540, 540, 540, 540, 540, 540, 540, 540, 1817, 540, 540, 540,
  32012. /* 47240 */ 540, 540, 540, 1360, 540, 540, 540, 1764, 540, 540, 540, 540, 1768, 540, 540, 540, 540, 540, 540, 540,
  32013. /* 47260 */ 540, 2178, 540, 540, 540, 540, 540, 540, 540, 540, 1287, 1294, 540, 540, 540, 540, 540, 540, 540, 540,
  32014. /* 47280 */ 540, 1779, 540, 540, 1783, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2206, 2207, 540, 540, 540,
  32015. /* 47300 */ 540, 1809, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1360, 914, 561, 561, 561,
  32016. /* 47321 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 1379, 561, 0, 1074, 585, 585, 1050, 585, 78112, 1079, 0, 0,
  32017. /* 47342 */ 0, 0, 0, 0, 0, 1106, 0, 0, 0, 0, 0, 0, 1210, 0, 561, 1845, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32018. /* 47367 */ 561, 1856, 561, 561, 561, 561, 1423, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3253, 561,
  32019. /* 47387 */ 561, 561, 561, 585, 561, 1860, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 1871, 561, 561, 561, 561,
  32020. /* 47408 */ 1424, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 26027, 1920, 585, 585, 585, 585, 1876, 561,
  32021. /* 47428 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3244, 561, 561, 585, 2026, 585, 585,
  32022. /* 47449 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 286720, 0, 0, 0, 0, 2079, 2080, 0, 0, 2082, 2083, 0, 0, 0, 0,
  32023. /* 47479 */ 0, 0, 0, 3176, 0, 0, 0, 0, 0, 3306, 0, 0, 0, 0, 0, 0, 2105, 0, 0, 0, 0, 2108, 2109, 0, 0, 0, 0, 0, 0, 301,
  32024. /* 47509 */ 301, 301, 301, 0, 301, 301, 301, 301, 301, 2115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2796, 0, 0,
  32025. /* 47537 */ 0, 2147, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2781, 0, 0, 0, 0, 0, 2157, 0, 0, 0, 0, 0, 540, 540, 540, 540,
  32026. /* 47567 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 0, 540, 2225, 540, 540, 540, 540, 2230, 540,
  32027. /* 47588 */ 540, 540, 540, 540, 540, 540, 540, 0, 0, 0, 0, 1696, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2070, 0, 0, 0, 0, 0,
  32028. /* 47617 */ 2242, 0, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2618, 561, 561, 561, 561, 561,
  32029. /* 47638 */ 2259, 561, 561, 2263, 561, 561, 561, 2267, 561, 561, 561, 561, 561, 561, 3610, 561, 3611, 561, 561, 561,
  32030. /* 47658 */ 585, 585, 585, 585, 0, 0, 0, 2030, 0, 1082, 0, 0, 0, 2032, 585, 2344, 585, 585, 2348, 585, 585, 585, 2352,
  32031. /* 47681 */ 585, 585, 585, 585, 585, 585, 585, 1528, 585, 585, 585, 585, 585, 585, 1538, 585, 585, 585, 585, 2361,
  32032. /* 47701 */ 585, 585, 2364, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1935, 1936, 585, 585, 585, 585, 1943, 585,
  32033. /* 47721 */ 585, 2400, 585, 585, 585, 585, 585, 585, 585, 585, 561, 540, 585, 585, 561, 540, 2718, 540, 540, 0, 0, 0,
  32034. /* 47743 */ 2437, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2794, 0, 0, 0, 0, 2473, 0, 0, 0, 2477, 0, 0, 0, 0, 0, 0, 0, 0,
  32035. /* 47774 */ 0, 0, 1685, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2501, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2511, 0, 540, 540, 2525, 540,
  32036. /* 47803 */ 540, 540, 540, 540, 540, 540, 540, 540, 2532, 540, 540, 540, 540, 1324, 540, 540, 540, 540, 540, 540, 540,
  32037. /* 47824 */ 540, 540, 540, 540, 1330, 540, 540, 540, 540, 540, 540, 2550, 540, 540, 2552, 540, 2553, 540, 540, 540,
  32038. /* 47844 */ 540, 540, 540, 540, 540, 540, 2193, 540, 540, 2196, 540, 540, 540, 540, 2563, 540, 540, 540, 540, 540,
  32039. /* 47864 */ 540, 540, 540, 540, 540, 540, 540, 2574, 540, 540, 540, 540, 2827, 2828, 540, 540, 540, 540, 2831, 540,
  32040. /* 47884 */ 540, 540, 540, 540, 540, 540, 1751, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1351, 540, 540, 540, 540,
  32041. /* 47905 */ 540, 540, 0, 0, 0, 561, 561, 2587, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2264, 561, 561, 561,
  32042. /* 47927 */ 561, 2269, 561, 561, 561, 2594, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32043. /* 47948 */ 2871, 561, 561, 2609, 561, 561, 561, 2612, 561, 561, 2614, 561, 2615, 561, 561, 561, 561, 561, 929, 561,
  32044. /* 47968 */ 937, 561, 561, 561, 561, 561, 561, 561, 561, 2629, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2623,
  32045. /* 47989 */ 561, 561, 2627, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2290, 2291, 561, 561, 561, 561, 561, 561,
  32046. /* 48009 */ 561, 0, 2327, 585, 585, 585, 585, 585, 585, 585, 1507, 585, 585, 585, 585, 585, 585, 585, 585, 561, 540,
  32047. /* 48030 */ 585, 561, 3284, 540, 3286, 561, 561, 561, 561, 2638, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32048. /* 48050 */ 561, 561, 3099, 561, 561, 561, 0, 0, 2733, 2734, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3002, 0, 0, 0, 2785,
  32049. /* 48077 */ 0, 2787, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2432, 0, 0, 0, 0, 0, 0, 2800, 0, 0, 0, 0, 0, 0, 540, 540,
  32050. /* 48108 */ 540, 540, 540, 540, 540, 3217, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3042, 540, 3044, 540,
  32051. /* 48128 */ 540, 540, 540, 540, 540, 2848, 540, 540, 540, 0, 0, 561, 561, 561, 561, 561, 561, 561, 2318, 561, 561,
  32052. /* 48149 */ 561, 561, 561, 0, 0, 0, 561, 561, 2859, 561, 2862, 561, 561, 561, 561, 2867, 561, 561, 561, 2870, 561,
  32053. /* 48170 */ 561, 561, 561, 2302, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 940, 561, 561, 561, 561, 561,
  32054. /* 48191 */ 561, 561, 561, 1394, 561, 561, 561, 561, 561, 561, 561, 1402, 561, 561, 561, 2896, 561, 561, 561, 0, 0,
  32055. /* 48212 */ 585, 585, 585, 585, 585, 585, 585, 1529, 585, 585, 585, 585, 585, 585, 585, 585, 2661, 585, 585, 585, 585,
  32056. /* 48233 */ 585, 585, 585, 585, 585, 2907, 585, 2910, 585, 585, 585, 585, 2915, 585, 585, 585, 2918, 585, 585, 585,
  32057. /* 48253 */ 585, 585, 1527, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2367, 585, 585, 585, 585, 585, 585, 585,
  32058. /* 48274 */ 585, 2944, 585, 585, 585, 561, 540, 585, 585, 561, 540, 540, 561, 561, 585, 585, 3373, 0, 0, 0, 3375, 0,
  32059. /* 48296 */ 0, 2980, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2979, 2991, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  32060. /* 48328 */ 0, 3005, 0, 3006, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2989, 0, 561, 561, 561, 561, 3078, 561, 561,
  32061. /* 48355 */ 561, 561, 561, 561, 561, 561, 3086, 561, 561, 561, 561, 2315, 561, 561, 561, 561, 561, 561, 561, 561, 0,
  32062. /* 48376 */ 0, 2327, 0, 0, 0, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3273, 585, 585, 585, 585, 585, 585, 561,
  32063. /* 48398 */ 561, 585, 585, 585, 3107, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1969, 585, 585, 585, 585, 585,
  32064. /* 48419 */ 585, 585, 585, 585, 3119, 585, 585, 585, 585, 585, 585, 585, 585, 3127, 585, 585, 585, 585, 585, 1901,
  32065. /* 48439 */ 540, 585, 585, 561, 540, 540, 540, 540, 561, 561, 3065, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32066. /* 48460 */ 561, 3479, 585, 585, 585, 585, 585, 0, 3159, 0, 0, 0, 0, 0, 0, 0, 3165, 0, 0, 0, 0, 0, 0, 0, 3176, 0, 0,
  32067. /* 48487 */ 3304, 0, 0, 0, 0, 0, 0, 3191, 0, 0, 0, 0, 0, 0, 3195, 3196, 0, 0, 0, 0, 540, 540, 3601, 540, 3602, 540,
  32068. /* 48513 */ 540, 540, 540, 540, 540, 540, 540, 1752, 540, 540, 540, 540, 540, 540, 540, 540, 1349, 540, 540, 540, 540,
  32069. /* 48534 */ 540, 540, 540, 540, 1288, 540, 540, 540, 540, 540, 540, 540, 540, 1289, 540, 540, 540, 540, 540, 540, 540,
  32070. /* 48555 */ 540, 1290, 540, 540, 540, 540, 1300, 540, 540, 3279, 585, 585, 585, 585, 585, 585, 585, 561, 540, 585,
  32071. /* 48575 */ 561, 540, 540, 561, 561, 561, 561, 2611, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2304, 561,
  32072. /* 48596 */ 561, 561, 561, 561, 561, 561, 561, 561, 1853, 561, 561, 561, 561, 561, 561, 540, 540, 540, 540, 3317, 540,
  32073. /* 48617 */ 540, 540, 3321, 540, 540, 540, 540, 540, 540, 540, 540, 2192, 540, 540, 540, 540, 540, 540, 2198, 561,
  32074. /* 48637 */ 561, 561, 3339, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2628, 561, 561, 561, 561, 561,
  32075. /* 48658 */ 561, 561, 561, 2305, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3348, 561, 561, 561, 585, 585, 585, 585,
  32076. /* 48679 */ 585, 3353, 585, 585, 585, 3357, 561, 561, 3572, 561, 561, 561, 561, 561, 561, 561, 561, 3580, 585, 585,
  32077. /* 48699 */ 585, 3584, 3597, 0, 3598, 3599, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3605, 3606, 540, 540, 540,
  32078. /* 48719 */ 540, 2837, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 1803, 540, 540, 540, 540, 585, 585, 585,
  32079. /* 48740 */ 585, 585, 3619, 3620, 585, 561, 0, 0, 3623, 0, 0, 0, 540, 585, 585, 561, 540, 540, 895, 540, 540, 561,
  32080. /* 48762 */ 561, 967, 561, 561, 3671, 585, 3672, 0, 540, 561, 585, 0, 540, 561, 585, 0, 540, 561, 585, 585, 585, 585,
  32081. /* 48784 */ 585, 1079, 1559, 0, 0, 0, 1565, 0, 0, 0, 1571, 2033, 0, 0, 0, 0, 1577, 2035, 0, 0, 0, 0, 0, 0, 0, 1682, 0,
  32082. /* 48811 */ 1684, 0, 0, 0, 0, 0, 0, 0, 1712, 0, 0, 1715, 0, 0, 0, 0, 0, 355, 356, 0, 0, 0, 0, 0, 0, 0, 362, 0, 290, 0,
  32083. /* 48841 */ 0, 0, 0, 0, 0, 2762, 0, 0, 0, 0, 0, 0, 0, 2768, 0, 0, 0, 0, 389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3198,
  32084. /* 48873 */ 0, 540, 540, 473, 473, 487, 0, 0, 487, 356, 356, 356, 509, 356, 356, 356, 356, 473, 473, 580, 580, 580,
  32085. /* 48895 */ 580, 580, 580, 580, 604, 604, 604, 557, 604, 604, 604, 604, 604, 580, 580, 557, 580, 604, 580, 604, 1,
  32086. /* 48916 */ 12290, 3, 78112, 540, 870, 540, 540, 540, 540, 540, 540, 540, 540, 540, 904, 540, 540, 540, 540, 540, 540,
  32087. /* 48937 */ 2191, 540, 540, 540, 540, 2195, 540, 2197, 540, 540, 561, 561, 976, 561, 561, 561, 561, 0, 585, 585, 585,
  32088. /* 48958 */ 585, 585, 585, 585, 1013, 1197, 0, 0, 0, 0, 0, 0, 0, 1197, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 540, 540,
  32089. /* 48986 */ 540, 540, 540, 540, 540, 540, 1360, 914, 561, 561, 561, 561, 561, 561, 561, 561, 1371, 561, 561, 561,
  32090. /* 49006 */ 1380, 561, 561, 561, 561, 2639, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2644, 561, 561,
  32091. /* 49026 */ 561, 561, 585, 585, 585, 1462, 585, 585, 585, 1471, 585, 585, 585, 585, 585, 585, 585, 585, 1472, 585,
  32092. /* 49046 */ 1477, 585, 585, 1481, 585, 585, 1541, 561, 0, 1291, 585, 1471, 1380, 540, 540, 540, 540, 540, 561, 561,
  32093. /* 49066 */ 561, 561, 585, 585, 585, 585, 0, 0, 0, 0, 2727, 0, 0, 0, 0, 0, 1576, 0, 0, 0, 1582, 0, 0, 0, 0, 0, 0, 0,
  32094. /* 49094 */ 0, 0, 2737, 0, 0, 0, 0, 0, 2741, 0, 1607, 0, 0, 0, 0, 0, 0, 0, 1615, 1616, 0, 0, 0, 0, 0, 0, 303, 204800,
  32095. /* 49122 */ 204800, 0, 205103, 204800, 1, 12290, 3, 0, 1761, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  32096. /* 49142 */ 540, 540, 540, 1774, 1891, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32097. /* 49162 */ 3087, 561, 561, 561, 561, 1911, 561, 561, 561, 561, 561, 561, 26027, 0, 585, 585, 585, 585, 585, 585,
  32098. /* 49182 */ 1466, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2928, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  32099. /* 49203 */ 1947, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2001, 585, 585, 585, 585, 585, 585, 585,
  32100. /* 49223 */ 1960, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1973, 0, 0, 2243, 561, 561, 561, 561, 561,
  32101. /* 49244 */ 561, 561, 561, 561, 561, 561, 561, 561, 2634, 561, 561, 2328, 585, 585, 585, 585, 585, 585, 585, 585, 585,
  32102. /* 49265 */ 585, 585, 585, 585, 585, 585, 2384, 0, 0, 0, 0, 2425, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2085, 2086, 0, 0,
  32103. /* 49292 */ 0, 0, 2449, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3175, 0, 0, 0, 0, 561, 561, 561, 561, 561, 561,
  32104. /* 49320 */ 2590, 561, 561, 561, 561, 561, 561, 2289, 561, 561, 561, 561, 561, 561, 561, 561, 561, 2292, 561, 561,
  32105. /* 49340 */ 561, 561, 561, 561, 561, 561, 561, 2861, 561, 2863, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32106. /* 49360 */ 2877, 561, 561, 561, 561, 561, 561, 561, 561, 1899, 561, 561, 561, 561, 561, 1905, 561, 585, 585, 585,
  32107. /* 49380 */ 2909, 585, 2911, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1984, 585, 585, 585, 585, 585, 585,
  32108. /* 49400 */ 585, 3360, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1056, 585, 561, 0, 3556, 540,
  32109. /* 49421 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 3567, 540, 561, 561, 561, 561, 2876, 561, 561, 561, 561,
  32110. /* 49442 */ 561, 561, 561, 561, 561, 561, 561, 26027, 0, 585, 585, 585, 585, 561, 561, 561, 561, 3656, 561, 585, 585,
  32111. /* 49463 */ 585, 585, 3660, 585, 0, 0, 0, 0, 0, 0, 2775, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2124, 0, 0, 0, 0, 0, 0, 0, 0, 357,
  32112. /* 49493 */ 0, 0, 0, 0, 0, 0, 362, 0, 290, 0, 0, 0, 0, 0, 0, 2790, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1147354, 0, 0, 0, 0,
  32113. /* 49524 */ 0, 0, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2509, 0, 0, 357, 0, 367, 0, 0, 367, 0, 0, 0, 0, 0, 0,
  32114. /* 49556 */ 0, 0, 0, 0, 0, 0, 0, 2457, 0, 0, 581, 581, 581, 581, 581, 581, 581, 605, 605, 605, 558, 605, 605, 605,
  32115. /* 49580 */ 605, 605, 581, 581, 558, 581, 605, 581, 605, 1, 12290, 3, 78112, 865, 540, 540, 540, 540, 540, 540, 540,
  32116. /* 49601 */ 540, 540, 540, 540, 540, 540, 540, 540, 2575, 1385, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561,
  32117. /* 49622 */ 561, 561, 561, 561, 3243, 561, 1775, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
  32118. /* 49643 */ 540, 3047, 585, 585, 585, 585, 1961, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2380, 585,
  32119. /* 49663 */ 585, 585, 585, 2756, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3315, 0, 2981, 0, 0, 0, 0, 0, 0, 0, 0,
  32120. /* 49693 */ 0, 0, 0, 0, 0, 0, 3188, 0, 3298, 0, 3299, 0, 0, 0, 0, 3176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3388, 0, 0, 0, 0,
  32121. /* 49723 */ 358, 359, 360, 361, 0, 0, 362, 0, 290, 0, 0, 0, 0, 0, 0, 2973, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 362,
  32122. /* 49751 */ 702, 0, 0, 0, 0, 359, 0, 358, 0, 0, 0, 69632, 73728, 0, 0, 0, 0, 425, 65536, 0, 0, 0, 0, 1710, 1711, 0, 0,
  32123. /* 49778 */ 0, 1714, 0, 0, 0, 0, 0, 1718, 425, 425, 0, 425, 0, 359, 425, 0, 456, 0, 0, 0, 0, 0, 0, 0, 1102, 0, 0, 0,
  32124. /* 49806 */ 0, 1263, 1264, 0, 0, 0, 0, 0, 497, 497, 0, 504, 504, 504, 504, 510, 511, 504, 504, 524, 524, 524, 524,
  32125. /* 49829 */ 456, 456, 456, 456, 456, 456, 456, 456, 524, 524, 524, 524, 524, 524, 524, 559, 582, 559, 582, 559, 559,
  32126. /* 49850 */ 582, 559, 606, 582, 582, 582, 582, 582, 582, 582, 606, 606, 606, 559, 606, 606, 606, 606, 606, 582, 582,
  32127. /* 49871 */ 620, 625, 606, 625, 631, 1, 12290, 3, 78112, 0, 0, 0, 540, 585, 585, 561, 540, 540, 900, 540, 540, 561,
  32128. /* 49893 */ 561, 972, 561, 561, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 585, 585, 1934, 585, 585, 585, 585,
  32129. /* 49914 */ 585, 585, 585, 0, 0, 2104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2740, 0, 0, 0, 0, 0, 561, 2245, 561,
  32130. /* 49942 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3533, 585, 585, 585, 585, 585, 585, 585, 585, 585, 3494,
  32131. /* 49963 */ 561, 0, 0, 0, 0, 0, 0, 585, 2330, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 1482,
  32132. /* 49986 */ 585, 585, 540, 2549, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2237, 0, 540,
  32133. /* 50007 */ 540, 2577, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 0, 0, 0, 0, 0, 1611, 0, 0, 1614, 0, 0, 0, 0,
  32134. /* 50032 */ 0, 0, 0, 443, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2891776, 0, 0, 0, 0, 0, 2392064, 583, 583, 583, 583, 583, 583,
  32135. /* 50058 */ 583, 607, 607, 607, 560, 607, 607, 607, 607, 607, 583, 583, 560, 583, 607, 583, 607, 1, 12290, 3, 78112,
  32136. /* 50079 */ 705, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155648, 866, 540, 540, 540, 540, 540, 540, 540, 540,
  32137. /* 50105 */ 540, 540, 540, 540, 540, 540, 540, 3224, 1136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 362, 362, 0, 0, 0, 0, 0,
  32138. /* 50131 */ 1659, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 780, 0, 0, 0, 0, 786, 561, 585, 585, 585, 585, 585, 1079, 1560, 0, 0,
  32139. /* 50158 */ 0, 1566, 0, 0, 0, 1572, 0, 0, 0, 1578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3313, 0, 0, 540, 2199, 540,
  32140. /* 50186 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2547, 540, 2535, 540, 540, 540, 540,
  32141. /* 50207 */ 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 540, 2822, 540, 561, 561, 561, 2597, 561, 561, 561, 561,
  32142. /* 50228 */ 561, 561, 561, 561, 561, 561, 561, 561, 2317, 561, 561, 2320, 2321, 561, 561, 0, 0, 0, 0, 0, 0, 647, 0, 0,
  32143. /* 50252 */ 0, 0, 0, 0, 743, 540, 540, 540, 540, 540, 540, 540, 3331, 540, 540, 561, 561, 561, 561, 561, 561, 561,
  32144. /* 50274 */ 561, 561, 561, 3072, 561, 561, 561, 0, 0, 0, 540, 585, 585, 561, 1064, 540, 540, 905, 540, 1069, 561, 561,
  32145. /* 50296 */ 977, 561, 561, 561, 561, 0, 585, 585, 585, 585, 585, 585, 585, 585, 1951, 585, 585, 585, 585, 585, 585,
  32146. /* 50317 */ 585, 0, 0, 1594, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2767, 0, 0, 561, 561, 1846, 561, 561, 561, 561,
  32147. /* 50344 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 2645, 561, 561, 585, 585, 585, 1977, 585, 585, 585, 585, 585,
  32148. /* 50365 */ 585, 585, 585, 585, 585, 585, 585, 2692, 585, 585, 585, 540, 540, 540, 2188, 540, 2190, 540, 540, 540,
  32149. /* 50385 */ 540, 540, 540, 540, 540, 540, 540, 561, 561, 561, 3334, 561, 561, 0, 0, 0, 561, 561, 561, 2247, 561, 561,
  32150. /* 50407 */ 561, 561, 561, 561, 561, 561, 561, 2613, 561, 561, 561, 561, 561, 561, 561, 2619, 561, 561, 2273, 561,
  32151. /* 50427 */ 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 561, 3242, 561, 561, 0, 585, 585, 585, 2332,
  32152. /* 50448 */ 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2408, 540, 585, 585, 561, 561, 2647, 0, 0, 0, 0, 0,
  32153. /* 50471 */ 0, 585, 585, 585, 585, 585, 585, 585, 585, 2687, 585, 585, 2691, 585, 585, 585, 585, 585, 585, 585, 585,
  32154. /* 50492 */ 2684, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 585, 2916, 585, 585, 585, 585, 561, 561, 585, 585,
  32155. /* 50513 */ 585, 585, 585, 3109, 585, 585, 585, 585, 585, 585, 585, 585, 2702, 585, 585, 585, 585, 585, 585, 585, 0,
  32156. /* 50534 */ 1134592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 225706, 0, 0, 1134592, 0, 0, 0, 1134592, 1134592, 0, 0,
  32157. /* 50560 */ 1134592, 0, 0, 1134592, 0, 1134592, 0, 0, 0, 1134592, 1135005, 1135005, 0, 0, 0, 0, 0, 1135005, 0,
  32158. /* 50579 */ 1134592, 1134592, 0, 0, 0, 0, 1135202, 1135202, 1135202, 1135202, 1134592, 1135202, 1135202, 1135202,
  32159. /* 50593 */ 1135202, 1135202, 0, 1134592, 1134592, 1134592, 1134592, 1135202, 1134592, 1135202, 1, 12290, 3, 0, 0, 0,
  32160. /* 50609 */ 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 1138688, 0, 0, 0, 0, 0, 1670, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  32161. /* 50637 */ 2125824, 2126738, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824,
  32162. /* 50648 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 2125824, 2125824, 2125824, 2125824,
  32163. /* 50661 */ 2424832, 2433024, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0, 987,
  32164. /* 50674 */ 2125824, 2125824, 2125824, 2125824, 2424832, 1147354, 1147354, 1147354, 1147354, 1147354, 1147354,
  32165. /* 50685 */ 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 1147354, 457, 457,
  32166. /* 50697 */ 1147354, 457, 457, 457, 457, 457, 457, 457, 457, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405,
  32167. /* 50712 */ 1147405, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405, 1147405,
  32168. /* 50723 */ 1147405, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2792, 0, 0, 0, 0, 0, 0, 457, 0, 0, 0, 1147354, 1147354, 1147354,
  32169. /* 50747 */ 1147405, 1147405, 1147354, 1147405, 1147405, 1, 12290, 3, 0, 0, 0, 0, 2042, 0, 0, 2045, 2046, 0, 0, 0,
  32170. /* 50767 */ 2050, 0, 0, 0, 0, 0, 680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1221, 0, 0, 0, 0, 0, 0, 1142784, 0, 2179072,
  32171. /* 50794 */ 2125824, 2125824, 2125824, 2179072, 2179072, 2179072, 2179072, 2179072, 2125824, 2125824, 2125824,
  32172. /* 50805 */ 2125824, 2125824, 2125824, 2125824, 3137536, 2125824, 2940928, 2940928, 2940928, 0, 0, 0, 0, 0, 0, 305,
  32173. /* 50821 */ 440, 448, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 462, 1159168, 0, 0,
  32174. /* 50842 */ 1159168, 0, 1159168, 1159168, 0, 1159168, 0, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168,
  32175. /* 50855 */ 1159168, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2802, 0, 540, 540, 540, 540, 540, 1159168, 1159168, 0, 1159168,
  32176. /* 50876 */ 1159168, 0, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 1159168,
  32177. /* 50888 */ 1159168, 1159168, 1159168, 1159168, 1159168, 1159168, 0, 1159168, 1159168, 0, 1159168, 1159168, 1159168,
  32178. /* 50901 */ 1159168, 1159168, 1159168, 1159168, 1159168, 1, 12290, 3, 0, 0, 0, 0, 2053, 0, 2054, 0, 0, 0, 0, 0, 0, 0,
  32179. /* 50923 */ 0, 0, 799, 0, 799, 0, 0, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1163264, 0, 0, 0, 0, 0,
  32180. /* 50951 */ 155648, 155648, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 913, 2125824, 2125824, 2125824,
  32181. /* 50974 */ 2125824, 2424832, 2433024, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 2125824, 0, 0,
  32182. /* 50987 */ 1452, 2125824, 2125824, 2125824, 2125824, 2424832, 106496, 0, 106496, 106496, 0, 106496, 106496, 106496,
  32183. /* 51001 */ 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 0,
  32184. /* 51015 */ 0, 106496, 0, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 106496, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  32185. /* 51035 */ 0, 2183168, 0, 0, 0, 0, 0, 0, 0, 0, 2134016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2782, 2783, 0, 0, 0,
  32186. /* 51064 */ 0, 3117056, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 163840, 0, 0, 0, 0, 3043328, 0, 3149824, 2936832, 0,
  32187. /* 51088 */ 2760704, 0, 0, 0, 0, 0, 2953216, 0, 0, 2826240, 2875392, 0, 0, 0, 0, 0, 0, 2834432, 0, 3227648, 2568192,
  32188. /* 51109 */ 0, 0, 0, 0, 2564096, 0, 2748416, 2879488, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2179072, 2179072, 2179072,
  32189. /* 51130 */ 3137536, 2125824, 2125824, 2498560, 2125824, 2125824, 2125824, 2555904, 2564096, 2125824, 2125824,
  32190. /* 51141 */ 2125824, 2125824, 2125824, 2125824, 2125824, 2654208, 2678784, 2760704, 2764800, 2785280, 2854912,
  32191. /* 51152 */ 2969600, 2125824, 3006464, 2125824, 3018752, 2125824, 2125824
  32192. ];
  32193. XQueryParser.EXPECTED =
  32194. [
  32195. /* 0 */ 260, 268, 276, 283, 296, 304, 881, 312, 318, 331, 366, 339, 350, 361, 369, 342, 288, 886, 1555, 1545, 377,
  32196. /* 21 */ 384, 1551, 392, 400, 415, 423, 431, 439, 447, 455, 463, 486, 553, 490, 500, 500, 499, 498, 500, 500, 500,
  32197. /* 42 */ 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 500, 353, 1871, 509, 517, 525, 1149,
  32198. /* 63 */ 688, 533, 1759, 407, 548, 949, 561, 323, 569, 1480, 1303, 866, 577, 1034, 592, 596, 1439, 1444, 604, 1857,
  32199. /* 83 */ 628, 636, 644, 1919, 1049, 652, 673, 660, 668, 681, 696, 995, 710, 718, 731, 1324, 739, 761, 1116, 776,
  32200. /* 103 */ 784, 792, 1170, 1200, 1204, 807, 843, 851, 859, 894, 902, 910, 723, 918, 926, 934, 942, 753, 957, 1568,
  32201. /* 123 */ 965, 980, 611, 988, 1738, 1003, 1011, 616, 1185, 1827, 871, 1539, 1029, 1042, 1418, 584, 1424, 972, 1057,
  32202. /* 142 */ 1065, 1073, 1598, 1087, 1095, 1103, 1111, 1134, 1142, 768, 478, 1163, 1289, 620, 1155, 1178, 876, 1620,
  32203. /* 160 */ 1643, 1193, 702, 1812, 799, 1789, 1212, 1753, 1218, 1226, 1234, 1242, 500, 1250, 1258, 828, 1266, 1274,
  32204. /* 178 */ 1282, 1297, 1850, 1311, 1319, 1332, 1079, 540, 1345, 1017, 1337, 1359, 1021, 1367, 1375, 1390, 1398, 1403,
  32205. /* 196 */ 1411, 1432, 1452, 1460, 1468, 1476, 1488, 1496, 1382, 1516, 1524, 1532, 1563, 1576, 746, 1584, 1592, 1502,
  32206. /* 214 */ 1606, 1614, 814, 1628, 1636, 469, 821, 1661, 1665, 1673, 1678, 1686, 1694, 1702, 1710, 1718, 501, 1726,
  32207. /* 232 */ 1734, 1746, 1767, 1775, 1783, 1351, 1126, 1797, 1805, 1121, 835, 1820, 474, 1835, 1843, 1865, 1508, 1879,
  32208. /* 250 */ 1649, 1653, 1887, 1892, 1900, 1908, 1916, 500, 500, 1927, 1975, 1928, 1939, 1939, 1939, 1934, 1938, 1939,
  32209. /* 268 */ 1930, 1943, 1950, 1946, 1954, 1958, 1961, 1964, 1968, 1972, 1979, 2007, 2007, 2007, 3094, 2007, 1983, 3521,
  32210. /* 286 */ 2007, 2812, 2007, 2007, 2007, 2007, 2779, 2007, 2007, 2132, 2007, 4152, 3820, 3824, 1987, 2098, 1994, 2000,
  32211. /* 304 */ 2006, 2007, 2007, 3996, 2007, 2007, 2012, 4079, 3820, 3824, 3824, 3824, 3824, 2019, 2097, 2097, 2026, 2170,
  32212. /* 322 */ 2032, 2007, 2007, 2007, 2007, 2919, 2007, 2428, 3887, 2007, 3734, 2038, 2089, 2007, 2007, 2007, 3390, 3824,
  32213. /* 340 */ 3824, 2045, 2097, 2097, 2097, 2097, 2097, 2099, 1996, 2067, 2059, 2063, 2003, 2007, 2007, 2007, 2007, 2007,
  32214. /* 358 */ 2259, 3005, 2007, 3049, 2007, 2007, 2007, 3818, 3820, 3820, 3820, 3820, 2133, 3824, 3824, 3824, 3824, 3824,
  32215. /* 376 */ 2055, 3820, 2139, 3824, 3824, 3824, 3827, 2097, 2097, 2022, 2072, 2007, 2007, 4080, 2007, 2162, 2077, 2007,
  32216. /* 394 */ 2007, 2779, 3400, 3820, 3820, 2053, 3824, 3825, 2097, 2097, 2084, 2072, 2088, 4151, 2385, 2007, 2007, 2007,
  32217. /* 412 */ 2007, 3112, 2752, 3820, 2052, 3824, 2095, 2097, 2104, 2778, 2050, 3823, 2095, 2115, 2129, 3821, 3826, 1989,
  32218. /* 430 */ 3390, 3822, 3827, 1990, 2137, 2141, 2149, 3819, 2141, 2159, 2167, 2048, 2174, 2028, 2181, 2184, 2188, 2192,
  32219. /* 448 */ 2202, 2202, 2193, 2197, 2201, 2203, 2207, 2211, 2215, 2219, 2222, 2226, 2230, 2234, 2238, 2732, 2242, 2007,
  32220. /* 466 */ 2007, 2737, 2247, 2007, 2007, 2007, 3028, 4134, 2007, 2007, 2007, 3213, 2007, 2007, 2007, 2007, 2702, 3310,
  32221. /* 484 */ 2007, 3694, 2243, 2007, 4531, 2253, 2007, 2007, 2007, 2007, 2007, 4488, 2007, 2007, 2007, 4489, 2007, 2007,
  32222. /* 502 */ 2007, 2007, 2007, 2007, 2007, 2007, 4297, 2280, 2282, 2286, 2289, 2293, 2297, 2301, 2662, 2386, 2007, 2007,
  32223. /* 520 */ 2007, 2007, 2387, 2307, 2314, 2318, 4376, 4208, 2325, 2681, 3075, 3584, 2645, 2353, 2359, 2620, 2007, 2007,
  32224. /* 538 */ 2381, 2363, 2007, 2007, 3675, 2007, 3534, 4411, 3291, 4070, 3348, 2391, 2007, 2395, 2399, 2007, 2007, 2007,
  32225. /* 556 */ 2007, 3092, 3298, 2007, 2007, 2402, 2007, 2007, 2007, 3382, 2007, 2007, 2418, 3423, 2432, 2007, 2007, 2007,
  32226. /* 574 */ 2007, 2797, 2433, 2797, 2457, 2007, 2007, 2007, 2007, 2463, 2007, 2007, 3716, 3131, 2917, 2007, 2007, 3777,
  32227. /* 592 */ 4457, 4344, 2470, 2007, 2007, 2007, 2477, 2007, 2007, 2007, 2484, 2007, 2107, 3702, 2007, 3700, 2493, 2007,
  32228. /* 610 */ 2111, 2007, 2007, 3723, 3037, 2007, 2007, 2007, 2090, 3072, 2007, 2007, 2007, 2007, 2261, 3346, 2007, 2007,
  32229. /* 628 */ 2500, 2007, 2505, 4255, 4115, 4254, 2007, 4238, 2510, 4117, 3651, 3491, 2511, 4118, 4239, 4255, 3650, 4117,
  32230. /* 646 */ 2516, 4116, 4117, 3593, 3670, 3596, 2528, 2531, 2535, 2538, 2542, 2007, 3509, 2620, 4365, 4173, 2562, 2566,
  32231. /* 664 */ 2570, 2007, 2674, 2672, 3782, 2574, 2007, 3457, 2579, 2007, 2501, 2007, 4424, 3255, 2555, 2588, 4214, 4424,
  32232. /* 682 */ 4450, 2584, 2592, 2599, 3102, 4176, 2007, 2007, 3778, 2008, 2342, 4482, 2348, 4126, 4353, 2007, 2007, 2007,
  32233. /* 700 */ 2721, 2607, 2007, 2007, 2007, 3379, 2007, 2007, 2007, 3480, 2619, 2007, 4362, 2007, 4150, 4231, 2625, 4223,
  32234. /* 718 */ 2632, 2636, 2007, 4444, 2654, 2007, 2007, 2007, 2007, 3897, 2007, 2007, 4225, 2675, 2642, 2007, 2007, 2007,
  32235. /* 736 */ 2007, 4443, 2653, 4024, 2007, 4424, 4341, 2118, 4304, 2679, 2007, 2007, 3794, 2734, 2268, 4056, 2403, 2007,
  32236. /* 754 */ 2007, 3896, 2007, 2655, 2910, 4541, 3011, 2685, 2775, 2007, 2007, 2007, 3576, 2686, 2007, 2007, 4010, 3290,
  32237. /* 772 */ 2007, 2007, 3151, 3295, 3238, 2007, 2697, 2007, 3451, 2403, 4245, 2586, 4285, 2701, 3577, 2715, 2007, 2007,
  32238. /* 790 */ 2007, 3620, 2706, 2007, 2007, 2007, 2007, 2713, 2775, 2007, 2007, 4082, 3399, 2007, 2007, 4082, 3399, 2741,
  32239. /* 808 */ 2769, 2855, 2774, 2007, 3410, 2751, 2007, 2007, 4104, 2007, 2007, 2007, 2007, 2506, 4140, 4109, 4114, 3788,
  32240. /* 826 */ 2803, 4147, 2007, 2007, 4385, 3699, 2007, 3534, 4411, 2007, 2041, 4469, 4448, 2007, 2007, 2007, 2709, 3410,
  32241. /* 844 */ 2751, 2702, 2784, 3450, 4048, 2121, 2770, 3436, 2007, 3434, 3438, 2007, 2791, 2007, 2795, 2801, 2328, 2810,
  32242. /* 862 */ 2787, 2452, 2816, 2453, 2007, 2443, 2450, 2424, 2465, 2007, 2007, 2007, 2007, 3098, 2007, 2007, 2007, 2007,
  32243. /* 880 */ 3372, 2007, 2007, 2007, 2007, 3389, 3820, 3820, 3820, 2163, 3824, 3824, 3824, 3824, 4039, 2821, 2787, 2832,
  32244. /* 898 */ 2786, 3985, 2838, 2843, 4030, 3312, 2839, 2844, 4031, 4431, 2848, 2834, 2852, 2859, 2860, 2177, 2864, 3301,
  32245. /* 916 */ 4460, 4463, 2871, 4547, 2875, 2879, 2883, 2886, 2890, 2894, 2897, 2899, 2900, 2007, 2007, 2904, 2007, 3808,
  32246. /* 934 */ 2910, 4541, 3081, 2914, 2007, 2007, 2924, 2928, 2937, 2944, 2952, 2961, 2968, 3274, 2970, 2007, 2473, 2408,
  32247. /* 952 */ 2007, 2007, 2007, 2007, 2414, 3024, 2007, 2495, 2976, 2980, 4495, 4081, 2986, 2999, 2007, 2007, 2007, 2007,
  32248. /* 970 */ 2007, 3335, 2007, 2489, 2007, 3285, 2007, 3286, 2007, 3109, 2656, 3009, 3015, 3021, 3139, 2007, 4251, 2344,
  32249. /* 988 */ 3032, 2007, 2007, 2007, 2007, 3722, 3036, 2007, 2612, 2007, 2007, 3782, 2574, 2007, 3508, 4541, 3046, 3053,
  32250. /* 1006 */ 2702, 3058, 2007, 2007, 3062, 3067, 2007, 2007, 2007, 2007, 3063, 2007, 2007, 2007, 3691, 2007, 2007, 2007,
  32251. /* 1024 */ 2007, 2338, 3741, 2007, 2007, 3119, 2007, 2007, 2007, 3125, 2007, 2007, 2007, 2550, 4047, 2007, 2007, 2920,
  32252. /* 1042 */ 3125, 2007, 2007, 3428, 4501, 2355, 3026, 2007, 2615, 2654, 4143, 3807, 3464, 2520, 2524, 3111, 2918, 2007,
  32253. /* 1060 */ 3114, 3109, 3780, 3113, 3150, 3110, 3781, 3147, 4236, 3779, 2920, 3137, 2919, 2920, 3489, 4183, 3144, 3155,
  32254. /* 1078 */ 2155, 2007, 2007, 2007, 4522, 3741, 2007, 3667, 2007, 3121, 3163, 3167, 3171, 3175, 3179, 3183, 3187, 3191,
  32255. /* 1096 */ 2007, 2007, 2817, 3354, 2007, 2765, 3195, 3974, 3201, 3218, 4237, 3222, 3226, 3236, 4136, 3242, 3713, 3038,
  32256. /* 1114 */ 3248, 3246, 2007, 2007, 2007, 2575, 2690, 2007, 2007, 2007, 2007, 4428, 2007, 2007, 2007, 2249, 4402, 4409,
  32257. /* 1132 */ 2007, 2007, 3231, 3253, 2007, 2765, 3195, 3974, 3259, 3475, 4398, 3265, 3269, 3278, 2007, 2007, 3282, 2007,
  32258. /* 1150 */ 2647, 2638, 3815, 3004, 2336, 2007, 2007, 2007, 3352, 2007, 2765, 3195, 2780, 3316, 2068, 3260, 3320, 3417,
  32259. /* 1168 */ 3327, 3333, 2007, 2719, 3457, 2007, 2725, 2730, 2741, 4471, 3360, 3364, 3407, 2007, 2007, 2007, 3368, 2007,
  32260. /* 1186 */ 2736, 3608, 3079, 3085, 3140, 2702, 4437, 3054, 3399, 2007, 2007, 2007, 4081, 3398, 2007, 2745, 2007, 2007,
  32261. /* 1204 */ 3576, 2749, 2007, 2007, 2719, 2756, 2763, 3971, 3448, 2007, 2007, 3455, 2007, 2007, 3455, 2007, 2255, 2007,
  32262. /* 1222 */ 3975, 3472, 3484, 2007, 3497, 2971, 3449, 2972, 2007, 3503, 3273, 4555, 4530, 4554, 3513, 4094, 4553, 3271,
  32263. /* 1240 */ 4553, 4095, 4554, 3272, 4093, 4528, 3271, 3515, 4528, 4529, 2007, 4379, 2620, 3519, 2007, 3525, 4151, 3529,
  32264. /* 1258 */ 3538, 3542, 3546, 3550, 3554, 3558, 3562, 3566, 2828, 3729, 2918, 2410, 4192, 3571, 3230, 4556, 3575, 3581,
  32265. /* 1276 */ 3356, 3619, 3590, 2007, 2007, 4378, 3676, 2007, 3534, 4488, 2007, 2948, 3600, 2007, 2867, 3355, 2007, 2007,
  32266. /* 1294 */ 2007, 2007, 3339, 4185, 3612, 2007, 2007, 2580, 3618, 2007, 2007, 2549, 2551, 2386, 2007, 2007, 3132, 3630,
  32267. /* 1312 */ 2007, 2007, 2608, 3641, 2007, 3647, 4412, 2007, 3655, 3866, 3249, 3663, 2007, 2007, 2007, 2660, 2007, 2007,
  32268. /* 1330 */ 2666, 2007, 4405, 2007, 2007, 2007, 2007, 2337, 3687, 2007, 2594, 3230, 4081, 3698, 2007, 2805, 3682, 2007,
  32269. /* 1348 */ 2007, 2007, 3686, 2007, 2007, 2824, 2007, 2007, 2007, 2007, 2826, 4487, 2995, 2957, 2349, 3606, 2007, 2007,
  32270. /* 1366 */ 3706, 2007, 4081, 3710, 2007, 2595, 2007, 3720, 4485, 2946, 3727, 3068, 3733, 2007, 3738, 2620, 2007, 2940,
  32271. /* 1384 */ 2777, 3753, 3945, 3949, 3954, 3868, 2007, 3747, 2620, 2007, 2007, 3747, 2620, 3751, 2378, 2034, 3757, 3764,
  32272. /* 1402 */ 3636, 2007, 4288, 2007, 2007, 4288, 3428, 3769, 2466, 2015, 3765, 3773, 2007, 3786, 2007, 3127, 2007, 2954,
  32273. /* 1420 */ 2007, 2007, 3775, 2007, 2007, 3775, 2007, 2007, 2956, 2007, 2548, 2459, 2007, 3792, 3751, 3798, 3760, 3637,
  32274. /* 1438 */ 2602, 2007, 3149, 4508, 2110, 2488, 2007, 3701, 2494, 2007, 2007, 4046, 2007, 3780, 2603, 2007, 3802, 3806,
  32275. /* 1456 */ 3812, 3837, 4356, 3836, 3831, 2331, 3835, 3677, 3841, 2332, 3836, 3678, 4221, 3854, 3848, 4359, 3847, 3845,
  32276. /* 1474 */ 3852, 3877, 3863, 3874, 3881, 3884, 2007, 2007, 2007, 2007, 2480, 2437, 2007, 2007, 2964, 2776, 2007, 3893,
  32277. /* 1492 */ 3901, 3905, 3909, 3913, 3917, 3921, 3925, 3929, 3933, 3937, 2007, 2007, 2982, 4068, 4074, 4253, 2007, 2007,
  32278. /* 1510 */ 3212, 4493, 2007, 2007, 2007, 2248, 3959, 3964, 3968, 4202, 3979, 3983, 3989, 3950, 2007, 4000, 4007, 4014,
  32279. /* 1528 */ 2007, 2007, 2963, 2421, 3753, 4019, 4023, 2040, 3626, 4028, 4035, 2007, 3229, 3106, 3743, 3026, 2726, 2007,
  32280. /* 1546 */ 2007, 2007, 4080, 2007, 4152, 3820, 3820, 2054, 3824, 3824, 2096, 2097, 2097, 2097, 2097, 2100, 2143, 4043,
  32281. /* 1564 */ 2007, 2007, 3205, 3209, 2007, 2007, 2007, 2990, 2994, 2007, 2007, 2248, 3207, 2007, 2007, 2007, 3197, 4052,
  32282. /* 1582 */ 2310, 4253, 4060, 2669, 2007, 4114, 2007, 2007, 2007, 2628, 3210, 2007, 2007, 2007, 2506, 4064, 2007, 2007,
  32283. /* 1600 */ 3232, 3254, 3975, 2007, 4119, 3159, 2962, 4078, 3753, 4086, 2404, 2007, 4090, 2620, 4114, 2007, 2007, 2007,
  32284. /* 1618 */ 4099, 2620, 2007, 2007, 3376, 2007, 2007, 2007, 2007, 2933, 4100, 4108, 4113, 2007, 2439, 4123, 3603, 4423,
  32285. /* 1636 */ 2007, 3870, 3133, 2007, 2007, 2007, 4130, 2007, 3386, 2068, 4158, 3394, 3506, 2007, 2007, 2007, 4526, 2007,
  32286. /* 1654 */ 2007, 2007, 4526, 2007, 3992, 2370, 4535, 4156, 2920, 2007, 2007, 4162, 2007, 2007, 2007, 4162, 2558, 2007,
  32287. /* 1672 */ 4166, 4170, 2007, 4180, 2007, 2007, 4189, 2007, 2007, 4196, 4200, 4206, 4212, 3859, 4218, 2007, 2693, 2007,
  32288. /* 1690 */ 2007, 4229, 2007, 3586, 2152, 2145, 4235, 3487, 2007, 4243, 3642, 2775, 3643, 4249, 4440, 2806, 3659, 4259,
  32289. /* 1708 */ 4264, 3657, 3857, 3940, 2080, 3658, 3858, 3941, 4274, 3939, 3857, 4278, 3856, 3857, 4282, 3017, 4292, 4293,
  32290. /* 1726 */ 4270, 2321, 4301, 4003, 4311, 4315, 4319, 4323, 4327, 4330, 4334, 4338, 2007, 2007, 2007, 2007, 2621, 3230,
  32291. /* 1744 */ 3492, 3042, 4267, 3478, 2931, 3955, 4350, 4514, 4396, 3306, 3462, 3468, 3444, 2007, 4516, 2007, 2007, 2446,
  32292. /* 1762 */ 2007, 2007, 2007, 2759, 2375, 3002, 4369, 4307, 2007, 4015, 2007, 2546, 2544, 4373, 4383, 2007, 2007, 2007,
  32293. /* 1780 */ 4389, 3478, 2931, 2068, 3670, 3532, 4437, 2007, 4393, 2007, 2007, 3427, 3432, 2303, 3443, 3422, 2007, 2007,
  32294. /* 1798 */ 4416, 4081, 2007, 2091, 3671, 3422, 3203, 4420, 2007, 2007, 2007, 2007, 2007, 3342, 2007, 3388, 3404, 3414,
  32295. /* 1816 */ 3421, 2007, 2254, 3381, 3994, 2931, 4346, 4454, 4260, 3567, 3304, 2007, 3439, 3100, 2007, 2007, 2007, 2007,
  32296. /* 1834 */ 3089, 2007, 4467, 2007, 2007, 2007, 2007, 2007, 3214, 2124, 2007, 2007, 4475, 2365, 3889, 3499, 2007, 3616,
  32297. /* 1852 */ 2007, 2007, 2007, 2337, 3624, 2007, 2906, 2007, 3329, 3633, 2007, 2499, 3960, 4434, 2007, 2007, 2007, 2007,
  32298. /* 1870 */ 4479, 2007, 2007, 3493, 2265, 2007, 2272, 3323, 2276, 4499, 2125, 2007, 4505, 2367, 4512, 2007, 4520, 2512,
  32299. /* 1888 */ 2007, 2007, 3211, 4539, 2007, 3211, 4539, 2073, 4037, 4454, 2007, 2007, 2007, 4545, 2007, 2649, 2007, 2007,
  32300. /* 1906 */ 4551, 3115, 4157, 3422, 2007, 2369, 2007, 2370, 2007, 2371, 3261, 2007, 2007, 2007, 2007, 2007, 2007, 2007,
  32301. /* 1924 */ 3458, 2007, 2007, 2080, 4576, 4599, 4601, 4601, 4596, 4590, 4601, 4601, 5213, 4588, 4600, 4601, 4601, 4601,
  32302. /* 1942 */ 4601, 4601, 4601, 4605, 4601, 4601, 4624, 4632, 4592, 4611, 4609, 4615, 4626, 4639, 4641, 4646, 4628, 4651,
  32303. /* 1960 */ 4653, 4653, 4647, 4635, 4657, 4642, 4661, 4665, 4669, 4673, 4676, 4680, 4682, 4686, 4690, 4560, 6008, 4569,
  32304. /* 1978 */ 4572, 6007, 4694, 4697, 4751, 6953, 4752, 5681, 6931, 4707, 6326, 4735, 4735, 4712, 4752, 4752, 5273, 4792,
  32305. /* 1996 */ 6322, 4707, 4735, 5096, 4719, 4736, 5094, 5098, 4748, 4748, 4750, 4752, 4752, 4752, 4752, 4564, 5125, 5113,
  32306. /* 2014 */ 4729, 5190, 6233, 4752, 5981, 4707, 4707, 4734, 4735, 4711, 4791, 6324, 5279, 4792, 6322, 4707, 4735, 6320,
  32307. /* 2032 */ 4748, 4749, 4752, 4752, 4582, 6339, 6230, 4730, 5190, 4752, 4752, 4752, 6892, 4707, 4707, 6327, 4735, 4714,
  32308. /* 2050 */ 6320, 6322, 6322, 6322, 6324, 4707, 4707, 4707, 4710, 4735, 4793, 4788, 6324, 4709, 4765, 5096, 5096, 4748,
  32309. /* 2068 */ 4752, 4752, 4752, 4758, 4721, 4752, 4752, 4752, 4777, 4792, 4788, 4709, 4752, 4561, 4752, 5750, 4735, 4735,
  32310. /* 2086 */ 4794, 6324, 4752, 5743, 4752, 4752, 4752, 4757, 4752, 4707, 4709, 4735, 4735, 4735, 4735, 4711, 4791, 6322,
  32311. /* 2104 */ 4792, 5276, 4722, 4752, 4563, 5399, 6420, 4752, 6238, 5201, 5242, 4735, 4735, 4785, 4752, 4563, 5663, 4752,
  32312. /* 2122 */ 4563, 6254, 5386, 5386, 5386, 4752, 4752, 4752, 5746, 4752, 6321, 6322, 6322, 6322, 6323, 6320, 6322, 6322,
  32313. /* 2140 */ 6323, 4707, 4707, 4707, 4735, 4752, 4752, 4584, 5193, 4735, 4735, 4713, 4752, 4563, 6913, 6240, 6240, 6240,
  32314. /* 2158 */ 6929, 4735, 4735, 4714, 5739, 6322, 6322, 6322, 6325, 6322, 6324, 4707, 4710, 4740, 5096, 5097, 4707, 4709,
  32315. /* 2176 */ 4735, 4752, 4698, 4752, 6653, 4709, 5467, 5467, 5467, 4752, 5513, 5517, 5483, 4804, 4818, 4798, 4802, 4844,
  32316. /* 2194 */ 4844, 4844, 4808, 4815, 4812, 4828, 4832, 4842, 4844, 4844, 4844, 4844, 4845, 4838, 4926, 4844, 4852, 4850,
  32317. /* 2212 */ 4913, 4853, 4857, 4861, 4865, 4835, 4869, 4872, 4879, 4876, 4881, 4883, 4887, 4889, 4891, 4893, 4900, 4900,
  32318. /* 2230 */ 4897, 4907, 4910, 4923, 4846, 4916, 4919, 4930, 4933, 4935, 4939, 4903, 4943, 4752, 4752, 4752, 4948, 4715,
  32319. /* 2248 */ 4752, 4752, 4752, 4977, 6877, 4954, 4752, 4752, 4752, 4978, 6115, 4759, 4759, 4752, 4752, 4753, 6060, 5603,
  32320. /* 2266 */ 6128, 4975, 4752, 4714, 4752, 6620, 4752, 6554, 6723, 6126, 4984, 5424, 5283, 4988, 4992, 4993, 4993, 4993,
  32321. /* 2284 */ 4997, 5000, 5002, 5006, 5009, 5013, 5017, 5017, 5019, 5023, 5024, 5028, 5030, 5034, 5038, 5037, 5042, 5046,
  32322. /* 2302 */ 4752, 4752, 4760, 5740, 4752, 5065, 4752, 5423, 4752, 4725, 4724, 4723, 4565, 5750, 4752, 5657, 4752, 5671,
  32323. /* 2320 */ 5072, 4752, 4743, 4752, 5390, 5082, 4752, 6010, 4752, 4751, 5572, 6253, 5505, 4752, 5971, 6389, 5056, 4752,
  32324. /* 2338 */ 4752, 4752, 5074, 5535, 6350, 4752, 4752, 6930, 5401, 4752, 5494, 4752, 4752, 4752, 5125, 4752, 6136, 6009,
  32325. /* 2356 */ 4752, 5110, 6936, 6567, 5134, 5141, 5150, 5143, 5152, 4752, 4752, 4754, 4752, 4752, 4752, 4755, 4752, 4752,
  32326. /* 2374 */ 4752, 4752, 6233, 6232, 4752, 4752, 6347, 4752, 4752, 6356, 5137, 5161, 5250, 4752, 4752, 4752, 5060, 6584,
  32327. /* 2392 */ 5222, 5223, 5186, 4752, 6234, 5190, 6523, 5174, 5165, 5171, 5181, 4752, 4752, 4752, 5190, 4752, 5143, 5180,
  32328. /* 2410 */ 4752, 4752, 4756, 6223, 4752, 6358, 5781, 5171, 4752, 6600, 5055, 5251, 4752, 5745, 4752, 4752, 6357, 5166,
  32329. /* 2428 */ 4752, 5700, 4752, 6585, 5199, 5167, 5205, 5153, 4752, 5211, 5207, 4752, 4752, 4757, 5714, 4752, 5698, 4752,
  32330. /* 2446 */ 5191, 5136, 5142, 5151, 5221, 6420, 4752, 4752, 4757, 5946, 5568, 5167, 6098, 6009, 4752, 5973, 4752, 5175,
  32331. /* 2464 */ 5166, 6097, 5153, 4752, 4752, 4583, 6238, 5201, 5241, 4752, 4752, 6357, 5780, 6547, 5167, 5243, 4752, 4752,
  32332. /* 2482 */ 6357, 5781, 4960, 4752, 6600, 5250, 5242, 4752, 4752, 4752, 5291, 5782, 5243, 4752, 4752, 4752, 5293, 6836,
  32333. /* 2500 */ 6078, 4752, 4752, 4752, 5346, 5256, 4752, 4752, 4752, 5355, 4752, 6927, 4752, 4752, 4752, 5377, 5972, 4752,
  32334. /* 2518 */ 4752, 6928, 5301, 5305, 5306, 5306, 5307, 5306, 5306, 5311, 5314, 5316, 5318, 5320, 5320, 5320, 5320, 5321,
  32335. /* 2536 */ 5325, 5325, 5325, 5327, 5325, 5325, 5331, 5331, 4752, 4752, 4761, 6855, 4752, 4752, 4960, 4752, 4752, 4752,
  32336. /* 2554 */ 5217, 4752, 6405, 5353, 5571, 4752, 6913, 6240, 5376, 5259, 4752, 5068, 5397, 4752, 5067, 5385, 5396, 4752,
  32337. /* 2572 */ 6696, 6700, 5406, 4752, 4752, 4752, 5471, 5263, 4752, 4752, 4752, 5531, 6256, 5416, 4752, 5572, 4752, 5665,
  32338. /* 2590 */ 4752, 5365, 4752, 5664, 4752, 4752, 4961, 4961, 4961, 5670, 4752, 6018, 4752, 4752, 6375, 6009, 4752, 6535,
  32339. /* 2608 */ 4752, 4752, 4752, 5581, 5083, 5429, 6534, 4752, 4752, 6428, 6383, 5341, 6009, 4752, 4752, 4752, 5187, 5417,
  32340. /* 2626 */ 4752, 5573, 4753, 5358, 6639, 6644, 6017, 4752, 6260, 6601, 4752, 6413, 4752, 4752, 4968, 5118, 5439, 5444,
  32341. /* 2644 */ 5449, 4752, 4752, 6578, 5109, 4752, 4752, 4753, 6958, 5445, 5153, 4752, 4752, 4752, 5387, 6259, 6593, 5458,
  32342. /* 2662 */ 4752, 4752, 5050, 5054, 5721, 5336, 5342, 4752, 4752, 6591, 4752, 4752, 6698, 4752, 4752, 4752, 5434, 5465,
  32343. /* 2680 */ 6603, 4752, 4752, 5080, 4752, 6569, 5473, 5477, 5445, 6429, 5475, 5869, 5481, 4752, 4752, 6717, 6721, 4752,
  32344. /* 2698 */ 5720, 5335, 5491, 6602, 4752, 4752, 4752, 5747, 5525, 5477, 5500, 4752, 4752, 6740, 6908, 6569, 5524, 5476,
  32345. /* 2716 */ 5499, 6429, 4752, 4752, 6712, 4752, 4752, 5084, 5430, 6860, 4752, 4752, 4752, 5748, 5187, 4752, 4752, 5223,
  32346. /* 2734 */ 4752, 5745, 6422, 4752, 4752, 4752, 6219, 4752, 5571, 4752, 5665, 6571, 5548, 5869, 5516, 5812, 5477, 5871,
  32347. /* 2752 */ 4752, 4752, 4752, 5750, 5720, 5335, 5504, 4752, 4752, 6868, 5157, 4752, 6861, 4752, 4752, 5111, 6426, 5386,
  32348. /* 2770 */ 5748, 5510, 4752, 4752, 5870, 6429, 4752, 4752, 4752, 5746, 4752, 4752, 4752, 4760, 5529, 4752, 4752, 5560,
  32349. /* 2788 */ 5567, 4752, 4752, 4757, 5546, 5554, 6429, 4752, 6713, 4752, 4752, 5191, 5176, 5559, 5113, 4752, 4752, 5192,
  32350. /* 2806 */ 4752, 4752, 4752, 6727, 4752, 6319, 4752, 4752, 5228, 4752, 5568, 4752, 4752, 4752, 5811, 5225, 6277, 5386,
  32351. /* 2824 */ 4752, 4752, 6874, 6878, 4752, 4752, 6206, 4752, 5720, 5814, 5569, 4752, 5687, 5691, 5225, 6255, 6934, 5689,
  32352. /* 2842 */ 5570, 5570, 4752, 5944, 5690, 4752, 5689, 5570, 4752, 5688, 4752, 6238, 5563, 4752, 4753, 5522, 5548, 5687,
  32353. /* 2860 */ 5577, 4752, 5687, 5577, 6238, 5401, 6651, 4752, 4753, 6054, 6070, 5386, 6364, 5586, 6009, 6256, 5600, 4752,
  32354. /* 2878 */ 6419, 5378, 5602, 5607, 5620, 5611, 5619, 5614, 5615, 5615, 5615, 5615, 5624, 5631, 5628, 5635, 5637, 5637,
  32355. /* 2896 */ 5637, 5642, 5638, 5646, 5646, 5646, 5646, 4752, 4752, 6449, 4752, 4752, 5247, 5251, 6259, 4778, 5412, 6009,
  32356. /* 2914 */ 4752, 5705, 4752, 6945, 4752, 4752, 4752, 6239, 4752, 4752, 5678, 4752, 4752, 5650, 4752, 5656, 5652, 4752,
  32357. /* 2932 */ 4756, 4752, 4752, 6103, 4752, 5661, 5669, 5675, 4752, 4757, 5847, 5927, 4752, 5685, 4752, 6232, 4752, 5377,
  32358. /* 2950 */ 6310, 4752, 4752, 5695, 4752, 4752, 5289, 5389, 4752, 4752, 5957, 6439, 4752, 4752, 4752, 5845, 5211, 5251,
  32359. /* 2968 */ 4752, 6437, 6441, 4752, 4752, 4752, 5860, 4581, 5709, 4752, 4752, 5227, 4752, 5718, 4752, 4752, 5356, 6055,
  32360. /* 2986 */ 5761, 5726, 5732, 5738, 4752, 5759, 5763, 5728, 5734, 4752, 4752, 4752, 5980, 5762, 5727, 5733, 4752, 4758,
  32361. /* 3004 */ 4752, 4752, 6124, 5052, 5056, 4779, 6862, 4752, 4752, 5380, 5228, 4752, 5767, 6936, 4752, 6937, 6934, 5378,
  32362. /* 3022 */ 4752, 5228, 5704, 4752, 4752, 6947, 4752, 4752, 5356, 5549, 5774, 5786, 6683, 5251, 5787, 6684, 4752, 4752,
  32363. /* 3040 */ 4752, 5990, 6258, 4778, 5412, 6009, 4752, 6557, 5986, 4752, 4775, 4752, 5744, 6946, 4752, 4752, 4752, 6094,
  32364. /* 3058 */ 6233, 4752, 4752, 5791, 4752, 5805, 6900, 6682, 6686, 6686, 4752, 4752, 4752, 6117, 5774, 6902, 6684, 4752,
  32365. /* 3076 */ 4950, 5088, 5102, 5411, 6870, 4752, 4752, 5380, 6635, 5768, 6937, 5802, 4744, 5810, 6902, 6685, 4752, 4959,
  32366. /* 3094 */ 4752, 4752, 4702, 4752, 4752, 5809, 6901, 5818, 4752, 4752, 5421, 4954, 4752, 5798, 4780, 6870, 5972, 4752,
  32367. /* 3112 */ 4752, 4752, 6241, 4752, 4752, 4752, 5188, 6000, 5824, 5251, 4752, 4752, 5842, 5822, 5828, 4752, 4752, 5453,
  32368. /* 3130 */ 5153, 5281, 4752, 4752, 4752, 6238, 6233, 6238, 4752, 4752, 5971, 5570, 4752, 4752, 6241, 5972, 4752, 6241,
  32369. /* 3148 */ 4752, 4752, 6238, 4752, 4752, 4752, 5230, 6239, 4752, 6241, 5973, 5838, 5237, 4752, 6254, 6635, 5226, 5851,
  32370. /* 3166 */ 6443, 5858, 5866, 5875, 5879, 5884, 5886, 5880, 5890, 5893, 5896, 5899, 5901, 5903, 5907, 5907, 5913, 5907,
  32371. /* 3184 */ 5907, 5909, 5920, 5921, 5917, 5917, 5919, 5917, 5917, 5918, 5917, 5931, 5265, 4752, 4752, 5460, 5360, 4757,
  32372. /* 3202 */ 4752, 6931, 4752, 4752, 4752, 5461, 5361, 6613, 5542, 4752, 4752, 4752, 6896, 5776, 6882, 4752, 4752, 5742,
  32373. /* 3220 */ 5936, 5195, 4752, 6225, 5942, 6564, 5950, 5953, 5961, 4752, 4961, 4752, 4752, 4752, 6000, 6367, 5966, 6419,
  32374. /* 3238 */ 4752, 4752, 5487, 4752, 6294, 4752, 6293, 5985, 4752, 5990, 5994, 4752, 4752, 4752, 6298, 6367, 5927, 4752,
  32375. /* 3256 */ 4752, 4752, 6243, 4759, 6930, 4752, 4752, 5741, 4752, 4752, 6938, 6005, 6421, 6050, 6014, 4752, 4752, 5505,
  32376. /* 3274 */ 4752, 4752, 4752, 6437, 4752, 6209, 5755, 5755, 6022, 6026, 6110, 4752, 4962, 4961, 4752, 4752, 6111, 4752,
  32377. /* 3292 */ 4752, 4752, 6317, 6031, 6026, 6110, 4752, 4966, 4752, 5225, 5398, 4752, 5400, 4752, 4752, 4752, 6254, 4752,
  32378. /* 3310 */ 6366, 5926, 4752, 4752, 5561, 5225, 5266, 4752, 4752, 5224, 6352, 4752, 6628, 4752, 4972, 5386, 5066, 6048,
  32379. /* 3328 */ 5970, 4752, 4752, 5573, 5398, 4752, 6208, 4752, 4752, 5596, 4752, 6059, 5779, 6064, 4752, 4977, 4821, 6882,
  32380. /* 3346 */ 6069, 6065, 4752, 4752, 5699, 4752, 4752, 6001, 5925, 5251, 4752, 4752, 4752, 6247, 4752, 5739, 4752, 6353,
  32381. /* 3364 */ 4752, 6629, 4752, 5973, 4752, 6569, 6074, 6089, 6569, 6084, 6088, 5251, 6082, 6086, 6090, 4752, 4979, 4579,
  32382. /* 3382 */ 4752, 4752, 4752, 6422, 4752, 6423, 6722, 4752, 4752, 4752, 6321, 6322, 5389, 6627, 4752, 5971, 4980, 4580,
  32383. /* 3400 */ 4752, 4752, 4752, 6320, 4757, 4752, 5740, 4752, 5075, 5968, 4752, 4977, 5523, 6665, 6354, 6627, 4752, 5972,
  32384. /* 3418 */ 4752, 4752, 6036, 4753, 6937, 4752, 4752, 4752, 6418, 6252, 4752, 4752, 4752, 6423, 6860, 6869, 4752, 4752,
  32385. /* 3436 */ 5720, 5813, 5555, 4752, 4752, 4752, 5809, 6354, 6627, 4752, 4753, 6937, 4978, 4581, 4752, 4752, 4752, 6429,
  32386. /* 3454 */ 4752, 4979, 4581, 4752, 4752, 5722, 5337, 5263, 4752, 6861, 6870, 4752, 5287, 5297, 4758, 4752, 5742, 6353,
  32387. /* 3472 */ 6860, 6869, 4758, 5740, 5390, 5998, 6234, 4752, 4752, 4752, 6102, 4752, 5386, 6234, 5505, 6935, 4755, 6239,
  32388. /* 3490 */ 4752, 5971, 4752, 4752, 4752, 5386, 4754, 5720, 4581, 4752, 4752, 5741, 6936, 4752, 6863, 5739, 4752, 5076,
  32389. /* 3508 */ 4752, 4752, 5720, 5335, 5341, 4752, 6869, 4752, 6313, 4752, 6311, 4752, 6608, 4752, 4752, 5745, 4752, 6259,
  32390. /* 3526 */ 4752, 4618, 6121, 6232, 6230, 6230, 5741, 6935, 4752, 4752, 6201, 5189, 4752, 6134, 6132, 6140, 6144, 6151,
  32391. /* 3544 */ 6145, 6145, 6150, 6146, 6155, 6159, 6163, 6167, 6169, 6174, 6176, 6169, 6169, 6170, 6186, 6187, 6180, 6180,
  32392. /* 3562 */ 6185, 6180, 6180, 6181, 6191, 4752, 4752, 4752, 6545, 6229, 6841, 5573, 5061, 6250, 4752, 4752, 4752, 6569,
  32393. /* 3580 */ 5524, 4752, 6247, 6251, 4752, 5107, 4752, 4752, 4753, 6719, 6266, 6265, 6267, 4752, 5110, 4752, 5111, 4752,
  32394. /* 3598 */ 5113, 5111, 4752, 5956, 4752, 5192, 4752, 6621, 5747, 6333, 4752, 4752, 5797, 5191, 6271, 6276, 5252, 4961,
  32395. /* 3616 */ 4752, 6281, 6287, 6251, 4752, 4752, 4752, 6570, 6286, 6291, 4752, 4752, 5751, 4752, 5833, 5832, 5831, 4752,
  32396. /* 3634 */ 5110, 6077, 4752, 4752, 6362, 4752, 4752, 4770, 4752, 4752, 4752, 6717, 5589, 4752, 6202, 5190, 4752, 5110,
  32397. /* 3652 */ 6929, 4752, 4752, 6307, 4752, 4752, 6934, 4752, 4752, 4752, 6934, 4759, 6304, 5573, 4961, 5831, 5831, 5831,
  32398. /* 3670 */ 4752, 5112, 4752, 4752, 5742, 5580, 4769, 6009, 4752, 4752, 6387, 4752, 5126, 4752, 6331, 4961, 4753, 5534,
  32399. /* 3688 */ 5538, 5542, 4752, 6282, 5536, 5540, 4752, 5112, 6427, 5932, 5582, 4771, 4752, 4752, 4752, 6546, 5782, 5243,
  32400. /* 3706 */ 4752, 5579, 5536, 5540, 5862, 5538, 5542, 4752, 5114, 5993, 4752, 4961, 4752, 5797, 4768, 5153, 4752, 4752,
  32401. /* 3724 */ 5804, 6899, 5787, 6318, 4752, 4752, 5957, 4752, 6213, 6334, 4752, 4752, 4752, 6731, 4752, 6234, 6343, 5539,
  32402. /* 3742 */ 6009, 4752, 4752, 5769, 4752, 4752, 5938, 6343, 5539, 4752, 6425, 4961, 4752, 5193, 4752, 4752, 6231, 4752,
  32403. /* 3760 */ 5377, 5401, 4752, 6254, 6318, 4752, 4752, 6255, 4752, 6425, 4752, 4752, 5409, 6311, 4961, 4752, 4752, 5823,
  32404. /* 3778 */ 4752, 4752, 4752, 6240, 4752, 4752, 4752, 5103, 5454, 6009, 4752, 4752, 5844, 5146, 5452, 6377, 4752, 4752,
  32405. /* 3796 */ 5846, 5145, 6860, 6009, 4752, 5190, 6375, 6009, 6422, 6424, 4752, 6868, 4752, 4752, 4752, 5388, 5380, 6254,
  32406. /* 3814 */ 6362, 4752, 5124, 5122, 4752, 4752, 6322, 6322, 6322, 6322, 4707, 4707, 4707, 4707, 4708, 4735, 4735, 6381,
  32407. /* 3832 */ 4752, 6009, 5377, 6389, 4752, 4752, 6885, 6009, 4752, 4752, 6868, 5377, 6253, 6887, 4752, 4752, 6887, 4752,
  32408. /* 3850 */ 4752, 6886, 4752, 6403, 5971, 6255, 4752, 4752, 5853, 4752, 4752, 4752, 6936, 6255, 6886, 5971, 6255, 5191,
  32409. /* 3868 */ 4752, 4752, 5752, 4752, 4756, 6589, 6886, 6401, 6885, 6885, 4752, 6886, 5377, 6885, 6394, 6394, 4703, 4703,
  32410. /* 3886 */ 4703, 4752, 5185, 4752, 4752, 4757, 5110, 4960, 5744, 6398, 4752, 5187, 6451, 4752, 4752, 6409, 4752, 6411,
  32411. /* 3904 */ 5750, 6215, 6417, 5744, 6435, 6217, 4752, 5189, 6447, 6457, 6461, 6462, 6466, 6486, 6469, 6484, 6472, 6478,
  32412. /* 3922 */ 6475, 6480, 6498, 6492, 6490, 6496, 6496, 6500, 6506, 6506, 6507, 6504, 6506, 6506, 6506, 6511, 6514, 4752,
  32413. /* 3940 */ 4752, 5854, 4752, 4752, 4752, 6619, 4824, 5749, 6417, 6518, 4752, 4752, 4752, 6756, 5187, 4752, 4752, 4752,
  32414. /* 3958 */ 6834, 6431, 4752, 4752, 4752, 6836, 5834, 6009, 6522, 6527, 6869, 4752, 6430, 4752, 5188, 4752, 5223, 4752,
  32415. /* 3976 */ 4752, 4752, 6253, 4752, 6540, 6551, 6561, 5402, 6575, 4752, 4752, 5945, 4752, 4752, 6755, 6009, 4752, 5188,
  32416. /* 3994 */ 5194, 4752, 4752, 4752, 6252, 6255, 4752, 6756, 5962, 4752, 5222, 5392, 5390, 4752, 6849, 6848, 4752, 5231,
  32417. /* 4012 */ 6032, 6027, 6850, 4752, 4752, 4752, 6854, 6619, 4824, 5749, 6582, 5518, 4752, 4752, 4752, 6861, 4753, 6634,
  32418. /* 4030 */ 4752, 4752, 5945, 5691, 4752, 4752, 6589, 4752, 4753, 4752, 4757, 5561, 4752, 6597, 4752, 6607, 4752, 5235,
  32419. /* 4048 */ 4752, 4752, 4752, 5225, 6612, 5541, 4752, 6617, 5229, 6351, 5401, 6625, 4752, 5753, 4752, 6633, 5359, 6640,
  32420. /* 4066 */ 6645, 6009, 4944, 5540, 4752, 4752, 5955, 4752, 6649, 6238, 5686, 5686, 5144, 4752, 5744, 4752, 4752, 4752,
  32421. /* 4084 */ 4753, 4980, 6619, 4824, 6272, 6654, 5754, 4753, 4752, 6311, 4752, 4752, 6312, 4752, 4752, 5355, 5359, 5550,
  32422. /* 4102 */ 6658, 6009, 5357, 6678, 4944, 5541, 4752, 5571, 4752, 6597, 6597, 6597, 6597, 4752, 4752, 4752, 6928, 4752,
  32423. /* 4120 */ 4752, 5110, 6426, 4752, 5746, 6423, 4752, 5266, 4752, 4564, 4752, 6662, 5550, 6671, 6670, 6009, 4752, 4752,
  32424. /* 4138 */ 5977, 4752, 6664, 6669, 5153, 4752, 5270, 6423, 5505, 4823, 5748, 5401, 5189, 4752, 4752, 4752, 5739, 6322,
  32425. /* 4156 */ 5752, 4753, 4752, 4752, 5741, 5390, 4752, 6675, 6690, 6429, 6694, 4752, 4752, 5193, 6234, 4824, 5750, 4752,
  32426. /* 4174 */ 5369, 4752, 4955, 4752, 4752, 5385, 5753, 4756, 4752, 6239, 4752, 6240, 4752, 5349, 4758, 4752, 6705, 6429,
  32427. /* 4192 */ 4752, 5372, 4758, 5592, 4752, 6705, 6429, 5572, 6238, 6913, 4752, 4752, 6009, 4752, 4752, 5712, 4752, 4752,
  32428. /* 4210 */ 6010, 6536, 4714, 6709, 4752, 4752, 6016, 4752, 4756, 4752, 6240, 4752, 5379, 6255, 4752, 5388, 4752, 6257,
  32429. /* 4228 */ 6419, 5074, 6720, 4752, 4752, 6042, 4752, 5749, 4752, 4752, 4752, 6929, 4752, 4752, 5971, 6717, 6429, 4752,
  32430. /* 4246 */ 4752, 6042, 5417, 6914, 6241, 4752, 5747, 6233, 4752, 4752, 4752, 6926, 4752, 6729, 4752, 4752, 4752, 6933,
  32431. /* 4264 */ 6727, 4563, 4752, 5747, 6741, 5389, 5192, 5222, 4752, 5986, 4561, 5748, 4752, 6936, 6934, 4562, 5749, 6934,
  32432. /* 4282 */ 5853, 4563, 6935, 4752, 5387, 5748, 4752, 4752, 6735, 6371, 4563, 6936, 6934, 4752, 4752, 6739, 6680, 6421,
  32433. /* 4300 */ 4744, 6300, 6231, 5091, 4752, 5389, 5748, 4752, 4752, 6701, 4581, 6039, 6745, 6748, 4620, 6733, 6752, 6760,
  32434. /* 4318 */ 6768, 6762, 6764, 6771, 6775, 6779, 6782, 6784, 6788, 6790, 6794, 6797, 6801, 6804, 6809, 6808, 6813, 6815,
  32435. /* 4336 */ 6819, 6817, 6823, 6827, 6830, 4752, 5391, 5223, 5222, 6421, 4752, 4752, 4759, 5112, 4760, 4752, 5113, 4752,
  32436. /* 4354 */ 5428, 6533, 4752, 4752, 6388, 4752, 4752, 6393, 4752, 4752, 6428, 4752, 4752, 6428, 6260, 6840, 5381, 4752,
  32437. /* 4372 */ 6845, 4584, 4752, 6043, 4752, 5495, 4752, 4752, 4753, 6197, 4769, 6859, 6044, 4752, 4752, 6195, 5582, 4752,
  32438. /* 4390 */ 6739, 6907, 5191, 4752, 6867, 6915, 4752, 5506, 5505, 4752, 5973, 4752, 4563, 4752, 5386, 4752, 5533, 5537,
  32439. /* 4408 */ 5541, 5389, 5388, 4752, 4752, 6232, 4752, 4752, 5747, 6741, 6355, 6235, 4752, 6543, 6238, 5400, 4752, 5188,
  32440. /* 4426 */ 4752, 4752, 6891, 5777, 5700, 4752, 5562, 6253, 4752, 4752, 6912, 4752, 4752, 6932, 4752, 4752, 6935, 4752,
  32441. /* 4444 */ 4753, 5435, 5440, 5445, 5388, 5388, 4752, 4752, 6242, 6042, 4752, 5739, 6934, 4752, 5571, 4752, 5398, 4752,
  32442. /* 4462 */ 4751, 5401, 5401, 5399, 5793, 4753, 6898, 5778, 4563, 4752, 5388, 5749, 6601, 5747, 6906, 5192, 6236, 4752,
  32443. /* 4480 */ 6897, 5777, 4563, 4752, 5130, 4752, 4752, 6338, 4752, 4752, 6231, 4752, 4752, 6920, 4752, 4752, 4752, 6261,
  32444. /* 4498 */ 4752, 5775, 6919, 4752, 5386, 6258, 4781, 5595, 5193, 6237, 4752, 5571, 4752, 5399, 4760, 4752, 5740, 6935,
  32445. /* 4516 */ 4752, 4752, 6107, 4752, 4752, 6924, 4752, 4752, 6281, 5535, 6896, 6942, 4752, 4752, 6311, 4752, 4752, 4752,
  32446. /* 4534 */ 6530, 4759, 4752, 5740, 6935, 6951, 4752, 4752, 4752, 6311, 5770, 4977, 6959, 4752, 4752, 6312, 5113, 4752,
  32447. /* 4552 */ 6957, 4752, 4752, 6313, 4752, 4752, 4752, 6453, 2, 4, 8, 262144, 0, 0, 0, 0x80000000, 1073741824, 0, 0,
  32448. /* 4571 */ 1075838976, 2097152, 2097152, 268435456, 4194432, 4194560, 4196352, 270532608, 2097152, 4194304, 50331648,
  32449. /* 4582 */ 0, 0, 0, 4194304, 0, 0, 541065216, 541065216, -2143289344, -2143289344, 4194304, 4194304, 4196352,
  32450. /* 4595 */ -2143289344, 4194304, 4194432, 37748736, 541065216, -2143289344, 4194304, 4194304, 4194304, 4194304,
  32451. /* 4605 */ 4194304, 4194304, 4198144, 4196352, 8540160, 4194304, 4194304, 4194304, 4196352, 276901888, 4194304,
  32452. /* 4616 */ 4194304, 8425488, 4194304, 1, 0, 1024, 137363456, 66, 37748736, 742391808, 239075328, -1405091840,
  32453. /* 4628 */ 775946240, 775946240, 775946240, 171966464, 742391808, 742391808, 742391808, 775946240, -1371537408,
  32454. /* 4637 */ 775946240, 775946240, -1405091840, -1371537408, 775946240, 775946240, 775946240, 775946240, 4718592,
  32455. /* 4646 */ -1371537408, 775946240, -1371537408, 775946240, -1371537408, 171966464, 775946240, 171966464, 171966464,
  32456. /* 4655 */ 171966464, 171966464, 239075328, 171966464, 775946240, 239075328, 64, 4718592, 2097216, 4720640, 541589504,
  32457. /* 4666 */ 4194368, 541589504, 4194400, 4194368, 541065280, 4194368, 4194368, -2143289280, 4194368, -2143285440,
  32458. /* 4676 */ -2143285408, -2143285408, 776470528, -2143285408, -2109730976, -2143285408, -2143285408, -2143285408,
  32459. /* 4684 */ -2109730976, -2143285408, 775946336, 775946304, 775946304, 776470528, 775946304, -1908404384, 775946304,
  32460. /* 4693 */ -1908404384, 0, 2097152, 4194304, 128, 0, 256, 2048, 0, 0, 16777216, 16777216, 16777216, 16777216, 64, 64,
  32461. /* 4709 */ 64, 64, 96, 96, 96, 64, 0, 0, 0, 24, 64, 0, 96, 96, 0, 0, 0, 288, 8388608, 0, 0, 8388608, 4096, 4096, 4096,
  32462. /* 4734 */ 32, 96, 96, 96, 96, 262144, 96, 96, 1048576, 128, 0, 1048576, 0, 0, 2048, 2048, 2048, 2048, 0, 0, 0, 0, 1,
  32463. /* 4757 */ 0, 0, 0, 2, 0, 0, 0, 3, 96, 96, 128, 128, 2048, 524288, 268435456, 536870912, 1073741824, 0, 0, 8388608,
  32464. /* 4777 */ 4096, 0, 64, 0, 2048, 524288, 536870912, 0, 64, 524288, 64, 96, 64, 524288, 524288, 96, 96, 64, 524288, 96,
  32465. /* 4797 */ 64, 80, 528, 524304, 1048592, 2097168, 268435472, 16, 16, 2, 536936448, 16, 262160, 16, 536936448, 16, 17,
  32466. /* 4814 */ 17, 20, 16, 48, 16, 16, 20, 48, 64, 128, 1024, 134217728, 0, 0, 24, 560, 48, 2097680, 3145744, 1048592,
  32467. /* 4834 */ 1048592, 2097168, 16, 1049104, 16, 16, 20, 560, 2097168, 2097168, 16, 16, 16, 16, 20, 16, 2097552, 3146256,
  32468. /* 4852 */ 16, 16, 16, 28, 0, 2, 2098064, 17, 21, 16, 16, 163577856, 17, 528, 528, 16, 528, 2228784, -161430188,
  32469. /* 4871 */ -161429680, -161430188, -161430188, -161430188, -161429680, -161430188, -161429676, -160905388, -161429676,
  32470. /* 4880 */ -161430188, -161429676, -161429676, -161429676, -161429676, -161429675, -161349072, -161349072, -161429675,
  32471. /* 4889 */ -161349072, -161349072, -161349072, -161349072, -161347728, -161347728, -161347728, -161347728, -161298576,
  32472. /* 4898 */ -160299088, -161298576, -161298572, -161298572, -161298572, -161298572, -18860267, -160774284, -18729163,
  32473. /* 4907 */ -160774288, -160299084, -161298572, -160774284, -161298572, -161298572, 16, 16, 28, 16, 16, 112, 21, 53,
  32474. /* 4921 */ 146804757, 146812949, 0, 16, 0, 48, 3146256, 2097680, 1048592, 146862101, 146863389, -161429676, 146863389,
  32475. /* 4934 */ 146863421, 146863389, 146863389, 146863389, 146863421, -161429740, -161429676, -160905388, -161298572, 0,
  32476. /* 4944 */ 65536, 524288, 1048576, 33554432, 0, 159383552, 0, 0, 0, 1157627904, -1073741824, 0, 0, 0, 300, 142606336,
  32477. /* 4960 */ 0, 8192, 0, 0, 0, 384, 0, 243269632, 0, 0, 0, 1862270976, 1, 32768, 131328, 131072, 16777216, 0, 0, 1, 2,
  32478. /* 4981 */ 4, 128, 2097152, 0, 1073741825, 0x80000000, 0x80000000, 8, 16777216, 1073774592, 278528, 1226014816,
  32479. /* 4993 */ 100665360, 100665360, 100665360, 100665360, 100665360, 100665360, -2046818288, 1091799136, -2044196848,
  32480. /* 5002 */ 1091799136, 1091799136, 1091799136, 1091799136, 1091799136, 1091803360, 1091799136, 1091799136, 1158908000,
  32481. /* 5011 */ 1158908001, 1192462432, 1192462448, 1192462448, 1192462448, 1192462448, 1200851056, 1091799393, 1200851056,
  32482. /* 5020 */ 1200851056, 1192462448, 1870630720, 1870647104, 1870630720, 1870647104, 1870630720, 1870647104, 1870647104,
  32483. /* 5029 */ 1870647104, 1870647104, 1870647104, 1870647120, 1870647124, 1870647124, 1870647124, 1870630736, 1870655316,
  32484. /* 5038 */ 1870655316, 1870655316, 1870655317, 1870655348, 1870647120, 1870647120, 1870647120, 1879019376, 1879035760,
  32485. /* 5047 */ 1870647124, 1879035760, 1879035764, 32768, 131072, 524288, 2097152, 8388608, 16777216, 134217728,
  32486. /* 5057 */ 268435456, 1073741824, 0x80000000, 131328, 0, 0, 0, 832, 0, 164096, 0, 0, 0, 520, 4333568, 1048576,
  32487. /* 5073 */ 1224736768, 0, 0, 1, 4, 0, 0, 235712, 0, 1090519040, 0, 0, 0, 999, 259072, 1191182336, 0, 0, 9437184, 0, 0,
  32488. /* 5094 */ 1048576, 0, 128, 128, 128, 128, 2048, 2048, 231744, 0, 0, 0, 1007, 495424, 7864320, 1862270976, 0, 0, 0,
  32489. /* 5113 */ 1024, 0, 0, 0, 63, 520000, 1862270976, 1862270976, 16252928, 0, 0, 16252928, 0, 0, 0, 1536, 0x80000000, 64,
  32490. /* 5131 */ 98304, 1048576, 150994944, 0, 64, 256, 3584, 16384, 98304, 393216, 98304, 393216, 524288, 1048576, 2097152,
  32491. /* 5146 */ 4194304, 0x80000000, 0, 0, 2097152, 4194304, 251658240, 536870912, 1073741824, 0, 0, 8192, 1073741824,
  32492. /* 5159 */ 1073741824, 8388608, 2097152, 16777216, 134217728, 268435456, 2048, 65536, 262144, 524288, 1048576,
  32493. /* 5170 */ 2097152, 1048576, 2097152, 4194304, 117440512, 64, 256, 1536, 16384, 65536, 117440512, 134217728,
  32494. /* 5182 */ 536870912, 1073741824, 0, 0, 100663296, 0, 0, 0, 4096, 0, 0, 0, 64, 0, 0, 128, -2113929216, 64, 256, 1536,
  32495. /* 5202 */ 65536, 262144, 524288, 4194304, 16777216, 100663296, 134217728, 536870912, 1073741824, 1048576, 2097152,
  32496. /* 5213 */ 4194304, 16777216, 4194432, 3145728, 524288, 2097152, 134217728, 268435456, 65536, 1048576, 0, 0, 0, 2048,
  32497. /* 5227 */ 0, 0, 134217728, 0, 0, 0, 15, 16, 524288, 2097152, 1073741824, 0x80000000, 0x80000000, 0, 1048576, 2097152,
  32498. /* 5243 */ 67108864, 1073741824, 0, 0, 0, 0, 2097152, 1073741824, 0x80000000, 0, 0, 0, 768, 0, 2097152, 0x80000000, 0,
  32499. /* 5260 */ -872415232, 0, -872415232, 67108864, 134217728, 1073741824, 0, 0x80000000, 0, 0, 0, 8192, 4096, 0, 0, 1536,
  32500. /* 5276 */ 524288, 64, 64, 96, 64, 0, 524288, 0, 1073741824, 2621440, 1073741824, 9476, 512, 0, 32, 384, 8192, 0, 0,
  32501. /* 5295 */ 1, 8, 512, 512, 9476, 134218240, 1050624, 262144, 512, 50331649, 1275208192, 4194312, 4194312, 4194312,
  32502. /* 5309 */ 4194312, 541065224, 4194312, 4194312, 4194344, -869654016, 4203820, -869654016, -869654016, -869654016,
  32503. /* 5319 */ -869654016, 1279402504, 1279402504, 1279402504, 1279402504, 2143549415, 2143549415, 2143549415, 2143549415,
  32504. /* 5328 */ 2143549415, 2143549423, 2143549415, 2143549423, 2143549423, 2143549423, 2143549423, 16, 32, 256, 1024,
  32505. /* 5339 */ 8192, 33554432, 8192, 33554432, 67108864, 134217728, 0, 0, 536870912, 9216, 0, 0, 1792, 0x80000000, 0,
  32506. /* 5354 */ 1050624, 0, 0, 1, 14, 16, 32, 1024, 2048, 77824, 524288, 0, 512, 139264, 1275068416, 512, 2760704,
  32507. /* 5371 */ -872415232, 0, 0, 1856, 0x80000000, 4203520, 0, 0, 0, 32768, 0, 0, 0, 58624, 520, 0, 0, 0, 131072, 0, 0, 0,
  32508. /* 5393 */ 512, 0, 1048576, 0, 1275068416, 0, 0, 0, 65536, 0, 0, 0, 12561, 0, 1007, 1007, 0, 0, 2048, 524288, 0,
  32509. /* 5414 */ 536870912, 0, 512, 0, 2048, 1048576, 0, 0, 40, 0, 2621440, 0, 0, 0x80000000, 999, 259072, 4194304,
  32510. /* 5431 */ 25165824, 100663296, 402653184, 1, 102, 384, 512, 5120, 5120, 8192, 16384, 229376, 4194304, 4194304,
  32511. /* 5445 */ 25165824, 33554432, 67108864, 402653184, 402653184, 536870912, 1073741824, 0, 0, 2048, 3145728, 16777216,
  32512. /* 5457 */ 536870912, 110, 110, 0, 0, 1, 30, 32, 0, 40, 0, 524288, 64, 96, 1, 6, 96, 384, 512, 1024, 4096, 8192,
  32513. /* 5479 */ 16384, 229376, 67108864, 402653184, 536870912, 0, 2, 16, 104, 0, 104, 104, 8192, 33554432, 134217728, 0, 0,
  32514. /* 5496 */ 2048, 100663296, 0, 229376, 25165824, 33554432, 402653184, 536870912, 8192, 33554432, 0, 0, 0, 17408, 0,
  32515. /* 5511 */ 524288, 2097152, 0, 0, 2048, 268435456, 536870912, 0, 0, 268435456, 49152, 2, 4, 32, 64, 256, 512, 1024, 8,
  32516. /* 5530 */ 8, 0, 0, 1, 64, 128, 3584, 16384, 3145728, 16777216, 67108864, 134217728, 805306368, 1073741824, 0, 0, 4,
  32517. /* 5547 */ 64, 256, 1024, 4096, 8192, 65536, 524288, 98304, 131072, 25165824, 268435456, 536870912, 0, 2, 4, 256,
  32518. /* 5563 */ 1024, 0, 2048, 0, 98304, 131072, 16777216, 268435456, 0, 0, 0, 262144, 0, 0, 65536, 268435456, 0, 0, 1,
  32519. /* 5582 */ 128, 512, 2048, 524288, 2048, 524288, 67108864, 536870912, 0, 262144, 0, 0, 2432, 0, 0, 4096, 8192, 0, 32,
  32520. /* 5601 */ 4100, 67108864, 0, 32768, 0, 32768, 0, 0, 134348800, 134348800, 1049088, 1049088, 8192, 1049088, 12845065,
  32521. /* 5616 */ 12845065, 12845065, 12845065, 270532608, 0, 1049088, 0, 134348800, 12845065, 12845065, 147193865, 5505537,
  32522. /* 5628 */ 5591557, 5587465, 5587457, 5587457, 147202057, 5587457, 5587457, 5591557, 5587457, 13894153, 13894153,
  32523. /* 5639 */ 13894153, 13894153, -1881791493, 13894153, 81003049, 13894153, 13894153, -1881791493, -1881791493,
  32524. /* 5648 */ -1881791493, -1881791493, 0, 9, 0, 0, 1, 5505024, 142606336, 0, 0, 0, 278528, 0, 82432, 0, 0, 1, 16777216,
  32525. /* 5667 */ 0, 0, 0, 139264, 0, 0, 0, 229440, 0, 5, 86528, 9, 4456448, 8388608, 0, 0, 8192, 8392704, 9, 8388608, 0, 0,
  32526. /* 5689 */ 256, 1024, 65536, 16777216, 268435456, 0, 0, 41, 75497472, 0, 0, 16384, 262144, 0, 0, 0, 512, 1048576, 0,
  32527. /* 5708 */ 0, 262144, 4194304, 8388608, 0, 0, 16384, 4194304, 0x80000000, 0, 0, 81920, 0, 0, 2, 4, 16, 32, 8192,
  32528. /* 5727 */ 131072, 262144, 1048576, 4194304, 8388608, 4194304, 8388608, 16777216, 33554432, -1946157056, 0,
  32529. /* 5738 */ -1946157056, 0, 0, 0, 524288, 0, 0, 0, 16, 0, 0, 0, 8, 0, 0, 0, 12, 0, 0, 0, 13, 0, 1, 2, 56, 64, 896,
  32530. /* 5765 */ 8192, 131072, 0, 0, 33554432, 1024, 0, 4, 0, 8, 16, 32, 64, 128, 1024, 2048, 16384, 65536, 262144, 524288,
  32531. /* 5785 */ 2097152, 384, 512, 8192, 131072, 1048576, 0, 16384, 65536, 0, 65536, 0, 0, 131072, 0, 32, 0, 32768,
  32532. /* 5803 */ 134217728, 0, 0, 2, 8, 16, 0, 2, 8, 32, 64, 256, 1024, 98304, 131072, 1048576, 33554432, 134217728,
  32533. /* 5821 */ 0x80000000, 8, 32, 384, 8192, 131072, 33554432, 131072, 33554432, 0x80000000, 0, 0, 24576, 0, 0, 0,
  32534. /* 5837 */ 50331648, 0, 8396800, 4194304, 134217728, 2048, 134217728, 0, 0, 2, 16384, 32768, 1048576, 2097152, 0,
  32535. /* 5852 */ 8396800, 0, 0, 4, 8, 0, 0, 16384, 0, 2, 4, 128, 3584, 16384, 16384, 16384, 16777216, 16384, 229376,
  32536. /* 5871 */ 25165824, 33554432, 268435456, 536870912, 524288, 268567040, 16384, -2113929088, 2113544, 68423701,
  32537. /* 5881 */ 68423701, 68423701, 68423701, 68489237, 68423701, 68423701, 68423701, 85200917, 68423701, 68489237,
  32538. /* 5891 */ 72618005, 68423701, 68423701, -2079059883, 68423701, -2079059883, 68425749, 68423703, 69488664, 85200919,
  32539. /* 5901 */ 69488664, 69488664, 69488664, 69488664, 70537244, 70537245, 70537245, 70537245, 70537245, 70537245,
  32540. /* 5911 */ 70539293, -2022351809, -2076946339, 70537245, -2076946339, -2076946339, -2022351681, -2022351681,
  32541. /* 5919 */ -2022351681, -2022351681, -2022351809, -2022351681, -2022351809, -2022351681, 32768, 65536, 4194304,
  32542. /* 5928 */ 16777216, 0x80000000, 0, 0, 0, 8388608, 134217728, 1073741824, 131584, 268435456, 0, 0, 4, 128, 1048576,
  32543. /* 5943 */ 67108864, 0, 0, 4, 256, 1024, 98304, 0, 0, 5242880, -2080374784, 268288, 0, 0, 4, 16777216, 0, 0, 23, 0, 0,
  32544. /* 5964 */ 0, 867391, 24, 282624, 0, 0, 6, 0, 0, 0, 2097152, 0, 0, 0, 28, 3145728, 0, 0, 32768, 65536, 0, 284672, 0,
  32545. /* 5987 */ 0, 0, 1048576, 0, 63, 128, 351232, 7340032, -2030043136, 0, 0, 131072, 268435456, 0, 0, 8, 32, 64, 16,
  32546. /* 6006 */ 4096, 262144, 1048576, 1073741824, 0, 0, 0, -2046820352, 0, 20480, 0, 0, 8, 4194304, 0, 0, 15, 16, 32,
  32547. /* 6025 */ 3072, 20480, 65536, 262144, 7340032, 50331648, 16, 32, 128, 3072, 20480, 0, 1, 4, 1048576, 4096, 1048576,
  32548. /* 6042 */ 512, 0, 0, 0, 150528, 0, 0, 0, 5242880, 0, 7, 0, 14, 32, 1024, 2048, 12288, 1, 14, 32, 128, 1024, 7340032,
  32549. /* 6065 */ 50331648, 0x80000000, 0, 0, 2048, 16384, 65536, 7340032, 50331648, 8, 32, 1024, 65536, 262144, 2097152,
  32550. /* 6080 */ 1073741824, 0, 1, 6, 8, 32, 128, 1024, 65536, 2097152, 4194304, 50331648, 0x80000000, 0, 1, 2, 4, 2097152,
  32551. /* 6098 */ 4194304, 67108864, 134217728, 536870912, 0, 32768, 4194304, 16777216, 0, 1, 2, 4, 50331648, 67108864,
  32552. /* 6112 */ 0x80000000, 0, 0, 128, 50331648, 0, 0, 8, 33554432, 4096, 4194304, 268435456, 0, 0, 32768, 131072, 131072,
  32553. /* 6129 */ 0, 32768, 32768, 268435968, 268435968, 1073743872, 268435968, 0, 128, 6144, 0, 229376, 128, 268435968,
  32554. /* 6143 */ 16777220, 268436032, 256, 256, 256, 256, 257, 256, 256, 536871168, 256, 256, 256, 256, 384, -1879046336,
  32555. /* 6159 */ -1879046334, 1073744256, -1879046334, -1879046326, -1879046334, -1879046334, -1879046326, -1879046326,
  32556. /* 6167 */ -1845491902, -1878784182, 268444480, 268444480, 268444480, 268444480, 2100318145, 268436288, 268436288,
  32557. /* 6176 */ 268436288, 268436288, 268436289, 268436288, 2100318149, 2100318149, 2100318149, 2100318149, 2100326337,
  32558. /* 6185 */ 2100318149, 2100318149, 2100318145, 2100318149, 2100318145, 2100318149, 2100326341, 2100318149, 2100326341,
  32559. /* 6194 */ 2100326341, 0, 1, 16, 32, 128, 512, 0, 4194304, 1, 1024, 0, 0, 229376, 0, 0, 12, 3145728, 0, 0, 576, 0, 0,
  32560. /* 6217 */ 16, 8192, 0, 0, 16, 262144, 0, 384, 0, 0, 21, 266240, 1864, 0, 0, 0, 8388608, 0, 0, 0, 128, 0, 0, 0, 256,
  32561. /* 6242 */ 0, 0, 0, 260, 512, 0, 1, 4036, 19939328, 2080374784, 0, 0, 0, 16777216, 0, 0, 0, 32, 0, 0, 0, 40, 67108864,
  32562. /* 6265 */ 0, 19947520, 0, 0, 0, 19947520, 2304, 0, 8, 0, 512, 301989888, 0, 0, 262144, 16777216, 0, 1, 4, 64, 128,
  32563. /* 6286 */ 64, 128, 3840, 16384, 19922944, 19922944, 2080374784, 0, 0, 29, 0, 0, 1536, 0x80000000, 0, 0, 32, 1, 8, 0,
  32564. /* 6306 */ 33554432, 0, 0, 32768, 196608, 0, 0, 0, 33554432, 0, 0, 32768, 65536, 131072, 0, 0, 524288, 524288, 524288,
  32565. /* 6325 */ 524288, 64, 64, 64, 32, 96, 8, 0, 33554432, 262144, 8192, 0, 0, 4194304, 1024, 0, 4096, 0, 1024, 2048,
  32566. /* 6345 */ 16384, 3145728, 2048, 524288, 536870912, 1073741824, 8, 0, 0, 512, 131072, 0, 0, 64, 256, 1536, 2048,
  32567. /* 6362 */ 33554432, 8192, 0, 0, 32, 64, 256, 32768, 65536, 16777216, 134217728, 536870912, 1073741824, 0, 3145728,
  32568. /* 6377 */ 16777216, 536870912, 1073741824, 0, 0, 8192, 8192, 8192, 9216, 33554432, 0, 2097152, 16777216, 1073741824,
  32569. /* 6391 */ 0, 0, 32768, 0, 16777216, 0, 16777216, 64, 0, 2, 0, 0, 32768, 16777216, 0, 0, 32, 512, 128, 131072, 0,
  32570. /* 6412 */ 134218752, 0, 0, 44, 0, 66048, 0, 0, 0, 67108864, 0, 0, 0, 8192, 0, 8192, 0, 536870912, 0, 0, 0, 12289, 0,
  32571. /* 6435 */ 268500992, 4243456, 0, 0, 59, 140224, 5505024, -1887436800, 0, 0, 2, 2, 4096, 4096, 0, 4096, 8192,
  32572. /* 6452 */ 67108864, 0, 0, 1, 4032, 0, 4243456, 4096, 1048588, 12289, 1124073472, 1124073472, 1124073472, 1124073472,
  32573. /* 6466 */ 1124073472, 1124073488, 1124073472, 1124073472, 1124073474, 1124073472, 1124073472, 1392574464, 1124073472,
  32574. /* 6475 */ 12289, 1073754113, 12289, 12289, 1124073472, 12289, 12289, 1098920193, 1098920193, 1124073488, 1124073472,
  32575. /* 6486 */ 1258292224, 1124073472, 1124073472, 1124073472, 1124085761, 1258304513, 1124085761, 1124085761, 1124085761,
  32576. /* 6495 */ 1124085777, 1132474625, 1098920209, 1132474625, 1132474625, 1132474625, 1132474625, 1400975617, 2132360255,
  32577. /* 6504 */ 2132622399, 2132622399, 2132360255, 2132360255, 2132360255, 2132360255, 2132622399, 2132360255, 2132360255,
  32578. /* 6513 */ 2132360255, 2140749119, 2132360255, 2140749119, 2140749119, 0, 65536, 268435456, 49152, 184549376, 0, 0, 0,
  32579. /* 6526 */ 83886080, 0, 0, 318767104, 0, 0, 32768, 100663296, 402653184, 1610612736, 0, 0, 0, 231488, 0, 12545,
  32580. /* 6542 */ 25165824, 0, 0, 49152, 0, 0, 256, 1536, 65536, 0, 0, 58720256, 0, 0, 131072, 32768, 0, 0, 134217728, 0,
  32581. /* 6562 */ 12305, 13313, 0, 0, 331776, 83886080, 117440512, 0, 0, 1, 6, 32, 64, 0, 78081, 327155712, 0, 0, 511808,
  32582. /* 6581 */ 7864320, 512, 65536, 0, 0, 64, 65536, 1048576, 0, 0, 33554432, 1073741824, 0, 0, 110, 0, 0, 256, 8388608,
  32583. /* 6600 */ 0, 0, 524288, 2097152, 0x80000000, 0, 0, 77824, 0, 0, 0, 268435456, 524288, 1048576, 16777216, 100663296,
  32584. /* 6616 */ 134217728, 0, 339968, 0, 0, 128, 131072, 1024, 134217728, 0, 268435456, 0, 0, 128, 33554432, 0, 0, 1,
  32585. /* 6634 */ 12288, 0, 0, 0, 134217728, 2048, 12288, 65536, 524288, 1048576, 1048576, 33554432, 67108864, 134217728,
  32586. /* 6648 */ 805306368, 0, 327680, 0, 0, 256, 65536, 0, 0, 268435456, 1048576, 33554432, 134217728, 805306368, 1, 14,
  32587. /* 6664 */ 16, 1024, 4096, 8192, 229376, 65536, 524288, 33554432, 134217728, 536870912, 1073741824, 0, 1, 14, 1024,
  32588. /* 6679 */ 2048, 4096, 8192, 131072, 1048576, 8388608, 33554432, 134217728, 0x80000000, 0, 0, 4096, 65536, 524288,
  32589. /* 6693 */ 134217728, 16384, 4194304, 0, 0, 999, 29619200, 2113929216, 0, 0, 0, 148480, 1, 12, 1024, 134217728, 0,
  32590. /* 6710 */ 128, 134217728, 8, 0, 8, 8, 8, 0, 1, 4, 8, 134217728, 536870912, 0, 0, 1073741824, 32768, 0, 4, 8,
  32591. /* 6730 */ 536870912, 0, 0, 1024, 1024, 0, 1024, 2048, 3145728, 0, 8, 32, 512, 4096, 8192, 0, 0, 68157440, 137363456,
  32592. /* 6749 */ 0, 66, 66, 524288, 4100, 1024, 0, 0, 605247, 1058013184, 1073741824, 100680704, 25165824, 92274688,
  32593. /* 6763 */ 25165824, 25165824, 92274688, 92274688, 25165952, 25165824, 25165824, 26214400, 92274688, 25165824,
  32594. /* 6773 */ 92274688, 93323264, 92274688, 92274688, 92274688, 92274688, 92274720, 93323264, 25165890, 100721664,
  32595. /* 6783 */ 25165890, 100721928, 100721928, 100787464, 100853000, 100721928, 100721928, 125977600, 125977600,
  32596. /* 6792 */ 125977600, 125977600, 125846528, 125846528, 126895104, 125846528, 125846528, 125846528, 125846560,
  32597. /* 6801 */ 125977600, 127026176, 125977600, 125977600, 127026176, 127026176, 281843, 1330419, 281843, 1330419, 281843,
  32598. /* 6812 */ 281843, 1330419, 1330419, 281843, 281843, 5524723, 5524723, 5524723, 5524723, 93605107, 5524723, 39079155,
  32599. /* 6824 */ 72633587, 72633587, 5524723, 92556531, 93605107, 93605107, 127290611, 97799411, 127290611, 131484915,
  32600. /* 6834 */ 2097152, 134217728, 0, 0, 1024, 65536, 58368, 0, 0, 0, 301989888, 8, 124160, 189696, 0, 0, 605503,
  32601. /* 6851 */ 1066401792, 0, 0, 3, 240, 19456, 262144, 0, 150528, 0, 0, 0, 536870912, 0, 1073741824, 0, 57344, 0, 0, 0,
  32602. /* 6871 */ 1073741824, 0, 0, 0, 1, 2, 112, 128, 3072, 16384, 262144, 2048, 16384, 262144, 0, 0, 2097152, 16777216, 0,
  32603. /* 6890 */ 0, 0, 1, 2, 48, 64, 0, 1, 2, 16, 32, 64, 384, 8192, 131072, 1048576, 32, 4096, 8192, 131072, 0, 0, 32768,
  32604. /* 6913 */ 0, 256, 0, 256, 0, 65536, 1024, 2048, 262144, 0, 0, 32768, 256, 0, 0, 1024, 2097152, 0, 0, 0, 16384, 0, 0,
  32605. /* 6936 */ 0, 4, 0, 0, 0, 5, 64, 128, 262144, 0, 0, 2097152, 268435456, 0, 0, 64, 128, 0, 0, 1536, 1792, 1, 2, 16, 64,
  32606. /* 6961 */ 0, 0
  32607. ];
  32608. XQueryParser.TOKEN =
  32609. [
  32610. "(0)",
  32611. "PragmaContents",
  32612. "DirCommentContents",
  32613. "DirPIContents",
  32614. "CDataSection",
  32615. "Wildcard",
  32616. "EQName",
  32617. "URILiteral",
  32618. "IntegerLiteral",
  32619. "DecimalLiteral",
  32620. "DoubleLiteral",
  32621. "StringLiteral",
  32622. "PredefinedEntityRef",
  32623. "'\"\"'",
  32624. "EscapeApos",
  32625. "ElementContentChar",
  32626. "QuotAttrContentChar",
  32627. "AposAttrContentChar",
  32628. "PITarget",
  32629. "NCName",
  32630. "QName",
  32631. "S",
  32632. "S",
  32633. "CharRef",
  32634. "CommentContents",
  32635. "EOF",
  32636. "'!'",
  32637. "'!='",
  32638. "'\"'",
  32639. "'#'",
  32640. "'#)'",
  32641. "'$'",
  32642. "'%'",
  32643. "''''",
  32644. "'('",
  32645. "'(#'",
  32646. "'(:'",
  32647. "')'",
  32648. "'*'",
  32649. "'*'",
  32650. "'+'",
  32651. "','",
  32652. "'-'",
  32653. "'-->'",
  32654. "'.'",
  32655. "'..'",
  32656. "'/'",
  32657. "'//'",
  32658. "'/>'",
  32659. "':'",
  32660. "':)'",
  32661. "'::'",
  32662. "':='",
  32663. "';'",
  32664. "'<'",
  32665. "'<!--'",
  32666. "'</'",
  32667. "'<<'",
  32668. "'<='",
  32669. "'<?'",
  32670. "'='",
  32671. "'>'",
  32672. "'>='",
  32673. "'>>'",
  32674. "'?'",
  32675. "'?>'",
  32676. "'@'",
  32677. "'NaN'",
  32678. "'['",
  32679. "']'",
  32680. "'after'",
  32681. "'all'",
  32682. "'allowing'",
  32683. "'ancestor'",
  32684. "'ancestor-or-self'",
  32685. "'and'",
  32686. "'any'",
  32687. "'append'",
  32688. "'array'",
  32689. "'as'",
  32690. "'ascending'",
  32691. "'at'",
  32692. "'attribute'",
  32693. "'base-uri'",
  32694. "'before'",
  32695. "'boundary-space'",
  32696. "'break'",
  32697. "'by'",
  32698. "'case'",
  32699. "'cast'",
  32700. "'castable'",
  32701. "'catch'",
  32702. "'check'",
  32703. "'child'",
  32704. "'collation'",
  32705. "'collection'",
  32706. "'comment'",
  32707. "'constraint'",
  32708. "'construction'",
  32709. "'contains'",
  32710. "'content'",
  32711. "'context'",
  32712. "'continue'",
  32713. "'copy'",
  32714. "'copy-namespaces'",
  32715. "'count'",
  32716. "'decimal-format'",
  32717. "'decimal-separator'",
  32718. "'declare'",
  32719. "'default'",
  32720. "'delete'",
  32721. "'descendant'",
  32722. "'descendant-or-self'",
  32723. "'descending'",
  32724. "'diacritics'",
  32725. "'different'",
  32726. "'digit'",
  32727. "'distance'",
  32728. "'div'",
  32729. "'document'",
  32730. "'document-node'",
  32731. "'element'",
  32732. "'else'",
  32733. "'empty'",
  32734. "'empty-sequence'",
  32735. "'encoding'",
  32736. "'end'",
  32737. "'entire'",
  32738. "'eq'",
  32739. "'every'",
  32740. "'exactly'",
  32741. "'except'",
  32742. "'exit'",
  32743. "'external'",
  32744. "'first'",
  32745. "'following'",
  32746. "'following-sibling'",
  32747. "'for'",
  32748. "'foreach'",
  32749. "'foreign'",
  32750. "'from'",
  32751. "'ft-option'",
  32752. "'ftand'",
  32753. "'ftnot'",
  32754. "'ftor'",
  32755. "'function'",
  32756. "'ge'",
  32757. "'greatest'",
  32758. "'group'",
  32759. "'grouping-separator'",
  32760. "'gt'",
  32761. "'idiv'",
  32762. "'if'",
  32763. "'import'",
  32764. "'in'",
  32765. "'index'",
  32766. "'infinity'",
  32767. "'inherit'",
  32768. "'insensitive'",
  32769. "'insert'",
  32770. "'instance'",
  32771. "'integrity'",
  32772. "'intersect'",
  32773. "'into'",
  32774. "'is'",
  32775. "'item'",
  32776. "'json'",
  32777. "'json-item'",
  32778. "'key'",
  32779. "'language'",
  32780. "'last'",
  32781. "'lax'",
  32782. "'le'",
  32783. "'least'",
  32784. "'let'",
  32785. "'levels'",
  32786. "'loop'",
  32787. "'lowercase'",
  32788. "'lt'",
  32789. "'minus-sign'",
  32790. "'mod'",
  32791. "'modify'",
  32792. "'module'",
  32793. "'most'",
  32794. "'namespace'",
  32795. "'namespace-node'",
  32796. "'ne'",
  32797. "'next'",
  32798. "'no'",
  32799. "'no-inherit'",
  32800. "'no-preserve'",
  32801. "'node'",
  32802. "'nodes'",
  32803. "'not'",
  32804. "'object'",
  32805. "'occurs'",
  32806. "'of'",
  32807. "'on'",
  32808. "'only'",
  32809. "'option'",
  32810. "'or'",
  32811. "'order'",
  32812. "'ordered'",
  32813. "'ordering'",
  32814. "'paragraph'",
  32815. "'paragraphs'",
  32816. "'parent'",
  32817. "'pattern-separator'",
  32818. "'per-mille'",
  32819. "'percent'",
  32820. "'phrase'",
  32821. "'position'",
  32822. "'preceding'",
  32823. "'preceding-sibling'",
  32824. "'preserve'",
  32825. "'previous'",
  32826. "'processing-instruction'",
  32827. "'relationship'",
  32828. "'rename'",
  32829. "'replace'",
  32830. "'return'",
  32831. "'returning'",
  32832. "'revalidation'",
  32833. "'same'",
  32834. "'satisfies'",
  32835. "'schema'",
  32836. "'schema-attribute'",
  32837. "'schema-element'",
  32838. "'score'",
  32839. "'self'",
  32840. "'sensitive'",
  32841. "'sentence'",
  32842. "'sentences'",
  32843. "'skip'",
  32844. "'sliding'",
  32845. "'some'",
  32846. "'stable'",
  32847. "'start'",
  32848. "'stemming'",
  32849. "'stop'",
  32850. "'strict'",
  32851. "'strip'",
  32852. "'structured-item'",
  32853. "'switch'",
  32854. "'text'",
  32855. "'then'",
  32856. "'thesaurus'",
  32857. "'times'",
  32858. "'to'",
  32859. "'treat'",
  32860. "'try'",
  32861. "'tumbling'",
  32862. "'type'",
  32863. "'typeswitch'",
  32864. "'union'",
  32865. "'unique'",
  32866. "'unordered'",
  32867. "'updating'",
  32868. "'uppercase'",
  32869. "'using'",
  32870. "'validate'",
  32871. "'value'",
  32872. "'variable'",
  32873. "'version'",
  32874. "'weight'",
  32875. "'when'",
  32876. "'where'",
  32877. "'while'",
  32878. "'wildcards'",
  32879. "'window'",
  32880. "'with'",
  32881. "'without'",
  32882. "'word'",
  32883. "'words'",
  32884. "'xquery'",
  32885. "'zero-digit'",
  32886. "'{'",
  32887. "'{{'",
  32888. "'{|'",
  32889. "'|'",
  32890. "'||'",
  32891. "'|}'",
  32892. "'}'",
  32893. "'}}'"
  32894. ];
  32895. // line 1179 "XQueryParser.ebnf"
  32896. });
  32897. // line 33487 "XQueryParser.js"
  32898. // End