parser.go 143 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758
  1. // CAUTION: Generated file - DO NOT EDIT.
  2. // Copyright (c) 2014 The ql Authors. All rights reserved.
  3. // Use of this source code is governed by a BSD-style
  4. // license that can be found in the LICENSE file.
  5. // Initial yacc source generated by ebnf2y[1]
  6. // at 2013-10-04 23:10:47.861401015 +0200 CEST
  7. //
  8. // $ ebnf2y -o ql.y -oe ql.ebnf -start StatementList -pkg ql -p _
  9. //
  10. // [1]: http://github.com/cznic/ebnf2y
  11. package ql
  12. import __yyfmt__ "fmt"
  13. import (
  14. "fmt"
  15. "github.com/cznic/mathutil"
  16. )
  17. type yySymType struct {
  18. yys int
  19. line int
  20. col int
  21. item interface{}
  22. list []interface{}
  23. }
  24. type yyXError struct {
  25. state, xsym int
  26. }
  27. const (
  28. yyDefault = 57437
  29. yyEOFCode = 57344
  30. add = 57352
  31. alter = 57353
  32. and = 57354
  33. andand = 57355
  34. andnot = 57356
  35. as = 57357
  36. asc = 57358
  37. begin = 57359
  38. between = 57360
  39. bigIntType = 57361
  40. bigRatType = 57362
  41. blobType = 57363
  42. boolType = 57364
  43. by = 57365
  44. byteType = 57366
  45. column = 57367
  46. commit = 57368
  47. complex128Type = 57369
  48. complex64Type = 57370
  49. create = 57371
  50. defaultKwd = 57372
  51. deleteKwd = 57373
  52. desc = 57374
  53. distinct = 57375
  54. drop = 57376
  55. durationType = 57377
  56. eq = 57378
  57. yyErrCode = 57345
  58. exists = 57379
  59. explain = 57380
  60. falseKwd = 57381
  61. float32Type = 57383
  62. float64Type = 57384
  63. floatLit = 57346
  64. floatType = 57382
  65. from = 57385
  66. full = 57386
  67. ge = 57387
  68. group = 57388
  69. identifier = 57347
  70. ifKwd = 57389
  71. imaginaryLit = 57348
  72. in = 57390
  73. index = 57391
  74. insert = 57392
  75. int16Type = 57394
  76. int32Type = 57395
  77. int64Type = 57396
  78. int8Type = 57397
  79. intLit = 57349
  80. intType = 57393
  81. into = 57398
  82. is = 57399
  83. join = 57400
  84. le = 57401
  85. left = 57402
  86. like = 57403
  87. limit = 57404
  88. lsh = 57405
  89. neq = 57406
  90. not = 57407
  91. null = 57408
  92. offset = 57409
  93. on = 57410
  94. or = 57411
  95. order = 57412
  96. oror = 57413
  97. outer = 57414
  98. parseExpression = 57436
  99. qlParam = 57350
  100. right = 57415
  101. rollback = 57416
  102. rsh = 57417
  103. runeType = 57418
  104. selectKwd = 57419
  105. set = 57420
  106. stringLit = 57351
  107. stringType = 57421
  108. tableKwd = 57422
  109. timeType = 57423
  110. transaction = 57424
  111. trueKwd = 57425
  112. truncate = 57426
  113. uint16Type = 57428
  114. uint32Type = 57429
  115. uint64Type = 57430
  116. uint8Type = 57431
  117. uintType = 57427
  118. unique = 57432
  119. update = 57433
  120. values = 57434
  121. where = 57435
  122. yyMaxDepth = 200
  123. yyTabOfs = -218
  124. )
  125. var (
  126. yyXLAT = map[int]int{
  127. 59: 0, // ';' (192x)
  128. 57344: 1, // $end (191x)
  129. 41: 2, // ')' (164x)
  130. 43: 3, // '+' (135x)
  131. 45: 4, // '-' (135x)
  132. 94: 5, // '^' (135x)
  133. 44: 6, // ',' (130x)
  134. 40: 7, // '(' (127x)
  135. 57347: 8, // identifier (118x)
  136. 57409: 9, // offset (103x)
  137. 57404: 10, // limit (101x)
  138. 57372: 11, // defaultKwd (94x)
  139. 57412: 12, // order (90x)
  140. 57435: 13, // where (87x)
  141. 57408: 14, // null (86x)
  142. 57361: 15, // bigIntType (85x)
  143. 57362: 16, // bigRatType (85x)
  144. 57363: 17, // blobType (85x)
  145. 57364: 18, // boolType (85x)
  146. 57366: 19, // byteType (85x)
  147. 57369: 20, // complex128Type (85x)
  148. 57370: 21, // complex64Type (85x)
  149. 57377: 22, // durationType (85x)
  150. 57383: 23, // float32Type (85x)
  151. 57384: 24, // float64Type (85x)
  152. 57382: 25, // floatType (85x)
  153. 57394: 26, // int16Type (85x)
  154. 57395: 27, // int32Type (85x)
  155. 57396: 28, // int64Type (85x)
  156. 57397: 29, // int8Type (85x)
  157. 57393: 30, // intType (85x)
  158. 57418: 31, // runeType (85x)
  159. 57421: 32, // stringType (85x)
  160. 57423: 33, // timeType (85x)
  161. 57428: 34, // uint16Type (85x)
  162. 57429: 35, // uint32Type (85x)
  163. 57430: 36, // uint64Type (85x)
  164. 57431: 37, // uint8Type (85x)
  165. 57427: 38, // uintType (85x)
  166. 57381: 39, // falseKwd (83x)
  167. 57346: 40, // floatLit (83x)
  168. 57348: 41, // imaginaryLit (83x)
  169. 57349: 42, // intLit (83x)
  170. 57350: 43, // qlParam (83x)
  171. 57351: 44, // stringLit (83x)
  172. 57425: 45, // trueKwd (83x)
  173. 57388: 46, // group (81x)
  174. 57407: 47, // not (81x)
  175. 57411: 48, // or (81x)
  176. 57413: 49, // oror (81x)
  177. 33: 50, // '!' (79x)
  178. 57385: 51, // from (75x)
  179. 57358: 52, // asc (71x)
  180. 57374: 53, // desc (71x)
  181. 93: 54, // ']' (70x)
  182. 57357: 55, // as (69x)
  183. 58: 56, // ':' (67x)
  184. 57354: 57, // and (67x)
  185. 57355: 58, // andand (65x)
  186. 124: 59, // '|' (56x)
  187. 61: 60, // '=' (55x)
  188. 57360: 61, // between (54x)
  189. 57390: 62, // in (54x)
  190. 60: 63, // '<' (53x)
  191. 62: 64, // '>' (53x)
  192. 57378: 65, // eq (53x)
  193. 57387: 66, // ge (53x)
  194. 57399: 67, // is (53x)
  195. 57401: 68, // le (53x)
  196. 57403: 69, // like (53x)
  197. 57406: 70, // neq (53x)
  198. 57514: 71, // Type (52x)
  199. 57453: 72, // Conversion (51x)
  200. 57484: 73, // Literal (51x)
  201. 57485: 74, // Operand (51x)
  202. 57489: 75, // PrimaryExpression (51x)
  203. 57492: 76, // QualifiedIdent (51x)
  204. 42: 77, // '*' (48x)
  205. 57515: 78, // UnaryExpr (47x)
  206. 37: 79, // '%' (44x)
  207. 38: 80, // '&' (44x)
  208. 47: 81, // '/' (44x)
  209. 57356: 82, // andnot (44x)
  210. 57405: 83, // lsh (44x)
  211. 57417: 84, // rsh (44x)
  212. 57491: 85, // PrimaryTerm (40x)
  213. 57490: 86, // PrimaryFactor (36x)
  214. 91: 87, // '[' (31x)
  215. 57471: 88, // Factor (25x)
  216. 57472: 89, // Factor1 (25x)
  217. 57512: 90, // Term (24x)
  218. 57468: 91, // Expression (23x)
  219. 57520: 92, // logOr (16x)
  220. 57446: 93, // ColumnName (10x)
  221. 57386: 94, // full (10x)
  222. 57402: 95, // left (10x)
  223. 57415: 96, // right (10x)
  224. 57419: 97, // selectKwd (10x)
  225. 57511: 98, // TableName (9x)
  226. 57449: 99, // CommaOpt (7x)
  227. 57469: 100, // ExpressionList (7x)
  228. 57410: 101, // on (7x)
  229. 57498: 102, // SelectStmt (7x)
  230. 57400: 103, // join (6x)
  231. 57443: 104, // Call (5x)
  232. 57376: 105, // drop (5x)
  233. 57477: 106, // Index (5x)
  234. 57507: 107, // Slice (5x)
  235. 57445: 108, // ColumnDef (4x)
  236. 57379: 109, // exists (4x)
  237. 57389: 110, // ifKwd (4x)
  238. 57391: 111, // index (4x)
  239. 57414: 112, // outer (4x)
  240. 57422: 113, // tableKwd (4x)
  241. 57434: 114, // values (4x)
  242. 57353: 115, // alter (3x)
  243. 57438: 116, // AlterTableStmt (3x)
  244. 57359: 117, // begin (3x)
  245. 57442: 118, // BeginTransactionStmt (3x)
  246. 57368: 119, // commit (3x)
  247. 57450: 120, // CommitStmt (3x)
  248. 57371: 121, // create (3x)
  249. 57455: 122, // CreateIndexStmt (3x)
  250. 57457: 123, // CreateTableStmt (3x)
  251. 57461: 124, // DeleteFromStmt (3x)
  252. 57373: 125, // deleteKwd (3x)
  253. 57463: 126, // DropIndexStmt (3x)
  254. 57464: 127, // DropTableStmt (3x)
  255. 57465: 128, // EmptyStmt (3x)
  256. 57380: 129, // explain (3x)
  257. 57467: 130, // ExplainStmt (3x)
  258. 57392: 131, // insert (3x)
  259. 57478: 132, // InsertIntoStmt (3x)
  260. 57493: 133, // RecordSet (3x)
  261. 57494: 134, // RecordSet1 (3x)
  262. 57416: 135, // rollback (3x)
  263. 57497: 136, // RollbackStmt (3x)
  264. 57521: 137, // semiOpt (3x)
  265. 57509: 138, // Statement (3x)
  266. 57426: 139, // truncate (3x)
  267. 57513: 140, // TruncateTableStmt (3x)
  268. 57433: 141, // update (3x)
  269. 57516: 142, // UpdateStmt (3x)
  270. 57518: 143, // WhereClause (3x)
  271. 57352: 144, // add (2x)
  272. 57439: 145, // Assignment (2x)
  273. 57365: 146, // by (2x)
  274. 57447: 147, // ColumnNameList (2x)
  275. 57458: 148, // CreateTableStmt1 (2x)
  276. 57473: 149, // Field (2x)
  277. 57519: 150, // logAnd (2x)
  278. 57420: 151, // set (2x)
  279. 46: 152, // '.' (1x)
  280. 57440: 153, // AssignmentList (1x)
  281. 57441: 154, // AssignmentList1 (1x)
  282. 57444: 155, // Call1 (1x)
  283. 57367: 156, // column (1x)
  284. 57448: 157, // ColumnNameList1 (1x)
  285. 57451: 158, // Constraint (1x)
  286. 57452: 159, // ConstraintOpt (1x)
  287. 57454: 160, // CreateIndexIfNotExists (1x)
  288. 57456: 161, // CreateIndexStmtUnique (1x)
  289. 57459: 162, // Default (1x)
  290. 57460: 163, // DefaultOpt (1x)
  291. 57375: 164, // distinct (1x)
  292. 57462: 165, // DropIndexIfExists (1x)
  293. 57466: 166, // Eq (1x)
  294. 57470: 167, // ExpressionList1 (1x)
  295. 57474: 168, // Field1 (1x)
  296. 57475: 169, // FieldList (1x)
  297. 57476: 170, // GroupByClause (1x)
  298. 57479: 171, // InsertIntoStmt1 (1x)
  299. 57480: 172, // InsertIntoStmt2 (1x)
  300. 57398: 173, // into (1x)
  301. 57481: 174, // JoinClause (1x)
  302. 57482: 175, // JoinClauseOpt (1x)
  303. 57483: 176, // JoinType (1x)
  304. 57486: 177, // OrderBy (1x)
  305. 57487: 178, // OrderBy1 (1x)
  306. 57488: 179, // OuterOpt (1x)
  307. 57436: 180, // parseExpression (1x)
  308. 57495: 181, // RecordSet2 (1x)
  309. 57496: 182, // RecordSetList (1x)
  310. 57499: 183, // SelectStmtDistinct (1x)
  311. 57500: 184, // SelectStmtFieldList (1x)
  312. 57501: 185, // SelectStmtGroup (1x)
  313. 57502: 186, // SelectStmtLimit (1x)
  314. 57503: 187, // SelectStmtOffset (1x)
  315. 57504: 188, // SelectStmtOrder (1x)
  316. 57505: 189, // SelectStmtWhere (1x)
  317. 57506: 190, // SetOpt (1x)
  318. 57508: 191, // Start (1x)
  319. 57510: 192, // StatementList (1x)
  320. 57424: 193, // transaction (1x)
  321. 57432: 194, // unique (1x)
  322. 57517: 195, // UpdateStmt1 (1x)
  323. 57437: 196, // $default (0x)
  324. 57345: 197, // error (0x)
  325. }
  326. yySymNames = []string{
  327. "';'",
  328. "$end",
  329. "')'",
  330. "'+'",
  331. "'-'",
  332. "'^'",
  333. "','",
  334. "'('",
  335. "identifier",
  336. "offset",
  337. "limit",
  338. "defaultKwd",
  339. "order",
  340. "where",
  341. "null",
  342. "bigIntType",
  343. "bigRatType",
  344. "blobType",
  345. "boolType",
  346. "byteType",
  347. "complex128Type",
  348. "complex64Type",
  349. "durationType",
  350. "float32Type",
  351. "float64Type",
  352. "floatType",
  353. "int16Type",
  354. "int32Type",
  355. "int64Type",
  356. "int8Type",
  357. "intType",
  358. "runeType",
  359. "stringType",
  360. "timeType",
  361. "uint16Type",
  362. "uint32Type",
  363. "uint64Type",
  364. "uint8Type",
  365. "uintType",
  366. "falseKwd",
  367. "floatLit",
  368. "imaginaryLit",
  369. "intLit",
  370. "qlParam",
  371. "stringLit",
  372. "trueKwd",
  373. "group",
  374. "not",
  375. "or",
  376. "oror",
  377. "'!'",
  378. "from",
  379. "asc",
  380. "desc",
  381. "']'",
  382. "as",
  383. "':'",
  384. "and",
  385. "andand",
  386. "'|'",
  387. "'='",
  388. "between",
  389. "in",
  390. "'<'",
  391. "'>'",
  392. "eq",
  393. "ge",
  394. "is",
  395. "le",
  396. "like",
  397. "neq",
  398. "Type",
  399. "Conversion",
  400. "Literal",
  401. "Operand",
  402. "PrimaryExpression",
  403. "QualifiedIdent",
  404. "'*'",
  405. "UnaryExpr",
  406. "'%'",
  407. "'&'",
  408. "'/'",
  409. "andnot",
  410. "lsh",
  411. "rsh",
  412. "PrimaryTerm",
  413. "PrimaryFactor",
  414. "'['",
  415. "Factor",
  416. "Factor1",
  417. "Term",
  418. "Expression",
  419. "logOr",
  420. "ColumnName",
  421. "full",
  422. "left",
  423. "right",
  424. "selectKwd",
  425. "TableName",
  426. "CommaOpt",
  427. "ExpressionList",
  428. "on",
  429. "SelectStmt",
  430. "join",
  431. "Call",
  432. "drop",
  433. "Index",
  434. "Slice",
  435. "ColumnDef",
  436. "exists",
  437. "ifKwd",
  438. "index",
  439. "outer",
  440. "tableKwd",
  441. "values",
  442. "alter",
  443. "AlterTableStmt",
  444. "begin",
  445. "BeginTransactionStmt",
  446. "commit",
  447. "CommitStmt",
  448. "create",
  449. "CreateIndexStmt",
  450. "CreateTableStmt",
  451. "DeleteFromStmt",
  452. "deleteKwd",
  453. "DropIndexStmt",
  454. "DropTableStmt",
  455. "EmptyStmt",
  456. "explain",
  457. "ExplainStmt",
  458. "insert",
  459. "InsertIntoStmt",
  460. "RecordSet",
  461. "RecordSet1",
  462. "rollback",
  463. "RollbackStmt",
  464. "semiOpt",
  465. "Statement",
  466. "truncate",
  467. "TruncateTableStmt",
  468. "update",
  469. "UpdateStmt",
  470. "WhereClause",
  471. "add",
  472. "Assignment",
  473. "by",
  474. "ColumnNameList",
  475. "CreateTableStmt1",
  476. "Field",
  477. "logAnd",
  478. "set",
  479. "'.'",
  480. "AssignmentList",
  481. "AssignmentList1",
  482. "Call1",
  483. "column",
  484. "ColumnNameList1",
  485. "Constraint",
  486. "ConstraintOpt",
  487. "CreateIndexIfNotExists",
  488. "CreateIndexStmtUnique",
  489. "Default",
  490. "DefaultOpt",
  491. "distinct",
  492. "DropIndexIfExists",
  493. "Eq",
  494. "ExpressionList1",
  495. "Field1",
  496. "FieldList",
  497. "GroupByClause",
  498. "InsertIntoStmt1",
  499. "InsertIntoStmt2",
  500. "into",
  501. "JoinClause",
  502. "JoinClauseOpt",
  503. "JoinType",
  504. "OrderBy",
  505. "OrderBy1",
  506. "OuterOpt",
  507. "parseExpression",
  508. "RecordSet2",
  509. "RecordSetList",
  510. "SelectStmtDistinct",
  511. "SelectStmtFieldList",
  512. "SelectStmtGroup",
  513. "SelectStmtLimit",
  514. "SelectStmtOffset",
  515. "SelectStmtOrder",
  516. "SelectStmtWhere",
  517. "SetOpt",
  518. "Start",
  519. "StatementList",
  520. "transaction",
  521. "unique",
  522. "UpdateStmt1",
  523. "$default",
  524. "error",
  525. }
  526. yyTokenLiteralStrings = map[int]string{
  527. 57347: "identifier",
  528. 57409: "OFFSET",
  529. 57404: "LIMIT",
  530. 57372: "DEFAULT",
  531. 57412: "ORDER",
  532. 57435: "WHERE",
  533. 57408: "NULL",
  534. 57361: "bigint",
  535. 57362: "bigrat",
  536. 57363: "blob",
  537. 57364: "bool",
  538. 57366: "byte",
  539. 57369: "complex128",
  540. 57370: "complex64",
  541. 57377: "duration",
  542. 57383: "float32",
  543. 57384: "float64",
  544. 57382: "float",
  545. 57394: "int16",
  546. 57395: "int32",
  547. 57396: "int64",
  548. 57397: "int8",
  549. 57393: "int",
  550. 57418: "rune",
  551. 57421: "string",
  552. 57423: "time",
  553. 57428: "uint16",
  554. 57429: "uint32",
  555. 57430: "uint64",
  556. 57431: "uint8",
  557. 57427: "uint",
  558. 57381: "false",
  559. 57346: "floating-point literal",
  560. 57348: "imaginary literal",
  561. 57349: "integer literal",
  562. 57350: "QL parameter",
  563. 57351: "string literal",
  564. 57425: "true",
  565. 57388: "GROUP",
  566. 57407: "NOT",
  567. 57411: "OR",
  568. 57413: "||",
  569. 57385: "FROM",
  570. 57358: "ASC",
  571. 57374: "DESC",
  572. 57357: "AS",
  573. 57354: "AND",
  574. 57355: "&&",
  575. 57360: "BETWEEN",
  576. 57390: "IN",
  577. 57378: "==",
  578. 57387: ">=",
  579. 57399: "IS",
  580. 57401: "<=",
  581. 57403: "LIKE",
  582. 57406: "!=",
  583. 57356: "&^",
  584. 57405: "<<",
  585. 57417: ">>",
  586. 57386: "FULL",
  587. 57402: "LEFT",
  588. 57415: "RIGHT",
  589. 57419: "SELECT",
  590. 57410: "ON",
  591. 57400: "JOIN",
  592. 57376: "DROP",
  593. 57379: "EXISTS",
  594. 57389: "IF",
  595. 57391: "INDEX",
  596. 57414: "OUTER",
  597. 57422: "TABLE",
  598. 57434: "VALUES",
  599. 57353: "ALTER",
  600. 57359: "BEGIN",
  601. 57368: "COMMIT",
  602. 57371: "CREATE",
  603. 57373: "DELETE",
  604. 57380: "EXPLAIN",
  605. 57392: "INSERT",
  606. 57416: "ROLLBACK",
  607. 57426: "TRUNCATE",
  608. 57433: "UPDATE",
  609. 57352: "ADD",
  610. 57365: "BY",
  611. 57420: "SET",
  612. 57367: "COLUMN",
  613. 57375: "DISTINCT",
  614. 57398: "INTO",
  615. 57436: "parse expression prefix",
  616. 57424: "TRANSACTION",
  617. 57432: "UNIQUE",
  618. }
  619. yyReductions = map[int]struct{ xsym, components int }{
  620. 0: {0, 1},
  621. 1: {191, 1},
  622. 2: {191, 2},
  623. 3: {116, 5},
  624. 4: {116, 6},
  625. 5: {145, 3},
  626. 6: {153, 3},
  627. 7: {154, 0},
  628. 8: {154, 3},
  629. 9: {118, 2},
  630. 10: {104, 3},
  631. 11: {104, 3},
  632. 12: {155, 0},
  633. 13: {155, 1},
  634. 14: {108, 4},
  635. 15: {93, 1},
  636. 16: {147, 3},
  637. 17: {157, 0},
  638. 18: {157, 3},
  639. 19: {120, 1},
  640. 20: {158, 2},
  641. 21: {158, 1},
  642. 22: {159, 0},
  643. 23: {159, 1},
  644. 24: {72, 4},
  645. 25: {122, 10},
  646. 26: {160, 0},
  647. 27: {160, 3},
  648. 28: {161, 0},
  649. 29: {161, 1},
  650. 30: {123, 8},
  651. 31: {123, 11},
  652. 32: {148, 0},
  653. 33: {148, 3},
  654. 34: {162, 2},
  655. 35: {163, 0},
  656. 36: {163, 1},
  657. 37: {124, 3},
  658. 38: {124, 4},
  659. 39: {126, 4},
  660. 40: {165, 0},
  661. 41: {165, 2},
  662. 42: {127, 3},
  663. 43: {127, 5},
  664. 44: {128, 0},
  665. 45: {130, 2},
  666. 46: {91, 1},
  667. 47: {91, 3},
  668. 48: {92, 1},
  669. 49: {92, 1},
  670. 50: {166, 1},
  671. 51: {166, 1},
  672. 52: {100, 3},
  673. 53: {167, 0},
  674. 54: {167, 3},
  675. 55: {88, 1},
  676. 56: {88, 5},
  677. 57: {88, 6},
  678. 58: {88, 6},
  679. 59: {88, 7},
  680. 60: {88, 5},
  681. 61: {88, 6},
  682. 62: {88, 3},
  683. 63: {88, 4},
  684. 64: {89, 1},
  685. 65: {89, 3},
  686. 66: {89, 3},
  687. 67: {89, 3},
  688. 68: {89, 3},
  689. 69: {89, 3},
  690. 70: {89, 3},
  691. 71: {89, 3},
  692. 72: {149, 2},
  693. 73: {168, 0},
  694. 74: {168, 2},
  695. 75: {169, 1},
  696. 76: {169, 3},
  697. 77: {170, 3},
  698. 78: {106, 3},
  699. 79: {132, 10},
  700. 80: {132, 5},
  701. 81: {171, 0},
  702. 82: {171, 3},
  703. 83: {172, 0},
  704. 84: {172, 5},
  705. 85: {73, 1},
  706. 86: {73, 1},
  707. 87: {73, 1},
  708. 88: {73, 1},
  709. 89: {73, 1},
  710. 90: {73, 1},
  711. 91: {73, 1},
  712. 92: {74, 1},
  713. 93: {74, 1},
  714. 94: {74, 1},
  715. 95: {74, 3},
  716. 96: {177, 4},
  717. 97: {178, 0},
  718. 98: {178, 1},
  719. 99: {178, 1},
  720. 100: {75, 1},
  721. 101: {75, 1},
  722. 102: {75, 2},
  723. 103: {75, 2},
  724. 104: {75, 2},
  725. 105: {86, 1},
  726. 106: {86, 3},
  727. 107: {86, 3},
  728. 108: {86, 3},
  729. 109: {86, 3},
  730. 110: {85, 1},
  731. 111: {85, 3},
  732. 112: {85, 3},
  733. 113: {85, 3},
  734. 114: {85, 3},
  735. 115: {85, 3},
  736. 116: {85, 3},
  737. 117: {85, 3},
  738. 118: {76, 1},
  739. 119: {76, 3},
  740. 120: {133, 2},
  741. 121: {134, 1},
  742. 122: {134, 4},
  743. 123: {137, 0},
  744. 124: {137, 1},
  745. 125: {181, 0},
  746. 126: {181, 2},
  747. 127: {182, 1},
  748. 128: {182, 3},
  749. 129: {136, 1},
  750. 130: {176, 1},
  751. 131: {176, 1},
  752. 132: {176, 1},
  753. 133: {179, 0},
  754. 134: {179, 1},
  755. 135: {174, 6},
  756. 136: {175, 0},
  757. 137: {175, 1},
  758. 138: {102, 12},
  759. 139: {186, 0},
  760. 140: {186, 2},
  761. 141: {187, 0},
  762. 142: {187, 2},
  763. 143: {183, 0},
  764. 144: {183, 1},
  765. 145: {184, 1},
  766. 146: {184, 1},
  767. 147: {184, 2},
  768. 148: {189, 0},
  769. 149: {189, 1},
  770. 150: {185, 0},
  771. 151: {185, 1},
  772. 152: {188, 0},
  773. 153: {188, 1},
  774. 154: {107, 3},
  775. 155: {107, 4},
  776. 156: {107, 4},
  777. 157: {107, 5},
  778. 158: {138, 1},
  779. 159: {138, 1},
  780. 160: {138, 1},
  781. 161: {138, 1},
  782. 162: {138, 1},
  783. 163: {138, 1},
  784. 164: {138, 1},
  785. 165: {138, 1},
  786. 166: {138, 1},
  787. 167: {138, 1},
  788. 168: {138, 1},
  789. 169: {138, 1},
  790. 170: {138, 1},
  791. 171: {138, 1},
  792. 172: {138, 1},
  793. 173: {192, 1},
  794. 174: {192, 3},
  795. 175: {98, 1},
  796. 176: {90, 1},
  797. 177: {90, 3},
  798. 178: {150, 1},
  799. 179: {150, 1},
  800. 180: {140, 3},
  801. 181: {71, 1},
  802. 182: {71, 1},
  803. 183: {71, 1},
  804. 184: {71, 1},
  805. 185: {71, 1},
  806. 186: {71, 1},
  807. 187: {71, 1},
  808. 188: {71, 1},
  809. 189: {71, 1},
  810. 190: {71, 1},
  811. 191: {71, 1},
  812. 192: {71, 1},
  813. 193: {71, 1},
  814. 194: {71, 1},
  815. 195: {71, 1},
  816. 196: {71, 1},
  817. 197: {71, 1},
  818. 198: {71, 1},
  819. 199: {71, 1},
  820. 200: {71, 1},
  821. 201: {71, 1},
  822. 202: {71, 1},
  823. 203: {71, 1},
  824. 204: {71, 1},
  825. 205: {142, 5},
  826. 206: {195, 0},
  827. 207: {195, 1},
  828. 208: {78, 1},
  829. 209: {78, 2},
  830. 210: {78, 2},
  831. 211: {78, 2},
  832. 212: {78, 2},
  833. 213: {143, 2},
  834. 214: {190, 0},
  835. 215: {190, 1},
  836. 216: {99, 0},
  837. 217: {99, 1},
  838. }
  839. yyXErrors = map[yyXError]string{
  840. yyXError{1, -1}: "expected $end",
  841. yyXError{43, -1}: "expected '('",
  842. yyXError{159, -1}: "expected '('",
  843. yyXError{183, -1}: "expected '('",
  844. yyXError{283, -1}: "expected '('",
  845. yyXError{311, -1}: "expected '('",
  846. yyXError{315, -1}: "expected '('",
  847. yyXError{346, -1}: "expected '('",
  848. yyXError{118, -1}: "expected ')'",
  849. yyXError{119, -1}: "expected ')'",
  850. yyXError{120, -1}: "expected ')'",
  851. yyXError{189, -1}: "expected ')'",
  852. yyXError{191, -1}: "expected ')'",
  853. yyXError{192, -1}: "expected ')'",
  854. yyXError{196, -1}: "expected ')'",
  855. yyXError{198, -1}: "expected ')'",
  856. yyXError{267, -1}: "expected ')'",
  857. yyXError{281, -1}: "expected ')'",
  858. yyXError{286, -1}: "expected ')'",
  859. yyXError{292, -1}: "expected ')'",
  860. yyXError{320, -1}: "expected ')'",
  861. yyXError{337, -1}: "expected ')'",
  862. yyXError{348, -1}: "expected ')'",
  863. yyXError{36, -1}: "expected '='",
  864. yyXError{235, -1}: "expected BY",
  865. yyXError{238, -1}: "expected BY",
  866. yyXError{354, -1}: "expected COLUMN",
  867. yyXError{7, -1}: "expected CREATE INDEX optional UNIQUE clause or one of [INDEX, TABLE, UNIQUE]",
  868. yyXError{339, -1}: "expected CREATE INDEX statement optional IF NOT EXISTS cluse or one of [IF, identifier]",
  869. yyXError{318, -1}: "expected CREATE TABLE statement colum definition list or optional comma or one of [')', ',']",
  870. yyXError{335, -1}: "expected CREATE TABLE statement colum definition list or optional comma or one of [')', ',']",
  871. yyXError{295, -1}: "expected DROP INDEX statement optional IF EXISTS clause or one of [IF, identifier]",
  872. yyXError{298, -1}: "expected EXISTS",
  873. yyXError{302, -1}: "expected EXISTS",
  874. yyXError{313, -1}: "expected EXISTS",
  875. yyXError{342, -1}: "expected EXISTS",
  876. yyXError{46, -1}: "expected Eq or one of [!=, $end, &&, ')', ',', ':', ';', '<', '=', '>', ']', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  877. yyXError{8, -1}: "expected FROM",
  878. yyXError{217, -1}: "expected FROM",
  879. yyXError{218, -1}: "expected FROM",
  880. yyXError{308, -1}: "expected INDEX",
  881. yyXError{309, -1}: "expected INDEX",
  882. yyXError{278, -1}: "expected INSERT INTO statement optional column list clause or SELECT statement or one of ['(', SELECT, VALUES]",
  883. yyXError{287, -1}: "expected INSERT INTO statement optional values list or optional comma or one of [$end, ',', ';']",
  884. yyXError{11, -1}: "expected INTO",
  885. yyXError{259, -1}: "expected JOIN",
  886. yyXError{260, -1}: "expected JOIN",
  887. yyXError{312, -1}: "expected NOT",
  888. yyXError{341, -1}: "expected NOT",
  889. yyXError{178, -1}: "expected NULL",
  890. yyXError{326, -1}: "expected NULL",
  891. yyXError{262, -1}: "expected ON",
  892. yyXError{344, -1}: "expected ON",
  893. yyXError{248, -1}: "expected ORDER BY clause optional collation specification or one of [$end, ')', ';', ASC, DESC, LIMIT, OFFSET]",
  894. yyXError{219, -1}: "expected RecordSetList or one of ['(', identifier]",
  895. yyXError{13, -1}: "expected SELECT statement field list or SELECT statement optional DISTINCT clause or one of ['!', '(', '*', '+', '-', '^', DISTINCT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  896. yyXError{212, -1}: "expected SELECT statement field list or one of ['!', '(', '*', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  897. yyXError{226, -1}: "expected SELECT statement optional GROUP BY clause or SELECT statement optional JOIN clause or SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or SELECT statement optional ORDER BY clause or SELECT statement optional WHERE clause or one of [$end, ')', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ORDER, RIGHT, WHERE]",
  898. yyXError{224, -1}: "expected SELECT statement optional GROUP BY clause or SELECT statement optional JOIN clause or SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or SELECT statement optional ORDER BY clause or SELECT statement optional WHERE clause or optional comma or one of [$end, ')', ',', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ORDER, RIGHT, WHERE]",
  899. yyXError{232, -1}: "expected SELECT statement optional GROUP BY clause or SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or SELECT statement optional ORDER BY clause or SELECT statement optional WHERE clause or one of [$end, ')', ';', GROUP, LIMIT, OFFSET, ORDER, WHERE]",
  900. yyXError{233, -1}: "expected SELECT statement optional GROUP BY clause or SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or SELECT statement optional ORDER BY clause or one of [$end, ')', ';', GROUP, LIMIT, OFFSET, ORDER]",
  901. yyXError{236, -1}: "expected SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or SELECT statement optional ORDER BY clause or one of [$end, ')', ';', LIMIT, OFFSET, ORDER]",
  902. yyXError{239, -1}: "expected SELECT statement optional LIMIT clause or SELECT statement optional OFFSET clause or one of [$end, ')', ';', LIMIT, OFFSET]",
  903. yyXError{241, -1}: "expected SELECT statement optional OFFSET clause or one of [$end, ')', ';', OFFSET]",
  904. yyXError{222, -1}: "expected SELECT statement or SELECT",
  905. yyXError{188, -1}: "expected SELECT statement or expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, SELECT, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  906. yyXError{195, -1}: "expected SELECT statement or expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, SELECT, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  907. yyXError{279, -1}: "expected SELECT statement or one of [SELECT, VALUES]",
  908. yyXError{33, -1}: "expected SetOpt or assignment list or one of [SET, identifier]",
  909. yyXError{0, -1}: "expected Start or one of [$end, ';', ALTER, BEGIN, COMMIT, CREATE, DELETE, DROP, EXPLAIN, INSERT, ROLLBACK, SELECT, TRUNCATE, UPDATE, parse expression prefix]",
  910. yyXError{4, -1}: "expected TABLE",
  911. yyXError{30, -1}: "expected TABLE",
  912. yyXError{5, -1}: "expected TRANSACTION",
  913. yyXError{39, -1}: "expected UPDATE statement optional WHERE clause or one of [$end, ';', WHERE]",
  914. yyXError{306, -1}: "expected WHERE clause or one of [$end, ';', WHERE]",
  915. yyXError{37, -1}: "expected assignment list optional trailing comma or optional comma or one of [$end, ',', ';', WHERE]",
  916. yyXError{34, -1}: "expected assignment list or identifier",
  917. yyXError{206, -1}: "expected assignment or one of [$end, ';', WHERE, identifier]",
  918. yyXError{252, -1}: "expected column name list or identifier",
  919. yyXError{280, -1}: "expected column name list or identifier",
  920. yyXError{253, -1}: "expected column name list with optional trailing comma or optional comma or one of [$end, ')', ',', ';', LIMIT, OFFSET, ORDER]",
  921. yyXError{355, -1}: "expected column name or identifier",
  922. yyXError{257, -1}: "expected column name or one of [$end, ')', ';', LIMIT, OFFSET, ORDER, identifier]",
  923. yyXError{109, -1}: "expected expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  924. yyXError{121, -1}: "expected expression list expression or logical or operator or optional comma or one of [$end, ')', ',', ';', ASC, DESC, LIMIT, OFFSET, OR, ||]",
  925. yyXError{247, -1}: "expected expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  926. yyXError{285, -1}: "expected expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  927. yyXError{291, -1}: "expected expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  928. yyXError{347, -1}: "expected expression list or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  929. yyXError{124, -1}: "expected expression or one of [$end, '!', '(', ')', '+', '-', ';', '^', ASC, DESC, LIMIT, NULL, OFFSET, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  930. yyXError{96, -1}: "expected expression or one of ['!', '(', '+', '-', ':', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  931. yyXError{101, -1}: "expected expression or one of ['!', '(', '+', '-', ']', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  932. yyXError{114, -1}: "expected expression or one of ['!', '(', '+', '-', ']', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  933. yyXError{3, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  934. yyXError{42, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  935. yyXError{58, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  936. yyXError{201, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  937. yyXError{208, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  938. yyXError{242, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  939. yyXError{245, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  940. yyXError{263, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  941. yyXError{331, -1}: "expected expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  942. yyXError{104, -1}: "expected expression term or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  943. yyXError{214, -1}: "expected field expression optional AS clause or logical or operator or one of [',', AS, FROM, OR, ||]",
  944. yyXError{272, -1}: "expected field expression or one of ['!', '(', '+', '-', '^', FROM, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  945. yyXError{95, -1}: "expected function call optional argument list or one of ['!', '(', ')', '*', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  946. yyXError{61, -1}: "expected function call or string index or string slice or one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  947. yyXError{94, -1}: "expected function call or string index or string slice or one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  948. yyXError{128, -1}: "expected function call or string index or string slice or one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  949. yyXError{129, -1}: "expected function call or string index or string slice or one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  950. yyXError{130, -1}: "expected function call or string index or string slice or one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  951. yyXError{35, -1}: "expected identifier",
  952. yyXError{131, -1}: "expected identifier",
  953. yyXError{270, -1}: "expected identifier",
  954. yyXError{275, -1}: "expected identifier",
  955. yyXError{301, -1}: "expected identifier",
  956. yyXError{303, -1}: "expected identifier",
  957. yyXError{340, -1}: "expected identifier",
  958. yyXError{343, -1}: "expected identifier",
  959. yyXError{345, -1}: "expected identifier",
  960. yyXError{44, -1}: "expected logical and operator or one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  961. yyXError{108, -1}: "expected logical and operator or one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  962. yyXError{125, -1}: "expected logical or operator or one of [$end, ')', ',', ';', ASC, DESC, LIMIT, OFFSET, OR, ||]",
  963. yyXError{327, -1}: "expected logical or operator or one of [$end, ')', ',', ';', DEFAULT, OR, ||]",
  964. yyXError{333, -1}: "expected logical or operator or one of [$end, ')', ',', ';', OR, ||]",
  965. yyXError{264, -1}: "expected logical or operator or one of [$end, ')', ';', GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  966. yyXError{45, -1}: "expected logical or operator or one of [$end, ')', ';', GROUP, LIMIT, OFFSET, OR, ORDER, ||]",
  967. yyXError{243, -1}: "expected logical or operator or one of [$end, ')', ';', OFFSET, OR, ||]",
  968. yyXError{246, -1}: "expected logical or operator or one of [$end, ')', ';', OR, ||]",
  969. yyXError{209, -1}: "expected logical or operator or one of [$end, ',', ';', OR, WHERE, ||]",
  970. yyXError{358, -1}: "expected logical or operator or one of [$end, OR, ||]",
  971. yyXError{147, -1}: "expected logical or operator or one of [')', OR, ||]",
  972. yyXError{202, -1}: "expected logical or operator or one of [')', OR, ||]",
  973. yyXError{100, -1}: "expected logical or operator or one of [':', ']', OR, ||]",
  974. yyXError{102, -1}: "expected logical or operator or one of [']', OR, ||]",
  975. yyXError{115, -1}: "expected logical or operator or one of [']', OR, ||]",
  976. yyXError{64, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '.', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  977. yyXError{48, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  978. yyXError{49, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  979. yyXError{50, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  980. yyXError{51, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  981. yyXError{52, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  982. yyXError{53, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  983. yyXError{54, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  984. yyXError{55, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  985. yyXError{56, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  986. yyXError{57, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  987. yyXError{59, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  988. yyXError{60, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  989. yyXError{97, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  990. yyXError{98, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  991. yyXError{99, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  992. yyXError{103, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  993. yyXError{107, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  994. yyXError{113, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  995. yyXError{116, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  996. yyXError{117, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  997. yyXError{126, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  998. yyXError{127, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  999. yyXError{132, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1000. yyXError{148, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1001. yyXError{203, -1}: "expected one of [!=, $end, &&, &^, '%', '&', '(', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', '[', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1002. yyXError{62, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1003. yyXError{63, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1004. yyXError{140, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1005. yyXError{141, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1006. yyXError{142, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1007. yyXError{143, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1008. yyXError{144, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1009. yyXError{145, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1010. yyXError{146, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1011. yyXError{153, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1012. yyXError{154, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1013. yyXError{155, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1014. yyXError{156, -1}: "expected one of [!=, $end, &&, &^, '%', '&', ')', '*', '+', ',', '-', '/', ':', ';', '<', '=', '>', ']', '^', '|', <<, <=, ==, >=, >>, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1015. yyXError{47, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1016. yyXError{170, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1017. yyXError{171, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1018. yyXError{172, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1019. yyXError{173, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1020. yyXError{174, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1021. yyXError{175, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1022. yyXError{176, -1}: "expected one of [!=, $end, &&, ')', '+', ',', '-', ':', ';', '<', '=', '>', ']', '^', '|', <=, ==, >=, AND, AS, ASC, BETWEEN, DEFAULT, DESC, FROM, GROUP, IN, IS, LIKE, LIMIT, NOT, OFFSET, OR, ORDER, WHERE, ||]",
  1023. yyXError{182, -1}: "expected one of [$end, &&, ')', '+', ',', '-', ':', ';', ']', '^', '|', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1024. yyXError{187, -1}: "expected one of [$end, &&, ')', '+', ',', '-', ':', ';', ']', '^', '|', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1025. yyXError{65, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1026. yyXError{112, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1027. yyXError{177, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1028. yyXError{179, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1029. yyXError{193, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1030. yyXError{194, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1031. yyXError{199, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1032. yyXError{200, -1}: "expected one of [$end, &&, ')', ',', ':', ';', ']', AND, AS, ASC, DEFAULT, DESC, FROM, GROUP, LIMIT, OFFSET, OR, ORDER, WHERE, ||]",
  1033. yyXError{66, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1034. yyXError{67, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1035. yyXError{68, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1036. yyXError{69, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1037. yyXError{70, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1038. yyXError{71, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1039. yyXError{72, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1040. yyXError{73, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1041. yyXError{74, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1042. yyXError{75, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1043. yyXError{76, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1044. yyXError{77, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1045. yyXError{78, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1046. yyXError{79, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1047. yyXError{80, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1048. yyXError{81, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1049. yyXError{82, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1050. yyXError{83, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1051. yyXError{84, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1052. yyXError{85, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1053. yyXError{86, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1054. yyXError{87, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1055. yyXError{88, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1056. yyXError{89, -1}: "expected one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1057. yyXError{32, -1}: "expected one of [$end, '(', ';', ADD, DROP, SELECT, SET, VALUES, WHERE, identifier]",
  1058. yyXError{290, -1}: "expected one of [$end, '(', ';']",
  1059. yyXError{38, -1}: "expected one of [$end, ')', ',', ';', '=', LIMIT, OFFSET, ORDER, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, float, float32, float64, int, int16, int32, int64, int8, rune, string, time, uint, uint16, uint32, uint64, uint8]",
  1060. yyXError{221, -1}: "expected one of [$end, ')', ',', ';', AS, FULL, GROUP, LEFT, LIMIT, OFFSET, ON, ORDER, RIGHT, WHERE]",
  1061. yyXError{268, -1}: "expected one of [$end, ')', ',', ';', AS, FULL, GROUP, LEFT, LIMIT, OFFSET, ON, ORDER, RIGHT, WHERE]",
  1062. yyXError{328, -1}: "expected one of [$end, ')', ',', ';', DEFAULT]",
  1063. yyXError{329, -1}: "expected one of [$end, ')', ',', ';', DEFAULT]",
  1064. yyXError{269, -1}: "expected one of [$end, ')', ',', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ON, ORDER, RIGHT, WHERE]",
  1065. yyXError{271, -1}: "expected one of [$end, ')', ',', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ON, ORDER, RIGHT, WHERE]",
  1066. yyXError{223, -1}: "expected one of [$end, ')', ',', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ORDER, RIGHT, WHERE]",
  1067. yyXError{265, -1}: "expected one of [$end, ')', ',', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ORDER, RIGHT, WHERE]",
  1068. yyXError{258, -1}: "expected one of [$end, ')', ',', ';', LIMIT, OFFSET, ORDER]",
  1069. yyXError{330, -1}: "expected one of [$end, ')', ',', ';']",
  1070. yyXError{332, -1}: "expected one of [$end, ')', ',', ';']",
  1071. yyXError{123, -1}: "expected one of [$end, ')', ';', ASC, DESC, LIMIT, OFFSET]",
  1072. yyXError{231, -1}: "expected one of [$end, ')', ';', GROUP, LIMIT, OFFSET, ORDER, WHERE]",
  1073. yyXError{234, -1}: "expected one of [$end, ')', ';', GROUP, LIMIT, OFFSET, ORDER]",
  1074. yyXError{237, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET, ORDER]",
  1075. yyXError{254, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET, ORDER]",
  1076. yyXError{256, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET, ORDER]",
  1077. yyXError{240, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET]",
  1078. yyXError{249, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET]",
  1079. yyXError{250, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET]",
  1080. yyXError{251, -1}: "expected one of [$end, ')', ';', LIMIT, OFFSET]",
  1081. yyXError{244, -1}: "expected one of [$end, ')', ';']",
  1082. yyXError{207, -1}: "expected one of [$end, ',', ';', WHERE]",
  1083. yyXError{293, -1}: "expected one of [$end, ',', ';']",
  1084. yyXError{205, -1}: "expected one of [$end, ';', WHERE]",
  1085. yyXError{2, -1}: "expected one of [$end, ';']",
  1086. yyXError{6, -1}: "expected one of [$end, ';']",
  1087. yyXError{12, -1}: "expected one of [$end, ';']",
  1088. yyXError{14, -1}: "expected one of [$end, ';']",
  1089. yyXError{15, -1}: "expected one of [$end, ';']",
  1090. yyXError{16, -1}: "expected one of [$end, ';']",
  1091. yyXError{17, -1}: "expected one of [$end, ';']",
  1092. yyXError{18, -1}: "expected one of [$end, ';']",
  1093. yyXError{19, -1}: "expected one of [$end, ';']",
  1094. yyXError{20, -1}: "expected one of [$end, ';']",
  1095. yyXError{21, -1}: "expected one of [$end, ';']",
  1096. yyXError{22, -1}: "expected one of [$end, ';']",
  1097. yyXError{23, -1}: "expected one of [$end, ';']",
  1098. yyXError{24, -1}: "expected one of [$end, ';']",
  1099. yyXError{25, -1}: "expected one of [$end, ';']",
  1100. yyXError{26, -1}: "expected one of [$end, ';']",
  1101. yyXError{27, -1}: "expected one of [$end, ';']",
  1102. yyXError{28, -1}: "expected one of [$end, ';']",
  1103. yyXError{29, -1}: "expected one of [$end, ';']",
  1104. yyXError{40, -1}: "expected one of [$end, ';']",
  1105. yyXError{41, -1}: "expected one of [$end, ';']",
  1106. yyXError{211, -1}: "expected one of [$end, ';']",
  1107. yyXError{284, -1}: "expected one of [$end, ';']",
  1108. yyXError{289, -1}: "expected one of [$end, ';']",
  1109. yyXError{294, -1}: "expected one of [$end, ';']",
  1110. yyXError{297, -1}: "expected one of [$end, ';']",
  1111. yyXError{300, -1}: "expected one of [$end, ';']",
  1112. yyXError{304, -1}: "expected one of [$end, ';']",
  1113. yyXError{307, -1}: "expected one of [$end, ';']",
  1114. yyXError{323, -1}: "expected one of [$end, ';']",
  1115. yyXError{338, -1}: "expected one of [$end, ';']",
  1116. yyXError{349, -1}: "expected one of [$end, ';']",
  1117. yyXError{350, -1}: "expected one of [$end, ';']",
  1118. yyXError{356, -1}: "expected one of [$end, ';']",
  1119. yyXError{357, -1}: "expected one of [$end, ';']",
  1120. yyXError{360, -1}: "expected one of [$end, ';']",
  1121. yyXError{213, -1}: "expected one of ['!', '(', '*', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1122. yyXError{105, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1123. yyXError{106, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1124. yyXError{110, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1125. yyXError{111, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1126. yyXError{157, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1127. yyXError{158, -1}: "expected one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1128. yyXError{322, -1}: "expected one of [')', ',']",
  1129. yyXError{180, -1}: "expected one of ['+', '-', '^', '|', AND]",
  1130. yyXError{185, -1}: "expected one of ['+', '-', '^', '|', AND]",
  1131. yyXError{215, -1}: "expected one of [',', FROM]",
  1132. yyXError{216, -1}: "expected one of [',', FROM]",
  1133. yyXError{273, -1}: "expected one of [',', FROM]",
  1134. yyXError{274, -1}: "expected one of [',', FROM]",
  1135. yyXError{276, -1}: "expected one of [',', FROM]",
  1136. yyXError{352, -1}: "expected one of [ADD, DROP]",
  1137. yyXError{160, -1}: "expected one of [BETWEEN, IN]",
  1138. yyXError{9, -1}: "expected one of [INDEX, TABLE]",
  1139. yyXError{227, -1}: "expected one of [JOIN, OUTER]",
  1140. yyXError{228, -1}: "expected one of [JOIN, OUTER]",
  1141. yyXError{229, -1}: "expected one of [JOIN, OUTER]",
  1142. yyXError{162, -1}: "expected one of [NOT, NULL]",
  1143. yyXError{282, -1}: "expected one of [SELECT, VALUES]",
  1144. yyXError{325, -1}: "expected optional DEFAULT clause or one of [$end, ')', ',', ';', DEFAULT]",
  1145. yyXError{324, -1}: "expected optional DEFAULT clause or optional column value constraint or one of [$end, '!', '(', ')', '+', ',', '-', ';', '^', DEFAULT, NOT, NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1146. yyXError{230, -1}: "expected optional OUTER clause or one of [JOIN, OUTER]",
  1147. yyXError{122, -1}: "expected optional comma or one of [$end, ')', ',', ';', ASC, DESC, LIMIT, OFFSET]",
  1148. yyXError{255, -1}: "expected optional comma or one of [$end, ')', ',', ';', LIMIT, OFFSET, ORDER]",
  1149. yyXError{204, -1}: "expected optional comma or one of [$end, ',', ';', WHERE]",
  1150. yyXError{288, -1}: "expected optional comma or one of [$end, ',', ';']",
  1151. yyXError{319, -1}: "expected optional comma or one of [')', ',']",
  1152. yyXError{336, -1}: "expected optional comma or one of [')', ',']",
  1153. yyXError{161, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1154. yyXError{163, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1155. yyXError{164, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1156. yyXError{165, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1157. yyXError{166, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1158. yyXError{167, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1159. yyXError{168, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1160. yyXError{169, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1161. yyXError{181, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1162. yyXError{184, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1163. yyXError{186, -1}: "expected primary expression factor or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1164. yyXError{90, -1}: "expected primary expression or one of ['(', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1165. yyXError{91, -1}: "expected primary expression or one of ['(', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1166. yyXError{92, -1}: "expected primary expression or one of ['(', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1167. yyXError{93, -1}: "expected primary expression or one of ['(', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1168. yyXError{149, -1}: "expected primary expression term or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1169. yyXError{150, -1}: "expected primary expression term or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1170. yyXError{151, -1}: "expected primary expression term or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1171. yyXError{152, -1}: "expected primary expression term or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1172. yyXError{220, -1}: "expected record set optional AS clause or one of [$end, ')', ',', ';', AS, FULL, GROUP, LEFT, LIMIT, OFFSET, ON, ORDER, RIGHT, WHERE]",
  1173. yyXError{225, -1}: "expected record set or one of [$end, '(', ')', ';', FULL, GROUP, LEFT, LIMIT, OFFSET, ORDER, RIGHT, WHERE, identifier]",
  1174. yyXError{261, -1}: "expected record set or one of ['(', identifier]",
  1175. yyXError{190, -1}: "expected semiOpt or one of [')', ';']",
  1176. yyXError{197, -1}: "expected semiOpt or one of [')', ';']",
  1177. yyXError{266, -1}: "expected semiOpt or one of [')', ';']",
  1178. yyXError{10, -1}: "expected statement or one of [$end, ';', ALTER, BEGIN, COMMIT, CREATE, DELETE, DROP, EXPLAIN, INSERT, ROLLBACK, SELECT, TRUNCATE, UPDATE]",
  1179. yyXError{359, -1}: "expected statement or one of [$end, ';', ALTER, BEGIN, COMMIT, CREATE, DELETE, DROP, EXPLAIN, INSERT, ROLLBACK, SELECT, TRUNCATE, UPDATE]",
  1180. yyXError{316, -1}: "expected table column definition or identifier",
  1181. yyXError{334, -1}: "expected table column definition or identifier",
  1182. yyXError{353, -1}: "expected table column definition or identifier",
  1183. yyXError{321, -1}: "expected table column definition or one of [')', identifier]",
  1184. yyXError{31, -1}: "expected table name or identifier",
  1185. yyXError{210, -1}: "expected table name or identifier",
  1186. yyXError{277, -1}: "expected table name or identifier",
  1187. yyXError{299, -1}: "expected table name or identifier",
  1188. yyXError{305, -1}: "expected table name or identifier",
  1189. yyXError{314, -1}: "expected table name or identifier",
  1190. yyXError{351, -1}: "expected table name or identifier",
  1191. yyXError{296, -1}: "expected table name or one of [IF, identifier]",
  1192. yyXError{310, -1}: "expected table name or one of [IF, identifier]",
  1193. yyXError{317, -1}: "expected type or one of [bigint, bigrat, blob, bool, byte, complex128, complex64, duration, float, float32, float64, int, int16, int32, int64, int8, rune, string, time, uint, uint16, uint32, uint64, uint8]",
  1194. yyXError{133, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1195. yyXError{134, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1196. yyXError{135, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1197. yyXError{136, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1198. yyXError{137, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1199. yyXError{138, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1200. yyXError{139, -1}: "expected unary expression or one of ['!', '(', '+', '-', '^', NULL, QL parameter, bigint, bigrat, blob, bool, byte, complex128, complex64, duration, false, float, float32, float64, floating-point literal, identifier, imaginary literal, int, int16, int32, int64, int8, integer literal, rune, string, string literal, time, true, uint, uint16, uint32, uint64, uint8]",
  1201. }
  1202. yyParseTab = [361][]uint16{
  1203. // 0
  1204. {174, 174, 97: 231, 102: 244, 105: 227, 115: 222, 233, 223, 234, 224, 235, 225, 236, 237, 238, 226, 239, 240, 232, 228, 241, 229, 242, 135: 230, 243, 138: 247, 248, 245, 249, 246, 180: 221, 191: 219, 220},
  1205. {1: 218},
  1206. {577, 217},
  1207. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 576},
  1208. {113: 569},
  1209. // 5
  1210. {193: 568},
  1211. {199, 199},
  1212. {111: 190, 113: 528, 161: 526, 194: 527},
  1213. {51: 523},
  1214. {111: 513, 113: 514},
  1215. // 10
  1216. {174, 174, 97: 231, 102: 244, 105: 227, 115: 222, 233, 223, 234, 224, 235, 225, 236, 237, 238, 226, 239, 240, 232, 228, 241, 229, 242, 135: 230, 243, 138: 512, 248, 245, 249, 246},
  1217. {173: 495},
  1218. {89, 89},
  1219. {3: 75, 75, 75, 7: 75, 75, 14: 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 75, 50: 75, 77: 75, 164: 431, 183: 430},
  1220. {60, 60},
  1221. // 15
  1222. {59, 59},
  1223. {58, 58},
  1224. {57, 57},
  1225. {56, 56},
  1226. {55, 55},
  1227. // 20
  1228. {54, 54},
  1229. {53, 53},
  1230. {52, 52},
  1231. {51, 51},
  1232. {50, 50},
  1233. // 25
  1234. {49, 49},
  1235. {48, 48},
  1236. {47, 47},
  1237. {46, 46},
  1238. {45, 45},
  1239. // 30
  1240. {113: 428},
  1241. {8: 250, 98: 251},
  1242. {43, 43, 7: 43, 43, 13: 43, 97: 43, 105: 43, 114: 43, 144: 43, 151: 43},
  1243. {8: 4, 151: 253, 190: 252},
  1244. {8: 256, 93: 254, 145: 255, 153: 257},
  1245. // 35
  1246. {8: 3},
  1247. {60: 426},
  1248. {211, 211, 6: 211, 13: 211, 154: 422},
  1249. {203, 203, 203, 6: 203, 9: 203, 203, 12: 203, 15: 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, 60: 203},
  1250. {12, 12, 13: 260, 143: 259, 195: 258},
  1251. // 40
  1252. {13, 13},
  1253. {11, 11},
  1254. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 263},
  1255. {7: 419},
  1256. {172, 172, 172, 6: 172, 9: 172, 172, 172, 172, 172, 46: 172, 48: 172, 172, 51: 172, 172, 172, 172, 172, 172, 329, 328, 150: 327},
  1257. // 45
  1258. {5, 5, 5, 9: 5, 5, 12: 5, 46: 5, 48: 324, 323, 92: 322},
  1259. {163, 163, 163, 6: 163, 9: 163, 163, 163, 163, 163, 46: 163, 378, 163, 163, 51: 163, 163, 163, 163, 163, 163, 163, 163, 60: 376, 379, 377, 384, 382, 375, 381, 380, 383, 387, 385, 166: 386},
  1260. {154, 154, 154, 370, 369, 367, 154, 9: 154, 154, 154, 154, 154, 46: 154, 154, 154, 154, 51: 154, 154, 154, 154, 154, 154, 154, 154, 368, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154, 154},
  1261. {133, 133, 133, 133, 133, 133, 133, 133, 9: 133, 133, 133, 133, 133, 46: 133, 133, 133, 133, 51: 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, 77: 133, 79: 133, 133, 133, 133, 133, 133, 87: 133},
  1262. {132, 132, 132, 132, 132, 132, 132, 132, 9: 132, 132, 132, 132, 132, 46: 132, 132, 132, 132, 51: 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 132, 77: 132, 79: 132, 132, 132, 132, 132, 132, 87: 132},
  1263. // 50
  1264. {131, 131, 131, 131, 131, 131, 131, 131, 9: 131, 131, 131, 131, 131, 46: 131, 131, 131, 131, 51: 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 131, 77: 131, 79: 131, 131, 131, 131, 131, 131, 87: 131},
  1265. {130, 130, 130, 130, 130, 130, 130, 130, 9: 130, 130, 130, 130, 130, 46: 130, 130, 130, 130, 51: 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, 77: 130, 79: 130, 130, 130, 130, 130, 130, 87: 130},
  1266. {129, 129, 129, 129, 129, 129, 129, 129, 9: 129, 129, 129, 129, 129, 46: 129, 129, 129, 129, 51: 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, 77: 129, 79: 129, 129, 129, 129, 129, 129, 87: 129},
  1267. {128, 128, 128, 128, 128, 128, 128, 128, 9: 128, 128, 128, 128, 128, 46: 128, 128, 128, 128, 51: 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 77: 128, 79: 128, 128, 128, 128, 128, 128, 87: 128},
  1268. {127, 127, 127, 127, 127, 127, 127, 127, 9: 127, 127, 127, 127, 127, 46: 127, 127, 127, 127, 51: 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 77: 127, 79: 127, 127, 127, 127, 127, 127, 87: 127},
  1269. // 55
  1270. {126, 126, 126, 126, 126, 126, 126, 126, 9: 126, 126, 126, 126, 126, 46: 126, 126, 126, 126, 51: 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 77: 126, 79: 126, 126, 126, 126, 126, 126, 87: 126},
  1271. {125, 125, 125, 125, 125, 125, 125, 125, 9: 125, 125, 125, 125, 125, 46: 125, 125, 125, 125, 51: 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 125, 77: 125, 79: 125, 125, 125, 125, 125, 125, 87: 125},
  1272. {124, 124, 124, 124, 124, 124, 124, 124, 9: 124, 124, 124, 124, 124, 46: 124, 124, 124, 124, 51: 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 77: 124, 79: 124, 124, 124, 124, 124, 124, 87: 124},
  1273. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 365},
  1274. {118, 118, 118, 118, 118, 118, 118, 118, 9: 118, 118, 118, 118, 118, 46: 118, 118, 118, 118, 51: 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 77: 118, 79: 118, 118, 118, 118, 118, 118, 87: 118},
  1275. // 60
  1276. {117, 117, 117, 117, 117, 117, 117, 117, 9: 117, 117, 117, 117, 117, 46: 117, 117, 117, 117, 51: 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 117, 77: 117, 79: 117, 117, 117, 117, 117, 117, 87: 117},
  1277. {10, 10, 10, 10, 10, 10, 10, 313, 9: 10, 10, 10, 10, 10, 46: 10, 10, 10, 10, 51: 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 77: 10, 79: 10, 10, 10, 10, 10, 10, 87: 314, 104: 317, 106: 315, 316},
  1278. {113, 113, 113, 113, 113, 113, 113, 9: 113, 113, 113, 113, 113, 46: 113, 113, 113, 113, 51: 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 77: 357, 79: 355, 352, 356, 351, 353, 354},
  1279. {108, 108, 108, 108, 108, 108, 108, 9: 108, 108, 108, 108, 108, 46: 108, 108, 108, 108, 51: 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 77: 108, 79: 108, 108, 108, 108, 108, 108},
  1280. {100, 100, 100, 100, 100, 100, 100, 100, 9: 100, 100, 100, 100, 100, 46: 100, 100, 100, 100, 51: 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 77: 100, 79: 100, 100, 100, 100, 100, 100, 87: 100, 152: 349},
  1281. // 65
  1282. {42, 42, 42, 6: 42, 9: 42, 42, 42, 42, 42, 46: 42, 48: 42, 42, 51: 42, 42, 42, 42, 42, 42, 42, 42},
  1283. {37, 37, 37, 37, 37, 37, 37, 37, 37, 11: 37, 14: 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 47: 37, 50: 37},
  1284. {36, 36, 36, 36, 36, 36, 36, 36, 36, 11: 36, 14: 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 36, 47: 36, 50: 36},
  1285. {35, 35, 35, 35, 35, 35, 35, 35, 35, 11: 35, 14: 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 47: 35, 50: 35},
  1286. {34, 34, 34, 34, 34, 34, 34, 34, 34, 11: 34, 14: 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 34, 47: 34, 50: 34},
  1287. // 70
  1288. {33, 33, 33, 33, 33, 33, 33, 33, 33, 11: 33, 14: 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 47: 33, 50: 33},
  1289. {32, 32, 32, 32, 32, 32, 32, 32, 32, 11: 32, 14: 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 47: 32, 50: 32},
  1290. {31, 31, 31, 31, 31, 31, 31, 31, 31, 11: 31, 14: 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 47: 31, 50: 31},
  1291. {30, 30, 30, 30, 30, 30, 30, 30, 30, 11: 30, 14: 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 47: 30, 50: 30},
  1292. {29, 29, 29, 29, 29, 29, 29, 29, 29, 11: 29, 14: 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 47: 29, 50: 29},
  1293. // 75
  1294. {28, 28, 28, 28, 28, 28, 28, 28, 28, 11: 28, 14: 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 47: 28, 50: 28},
  1295. {27, 27, 27, 27, 27, 27, 27, 27, 27, 11: 27, 14: 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 47: 27, 50: 27},
  1296. {26, 26, 26, 26, 26, 26, 26, 26, 26, 11: 26, 14: 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 47: 26, 50: 26},
  1297. {25, 25, 25, 25, 25, 25, 25, 25, 25, 11: 25, 14: 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 47: 25, 50: 25},
  1298. {24, 24, 24, 24, 24, 24, 24, 24, 24, 11: 24, 14: 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 47: 24, 50: 24},
  1299. // 80
  1300. {23, 23, 23, 23, 23, 23, 23, 23, 23, 11: 23, 14: 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 23, 47: 23, 50: 23},
  1301. {22, 22, 22, 22, 22, 22, 22, 22, 22, 11: 22, 14: 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 47: 22, 50: 22},
  1302. {21, 21, 21, 21, 21, 21, 21, 21, 21, 11: 21, 14: 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 47: 21, 50: 21},
  1303. {20, 20, 20, 20, 20, 20, 20, 20, 20, 11: 20, 14: 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 47: 20, 50: 20},
  1304. {19, 19, 19, 19, 19, 19, 19, 19, 19, 11: 19, 14: 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 47: 19, 50: 19},
  1305. // 85
  1306. {18, 18, 18, 18, 18, 18, 18, 18, 18, 11: 18, 14: 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 47: 18, 50: 18},
  1307. {17, 17, 17, 17, 17, 17, 17, 17, 17, 11: 17, 14: 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 47: 17, 50: 17},
  1308. {16, 16, 16, 16, 16, 16, 16, 16, 16, 11: 16, 14: 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 47: 16, 50: 16},
  1309. {15, 15, 15, 15, 15, 15, 15, 15, 15, 11: 15, 14: 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 47: 15, 50: 15},
  1310. {14, 14, 14, 14, 14, 14, 14, 14, 14, 11: 14, 14: 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 47: 14, 50: 14},
  1311. // 90
  1312. {7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 71: 261, 278, 273, 277, 348, 275},
  1313. {7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 71: 261, 278, 273, 277, 347, 275},
  1314. {7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 71: 261, 278, 273, 277, 346, 275},
  1315. {7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 71: 261, 278, 273, 277, 312, 275},
  1316. {6, 6, 6, 6, 6, 6, 6, 313, 9: 6, 6, 6, 6, 6, 46: 6, 6, 6, 6, 51: 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 77: 6, 79: 6, 6, 6, 6, 6, 6, 87: 314, 104: 317, 106: 315, 316},
  1317. // 95
  1318. {2: 206, 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 337, 281, 85: 280, 265, 88: 283, 264, 262, 339, 100: 338, 155: 336},
  1319. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 56: 319, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 318},
  1320. {116, 116, 116, 116, 116, 116, 116, 116, 9: 116, 116, 116, 116, 116, 46: 116, 116, 116, 116, 51: 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 77: 116, 79: 116, 116, 116, 116, 116, 116, 87: 116},
  1321. {115, 115, 115, 115, 115, 115, 115, 115, 9: 115, 115, 115, 115, 115, 46: 115, 115, 115, 115, 51: 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 115, 77: 115, 79: 115, 115, 115, 115, 115, 115, 87: 115},
  1322. {114, 114, 114, 114, 114, 114, 114, 114, 9: 114, 114, 114, 114, 114, 46: 114, 114, 114, 114, 51: 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, 77: 114, 79: 114, 114, 114, 114, 114, 114, 87: 114},
  1323. // 100
  1324. {48: 324, 323, 54: 331, 56: 332, 92: 322},
  1325. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 54: 321, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 320},
  1326. {48: 324, 323, 54: 325, 92: 322},
  1327. {64, 64, 64, 64, 64, 64, 64, 64, 9: 64, 64, 64, 64, 64, 46: 64, 64, 64, 64, 51: 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 77: 64, 79: 64, 64, 64, 64, 64, 64, 87: 64},
  1328. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 326},
  1329. // 105
  1330. {3: 170, 170, 170, 7: 170, 170, 14: 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 170, 50: 170},
  1331. {3: 169, 169, 169, 7: 169, 169, 14: 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 50: 169},
  1332. {63, 63, 63, 63, 63, 63, 63, 63, 9: 63, 63, 63, 63, 63, 46: 63, 63, 63, 63, 51: 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 77: 63, 79: 63, 63, 63, 63, 63, 63, 87: 63},
  1333. {171, 171, 171, 6: 171, 9: 171, 171, 171, 171, 171, 46: 171, 48: 171, 171, 51: 171, 171, 171, 171, 171, 171, 329, 328, 150: 327},
  1334. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 330, 264},
  1335. // 110
  1336. {3: 40, 40, 40, 7: 40, 40, 14: 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 50: 40},
  1337. {3: 39, 39, 39, 7: 39, 39, 14: 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 50: 39},
  1338. {41, 41, 41, 6: 41, 9: 41, 41, 41, 41, 41, 46: 41, 48: 41, 41, 51: 41, 41, 41, 41, 41, 41, 41, 41},
  1339. {140, 140, 140, 140, 140, 140, 140, 140, 9: 140, 140, 140, 140, 140, 46: 140, 140, 140, 140, 51: 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 77: 140, 79: 140, 140, 140, 140, 140, 140, 87: 140},
  1340. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 54: 334, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 333},
  1341. // 115
  1342. {48: 324, 323, 54: 335, 92: 322},
  1343. {62, 62, 62, 62, 62, 62, 62, 62, 9: 62, 62, 62, 62, 62, 46: 62, 62, 62, 62, 51: 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 77: 62, 79: 62, 62, 62, 62, 62, 62, 87: 62},
  1344. {61, 61, 61, 61, 61, 61, 61, 61, 9: 61, 61, 61, 61, 61, 46: 61, 61, 61, 61, 51: 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, 77: 61, 79: 61, 61, 61, 61, 61, 61, 87: 61},
  1345. {2: 345},
  1346. {2: 344},
  1347. // 120
  1348. {2: 205},
  1349. {165, 165, 165, 6: 165, 9: 165, 165, 48: 324, 323, 52: 165, 165, 92: 322, 167: 340},
  1350. {2, 2, 2, 6: 342, 9: 2, 2, 52: 2, 2, 99: 341},
  1351. {166, 166, 166, 9: 166, 166, 52: 166, 166},
  1352. {1, 1, 1, 311, 310, 308, 7: 276, 282, 1, 1, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 52: 1, 1, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 343},
  1353. // 125
  1354. {164, 164, 164, 6: 164, 9: 164, 164, 48: 324, 323, 52: 164, 164, 92: 322},
  1355. {207, 207, 207, 207, 207, 207, 207, 207, 9: 207, 207, 207, 207, 207, 46: 207, 207, 207, 207, 51: 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 207, 77: 207, 79: 207, 207, 207, 207, 207, 207, 87: 207},
  1356. {208, 208, 208, 208, 208, 208, 208, 208, 9: 208, 208, 208, 208, 208, 46: 208, 208, 208, 208, 51: 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, 77: 208, 79: 208, 208, 208, 208, 208, 208, 87: 208},
  1357. {7, 7, 7, 7, 7, 7, 7, 313, 9: 7, 7, 7, 7, 7, 46: 7, 7, 7, 7, 51: 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 77: 7, 79: 7, 7, 7, 7, 7, 7, 87: 314, 104: 317, 106: 315, 316},
  1358. {8, 8, 8, 8, 8, 8, 8, 313, 9: 8, 8, 8, 8, 8, 46: 8, 8, 8, 8, 51: 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 77: 8, 79: 8, 8, 8, 8, 8, 8, 87: 314, 104: 317, 106: 315, 316},
  1359. // 130
  1360. {9, 9, 9, 9, 9, 9, 9, 313, 9: 9, 9, 9, 9, 9, 46: 9, 9, 9, 9, 51: 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 77: 9, 79: 9, 9, 9, 9, 9, 9, 87: 314, 104: 317, 106: 315, 316},
  1361. {8: 350},
  1362. {99, 99, 99, 99, 99, 99, 99, 99, 9: 99, 99, 99, 99, 99, 46: 99, 99, 99, 99, 51: 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 77: 99, 79: 99, 99, 99, 99, 99, 99, 87: 99},
  1363. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 364},
  1364. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 363},
  1365. // 135
  1366. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 362},
  1367. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 361},
  1368. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 360},
  1369. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 359},
  1370. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 358},
  1371. // 140
  1372. {101, 101, 101, 101, 101, 101, 101, 9: 101, 101, 101, 101, 101, 46: 101, 101, 101, 101, 51: 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 101, 77: 101, 79: 101, 101, 101, 101, 101, 101},
  1373. {102, 102, 102, 102, 102, 102, 102, 9: 102, 102, 102, 102, 102, 46: 102, 102, 102, 102, 51: 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 102, 77: 102, 79: 102, 102, 102, 102, 102, 102},
  1374. {103, 103, 103, 103, 103, 103, 103, 9: 103, 103, 103, 103, 103, 46: 103, 103, 103, 103, 51: 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 103, 77: 103, 79: 103, 103, 103, 103, 103, 103},
  1375. {104, 104, 104, 104, 104, 104, 104, 9: 104, 104, 104, 104, 104, 46: 104, 104, 104, 104, 51: 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 77: 104, 79: 104, 104, 104, 104, 104, 104},
  1376. {105, 105, 105, 105, 105, 105, 105, 9: 105, 105, 105, 105, 105, 46: 105, 105, 105, 105, 51: 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 105, 77: 105, 79: 105, 105, 105, 105, 105, 105},
  1377. // 145
  1378. {106, 106, 106, 106, 106, 106, 106, 9: 106, 106, 106, 106, 106, 46: 106, 106, 106, 106, 51: 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, 77: 106, 79: 106, 106, 106, 106, 106, 106},
  1379. {107, 107, 107, 107, 107, 107, 107, 9: 107, 107, 107, 107, 107, 46: 107, 107, 107, 107, 51: 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 107, 77: 107, 79: 107, 107, 107, 107, 107, 107},
  1380. {2: 366, 48: 324, 323, 92: 322},
  1381. {123, 123, 123, 123, 123, 123, 123, 123, 9: 123, 123, 123, 123, 123, 46: 123, 123, 123, 123, 51: 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, 77: 123, 79: 123, 123, 123, 123, 123, 123, 87: 123},
  1382. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 374},
  1383. // 150
  1384. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 373},
  1385. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 372},
  1386. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 371},
  1387. {109, 109, 109, 109, 109, 109, 109, 9: 109, 109, 109, 109, 109, 46: 109, 109, 109, 109, 51: 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 109, 77: 357, 79: 355, 352, 356, 351, 353, 354},
  1388. {110, 110, 110, 110, 110, 110, 110, 9: 110, 110, 110, 110, 110, 46: 110, 110, 110, 110, 51: 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, 77: 357, 79: 355, 352, 356, 351, 353, 354},
  1389. // 155
  1390. {111, 111, 111, 111, 111, 111, 111, 9: 111, 111, 111, 111, 111, 46: 111, 111, 111, 111, 51: 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 111, 77: 357, 79: 355, 352, 356, 351, 353, 354},
  1391. {112, 112, 112, 112, 112, 112, 112, 9: 112, 112, 112, 112, 112, 46: 112, 112, 112, 112, 51: 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 77: 357, 79: 355, 352, 356, 351, 353, 354},
  1392. {3: 168, 168, 168, 7: 168, 168, 14: 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 168, 50: 168},
  1393. {3: 167, 167, 167, 7: 167, 167, 14: 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, 50: 167},
  1394. {7: 413},
  1395. // 160
  1396. {61: 402, 401},
  1397. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 398},
  1398. {14: 395, 47: 396},
  1399. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 394},
  1400. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 393},
  1401. // 165
  1402. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 392},
  1403. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 391},
  1404. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 390},
  1405. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 389},
  1406. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 388},
  1407. // 170
  1408. {147, 147, 147, 370, 369, 367, 147, 9: 147, 147, 147, 147, 147, 46: 147, 147, 147, 147, 51: 147, 147, 147, 147, 147, 147, 147, 147, 368, 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, 147},
  1409. {148, 148, 148, 370, 369, 367, 148, 9: 148, 148, 148, 148, 148, 46: 148, 148, 148, 148, 51: 148, 148, 148, 148, 148, 148, 148, 148, 368, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148},
  1410. {149, 149, 149, 370, 369, 367, 149, 9: 149, 149, 149, 149, 149, 46: 149, 149, 149, 149, 51: 149, 149, 149, 149, 149, 149, 149, 149, 368, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149},
  1411. {150, 150, 150, 370, 369, 367, 150, 9: 150, 150, 150, 150, 150, 46: 150, 150, 150, 150, 51: 150, 150, 150, 150, 150, 150, 150, 150, 368, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, 150},
  1412. {151, 151, 151, 370, 369, 367, 151, 9: 151, 151, 151, 151, 151, 46: 151, 151, 151, 151, 51: 151, 151, 151, 151, 151, 151, 151, 151, 368, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151, 151},
  1413. // 175
  1414. {152, 152, 152, 370, 369, 367, 152, 9: 152, 152, 152, 152, 152, 46: 152, 152, 152, 152, 51: 152, 152, 152, 152, 152, 152, 152, 152, 368, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152, 152},
  1415. {153, 153, 153, 370, 369, 367, 153, 9: 153, 153, 153, 153, 153, 46: 153, 153, 153, 153, 51: 153, 153, 153, 153, 153, 153, 153, 153, 368, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153},
  1416. {156, 156, 156, 6: 156, 9: 156, 156, 156, 156, 156, 46: 156, 48: 156, 156, 51: 156, 156, 156, 156, 156, 156, 156, 156},
  1417. {14: 397},
  1418. {155, 155, 155, 6: 155, 9: 155, 155, 155, 155, 155, 46: 155, 48: 155, 155, 51: 155, 155, 155, 155, 155, 155, 155, 155},
  1419. // 180
  1420. {3: 370, 369, 367, 57: 399, 59: 368},
  1421. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 400},
  1422. {158, 158, 158, 370, 369, 367, 158, 9: 158, 158, 158, 158, 158, 46: 158, 48: 158, 158, 51: 158, 158, 158, 158, 158, 158, 158, 158, 368},
  1423. {7: 406},
  1424. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 403},
  1425. // 185
  1426. {3: 370, 369, 367, 57: 404, 59: 368},
  1427. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 405},
  1428. {157, 157, 157, 370, 369, 367, 157, 9: 157, 157, 157, 157, 157, 46: 157, 48: 157, 157, 51: 157, 157, 157, 157, 157, 157, 157, 157, 368},
  1429. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 97: 231, 100: 407, 102: 408},
  1430. {2: 412},
  1431. // 190
  1432. {410, 2: 95, 137: 409},
  1433. {2: 411},
  1434. {2: 94},
  1435. {159, 159, 159, 6: 159, 9: 159, 159, 159, 159, 159, 46: 159, 48: 159, 159, 51: 159, 159, 159, 159, 159, 159, 159, 159},
  1436. {161, 161, 161, 6: 161, 9: 161, 161, 161, 161, 161, 46: 161, 48: 161, 161, 51: 161, 161, 161, 161, 161, 161, 161, 161},
  1437. // 195
  1438. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 97: 231, 100: 414, 102: 415},
  1439. {2: 418},
  1440. {410, 2: 95, 137: 416},
  1441. {2: 417},
  1442. {160, 160, 160, 6: 160, 9: 160, 160, 160, 160, 160, 46: 160, 48: 160, 160, 51: 160, 160, 160, 160, 160, 160, 160, 160},
  1443. // 200
  1444. {162, 162, 162, 6: 162, 9: 162, 162, 162, 162, 162, 46: 162, 48: 162, 162, 51: 162, 162, 162, 162, 162, 162, 162, 162},
  1445. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 420},
  1446. {2: 421, 48: 324, 323, 92: 322},
  1447. {194, 194, 194, 194, 194, 194, 194, 194, 9: 194, 194, 194, 194, 194, 46: 194, 194, 194, 194, 51: 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 194, 77: 194, 79: 194, 194, 194, 194, 194, 194, 87: 194},
  1448. {2, 2, 6: 424, 13: 2, 99: 423},
  1449. // 205
  1450. {212, 212, 13: 212},
  1451. {1, 1, 8: 256, 13: 1, 93: 254, 145: 425},
  1452. {210, 210, 6: 210, 13: 210},
  1453. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 427},
  1454. {213, 213, 6: 213, 13: 213, 48: 324, 323, 92: 322},
  1455. // 210
  1456. {8: 250, 98: 429},
  1457. {38, 38},
  1458. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 436, 281, 85: 280, 265, 88: 283, 264, 262, 432, 149: 433, 169: 434, 184: 435},
  1459. {3: 74, 74, 74, 7: 74, 74, 14: 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, 50: 74, 77: 74},
  1460. {6: 145, 48: 324, 323, 51: 145, 55: 493, 92: 322, 168: 492},
  1461. // 215
  1462. {6: 143, 51: 143},
  1463. {6: 490, 51: 72},
  1464. {51: 437},
  1465. {51: 73},
  1466. {7: 440, 439, 133: 441, 438, 182: 442},
  1467. // 220
  1468. {93, 93, 93, 6: 93, 9: 93, 93, 12: 93, 93, 46: 93, 55: 488, 94: 93, 93, 93, 101: 93, 181: 487},
  1469. {97, 97, 97, 6: 97, 9: 97, 97, 12: 97, 97, 46: 97, 55: 97, 94: 97, 97, 97, 101: 97},
  1470. {97: 231, 102: 484},
  1471. {91, 91, 91, 6: 91, 9: 91, 91, 12: 91, 91, 46: 91, 94: 91, 91, 91},
  1472. {2, 2, 2, 6: 443, 9: 2, 2, 12: 2, 2, 46: 2, 94: 2, 2, 2, 99: 444},
  1473. // 225
  1474. {1, 1, 1, 7: 440, 439, 1, 1, 12: 1, 1, 46: 1, 94: 1, 1, 1, 133: 483, 438},
  1475. {82, 82, 82, 9: 82, 82, 12: 82, 82, 46: 82, 94: 447, 445, 446, 174: 449, 450, 448},
  1476. {103: 88, 112: 88},
  1477. {103: 87, 112: 87},
  1478. {103: 86, 112: 86},
  1479. // 230
  1480. {103: 85, 112: 477, 179: 478},
  1481. {81, 81, 81, 9: 81, 81, 12: 81, 81, 46: 81},
  1482. {70, 70, 70, 9: 70, 70, 12: 70, 260, 46: 70, 143: 452, 189: 451},
  1483. {68, 68, 68, 9: 68, 68, 12: 68, 46: 453, 170: 455, 185: 454},
  1484. {69, 69, 69, 9: 69, 69, 12: 69, 46: 69},
  1485. // 235
  1486. {146: 470},
  1487. {66, 66, 66, 9: 66, 66, 12: 456, 177: 458, 188: 457},
  1488. {67, 67, 67, 9: 67, 67, 12: 67},
  1489. {146: 465},
  1490. {79, 79, 79, 9: 79, 460, 186: 459},
  1491. // 240
  1492. {65, 65, 65, 9: 65, 65},
  1493. {77, 77, 77, 9: 463, 187: 462},
  1494. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 461},
  1495. {78, 78, 78, 9: 78, 48: 324, 323, 92: 322},
  1496. {80, 80, 80},
  1497. // 245
  1498. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 464},
  1499. {76, 76, 76, 48: 324, 323, 92: 322},
  1500. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 100: 466},
  1501. {121, 121, 121, 9: 121, 121, 52: 468, 469, 178: 467},
  1502. {122, 122, 122, 9: 122, 122},
  1503. // 250
  1504. {120, 120, 120, 9: 120, 120},
  1505. {119, 119, 119, 9: 119, 119},
  1506. {8: 256, 93: 471, 147: 472},
  1507. {201, 201, 201, 6: 201, 9: 201, 201, 12: 201, 157: 473},
  1508. {141, 141, 141, 9: 141, 141, 12: 141},
  1509. // 255
  1510. {2, 2, 2, 6: 475, 9: 2, 2, 12: 2, 99: 474},
  1511. {202, 202, 202, 9: 202, 202, 12: 202},
  1512. {1, 1, 1, 8: 256, 1, 1, 12: 1, 93: 476},
  1513. {200, 200, 200, 6: 200, 9: 200, 200, 12: 200},
  1514. {103: 84},
  1515. // 260
  1516. {103: 479},
  1517. {7: 440, 439, 133: 480, 438},
  1518. {101: 481},
  1519. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 482},
  1520. {83, 83, 83, 9: 83, 83, 12: 83, 83, 46: 83, 48: 324, 323, 92: 322},
  1521. // 265
  1522. {90, 90, 90, 6: 90, 9: 90, 90, 12: 90, 90, 46: 90, 94: 90, 90, 90},
  1523. {410, 2: 95, 137: 485},
  1524. {2: 486},
  1525. {96, 96, 96, 6: 96, 9: 96, 96, 12: 96, 96, 46: 96, 55: 96, 94: 96, 96, 96, 101: 96},
  1526. {98, 98, 98, 6: 98, 9: 98, 98, 12: 98, 98, 46: 98, 94: 98, 98, 98, 101: 98},
  1527. // 270
  1528. {8: 489},
  1529. {92, 92, 92, 6: 92, 9: 92, 92, 12: 92, 92, 46: 92, 94: 92, 92, 92, 101: 92},
  1530. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 432, 149: 491},
  1531. {6: 142, 51: 142},
  1532. {6: 146, 51: 146},
  1533. // 275
  1534. {8: 494},
  1535. {6: 144, 51: 144},
  1536. {8: 250, 98: 496},
  1537. {7: 498, 97: 137, 114: 137, 171: 497},
  1538. {97: 231, 102: 502, 114: 501},
  1539. // 280
  1540. {8: 256, 93: 471, 147: 499},
  1541. {2: 500},
  1542. {97: 136, 114: 136},
  1543. {7: 503},
  1544. {138, 138},
  1545. // 285
  1546. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 100: 504},
  1547. {2: 505},
  1548. {135, 135, 6: 135, 172: 506},
  1549. {2, 2, 6: 508, 99: 507},
  1550. {139, 139},
  1551. // 290
  1552. {1, 1, 7: 509},
  1553. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 100: 510},
  1554. {2: 511},
  1555. {134, 134, 6: 134},
  1556. {173, 173},
  1557. // 295
  1558. {8: 178, 110: 520, 165: 519},
  1559. {8: 250, 98: 515, 110: 516},
  1560. {176, 176},
  1561. {109: 517},
  1562. {8: 250, 98: 518},
  1563. // 300
  1564. {175, 175},
  1565. {8: 522},
  1566. {109: 521},
  1567. {8: 177},
  1568. {179, 179},
  1569. // 305
  1570. {8: 250, 98: 524},
  1571. {181, 181, 13: 260, 143: 525},
  1572. {180, 180},
  1573. {111: 557},
  1574. {111: 189},
  1575. // 310
  1576. {8: 250, 98: 529, 110: 530},
  1577. {7: 552},
  1578. {47: 531},
  1579. {109: 532},
  1580. {8: 250, 98: 533},
  1581. // 315
  1582. {7: 534},
  1583. {8: 256, 93: 535, 108: 536},
  1584. {15: 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 71: 542},
  1585. {2: 186, 6: 186, 148: 537},
  1586. {2: 2, 6: 539, 99: 538},
  1587. // 320
  1588. {2: 541},
  1589. {2: 1, 8: 256, 93: 535, 108: 540},
  1590. {2: 185, 6: 185},
  1591. {187, 187},
  1592. {196, 196, 196, 311, 310, 308, 196, 276, 282, 11: 196, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 47: 544, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 545, 158: 546, 543},
  1593. // 325
  1594. {183, 183, 183, 6: 183, 11: 549, 162: 550, 548},
  1595. {14: 547},
  1596. {197, 197, 197, 6: 197, 11: 197, 48: 324, 323, 92: 322},
  1597. {195, 195, 195, 6: 195, 11: 195},
  1598. {198, 198, 198, 6: 198, 11: 198},
  1599. // 330
  1600. {204, 204, 204, 6: 204},
  1601. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 551},
  1602. {182, 182, 182, 6: 182},
  1603. {184, 184, 184, 6: 184, 48: 324, 323, 92: 322},
  1604. {8: 256, 93: 535, 108: 553},
  1605. // 335
  1606. {2: 186, 6: 186, 148: 554},
  1607. {2: 2, 6: 539, 99: 555},
  1608. {2: 556},
  1609. {188, 188},
  1610. {8: 192, 110: 559, 160: 558},
  1611. // 340
  1612. {8: 562},
  1613. {47: 560},
  1614. {109: 561},
  1615. {8: 191},
  1616. {101: 563},
  1617. // 345
  1618. {8: 564},
  1619. {7: 565},
  1620. {3: 311, 310, 308, 7: 276, 282, 14: 267, 284, 285, 286, 287, 288, 289, 290, 291, 293, 294, 292, 296, 297, 298, 299, 295, 300, 301, 302, 304, 305, 306, 307, 303, 266, 269, 270, 271, 274, 272, 268, 50: 309, 71: 261, 278, 273, 277, 279, 275, 78: 281, 85: 280, 265, 88: 283, 264, 262, 339, 100: 566},
  1621. {2: 567},
  1622. {193, 193},
  1623. // 350
  1624. {209, 209},
  1625. {8: 250, 98: 570},
  1626. {105: 572, 144: 571},
  1627. {8: 256, 93: 535, 108: 575},
  1628. {156: 573},
  1629. // 355
  1630. {8: 256, 93: 574},
  1631. {214, 214},
  1632. {215, 215},
  1633. {1: 216, 48: 324, 323, 92: 322},
  1634. {174, 174, 97: 231, 102: 244, 105: 227, 115: 222, 233, 223, 234, 224, 235, 225, 236, 237, 238, 226, 239, 240, 232, 228, 241, 229, 242, 135: 230, 243, 138: 578, 248, 245, 249, 246},
  1635. // 360
  1636. {44, 44},
  1637. }
  1638. )
  1639. var yyDebug = 0
  1640. type yyLexer interface {
  1641. Lex(lval *yySymType) int
  1642. Error(s string)
  1643. }
  1644. type yyLexerEx interface {
  1645. yyLexer
  1646. Reduced(rule, state int, lval *yySymType) bool
  1647. }
  1648. func yySymName(c int) (s string) {
  1649. x, ok := yyXLAT[c]
  1650. if ok {
  1651. return yySymNames[x]
  1652. }
  1653. if c < 0x7f {
  1654. return __yyfmt__.Sprintf("'%c'", c)
  1655. }
  1656. return __yyfmt__.Sprintf("%d", c)
  1657. }
  1658. func yylex1(yylex yyLexer, lval *yySymType) (n int) {
  1659. n = yylex.Lex(lval)
  1660. if n <= 0 {
  1661. n = yyEOFCode
  1662. }
  1663. if yyDebug >= 3 {
  1664. __yyfmt__.Printf("\nlex %s(%#x %d), lval: %+v\n", yySymName(n), n, n, lval)
  1665. }
  1666. return n
  1667. }
  1668. func yyParse(yylex yyLexer) int {
  1669. const yyError = 197
  1670. yyEx, _ := yylex.(yyLexerEx)
  1671. var yyn int
  1672. var yylval yySymType
  1673. var yyVAL yySymType
  1674. yyS := make([]yySymType, 200)
  1675. Nerrs := 0 /* number of errors */
  1676. Errflag := 0 /* error recovery flag */
  1677. yyerrok := func() {
  1678. if yyDebug >= 2 {
  1679. __yyfmt__.Printf("yyerrok()\n")
  1680. }
  1681. Errflag = 0
  1682. }
  1683. _ = yyerrok
  1684. yystate := 0
  1685. yychar := -1
  1686. var yyxchar int
  1687. var yyshift int
  1688. yyp := -1
  1689. goto yystack
  1690. ret0:
  1691. return 0
  1692. ret1:
  1693. return 1
  1694. yystack:
  1695. /* put a state and value onto the stack */
  1696. yyp++
  1697. if yyp >= len(yyS) {
  1698. nyys := make([]yySymType, len(yyS)*2)
  1699. copy(nyys, yyS)
  1700. yyS = nyys
  1701. }
  1702. yyS[yyp] = yyVAL
  1703. yyS[yyp].yys = yystate
  1704. yynewstate:
  1705. if yychar < 0 {
  1706. yychar = yylex1(yylex, &yylval)
  1707. var ok bool
  1708. if yyxchar, ok = yyXLAT[yychar]; !ok {
  1709. yyxchar = len(yySymNames) // > tab width
  1710. }
  1711. }
  1712. if yyDebug >= 4 {
  1713. var a []int
  1714. for _, v := range yyS[:yyp+1] {
  1715. a = append(a, v.yys)
  1716. }
  1717. __yyfmt__.Printf("state stack %v\n", a)
  1718. }
  1719. row := yyParseTab[yystate]
  1720. yyn = 0
  1721. if yyxchar < len(row) {
  1722. if yyn = int(row[yyxchar]); yyn != 0 {
  1723. yyn += yyTabOfs
  1724. }
  1725. }
  1726. switch {
  1727. case yyn > 0: // shift
  1728. yychar = -1
  1729. yyVAL = yylval
  1730. yystate = yyn
  1731. yyshift = yyn
  1732. if yyDebug >= 2 {
  1733. __yyfmt__.Printf("shift, and goto state %d\n", yystate)
  1734. }
  1735. if Errflag > 0 {
  1736. Errflag--
  1737. }
  1738. goto yystack
  1739. case yyn < 0: // reduce
  1740. case yystate == 1: // accept
  1741. if yyDebug >= 2 {
  1742. __yyfmt__.Println("accept")
  1743. }
  1744. goto ret0
  1745. }
  1746. if yyn == 0 {
  1747. /* error ... attempt to resume parsing */
  1748. switch Errflag {
  1749. case 0: /* brand new error */
  1750. if yyDebug >= 1 {
  1751. __yyfmt__.Printf("no action for %s in state %d\n", yySymName(yychar), yystate)
  1752. }
  1753. msg, ok := yyXErrors[yyXError{yystate, yyxchar}]
  1754. if !ok {
  1755. msg, ok = yyXErrors[yyXError{yystate, -1}]
  1756. }
  1757. if !ok && yyshift != 0 {
  1758. msg, ok = yyXErrors[yyXError{yyshift, yyxchar}]
  1759. }
  1760. if !ok {
  1761. msg, ok = yyXErrors[yyXError{yyshift, -1}]
  1762. }
  1763. if yychar > 0 {
  1764. ls := yyTokenLiteralStrings[yychar]
  1765. if ls == "" {
  1766. ls = yySymName(yychar)
  1767. }
  1768. if ls != "" {
  1769. switch {
  1770. case msg == "":
  1771. msg = __yyfmt__.Sprintf("unexpected %s", ls)
  1772. default:
  1773. msg = __yyfmt__.Sprintf("unexpected %s, %s", ls, msg)
  1774. }
  1775. }
  1776. }
  1777. if msg == "" {
  1778. msg = "syntax error"
  1779. }
  1780. yylex.Error(msg)
  1781. Nerrs++
  1782. fallthrough
  1783. case 1, 2: /* incompletely recovered error ... try again */
  1784. Errflag = 3
  1785. /* find a state where "error" is a legal shift action */
  1786. for yyp >= 0 {
  1787. row := yyParseTab[yyS[yyp].yys]
  1788. if yyError < len(row) {
  1789. yyn = int(row[yyError]) + yyTabOfs
  1790. if yyn > 0 { // hit
  1791. if yyDebug >= 2 {
  1792. __yyfmt__.Printf("error recovery found error shift in state %d\n", yyS[yyp].yys)
  1793. }
  1794. yystate = yyn /* simulate a shift of "error" */
  1795. goto yystack
  1796. }
  1797. }
  1798. /* the current p has no shift on "error", pop stack */
  1799. if yyDebug >= 2 {
  1800. __yyfmt__.Printf("error recovery pops state %d\n", yyS[yyp].yys)
  1801. }
  1802. yyp--
  1803. }
  1804. /* there is no state on the stack with an error shift ... abort */
  1805. if yyDebug >= 2 {
  1806. __yyfmt__.Printf("error recovery failed\n")
  1807. }
  1808. goto ret1
  1809. case 3: /* no shift yet; clobber input char */
  1810. if yyDebug >= 2 {
  1811. __yyfmt__.Printf("error recovery discards %s\n", yySymName(yychar))
  1812. }
  1813. if yychar == yyEOFCode {
  1814. goto ret1
  1815. }
  1816. yychar = -1
  1817. goto yynewstate /* try again in the same state */
  1818. }
  1819. }
  1820. r := -yyn
  1821. x0 := yyReductions[r]
  1822. x, n := x0.xsym, x0.components
  1823. yypt := yyp
  1824. _ = yypt // guard against "declared and not used"
  1825. yyp -= n
  1826. if yyp+1 >= len(yyS) {
  1827. nyys := make([]yySymType, len(yyS)*2)
  1828. copy(nyys, yyS)
  1829. yyS = nyys
  1830. }
  1831. yyVAL = yyS[yyp+1]
  1832. /* consult goto table to find next state */
  1833. exState := yystate
  1834. yystate = int(yyParseTab[yyS[yyp].yys][x]) + yyTabOfs
  1835. /* reduction by production r */
  1836. if yyDebug >= 2 {
  1837. __yyfmt__.Printf("reduce using rule %v (%s), and goto state %d\n", r, yySymNames[x], yystate)
  1838. }
  1839. switch r {
  1840. case 2:
  1841. {
  1842. yylex.(*lexer).expr = expr(yyS[yypt-0].item)
  1843. }
  1844. case 3:
  1845. {
  1846. yyVAL.item = &alterTableAddStmt{tableName: yyS[yypt-2].item.(string), c: yyS[yypt-0].item.(*col)}
  1847. }
  1848. case 4:
  1849. {
  1850. yyVAL.item = &alterTableDropColumnStmt{tableName: yyS[yypt-3].item.(string), colName: yyS[yypt-0].item.(string)}
  1851. }
  1852. case 5:
  1853. {
  1854. yyVAL.item = assignment{colName: yyS[yypt-2].item.(string), expr: expr(yyS[yypt-0].item)}
  1855. }
  1856. case 6:
  1857. {
  1858. yyVAL.item = append([]assignment{yyS[yypt-2].item.(assignment)}, yyS[yypt-1].item.([]assignment)...)
  1859. }
  1860. case 7:
  1861. {
  1862. yyVAL.item = []assignment{}
  1863. }
  1864. case 8:
  1865. {
  1866. yyVAL.item = append(yyS[yypt-2].item.([]assignment), yyS[yypt-0].item.(assignment))
  1867. }
  1868. case 9:
  1869. {
  1870. yyVAL.item = beginTransactionStmt{}
  1871. }
  1872. case 10:
  1873. {
  1874. yyVAL.item = yyS[yypt-1].item
  1875. }
  1876. case 11:
  1877. {
  1878. yyVAL.item = '*'
  1879. }
  1880. case 12:
  1881. {
  1882. yyVAL.item = []expression{}
  1883. }
  1884. case 14:
  1885. {
  1886. x := &col{name: yyS[yypt-3].item.(string), typ: yyS[yypt-2].item.(int), constraint: yyS[yypt-1].item.(*constraint)}
  1887. if yyS[yypt-0].item != nil {
  1888. x.dflt = expr(yyS[yypt-0].item)
  1889. }
  1890. yyVAL.item = x
  1891. }
  1892. case 16:
  1893. {
  1894. yyVAL.item = append([]string{yyS[yypt-2].item.(string)}, yyS[yypt-1].item.([]string)...)
  1895. }
  1896. case 17:
  1897. {
  1898. yyVAL.item = []string{}
  1899. }
  1900. case 18:
  1901. {
  1902. yyVAL.item = append(yyS[yypt-2].item.([]string), yyS[yypt-0].item.(string))
  1903. }
  1904. case 19:
  1905. {
  1906. yyVAL.item = commitStmt{}
  1907. }
  1908. case 20:
  1909. {
  1910. yyVAL.item = &constraint{}
  1911. }
  1912. case 21:
  1913. {
  1914. yyVAL.item = &constraint{expr(yyS[yypt-0].item)}
  1915. }
  1916. case 22:
  1917. {
  1918. yyVAL.item = (*constraint)(nil)
  1919. }
  1920. case 24:
  1921. {
  1922. yyVAL.item = &conversion{typ: yyS[yypt-3].item.(int), val: expr(yyS[yypt-1].item)}
  1923. }
  1924. case 25:
  1925. {
  1926. indexName, tableName, exprList := yyS[yypt-5].item.(string), yyS[yypt-3].item.(string), yyS[yypt-1].item.([]expression)
  1927. simpleIndex := len(exprList) == 1
  1928. var columnName string
  1929. if simpleIndex {
  1930. expr := exprList[0]
  1931. switch x := expr.(type) {
  1932. case *ident:
  1933. columnName = x.s
  1934. case *call:
  1935. if x.f == "id" && len(x.arg) == 0 {
  1936. columnName = "id()"
  1937. break
  1938. }
  1939. simpleIndex = false
  1940. default:
  1941. simpleIndex = false
  1942. }
  1943. }
  1944. if !simpleIndex {
  1945. columnName = ""
  1946. }
  1947. yyVAL.item = &createIndexStmt{unique: yyS[yypt-8].item.(bool), ifNotExists: yyS[yypt-6].item.(bool), indexName: indexName, tableName: tableName, colName: columnName, exprList: exprList}
  1948. if indexName == tableName || indexName == columnName {
  1949. yylex.(*lexer).err("index name collision: %s", indexName)
  1950. return 1
  1951. }
  1952. if yylex.(*lexer).root {
  1953. break
  1954. }
  1955. if isSystemName[indexName] || isSystemName[tableName] {
  1956. yylex.(*lexer).err("name is used for system tables: %s", indexName)
  1957. return 1
  1958. }
  1959. }
  1960. case 26:
  1961. {
  1962. yyVAL.item = false
  1963. }
  1964. case 27:
  1965. {
  1966. yyVAL.item = true
  1967. }
  1968. case 28:
  1969. {
  1970. yyVAL.item = false
  1971. }
  1972. case 29:
  1973. {
  1974. yyVAL.item = true
  1975. }
  1976. case 30:
  1977. {
  1978. nm := yyS[yypt-5].item.(string)
  1979. yyVAL.item = &createTableStmt{tableName: nm, cols: append([]*col{yyS[yypt-3].item.(*col)}, yyS[yypt-2].item.([]*col)...)}
  1980. if yylex.(*lexer).root {
  1981. break
  1982. }
  1983. if isSystemName[nm] {
  1984. yylex.(*lexer).err("name is used for system tables: %s", nm)
  1985. return 1
  1986. }
  1987. }
  1988. case 31:
  1989. {
  1990. nm := yyS[yypt-5].item.(string)
  1991. yyVAL.item = &createTableStmt{ifNotExists: true, tableName: nm, cols: append([]*col{yyS[yypt-3].item.(*col)}, yyS[yypt-2].item.([]*col)...)}
  1992. if yylex.(*lexer).root {
  1993. break
  1994. }
  1995. if isSystemName[nm] {
  1996. yylex.(*lexer).err("name is used for system tables: %s", nm)
  1997. return 1
  1998. }
  1999. }
  2000. case 32:
  2001. {
  2002. yyVAL.item = []*col{}
  2003. }
  2004. case 33:
  2005. {
  2006. yyVAL.item = append(yyS[yypt-2].item.([]*col), yyS[yypt-0].item.(*col))
  2007. }
  2008. case 34:
  2009. {
  2010. yyVAL.item = yyS[yypt-0].item
  2011. }
  2012. case 35:
  2013. {
  2014. yyVAL.item = nil
  2015. }
  2016. case 37:
  2017. {
  2018. yyVAL.item = &truncateTableStmt{yyS[yypt-0].item.(string)}
  2019. if yylex.(*lexer).root {
  2020. break
  2021. }
  2022. if isSystemName[yyS[yypt-0].item.(string)] {
  2023. yylex.(*lexer).err("name is used for system tables: %s", yyS[yypt-0].item.(string))
  2024. return 1
  2025. }
  2026. }
  2027. case 38:
  2028. {
  2029. yyVAL.item = &deleteStmt{tableName: yyS[yypt-1].item.(string), where: yyS[yypt-0].item.(*whereRset).expr}
  2030. if yylex.(*lexer).root {
  2031. break
  2032. }
  2033. if isSystemName[yyS[yypt-1].item.(string)] {
  2034. yylex.(*lexer).err("name is used for system tables: %s", yyS[yypt-1].item.(string))
  2035. return 1
  2036. }
  2037. }
  2038. case 39:
  2039. {
  2040. yyVAL.item = &dropIndexStmt{ifExists: yyS[yypt-1].item.(bool), indexName: yyS[yypt-0].item.(string)}
  2041. }
  2042. case 40:
  2043. {
  2044. yyVAL.item = false
  2045. }
  2046. case 41:
  2047. {
  2048. yyVAL.item = true
  2049. }
  2050. case 42:
  2051. {
  2052. nm := yyS[yypt-0].item.(string)
  2053. yyVAL.item = &dropTableStmt{tableName: nm}
  2054. if yylex.(*lexer).root {
  2055. break
  2056. }
  2057. if isSystemName[nm] {
  2058. yylex.(*lexer).err("name is used for system tables: %s", nm)
  2059. return 1
  2060. }
  2061. }
  2062. case 43:
  2063. {
  2064. nm := yyS[yypt-0].item.(string)
  2065. yyVAL.item = &dropTableStmt{ifExists: true, tableName: nm}
  2066. if yylex.(*lexer).root {
  2067. break
  2068. }
  2069. if isSystemName[nm] {
  2070. yylex.(*lexer).err("name is used for system tables: %s", nm)
  2071. return 1
  2072. }
  2073. }
  2074. case 44:
  2075. {
  2076. yyVAL.item = nil
  2077. }
  2078. case 45:
  2079. {
  2080. yyVAL.item = &explainStmt{yyS[yypt-0].item.(stmt)}
  2081. }
  2082. case 47:
  2083. {
  2084. var err error
  2085. if yyVAL.item, err = newBinaryOperation(oror, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2086. yylex.(*lexer).err("%v", err)
  2087. return 1
  2088. }
  2089. }
  2090. case 52:
  2091. {
  2092. yyVAL.item = append([]expression{expr(yyS[yypt-2].item)}, yyS[yypt-1].item.([]expression)...)
  2093. }
  2094. case 53:
  2095. {
  2096. yyVAL.item = []expression(nil)
  2097. }
  2098. case 54:
  2099. {
  2100. yyVAL.item = append(yyS[yypt-2].item.([]expression), expr(yyS[yypt-0].item))
  2101. }
  2102. case 56:
  2103. {
  2104. yyVAL.item = &pIn{expr: yyS[yypt-4].item.(expression), list: yyS[yypt-1].item.([]expression)}
  2105. }
  2106. case 57:
  2107. {
  2108. yyVAL.item = &pIn{expr: yyS[yypt-5].item.(expression), not: true, list: yyS[yypt-1].item.([]expression)}
  2109. }
  2110. case 58:
  2111. {
  2112. yyVAL.item = &pIn{expr: yyS[yypt-5].item.(expression), sel: yyS[yypt-2].item.(*selectStmt)}
  2113. }
  2114. case 59:
  2115. {
  2116. yyVAL.item = &pIn{expr: yyS[yypt-6].item.(expression), not: true, sel: yyS[yypt-2].item.(*selectStmt)}
  2117. }
  2118. case 60:
  2119. {
  2120. var err error
  2121. if yyVAL.item, err = newBetween(yyS[yypt-4].item, yyS[yypt-2].item, yyS[yypt-0].item, false); err != nil {
  2122. yylex.(*lexer).err("%v", err)
  2123. return 1
  2124. }
  2125. }
  2126. case 61:
  2127. {
  2128. var err error
  2129. if yyVAL.item, err = newBetween(yyS[yypt-5].item, yyS[yypt-2].item, yyS[yypt-0].item, true); err != nil {
  2130. yylex.(*lexer).err("%v", err)
  2131. return 1
  2132. }
  2133. }
  2134. case 62:
  2135. {
  2136. yyVAL.item = &isNull{expr: yyS[yypt-2].item.(expression)}
  2137. }
  2138. case 63:
  2139. {
  2140. yyVAL.item = &isNull{expr: yyS[yypt-3].item.(expression), not: true}
  2141. }
  2142. case 65:
  2143. {
  2144. var err error
  2145. if yyVAL.item, err = newBinaryOperation(ge, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2146. yylex.(*lexer).err("%v", err)
  2147. return 1
  2148. }
  2149. }
  2150. case 66:
  2151. {
  2152. var err error
  2153. if yyVAL.item, err = newBinaryOperation('>', yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2154. yylex.(*lexer).err("%v", err)
  2155. return 1
  2156. }
  2157. }
  2158. case 67:
  2159. {
  2160. var err error
  2161. if yyVAL.item, err = newBinaryOperation(le, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2162. yylex.(*lexer).err("%v", err)
  2163. return 1
  2164. }
  2165. }
  2166. case 68:
  2167. {
  2168. var err error
  2169. if yyVAL.item, err = newBinaryOperation('<', yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2170. yylex.(*lexer).err("%v", err)
  2171. return 1
  2172. }
  2173. }
  2174. case 69:
  2175. {
  2176. var err error
  2177. if yyVAL.item, err = newBinaryOperation(neq, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2178. yylex.(*lexer).err("%v", err)
  2179. return 1
  2180. }
  2181. }
  2182. case 70:
  2183. {
  2184. var err error
  2185. if yyVAL.item, err = newBinaryOperation(eq, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2186. yylex.(*lexer).err("%v", err)
  2187. return 1
  2188. }
  2189. }
  2190. case 71:
  2191. {
  2192. yyVAL.item = &pLike{expr: yyS[yypt-2].item.(expression), pattern: yyS[yypt-0].item.(expression)}
  2193. }
  2194. case 72:
  2195. {
  2196. expr, name := expr(yyS[yypt-1].item), yyS[yypt-0].item.(string)
  2197. if name == "" {
  2198. s, ok := expr.(*ident)
  2199. if ok {
  2200. name = s.s
  2201. }
  2202. }
  2203. yyVAL.item = &fld{expr: expr, name: name}
  2204. }
  2205. case 73:
  2206. {
  2207. yyVAL.item = ""
  2208. }
  2209. case 74:
  2210. {
  2211. yyVAL.item = yyS[yypt-0].item
  2212. }
  2213. case 75:
  2214. {
  2215. yyVAL.item = []*fld{yyS[yypt-0].item.(*fld)}
  2216. }
  2217. case 76:
  2218. {
  2219. l, f := yyS[yypt-2].item.([]*fld), yyS[yypt-0].item.(*fld)
  2220. if f.name != "" {
  2221. if f := findFld(l, f.name); f != nil {
  2222. yylex.(*lexer).err("duplicate field name %q", f.name)
  2223. return 1
  2224. }
  2225. }
  2226. yyVAL.item = append(yyS[yypt-2].item.([]*fld), yyS[yypt-0].item.(*fld))
  2227. }
  2228. case 77:
  2229. {
  2230. yyVAL.item = &groupByRset{colNames: yyS[yypt-0].item.([]string)}
  2231. }
  2232. case 78:
  2233. {
  2234. yyVAL.item = yyS[yypt-1].item
  2235. }
  2236. case 79:
  2237. {
  2238. yyVAL.item = &insertIntoStmt{tableName: yyS[yypt-7].item.(string), colNames: yyS[yypt-6].item.([]string), lists: append([][]expression{yyS[yypt-3].item.([]expression)}, yyS[yypt-1].item.([][]expression)...)}
  2239. if yylex.(*lexer).root {
  2240. break
  2241. }
  2242. if isSystemName[yyS[yypt-7].item.(string)] {
  2243. yylex.(*lexer).err("name is used for system tables: %s", yyS[yypt-7].item.(string))
  2244. return 1
  2245. }
  2246. }
  2247. case 80:
  2248. {
  2249. yyVAL.item = &insertIntoStmt{tableName: yyS[yypt-2].item.(string), colNames: yyS[yypt-1].item.([]string), sel: yyS[yypt-0].item.(*selectStmt)}
  2250. }
  2251. case 81:
  2252. {
  2253. yyVAL.item = []string{}
  2254. }
  2255. case 82:
  2256. {
  2257. yyVAL.item = yyS[yypt-1].item
  2258. }
  2259. case 83:
  2260. {
  2261. yyVAL.item = [][]expression{}
  2262. }
  2263. case 84:
  2264. {
  2265. yyVAL.item = append(yyS[yypt-4].item.([][]expression), yyS[yypt-1].item.([]expression))
  2266. }
  2267. case 92:
  2268. {
  2269. yyVAL.item = value{yyS[yypt-0].item}
  2270. }
  2271. case 93:
  2272. {
  2273. n := yyS[yypt-0].item.(int)
  2274. yyVAL.item = parameter{n}
  2275. l := yylex.(*lexer)
  2276. l.params = mathutil.Max(l.params, n)
  2277. if n == 0 {
  2278. l.err("parameter number must be non zero")
  2279. return 1
  2280. }
  2281. }
  2282. case 94:
  2283. {
  2284. yyVAL.item = &ident{yyS[yypt-0].item.(string)}
  2285. }
  2286. case 95:
  2287. {
  2288. yyVAL.item = &pexpr{expr: expr(yyS[yypt-1].item)}
  2289. }
  2290. case 96:
  2291. {
  2292. yyVAL.item = &orderByRset{by: yyS[yypt-1].item.([]expression), asc: yyS[yypt-0].item.(bool)}
  2293. }
  2294. case 97:
  2295. {
  2296. yyVAL.item = true // ASC by default
  2297. }
  2298. case 98:
  2299. {
  2300. yyVAL.item = true
  2301. }
  2302. case 99:
  2303. {
  2304. yyVAL.item = false
  2305. }
  2306. case 102:
  2307. {
  2308. var err error
  2309. if yyVAL.item, err = newIndex(yyS[yypt-1].item.(expression), expr(yyS[yypt-0].item)); err != nil {
  2310. yylex.(*lexer).err("%v", err)
  2311. return 1
  2312. }
  2313. }
  2314. case 103:
  2315. {
  2316. var err error
  2317. s := yyS[yypt-0].item.([2]*expression)
  2318. if yyVAL.item, err = newSlice(yyS[yypt-1].item.(expression), s[0], s[1]); err != nil {
  2319. yylex.(*lexer).err("%v", err)
  2320. return 1
  2321. }
  2322. }
  2323. case 104:
  2324. {
  2325. x := yylex.(*lexer)
  2326. f, ok := yyS[yypt-1].item.(*ident)
  2327. if !ok {
  2328. x.err("expected identifier or qualified identifier")
  2329. return 1
  2330. }
  2331. if r, ok := yyS[yypt-0].item.(rune); ok {
  2332. if f.isQualified() || f.s != "count" || r != '*' {
  2333. x.err(fmt.Sprintf("invalid expression %s(%c)", f, r))
  2334. return 1
  2335. }
  2336. yyS[yypt-0].item = []expression(nil)
  2337. }
  2338. var err error
  2339. var agg bool
  2340. if yyVAL.item, agg, err = newCall(f.s, yyS[yypt-0].item.([]expression)); err != nil {
  2341. x.err("%v", err)
  2342. return 1
  2343. }
  2344. if n := len(x.agg); n > 0 {
  2345. x.agg[n-1] = x.agg[n-1] || agg
  2346. }
  2347. }
  2348. case 106:
  2349. {
  2350. var err error
  2351. if yyVAL.item, err = newBinaryOperation('^', yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2352. yylex.(*lexer).err("%v", err)
  2353. return 1
  2354. }
  2355. }
  2356. case 107:
  2357. {
  2358. var err error
  2359. if yyVAL.item, err = newBinaryOperation('|', yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2360. yylex.(*lexer).err("%v", err)
  2361. return 1
  2362. }
  2363. }
  2364. case 108:
  2365. {
  2366. var err error
  2367. if yyVAL.item, err = newBinaryOperation('-', yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2368. yylex.(*lexer).err("%v", err)
  2369. return 1
  2370. }
  2371. }
  2372. case 109:
  2373. {
  2374. var err error
  2375. yyVAL.item, err = newBinaryOperation('+', yyS[yypt-2].item, yyS[yypt-0].item)
  2376. if err != nil {
  2377. yylex.(*lexer).err("%v", err)
  2378. return 1
  2379. }
  2380. }
  2381. case 111:
  2382. {
  2383. var err error
  2384. yyVAL.item, err = newBinaryOperation(andnot, yyS[yypt-2].item, yyS[yypt-0].item)
  2385. if err != nil {
  2386. yylex.(*lexer).err("%v", err)
  2387. return 1
  2388. }
  2389. }
  2390. case 112:
  2391. {
  2392. var err error
  2393. yyVAL.item, err = newBinaryOperation('&', yyS[yypt-2].item, yyS[yypt-0].item)
  2394. if err != nil {
  2395. yylex.(*lexer).err("%v", err)
  2396. return 1
  2397. }
  2398. }
  2399. case 113:
  2400. {
  2401. var err error
  2402. yyVAL.item, err = newBinaryOperation(lsh, yyS[yypt-2].item, yyS[yypt-0].item)
  2403. if err != nil {
  2404. yylex.(*lexer).err("%v", err)
  2405. return 1
  2406. }
  2407. }
  2408. case 114:
  2409. {
  2410. var err error
  2411. yyVAL.item, err = newBinaryOperation(rsh, yyS[yypt-2].item, yyS[yypt-0].item)
  2412. if err != nil {
  2413. yylex.(*lexer).err("%v", err)
  2414. return 1
  2415. }
  2416. }
  2417. case 115:
  2418. {
  2419. var err error
  2420. yyVAL.item, err = newBinaryOperation('%', yyS[yypt-2].item, yyS[yypt-0].item)
  2421. if err != nil {
  2422. yylex.(*lexer).err("%v", err)
  2423. return 1
  2424. }
  2425. }
  2426. case 116:
  2427. {
  2428. var err error
  2429. yyVAL.item, err = newBinaryOperation('/', yyS[yypt-2].item, yyS[yypt-0].item)
  2430. if err != nil {
  2431. yylex.(*lexer).err("%v", err)
  2432. return 1
  2433. }
  2434. }
  2435. case 117:
  2436. {
  2437. var err error
  2438. yyVAL.item, err = newBinaryOperation('*', yyS[yypt-2].item, yyS[yypt-0].item)
  2439. if err != nil {
  2440. yylex.(*lexer).err("%v", err)
  2441. return 1
  2442. }
  2443. }
  2444. case 119:
  2445. {
  2446. yyVAL.item = fmt.Sprintf("%s.%s", yyS[yypt-2].item.(string), yyS[yypt-0].item.(string))
  2447. }
  2448. case 120:
  2449. {
  2450. yyVAL.item = []interface{}{yyS[yypt-1].item, yyS[yypt-0].item}
  2451. }
  2452. case 122:
  2453. {
  2454. yyVAL.item = yyS[yypt-2].item
  2455. }
  2456. case 125:
  2457. {
  2458. yyVAL.item = ""
  2459. }
  2460. case 126:
  2461. {
  2462. yyVAL.item = yyS[yypt-0].item
  2463. }
  2464. case 127:
  2465. {
  2466. yyVAL.list = []interface{}{yyS[yypt-0].item}
  2467. }
  2468. case 128:
  2469. {
  2470. yyVAL.list = append(yyS[yypt-2].list, yyS[yypt-0].item)
  2471. }
  2472. case 129:
  2473. {
  2474. yyVAL.item = rollbackStmt{}
  2475. }
  2476. case 130:
  2477. {
  2478. yyVAL.item = leftJoin
  2479. }
  2480. case 131:
  2481. {
  2482. yyVAL.item = rightJoin
  2483. }
  2484. case 132:
  2485. {
  2486. yyVAL.item = fullJoin
  2487. }
  2488. case 133:
  2489. {
  2490. yyVAL.item = nil
  2491. }
  2492. case 135:
  2493. {
  2494. yyVAL.item = []interface{}{yyS[yypt-5].item, yyS[yypt-2].item, yyS[yypt-0].item}
  2495. }
  2496. case 136:
  2497. {
  2498. yyVAL.item = nil
  2499. }
  2500. case 138:
  2501. {
  2502. x := yylex.(*lexer)
  2503. n := len(x.agg)
  2504. join := &joinRset{sources: yyS[yypt-7].list}
  2505. if o := yyS[yypt-5].item; o != nil {
  2506. o := o.([]interface{})
  2507. join.typ = o[0].(int)
  2508. join.sources = append(join.sources, o[1].([]interface{}))
  2509. join.on = o[2].(expression)
  2510. }
  2511. yyVAL.item = &selectStmt{
  2512. distinct: yyS[yypt-10].item.(bool),
  2513. flds: yyS[yypt-9].item.([]*fld),
  2514. from: join,
  2515. hasAggregates: x.agg[n-1],
  2516. where: yyS[yypt-4].item.(*whereRset),
  2517. group: yyS[yypt-3].item.(*groupByRset),
  2518. order: yyS[yypt-2].item.(*orderByRset),
  2519. limit: yyS[yypt-1].item.(*limitRset),
  2520. offset: yyS[yypt-0].item.(*offsetRset),
  2521. }
  2522. x.agg = x.agg[:n-1]
  2523. }
  2524. case 139:
  2525. {
  2526. yyVAL.item = (*limitRset)(nil)
  2527. }
  2528. case 140:
  2529. {
  2530. yyVAL.item = &limitRset{expr: expr(yyS[yypt-0].item)}
  2531. }
  2532. case 141:
  2533. {
  2534. yyVAL.item = (*offsetRset)(nil)
  2535. }
  2536. case 142:
  2537. {
  2538. yyVAL.item = &offsetRset{expr: expr(yyS[yypt-0].item)}
  2539. }
  2540. case 143:
  2541. {
  2542. yyVAL.item = false
  2543. }
  2544. case 144:
  2545. {
  2546. yyVAL.item = true
  2547. }
  2548. case 145:
  2549. {
  2550. yyVAL.item = []*fld{}
  2551. }
  2552. case 146:
  2553. {
  2554. yyVAL.item = yyS[yypt-0].item
  2555. }
  2556. case 147:
  2557. {
  2558. yyVAL.item = yyS[yypt-1].item
  2559. }
  2560. case 148:
  2561. {
  2562. yyVAL.item = (*whereRset)(nil)
  2563. }
  2564. case 150:
  2565. {
  2566. yyVAL.item = (*groupByRset)(nil)
  2567. }
  2568. case 152:
  2569. {
  2570. yyVAL.item = (*orderByRset)(nil)
  2571. }
  2572. case 154:
  2573. {
  2574. yyVAL.item = [2]*expression{nil, nil}
  2575. }
  2576. case 155:
  2577. {
  2578. hi := expr(yyS[yypt-1].item)
  2579. yyVAL.item = [2]*expression{nil, &hi}
  2580. }
  2581. case 156:
  2582. {
  2583. lo := expr(yyS[yypt-2].item)
  2584. yyVAL.item = [2]*expression{&lo, nil}
  2585. }
  2586. case 157:
  2587. {
  2588. lo := expr(yyS[yypt-3].item)
  2589. hi := expr(yyS[yypt-1].item)
  2590. yyVAL.item = [2]*expression{&lo, &hi}
  2591. }
  2592. case 173:
  2593. {
  2594. if yyS[yypt-0].item != nil {
  2595. yylex.(*lexer).list = []stmt{yyS[yypt-0].item.(stmt)}
  2596. }
  2597. }
  2598. case 174:
  2599. {
  2600. if yyS[yypt-0].item != nil {
  2601. yylex.(*lexer).list = append(yylex.(*lexer).list, yyS[yypt-0].item.(stmt))
  2602. }
  2603. }
  2604. case 177:
  2605. {
  2606. var err error
  2607. if yyVAL.item, err = newBinaryOperation(andand, yyS[yypt-2].item, yyS[yypt-0].item); err != nil {
  2608. yylex.(*lexer).err("%v", err)
  2609. return 1
  2610. }
  2611. }
  2612. case 180:
  2613. {
  2614. yyVAL.item = &truncateTableStmt{tableName: yyS[yypt-0].item.(string)}
  2615. }
  2616. case 205:
  2617. {
  2618. var expr expression
  2619. if w := yyS[yypt-0].item; w != nil {
  2620. expr = w.(*whereRset).expr
  2621. }
  2622. yyVAL.item = &updateStmt{tableName: yyS[yypt-3].item.(string), list: yyS[yypt-1].item.([]assignment), where: expr}
  2623. if yylex.(*lexer).root {
  2624. break
  2625. }
  2626. if isSystemName[yyS[yypt-3].item.(string)] {
  2627. yylex.(*lexer).err("name is used for system tables: %s", yyS[yypt-3].item.(string))
  2628. return 1
  2629. }
  2630. }
  2631. case 206:
  2632. {
  2633. yyVAL.item = nil
  2634. }
  2635. case 209:
  2636. {
  2637. var err error
  2638. yyVAL.item, err = newUnaryOperation('^', yyS[yypt-0].item)
  2639. if err != nil {
  2640. yylex.(*lexer).err("%v", err)
  2641. return 1
  2642. }
  2643. }
  2644. case 210:
  2645. {
  2646. var err error
  2647. yyVAL.item, err = newUnaryOperation('!', yyS[yypt-0].item)
  2648. if err != nil {
  2649. yylex.(*lexer).err("%v", err)
  2650. return 1
  2651. }
  2652. }
  2653. case 211:
  2654. {
  2655. var err error
  2656. yyVAL.item, err = newUnaryOperation('-', yyS[yypt-0].item)
  2657. if err != nil {
  2658. yylex.(*lexer).err("%v", err)
  2659. return 1
  2660. }
  2661. }
  2662. case 212:
  2663. {
  2664. var err error
  2665. yyVAL.item, err = newUnaryOperation('+', yyS[yypt-0].item)
  2666. if err != nil {
  2667. yylex.(*lexer).err("%v", err)
  2668. return 1
  2669. }
  2670. }
  2671. case 213:
  2672. {
  2673. yyVAL.item = &whereRset{expr: expr(yyS[yypt-0].item)}
  2674. }
  2675. }
  2676. if yyEx != nil && yyEx.Reduced(r, exState, &yyVAL) {
  2677. return -1
  2678. }
  2679. goto yystack /* stack new state and value */
  2680. }
  2681. func expr(v interface{}) expression {
  2682. e := v.(expression)
  2683. for {
  2684. x, ok := e.(*pexpr)
  2685. if !ok {
  2686. return e
  2687. }
  2688. e = x.expr
  2689. }
  2690. }