8d8c09279c1713d12fd4fc1163bad020781a4042
[mono.git] / mcs / class / referencesource / System.Data.Entity / System / Data / Common / EntitySql / CqlLexer.cs
1 namespace System.Data.Common.EntitySql
2 {
3 /*!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
4 !!                                                                            !!
5 !!         ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION        !!
6 !!                                                                            !!
7 !!                     DO NOT CHANGE THIS FILE BY HAND!!!!                    !!
8 !!                          YOU HAVE BEEN WARNED !!!!                         !!
9 !!                                                                            !!
10 !!         ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION ATTENTION        !!
11 !!                                                                            !!
12 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
13 /*------------------------------------------------------------------------------
14 // <copyright file="CqlLexer.l" company="Microsoft">
15 //      Copyright (c) Microsoft Corporation.  All rights reserved.
16 // </copyright>
17 //
18 // @owner  Microsoft
19 // @backupOwner Microsoft
20 //----------------------------------------------------------------------------*/
21 using System;
22 using System.Globalization;
23 using System.Data.Common.EntitySql.AST;
24 using System.Data.Entity;
25
26
27 internal  partial  class CqlLexer
28 {
29 private const int YY_BUFFER_SIZE = 512;
30 private const int YY_F = -1;
31 private const int YY_NO_STATE = -1;
32 private const int YY_NOT_ACCEPT = 0;
33 private const int YY_START = 1;
34 private const int YY_END = 2;
35 private const int YY_NO_ANCHOR = 4;
36 delegate CqlLexer.Token AcceptMethod();
37 AcceptMethod[] accept_dispatch;
38 private const int YY_BOL = 128;
39 private const int YY_EOF = 129;
40 private System.IO.TextReader yy_reader;
41 private int yy_buffer_index;
42 private int yy_buffer_read;
43 private int yy_buffer_start;
44 private int yy_buffer_end;
45 private char[] yy_buffer;
46 private int yychar;
47 private int yyline;
48 private bool yy_at_bol;
49 private int yy_lexical_state;
50
51 internal CqlLexer(System.IO.TextReader reader) : this()
52   {
53   if (null == reader)
54     {
55           throw new System.Data.EntitySqlException(EntityRes.GetString(EntityRes.ParserInputError)); 
56     }
57   yy_reader = reader;
58   }
59
60 internal CqlLexer(System.IO.FileStream instream) : this()
61   {
62   if (null == instream)
63     {
64            throw new System.Data.EntitySqlException(EntityRes.GetString(EntityRes.ParserInputError)); 
65     }
66   yy_reader = new System.IO.StreamReader(instream);
67   }
68
69 private CqlLexer()
70   {
71   yy_buffer = new char[YY_BUFFER_SIZE];
72   yy_buffer_read = 0;
73   yy_buffer_index = 0;
74   yy_buffer_start = 0;
75   yy_buffer_end = 0;
76   yychar = 0;
77   yyline = 0;
78   yy_at_bol = true;
79   yy_lexical_state = YYINITIAL;
80 accept_dispatch = new AcceptMethod[] 
81  {
82   null,
83   null,
84   new AcceptMethod(this.Accept_2),
85   new AcceptMethod(this.Accept_3),
86   new AcceptMethod(this.Accept_4),
87   new AcceptMethod(this.Accept_5),
88   new AcceptMethod(this.Accept_6),
89   new AcceptMethod(this.Accept_7),
90   new AcceptMethod(this.Accept_8),
91   new AcceptMethod(this.Accept_9),
92   new AcceptMethod(this.Accept_10),
93   new AcceptMethod(this.Accept_11),
94   new AcceptMethod(this.Accept_12),
95   new AcceptMethod(this.Accept_13),
96   new AcceptMethod(this.Accept_14),
97   new AcceptMethod(this.Accept_15),
98   new AcceptMethod(this.Accept_16),
99   new AcceptMethod(this.Accept_17),
100   new AcceptMethod(this.Accept_18),
101   null,
102   new AcceptMethod(this.Accept_20),
103   new AcceptMethod(this.Accept_21),
104   new AcceptMethod(this.Accept_22),
105   new AcceptMethod(this.Accept_23),
106   null,
107   new AcceptMethod(this.Accept_25),
108   new AcceptMethod(this.Accept_26),
109   new AcceptMethod(this.Accept_27),
110   new AcceptMethod(this.Accept_28),
111   null,
112   new AcceptMethod(this.Accept_30),
113   new AcceptMethod(this.Accept_31),
114   new AcceptMethod(this.Accept_32),
115   null,
116   new AcceptMethod(this.Accept_34),
117   new AcceptMethod(this.Accept_35),
118   null,
119   new AcceptMethod(this.Accept_37),
120   null,
121   null,
122   null,
123   null,
124   null,
125   null,
126   null,
127   null,
128   null,
129   null,
130   null,
131   null,
132   null,
133   null,
134   null,
135   new AcceptMethod(this.Accept_53),
136   new AcceptMethod(this.Accept_54),
137   new AcceptMethod(this.Accept_55),
138   new AcceptMethod(this.Accept_56),
139   new AcceptMethod(this.Accept_57),
140   new AcceptMethod(this.Accept_58),
141   new AcceptMethod(this.Accept_59),
142   new AcceptMethod(this.Accept_60),
143   new AcceptMethod(this.Accept_61),
144   new AcceptMethod(this.Accept_62),
145   new AcceptMethod(this.Accept_63),
146   new AcceptMethod(this.Accept_64),
147   new AcceptMethod(this.Accept_65),
148   new AcceptMethod(this.Accept_66),
149   new AcceptMethod(this.Accept_67),
150   new AcceptMethod(this.Accept_68),
151   new AcceptMethod(this.Accept_69),
152   new AcceptMethod(this.Accept_70),
153   new AcceptMethod(this.Accept_71),
154   new AcceptMethod(this.Accept_72),
155   new AcceptMethod(this.Accept_73),
156   new AcceptMethod(this.Accept_74),
157   new AcceptMethod(this.Accept_75),
158   new AcceptMethod(this.Accept_76),
159   new AcceptMethod(this.Accept_77),
160   new AcceptMethod(this.Accept_78),
161   new AcceptMethod(this.Accept_79),
162   new AcceptMethod(this.Accept_80),
163   new AcceptMethod(this.Accept_81),
164   new AcceptMethod(this.Accept_82),
165   new AcceptMethod(this.Accept_83),
166   new AcceptMethod(this.Accept_84),
167   };
168   }
169
170 CqlLexer.Token Accept_2()
171     { // begin accept action #2
172 {
173     return HandleEscapedIdentifiers();
174 }
175     } // end accept action #2
176
177 CqlLexer.Token Accept_3()
178     { // begin accept action #3
179 {
180     return MapIdentifierOrKeyword(YYText);
181 }
182     } // end accept action #3
183
184 CqlLexer.Token Accept_4()
185     { // begin accept action #4
186 {
187     AdvanceIPos();
188     ResetSymbolAsIdentifierState(false);
189     return null;
190 }
191     } // end accept action #4
192
193 CqlLexer.Token Accept_5()
194     { // begin accept action #5
195 {
196     return NewLiteralToken(YYText, LiteralKind.Number);
197 }
198     } // end accept action #5
199
200 CqlLexer.Token Accept_6()
201     { // begin accept action #6
202 {
203     return MapPunctuator(YYText);
204 }
205     } // end accept action #6
206
207 CqlLexer.Token Accept_7()
208     { // begin accept action #7
209 {
210     return MapOperator(YYText);
211 }
212     } // end accept action #7
213
214 CqlLexer.Token Accept_8()
215     { // begin accept action #8
216 {
217     _lineNumber++;
218     AdvanceIPos();
219     ResetSymbolAsIdentifierState(false);
220     return null;
221 }
222     } // end accept action #8
223
224 CqlLexer.Token Accept_9()
225     { // begin accept action #9
226 {
227     return NewLiteralToken(YYText, LiteralKind.String);
228 }
229     } // end accept action #9
230
231 CqlLexer.Token Accept_10()
232     { // begin accept action #10
233 {
234     return MapDoubleQuotedString(YYText);
235 }
236     } // end accept action #10
237
238 CqlLexer.Token Accept_11()
239     { // begin accept action #11
240 {
241     return NewParameterToken(YYText);
242 }
243     } // end accept action #11
244
245 CqlLexer.Token Accept_12()
246     { // begin accept action #12
247 {
248     return NewLiteralToken(YYText, LiteralKind.Binary);
249 }
250     } // end accept action #12
251
252 CqlLexer.Token Accept_13()
253     { // begin accept action #13
254 {
255     _lineNumber++;
256     AdvanceIPos();
257     ResetSymbolAsIdentifierState(false);
258     return null;
259 }
260     } // end accept action #13
261
262 CqlLexer.Token Accept_14()
263     { // begin accept action #14
264 {
265     return NewLiteralToken(YYText, LiteralKind.Boolean);
266 }
267     } // end accept action #14
268
269 CqlLexer.Token Accept_15()
270     { // begin accept action #15
271 {
272     return NewLiteralToken(YYText, LiteralKind.Time);
273 }
274     } // end accept action #15
275
276 CqlLexer.Token Accept_16()
277     { // begin accept action #16
278 {
279     return NewLiteralToken(YYText, LiteralKind.Guid);
280 }
281     } // end accept action #16
282
283 CqlLexer.Token Accept_17()
284     { // begin accept action #17
285 {
286     return NewLiteralToken(YYText, LiteralKind.DateTime);
287 }
288     } // end accept action #17
289
290 CqlLexer.Token Accept_18()
291     { // begin accept action #18
292 {
293     return NewLiteralToken(YYText, LiteralKind.DateTimeOffset);
294 }
295     } // end accept action #18
296
297 CqlLexer.Token Accept_20()
298     { // begin accept action #20
299 {
300     return MapIdentifierOrKeyword(YYText);
301 }
302     } // end accept action #20
303
304 CqlLexer.Token Accept_21()
305     { // begin accept action #21
306 {
307     return NewLiteralToken(YYText, LiteralKind.Number);
308 }
309     } // end accept action #21
310
311 CqlLexer.Token Accept_22()
312     { // begin accept action #22
313 {
314     return MapPunctuator(YYText);
315 }
316     } // end accept action #22
317
318 CqlLexer.Token Accept_23()
319     { // begin accept action #23
320 {
321     return MapOperator(YYText);
322 }
323     } // end accept action #23
324
325 CqlLexer.Token Accept_25()
326     { // begin accept action #25
327 {
328     return MapIdentifierOrKeyword(YYText);
329 }
330     } // end accept action #25
331
332 CqlLexer.Token Accept_26()
333     { // begin accept action #26
334 {
335     return NewLiteralToken(YYText, LiteralKind.Number);
336 }
337     } // end accept action #26
338
339 CqlLexer.Token Accept_27()
340     { // begin accept action #27
341 {
342     return MapPunctuator(YYText);
343 }
344     } // end accept action #27
345
346 CqlLexer.Token Accept_28()
347     { // begin accept action #28
348 {
349     return MapOperator(YYText);
350 }
351     } // end accept action #28
352
353 CqlLexer.Token Accept_30()
354     { // begin accept action #30
355 {
356     return MapIdentifierOrKeyword(YYText);
357 }
358     } // end accept action #30
359
360 CqlLexer.Token Accept_31()
361     { // begin accept action #31
362 {
363     return NewLiteralToken(YYText, LiteralKind.Number);
364 }
365     } // end accept action #31
366
367 CqlLexer.Token Accept_32()
368     { // begin accept action #32
369 {
370     return MapOperator(YYText);
371 }
372     } // end accept action #32
373
374 CqlLexer.Token Accept_34()
375     { // begin accept action #34
376 {
377     return MapIdentifierOrKeyword(YYText);
378 }
379     } // end accept action #34
380
381 CqlLexer.Token Accept_35()
382     { // begin accept action #35
383 {
384     return NewLiteralToken(YYText, LiteralKind.Number);
385 }
386     } // end accept action #35
387
388 CqlLexer.Token Accept_37()
389     { // begin accept action #37
390 {
391     return NewLiteralToken(YYText, LiteralKind.Number);
392 }
393     } // end accept action #37
394
395 CqlLexer.Token Accept_53()
396     { // begin accept action #53
397 {
398     return MapIdentifierOrKeyword(YYText);
399 }
400     } // end accept action #53
401
402 CqlLexer.Token Accept_54()
403     { // begin accept action #54
404 {
405     return MapIdentifierOrKeyword(YYText);
406 }
407     } // end accept action #54
408
409 CqlLexer.Token Accept_55()
410     { // begin accept action #55
411 {
412     return MapIdentifierOrKeyword(YYText);
413 }
414     } // end accept action #55
415
416 CqlLexer.Token Accept_56()
417     { // begin accept action #56
418 {
419     return MapIdentifierOrKeyword(YYText);
420 }
421     } // end accept action #56
422
423 CqlLexer.Token Accept_57()
424     { // begin accept action #57
425 {
426     return MapIdentifierOrKeyword(YYText);
427 }
428     } // end accept action #57
429
430 CqlLexer.Token Accept_58()
431     { // begin accept action #58
432 {
433     return MapIdentifierOrKeyword(YYText);
434 }
435     } // end accept action #58
436
437 CqlLexer.Token Accept_59()
438     { // begin accept action #59
439 {
440     return MapIdentifierOrKeyword(YYText);
441 }
442     } // end accept action #59
443
444 CqlLexer.Token Accept_60()
445     { // begin accept action #60
446 {
447     return MapIdentifierOrKeyword(YYText);
448 }
449     } // end accept action #60
450
451 CqlLexer.Token Accept_61()
452     { // begin accept action #61
453 {
454     return MapIdentifierOrKeyword(YYText);
455 }
456     } // end accept action #61
457
458 CqlLexer.Token Accept_62()
459     { // begin accept action #62
460 {
461     return MapIdentifierOrKeyword(YYText);
462 }
463     } // end accept action #62
464
465 CqlLexer.Token Accept_63()
466     { // begin accept action #63
467 {
468     return MapIdentifierOrKeyword(YYText);
469 }
470     } // end accept action #63
471
472 CqlLexer.Token Accept_64()
473     { // begin accept action #64
474 {
475     return MapIdentifierOrKeyword(YYText);
476 }
477     } // end accept action #64
478
479 CqlLexer.Token Accept_65()
480     { // begin accept action #65
481 {
482     return MapIdentifierOrKeyword(YYText);
483 }
484     } // end accept action #65
485
486 CqlLexer.Token Accept_66()
487     { // begin accept action #66
488 {
489     return MapIdentifierOrKeyword(YYText);
490 }
491     } // end accept action #66
492
493 CqlLexer.Token Accept_67()
494     { // begin accept action #67
495 {
496     return MapIdentifierOrKeyword(YYText);
497 }
498     } // end accept action #67
499
500 CqlLexer.Token Accept_68()
501     { // begin accept action #68
502 {
503     return MapIdentifierOrKeyword(YYText);
504 }
505     } // end accept action #68
506
507 CqlLexer.Token Accept_69()
508     { // begin accept action #69
509 {
510     return MapIdentifierOrKeyword(YYText);
511 }
512     } // end accept action #69
513
514 CqlLexer.Token Accept_70()
515     { // begin accept action #70
516 {
517     return MapIdentifierOrKeyword(YYText);
518 }
519     } // end accept action #70
520
521 CqlLexer.Token Accept_71()
522     { // begin accept action #71
523 {
524     return MapIdentifierOrKeyword(YYText);
525 }
526     } // end accept action #71
527
528 CqlLexer.Token Accept_72()
529     { // begin accept action #72
530 {
531     return MapIdentifierOrKeyword(YYText);
532 }
533     } // end accept action #72
534
535 CqlLexer.Token Accept_73()
536     { // begin accept action #73
537 {
538     return MapIdentifierOrKeyword(YYText);
539 }
540     } // end accept action #73
541
542 CqlLexer.Token Accept_74()
543     { // begin accept action #74
544 {
545     return MapIdentifierOrKeyword(YYText);
546 }
547     } // end accept action #74
548
549 CqlLexer.Token Accept_75()
550     { // begin accept action #75
551 {
552     return MapIdentifierOrKeyword(YYText);
553 }
554     } // end accept action #75
555
556 CqlLexer.Token Accept_76()
557     { // begin accept action #76
558 {
559     return MapIdentifierOrKeyword(YYText);
560 }
561     } // end accept action #76
562
563 CqlLexer.Token Accept_77()
564     { // begin accept action #77
565 {
566     return MapIdentifierOrKeyword(YYText);
567 }
568     } // end accept action #77
569
570 CqlLexer.Token Accept_78()
571     { // begin accept action #78
572 {
573     return MapIdentifierOrKeyword(YYText);
574 }
575     } // end accept action #78
576
577 CqlLexer.Token Accept_79()
578     { // begin accept action #79
579 {
580     return MapIdentifierOrKeyword(YYText);
581 }
582     } // end accept action #79
583
584 CqlLexer.Token Accept_80()
585     { // begin accept action #80
586 {
587     return MapIdentifierOrKeyword(YYText);
588 }
589     } // end accept action #80
590
591 CqlLexer.Token Accept_81()
592     { // begin accept action #81
593 {
594     return MapIdentifierOrKeyword(YYText);
595 }
596     } // end accept action #81
597
598 CqlLexer.Token Accept_82()
599     { // begin accept action #82
600 {
601     return MapIdentifierOrKeyword(YYText);
602 }
603     } // end accept action #82
604
605 CqlLexer.Token Accept_83()
606     { // begin accept action #83
607 {
608     return MapIdentifierOrKeyword(YYText);
609 }
610     } // end accept action #83
611
612 CqlLexer.Token Accept_84()
613     { // begin accept action #84
614 {
615     return MapIdentifierOrKeyword(YYText);
616 }
617     } // end accept action #84
618
619 private const int YYINITIAL = 0;
620 private static int[] yy_state_dtrans = new int[] 
621   {   0
622   };
623 private void yybegin (int state)
624   {
625   yy_lexical_state = state;
626   }
627
628 private char yy_advance ()
629   {
630   int next_read;
631   int i;
632   int j;
633
634   if (yy_buffer_index < yy_buffer_read)
635     {
636     return yy_translate.translate(yy_buffer[yy_buffer_index++]);
637     }
638
639   if (0 != yy_buffer_start)
640     {
641     i = yy_buffer_start;
642     j = 0;
643     while (i < yy_buffer_read)
644       {
645       yy_buffer[j] = yy_buffer[i];
646       i++;
647       j++;
648       }
649     yy_buffer_end = yy_buffer_end - yy_buffer_start;
650     yy_buffer_start = 0;
651     yy_buffer_read = j;
652     yy_buffer_index = j;
653     next_read = yy_reader.Read(yy_buffer,yy_buffer_read,
654                   yy_buffer.Length - yy_buffer_read);
655     if (next_read <= 0)
656       {
657       return (char) YY_EOF;
658       }
659     yy_buffer_read = yy_buffer_read + next_read;
660     }
661   while (yy_buffer_index >= yy_buffer_read)
662     {
663     if (yy_buffer_index >= yy_buffer.Length)
664       {
665       yy_buffer = yy_double(yy_buffer);
666       }
667     next_read = yy_reader.Read(yy_buffer,yy_buffer_read,
668                   yy_buffer.Length - yy_buffer_read);
669     if (next_read <= 0)
670       {
671       return (char) YY_EOF;
672       }
673     yy_buffer_read = yy_buffer_read + next_read;
674     }
675     return yy_translate.translate(yy_buffer[yy_buffer_index++]);
676   }
677 private void yy_move_end ()
678   {
679   if (yy_buffer_end > yy_buffer_start && 
680       '\n' == yy_buffer[yy_buffer_end-1])
681     yy_buffer_end--;
682   if (yy_buffer_end > yy_buffer_start &&
683       '\r' == yy_buffer[yy_buffer_end-1])
684     yy_buffer_end--;
685   }
686 private bool yy_last_was_cr=false;
687 private void yy_mark_start ()
688   {
689   int i;
690   for (i = yy_buffer_start; i < yy_buffer_index; i++)
691     {
692     if (yy_buffer[i] == '\n' && !yy_last_was_cr)
693       {
694       yyline++;
695       }
696     if (yy_buffer[i] == '\r')
697       {
698       yyline++;
699       yy_last_was_cr=true;
700       }
701     else
702       {
703       yy_last_was_cr=false;
704       }
705     }
706   yychar = yychar + yy_buffer_index - yy_buffer_start;
707   yy_buffer_start = yy_buffer_index;
708   }
709 private void yy_mark_end ()
710   {
711   yy_buffer_end = yy_buffer_index;
712   }
713 private void yy_to_mark ()
714   {
715   yy_buffer_index = yy_buffer_end;
716   yy_at_bol = (yy_buffer_end > yy_buffer_start) &&
717     (yy_buffer[yy_buffer_end-1] == '\r' ||
718     yy_buffer[yy_buffer_end-1] == '\n');
719   }
720 internal string yytext()
721   {
722   return (new string(yy_buffer,
723                 yy_buffer_start,
724                 yy_buffer_end - yy_buffer_start)
725          );
726   }
727 internal int yy_char()
728   {
729   return (yychar);
730   }
731 private int yylength ()
732   {
733   return yy_buffer_end - yy_buffer_start;
734   }
735 private char[] yy_double (char[] buf)
736   {
737   int i;
738   char[] newbuf;
739   newbuf = new char[2*buf.Length];
740   for (i = 0; i < buf.Length; i++)
741     {
742     newbuf[i] = buf[i];
743     }
744   return newbuf;
745   }
746 private const int YY_E_INTERNAL = 0;
747 private const int YY_E_MATCH = 1;
748 private static string[] yy_error_string = new string[]
749   {
750   "Error: Internal error.\n",
751   "Error: Unmatched input.\n"
752   };
753 private void yy_error (int code,bool fatal)
754   {
755   //System.Console.Write(yy_error_string[code]);
756   if (fatal)
757     {
758           throw new System.Data.EntitySqlException(EntityRes.GetString(EntityRes.ParserFatalError)); 
759     }
760   }
761 private static int[] yy_acpt = new int[]
762   {
763   /* 0 */   YY_NOT_ACCEPT,
764   /* 1 */   YY_NO_ANCHOR,
765   /* 2 */   YY_NO_ANCHOR,
766   /* 3 */   YY_NO_ANCHOR,
767   /* 4 */   YY_NO_ANCHOR,
768   /* 5 */   YY_NO_ANCHOR,
769   /* 6 */   YY_NO_ANCHOR,
770   /* 7 */   YY_NO_ANCHOR,
771   /* 8 */   YY_NO_ANCHOR,
772   /* 9 */   YY_NO_ANCHOR,
773   /* 10 */   YY_NO_ANCHOR,
774   /* 11 */   YY_NO_ANCHOR,
775   /* 12 */   YY_NO_ANCHOR,
776   /* 13 */   YY_END,
777   /* 14 */   YY_NO_ANCHOR,
778   /* 15 */   YY_NO_ANCHOR,
779   /* 16 */   YY_NO_ANCHOR,
780   /* 17 */   YY_NO_ANCHOR,
781   /* 18 */   YY_NO_ANCHOR,
782   /* 19 */   YY_NOT_ACCEPT,
783   /* 20 */   YY_NO_ANCHOR,
784   /* 21 */   YY_NO_ANCHOR,
785   /* 22 */   YY_NO_ANCHOR,
786   /* 23 */   YY_NO_ANCHOR,
787   /* 24 */   YY_NOT_ACCEPT,
788   /* 25 */   YY_NO_ANCHOR,
789   /* 26 */   YY_NO_ANCHOR,
790   /* 27 */   YY_NO_ANCHOR,
791   /* 28 */   YY_NO_ANCHOR,
792   /* 29 */   YY_NOT_ACCEPT,
793   /* 30 */   YY_NO_ANCHOR,
794   /* 31 */   YY_NO_ANCHOR,
795   /* 32 */   YY_NO_ANCHOR,
796   /* 33 */   YY_NOT_ACCEPT,
797   /* 34 */   YY_NO_ANCHOR,
798   /* 35 */   YY_NO_ANCHOR,
799   /* 36 */   YY_NOT_ACCEPT,
800   /* 37 */   YY_NO_ANCHOR,
801   /* 38 */   YY_NOT_ACCEPT,
802   /* 39 */   YY_NOT_ACCEPT,
803   /* 40 */   YY_NOT_ACCEPT,
804   /* 41 */   YY_NOT_ACCEPT,
805   /* 42 */   YY_NOT_ACCEPT,
806   /* 43 */   YY_NOT_ACCEPT,
807   /* 44 */   YY_NOT_ACCEPT,
808   /* 45 */   YY_NOT_ACCEPT,
809   /* 46 */   YY_NOT_ACCEPT,
810   /* 47 */   YY_NOT_ACCEPT,
811   /* 48 */   YY_NOT_ACCEPT,
812   /* 49 */   YY_NOT_ACCEPT,
813   /* 50 */   YY_NOT_ACCEPT,
814   /* 51 */   YY_NOT_ACCEPT,
815   /* 52 */   YY_NOT_ACCEPT,
816   /* 53 */   YY_NO_ANCHOR,
817   /* 54 */   YY_NO_ANCHOR,
818   /* 55 */   YY_NO_ANCHOR,
819   /* 56 */   YY_NO_ANCHOR,
820   /* 57 */   YY_NO_ANCHOR,
821   /* 58 */   YY_NO_ANCHOR,
822   /* 59 */   YY_NO_ANCHOR,
823   /* 60 */   YY_NO_ANCHOR,
824   /* 61 */   YY_NO_ANCHOR,
825   /* 62 */   YY_NO_ANCHOR,
826   /* 63 */   YY_NO_ANCHOR,
827   /* 64 */   YY_NO_ANCHOR,
828   /* 65 */   YY_NO_ANCHOR,
829   /* 66 */   YY_NO_ANCHOR,
830   /* 67 */   YY_NO_ANCHOR,
831   /* 68 */   YY_NO_ANCHOR,
832   /* 69 */   YY_NO_ANCHOR,
833   /* 70 */   YY_NO_ANCHOR,
834   /* 71 */   YY_NO_ANCHOR,
835   /* 72 */   YY_NO_ANCHOR,
836   /* 73 */   YY_NO_ANCHOR,
837   /* 74 */   YY_NO_ANCHOR,
838   /* 75 */   YY_NO_ANCHOR,
839   /* 76 */   YY_NO_ANCHOR,
840   /* 77 */   YY_NO_ANCHOR,
841   /* 78 */   YY_NO_ANCHOR,
842   /* 79 */   YY_NO_ANCHOR,
843   /* 80 */   YY_NO_ANCHOR,
844   /* 81 */   YY_NO_ANCHOR,
845   /* 82 */   YY_NO_ANCHOR,
846   /* 83 */   YY_NO_ANCHOR,
847   /* 84 */   YY_NO_ANCHOR
848   };
849 private static int[] yy_cmap = new int[]
850   {
851   11, 11, 11, 11, 11, 11, 11, 11,
852   11, 11, 27, 11, 11, 8, 11, 11,
853   11, 11, 11, 11, 11, 11, 11, 11,
854   11, 11, 11, 11, 11, 11, 11, 11,
855   12, 33, 28, 11, 11, 39, 36, 10,
856   40, 40, 39, 38, 40, 25, 24, 39,
857   22, 22, 22, 22, 22, 22, 22, 22,
858   22, 22, 40, 40, 34, 32, 35, 40,
859   29, 5, 2, 30, 13, 15, 18, 20,
860   30, 3, 30, 30, 23, 16, 26, 17,
861   30, 30, 6, 19, 14, 21, 30, 30,
862   9, 7, 30, 1, 11, 40, 11, 31,
863   11, 5, 2, 30, 13, 15, 18, 20,
864   30, 3, 30, 30, 23, 16, 4, 17,
865   30, 30, 6, 19, 14, 21, 30, 30,
866   9, 7, 30, 40, 37, 40, 11, 11,
867   0, 41 
868   };
869 private static int[] yy_rmap = new int[]
870   {
871   0, 1, 1, 2, 3, 4, 5, 6,
872   7, 8, 9, 10, 1, 1, 11, 1,
873   1, 1, 1, 12, 13, 1, 14, 14,
874   15, 16, 17, 1, 18, 10, 19, 20,
875   1, 21, 22, 23, 24, 25, 26, 27,
876   5, 28, 29, 30, 31, 32, 33, 34,
877   35, 36, 37, 38, 39, 40, 41, 42,
878   43, 44, 45, 46, 47, 48, 49, 50,
879   51, 52, 53, 54, 55, 56, 57, 58,
880   59, 60, 61, 62, 63, 11, 64, 65,
881   66, 67, 68, 11, 69 
882   };
883 private static int[,] yy_nxt = new int[,]
884   {
885   { 1, 2, 3, 83, 83, 83, 83, 83,
886    4, 20, 19, -1, 4, 84, 64, 83,
887    83, 83, 71, 83, 72, 83, 5, 83,
888    6, 7, 25, 8, 24, 29, 83, 83,
889    22, 23, 28, 23, 33, 36, 32, 32,
890    27, 1 },
891   { -1, -1, -1, -1, -1, -1, -1, -1,
892    -1, -1, -1, -1, -1, -1, -1, -1,
893    -1, -1, -1, -1, -1, -1, -1, -1,
894    -1, -1, -1, -1, -1, -1, -1, -1,
895    -1, -1, -1, -1, -1, -1, -1, -1,
896    -1, -1 },
897   { -1, -1, 83, 76, 83, 83, 83, 83,
898    -1, 83, -1, -1, -1, 83, 83, 83,
899    83, 83, 83, 83, 83, 83, 77, 83,
900    -1, -1, 83, -1, -1, -1, 83, 77,
901    -1, -1, -1, -1, -1, -1, -1, -1,
902    -1, -1 },
903   { -1, -1, -1, -1, -1, -1, -1, -1,
904    4, -1, -1, -1, 4, -1, -1, -1,
905    -1, -1, -1, -1, -1, -1, -1, -1,
906    -1, -1, -1, -1, -1, -1, -1, -1,
907    -1, -1, -1, -1, -1, -1, -1, -1,
908    -1, -1 },
909   { -1, -1, -1, -1, -1, -1, -1, -1,
910    -1, -1, -1, -1, -1, 21, -1, 39,
911    21, -1, 21, -1, -1, 26, 5, 31,
912    40, -1, -1, -1, -1, -1, -1, -1,
913    -1, -1, -1, -1, -1, -1, -1, -1,
914    -1, -1 },
915   { -1, -1, -1, -1, -1, -1, -1, -1,
916    -1, -1, -1, -1, -1, -1, -1, -1,
917    -1, -1, -1, -1, -1, -1, 35, -1,
918    -1, -1, -1, -1, -1, -1, -1, -1,
919    -1, -1, -1, -1, -1, -1, -1, -1,
920    -1, -1 },
921   { -1, -1, -1, -1, -1, -1, -1, -1,
922    -1, -1, -1, -1, -1, -1, -1, -1,
923    -1, -1, -1, -1, -1, -1, -1, -1,
924    -1, 41, -1, -1, -1, -1, -1, -1,
925    -1, -1, -1, -1, -1, -1, -1, -1,
926    -1, -1 },
927   { -1, -1, -1, -1, -1, -1, -1, -1,
928    -1, -1, -1, -1, -1, -1, -1, -1,
929    -1, -1, -1, -1, -1, -1, -1, -1,
930    -1, -1, -1, 8, -1, -1, -1, -1,
931    -1, -1, -1, -1, -1, -1, -1, -1,
932    -1, -1 },
933   { -1, -1, -1, -1, -1, -1, -1, -1,
934    -1, -1, 19, -1, -1, -1, -1, -1,
935    -1, -1, -1, -1, -1, -1, -1, -1,
936    -1, -1, -1, -1, -1, -1, -1, -1,
937    -1, -1, -1, -1, -1, -1, -1, -1,
938    -1, -1 },
939   { -1, -1, -1, -1, -1, -1, -1, -1,
940    -1, -1, -1, -1, -1, -1, -1, -1,
941    -1, -1, -1, -1, -1, -1, -1, -1,
942    -1, -1, -1, -1, 24, -1, -1, -1,
943    -1, -1, -1, -1, -1, -1, -1, -1,
944    -1, -1 },
945   { -1, -1, 11, 11, 11, 11, 11, 11,
946    -1, 11, -1, -1, -1, 11, 11, 11,
947    11, 11, 11, 11, 11, 11, 11, 11,
948    -1, -1, 11, -1, -1, -1, 11, 11,
949    -1, -1, -1, -1, -1, -1, -1, -1,
950    -1, -1 },
951   { -1, -1, 83, 83, 83, 83, 83, 83,
952    -1, 83, -1, -1, -1, 83, 83, 83,
953    83, 83, 83, 83, 83, 83, 77, 83,
954    -1, -1, 83, -1, -1, -1, 83, 77,
955    -1, -1, -1, -1, -1, -1, -1, -1,
956    -1, -1 },
957   { -1, 19, 19, 19, 19, 19, 19, 19,
958    19, 19, 9, 19, 19, 19, 19, 19,
959    19, 19, 19, 19, 19, 19, 19, 19,
960    19, 19, 19, 19, 19, 19, 19, 19,
961    19, 19, 19, 19, 19, 19, 19, 19,
962    19, -1 },
963   { -1, -1, 83, 83, 83, 83, 83, 83,
964    -1, 83, 38, -1, -1, 83, 83, 83,
965    83, 83, 83, 83, 83, 83, 77, 83,
966    -1, -1, 83, -1, -1, -1, 83, 77,
967    -1, -1, -1, -1, -1, -1, -1, -1,
968    -1, -1 },
969   { -1, -1, -1, -1, -1, -1, -1, -1,
970    -1, -1, -1, -1, -1, -1, -1, -1,
971    -1, -1, -1, -1, -1, -1, -1, -1,
972    -1, -1, -1, -1, -1, -1, -1, -1,
973    32, -1, -1, -1, -1, -1, -1, -1,
974    -1, -1 },
975   { -1, 24, 24, 24, 24, 24, 24, 24,
976    24, 24, 24, 24, 24, 24, 24, 24,
977    24, 24, 24, 24, 24, 24, 24, 24,
978    24, 24, 24, 24, 10, 24, 24, 24,
979    24, 24, 24, 24, 24, 24, 24, 24,
980    24, -1 },
981   { -1, -1, 83, 83, 83, 83, 83, 83,
982    -1, 83, 19, -1, -1, 83, 83, 83,
983    83, 83, 83, 83, 83, 83, 77, 83,
984    -1, -1, 83, -1, 24, -1, 83, 77,
985    -1, -1, -1, -1, -1, -1, -1, -1,
986    -1, -1 },
987   { -1, -1, -1, -1, -1, -1, -1, -1,
988    -1, -1, -1, -1, -1, -1, -1, -1,
989    -1, -1, -1, -1, -1, -1, -1, 21,
990    -1, -1, -1, -1, -1, -1, -1, -1,
991    -1, -1, -1, -1, -1, -1, -1, -1,
992    -1, -1 },
993   { -1, -1, -1, -1, -1, -1, -1, -1,
994    -1, -1, -1, -1, -1, -1, -1, -1,
995    -1, -1, -1, -1, -1, -1, -1, -1,
996    -1, -1, -1, -1, -1, -1, -1, -1,
997    32, -1, -1, 32, -1, -1, -1, -1,
998    -1, -1 },
999   { -1, -1, 83, 83, 83, 83, 83, 83,
1000    -1, 83, -1, -1, -1, 83, 83, 14,
1001    83, 83, 83, 83, 83, 83, 77, 83,
1002    -1, -1, 83, -1, -1, -1, 83, 77,
1003    -1, -1, -1, -1, -1, -1, -1, -1,
1004    -1, -1 },
1005   { -1, -1, -1, -1, -1, -1, -1, -1,
1006    -1, -1, -1, -1, -1, -1, -1, -1,
1007    -1, -1, -1, -1, -1, 21, -1, -1,
1008    -1, -1, -1, -1, -1, -1, -1, -1,
1009    -1, -1, -1, -1, -1, -1, -1, -1,
1010    -1, -1 },
1011   { -1, -1, -1, -1, -1, -1, -1, -1,
1012    -1, -1, -1, -1, -1, -1, -1, -1,
1013    -1, -1, -1, -1, -1, -1, -1, -1,
1014    -1, -1, -1, -1, -1, -1, -1, -1,
1015    -1, -1, -1, -1, 32, -1, -1, -1,
1016    -1, -1 },
1017   { -1, -1, 83, 83, 83, 83, 83, 83,
1018    44, 83, 45, -1, 44, 83, 83, 83,
1019    83, 83, 83, 83, 83, 83, 77, 83,
1020    -1, -1, 83, -1, -1, -1, 83, 77,
1021    -1, -1, -1, -1, -1, -1, -1, -1,
1022    -1, -1 },
1023   { -1, -1, -1, -1, -1, -1, -1, -1,
1024    -1, -1, -1, -1, -1, 21, -1, 39,
1025    21, -1, 21, -1, -1, -1, 35, -1,
1026    -1, -1, -1, -1, -1, -1, -1, -1,
1027    -1, -1, -1, -1, -1, -1, -1, -1,
1028    -1, -1 },
1029   { -1, -1, -1, -1, -1, -1, -1, -1,
1030    -1, -1, -1, -1, -1, -1, -1, -1,
1031    -1, -1, -1, -1, -1, -1, -1, -1,
1032    -1, -1, -1, -1, -1, -1, -1, -1,
1033    -1, -1, -1, -1, -1, 32, -1, -1,
1034    -1, -1 },
1035   { -1, -1, -1, -1, -1, -1, -1, -1,
1036    -1, -1, -1, -1, -1, 21, -1, -1,
1037    -1, -1, 21, -1, -1, -1, 37, -1,
1038    -1, -1, -1, -1, -1, -1, -1, -1,
1039    -1, -1, -1, -1, -1, -1, -1, -1,
1040    -1, -1 },
1041   { -1, 38, 38, 38, 38, 38, 38, 38,
1042    -1, 38, 12, 38, 38, 38, 38, 38,
1043    38, 38, 38, 38, 38, 38, 38, 38,
1044    38, 38, 38, -1, -1, 38, 38, 38,
1045    38, 38, 38, 38, 38, 38, 38, 38,
1046    38, -1 },
1047   { -1, -1, -1, -1, -1, -1, -1, -1,
1048    -1, -1, -1, -1, -1, -1, -1, -1,
1049    -1, -1, -1, -1, -1, -1, 37, -1,
1050    -1, 42, -1, -1, -1, -1, -1, -1,
1051    -1, -1, -1, -1, -1, -1, 42, -1,
1052    -1, -1 },
1053   { -1, 41, 41, 41, 41, 41, 41, 41,
1054    43, 41, 41, 41, 41, 41, 41, 41,
1055    41, 41, 41, 41, 41, 41, 41, 41,
1056    41, 41, 41, 13, 41, 41, 41, 41,
1057    41, 41, 41, 41, 41, 41, 41, 41,
1058    41, 13 },
1059   { -1, -1, -1, -1, -1, -1, -1, -1,
1060    -1, -1, -1, -1, -1, -1, -1, -1,
1061    -1, -1, -1, -1, -1, -1, 37, -1,
1062    -1, -1, -1, -1, -1, -1, -1, -1,
1063    -1, -1, -1, -1, -1, -1, -1, -1,
1064    -1, -1 },
1065   { -1, -1, -1, -1, -1, -1, -1, -1,
1066    -1, -1, -1, -1, -1, -1, -1, -1,
1067    -1, -1, -1, -1, -1, -1, -1, -1,
1068    -1, -1, -1, 13, -1, -1, -1, -1,
1069    -1, -1, -1, -1, -1, -1, -1, -1,
1070    -1, -1 },
1071   { -1, -1, -1, -1, -1, -1, -1, -1,
1072    44, -1, 45, -1, 44, -1, -1, -1,
1073    -1, -1, -1, -1, -1, -1, -1, -1,
1074    -1, -1, -1, -1, -1, -1, -1, -1,
1075    -1, -1, -1, -1, -1, -1, -1, -1,
1076    -1, -1 },
1077   { -1, 45, 45, 45, 45, 45, 45, 45,
1078    -1, 45, 15, 45, 45, 45, 45, 45,
1079    45, 45, 45, 45, 45, 45, 45, 45,
1080    45, 45, 45, -1, -1, 45, 45, 45,
1081    45, 45, 45, 45, 45, 45, 45, 45,
1082    45, -1 },
1083   { -1, -1, -1, -1, -1, -1, -1, -1,
1084    46, -1, 47, -1, 46, -1, -1, -1,
1085    -1, -1, -1, -1, -1, -1, -1, -1,
1086    -1, -1, -1, -1, -1, -1, -1, -1,
1087    -1, -1, -1, -1, -1, -1, -1, -1,
1088    -1, -1 },
1089   { -1, 47, 47, 47, 47, 47, 47, 47,
1090    -1, 47, 16, 47, 47, 47, 47, 47,
1091    47, 47, 47, 47, 47, 47, 47, 47,
1092    47, 47, 47, -1, -1, 47, 47, 47,
1093    47, 47, 47, 47, 47, 47, 47, 47,
1094    47, -1 },
1095   { -1, -1, -1, -1, -1, -1, -1, -1,
1096    48, -1, 38, -1, 48, -1, -1, -1,
1097    -1, -1, -1, -1, -1, -1, -1, -1,
1098    -1, -1, -1, -1, -1, -1, -1, -1,
1099    -1, -1, -1, -1, -1, -1, -1, -1,
1100    -1, -1 },
1101   { -1, -1, -1, -1, -1, -1, -1, -1,
1102    49, -1, 50, -1, 49, -1, -1, -1,
1103    -1, -1, -1, -1, -1, -1, -1, -1,
1104    -1, -1, -1, -1, -1, -1, -1, -1,
1105    -1, -1, -1, -1, -1, -1, -1, -1,
1106    -1, -1 },
1107   { -1, 50, 50, 50, 50, 50, 50, 50,
1108    -1, 50, 17, 50, 50, 50, 50, 50,
1109    50, 50, 50, 50, 50, 50, 50, 50,
1110    50, 50, 50, -1, -1, 50, 50, 50,
1111    50, 50, 50, 50, 50, 50, 50, 50,
1112    50, -1 },
1113   { -1, -1, -1, -1, -1, -1, -1, -1,
1114    51, -1, 52, -1, 51, -1, -1, -1,
1115    -1, -1, -1, -1, -1, -1, -1, -1,
1116    -1, -1, -1, -1, -1, -1, -1, -1,
1117    -1, -1, -1, -1, -1, -1, -1, -1,
1118    -1, -1 },
1119   { -1, 52, 52, 52, 52, 52, 52, 52,
1120    -1, 52, 18, 52, 52, 52, 52, 52,
1121    52, 52, 52, 52, 52, 52, 52, 52,
1122    52, 52, 52, -1, -1, 52, 52, 52,
1123    52, 52, 52, 52, 52, 52, 52, 52,
1124    52, -1 },
1125   { -1, -1, 83, 83, 83, 83, 83, 83,
1126    -1, 83, -1, -1, -1, 83, 83, 83,
1127    83, 83, 83, 83, 83, 30, 77, 83,
1128    -1, -1, 83, -1, -1, -1, 83, 77,
1129    -1, -1, -1, -1, -1, -1, -1, -1,
1130    -1, -1 },
1131   { -1, -1, 83, 83, 83, 83, 83, 83,
1132    46, 83, 47, -1, 46, 83, 83, 83,
1133    83, 83, 83, 83, 83, 83, 77, 83,
1134    -1, -1, 83, -1, -1, -1, 83, 77,
1135    -1, -1, -1, -1, -1, -1, -1, -1,
1136    -1, -1 },
1137   { -1, -1, 83, 83, 83, 83, 83, 83,
1138    -1, 83, -1, -1, -1, 83, 83, 34,
1139    83, 83, 83, 83, 83, 83, 77, 83,
1140    -1, -1, 83, -1, -1, -1, 83, 77,
1141    -1, -1, -1, -1, -1, -1, -1, -1,
1142    -1, -1 },
1143   { -1, -1, 83, 83, 83, 83, 83, 83,
1144    48, 83, 38, -1, 48, 83, 83, 83,
1145    83, 83, 83, 83, 83, 83, 77, 83,
1146    -1, -1, 83, -1, -1, -1, 83, 77,
1147    -1, -1, -1, -1, -1, -1, -1, -1,
1148    -1, -1 },
1149   { -1, -1, 83, 83, 83, 83, 83, 83,
1150    -1, 83, -1, -1, -1, 83, 83, 83,
1151    83, 83, 83, 30, 83, 83, 77, 83,
1152    -1, -1, 83, -1, -1, -1, 83, 77,
1153    -1, -1, -1, -1, -1, -1, -1, -1,
1154    -1, -1 },
1155   { -1, -1, 83, 83, 83, 83, 83, 83,
1156    49, 83, 50, -1, 49, 83, 83, 83,
1157    83, 81, 83, 83, 83, 83, 77, 83,
1158    -1, -1, 83, -1, -1, -1, 83, 77,
1159    -1, -1, -1, -1, -1, -1, -1, -1,
1160    -1, -1 },
1161   { -1, -1, 83, 83, 83, 83, 83, 83,
1162    -1, 83, -1, -1, -1, 54, 83, 83,
1163    83, 83, 83, 83, 83, 83, 77, 83,
1164    -1, -1, 83, -1, -1, -1, 83, 77,
1165    -1, -1, -1, -1, -1, -1, -1, -1,
1166    -1, -1 },
1167   { -1, -1, 83, 83, 83, 83, 83, 83,
1168    51, 83, 52, -1, 51, 83, 83, 83,
1169    83, 83, 83, 83, 83, 83, 77, 83,
1170    -1, -1, 83, -1, -1, -1, 83, 77,
1171    -1, -1, -1, -1, -1, -1, -1, -1,
1172    -1, -1 },
1173   { -1, -1, 83, 83, 83, 83, 83, 56,
1174    -1, 83, -1, -1, -1, 83, 83, 83,
1175    83, 83, 83, 83, 83, 83, 77, 83,
1176    -1, -1, 83, -1, -1, -1, 83, 77,
1177    -1, -1, -1, -1, -1, -1, -1, -1,
1178    -1, -1 },
1179   { -1, -1, 83, 83, 83, 83, 83, 83,
1180    -1, 83, -1, -1, -1, 83, 83, 58,
1181    83, 83, 83, 83, 83, 83, 77, 83,
1182    -1, -1, 83, -1, -1, -1, 83, 77,
1183    -1, -1, -1, -1, -1, -1, -1, -1,
1184    -1, -1 },
1185   { -1, -1, 83, 83, 83, 83, 83, 83,
1186    -1, 83, -1, -1, -1, 83, 60, 83,
1187    83, 83, 83, 83, 83, 83, 77, 83,
1188    -1, -1, 83, -1, -1, -1, 83, 77,
1189    -1, -1, -1, -1, -1, -1, -1, -1,
1190    -1, -1 },
1191   { -1, -1, 83, 65, 83, 83, 53, 83,
1192    -1, 83, -1, -1, -1, 83, 83, 83,
1193    83, 83, 83, 83, 83, 83, 77, 83,
1194    -1, -1, 83, -1, -1, -1, 83, 77,
1195    -1, -1, -1, -1, -1, -1, -1, -1,
1196    -1, -1 },
1197   { -1, -1, 83, 83, 83, 83, 83, 83,
1198    -1, 83, -1, -1, -1, 83, 83, 83,
1199    55, 83, 83, 83, 83, 83, 77, 83,
1200    -1, -1, 83, -1, -1, -1, 83, 77,
1201    -1, -1, -1, -1, -1, -1, -1, -1,
1202    -1, -1 },
1203   { -1, -1, 83, 83, 83, 83, 83, 83,
1204    -1, 83, -1, -1, -1, 83, 83, 83,
1205    83, 83, 83, 83, 83, 83, 77, 57,
1206    -1, -1, 83, -1, -1, -1, 83, 77,
1207    -1, -1, -1, -1, -1, -1, -1, -1,
1208    -1, -1 },
1209   { -1, -1, 83, 59, 83, 83, 83, 83,
1210    -1, 83, -1, -1, -1, 83, 83, 83,
1211    83, 83, 83, 83, 83, 83, 77, 83,
1212    -1, -1, 83, -1, -1, -1, 83, 77,
1213    -1, -1, -1, -1, -1, -1, -1, -1,
1214    -1, -1 },
1215   { -1, -1, 83, 83, 83, 83, 61, 83,
1216    -1, 83, -1, -1, -1, 83, 83, 83,
1217    83, 83, 83, 83, 83, 83, 77, 83,
1218    -1, -1, 83, -1, -1, -1, 83, 77,
1219    -1, -1, -1, -1, -1, -1, -1, -1,
1220    -1, -1 },
1221   { -1, -1, 83, 83, 83, 83, 83, 83,
1222    -1, 83, -1, -1, -1, 83, 83, 83,
1223    62, 83, 83, 83, 83, 83, 77, 83,
1224    -1, -1, 83, -1, -1, -1, 83, 77,
1225    -1, -1, -1, -1, -1, -1, -1, -1,
1226    -1, -1 },
1227   { -1, -1, 83, 83, 83, 83, 83, 83,
1228    -1, 83, -1, -1, -1, 83, 83, 63,
1229    83, 83, 83, 83, 83, 83, 77, 83,
1230    -1, -1, 83, -1, -1, -1, 83, 77,
1231    -1, -1, -1, -1, -1, -1, -1, -1,
1232    -1, -1 },
1233   { -1, -1, 83, 83, 83, 66, 83, 83,
1234    -1, 83, -1, -1, -1, 83, 83, 83,
1235    83, 83, 83, 83, 83, 83, 77, 83,
1236    -1, -1, 83, -1, -1, -1, 83, 77,
1237    -1, -1, -1, -1, -1, -1, -1, -1,
1238    -1, -1 },
1239   { -1, -1, 83, 83, 83, 83, 83, 83,
1240    -1, 83, -1, -1, -1, 83, 83, 83,
1241    83, 83, 83, 83, 83, 67, 77, 83,
1242    -1, -1, 83, -1, -1, -1, 83, 77,
1243    -1, -1, -1, -1, -1, -1, -1, -1,
1244    -1, -1 },
1245   { -1, -1, 83, 83, 83, 68, 83, 83,
1246    -1, 83, -1, -1, -1, 83, 83, 83,
1247    83, 83, 83, 83, 83, 83, 77, 83,
1248    -1, -1, 83, -1, -1, -1, 83, 77,
1249    -1, -1, -1, -1, -1, -1, -1, -1,
1250    -1, -1 },
1251   { -1, -1, 83, 69, 83, 83, 83, 83,
1252    -1, 83, -1, -1, -1, 83, 83, 83,
1253    83, 83, 83, 83, 83, 83, 77, 83,
1254    -1, -1, 83, -1, -1, -1, 83, 77,
1255    -1, -1, -1, -1, -1, -1, -1, -1,
1256    -1, -1 },
1257   { -1, -1, 83, 83, 83, 83, 83, 83,
1258    -1, 83, -1, -1, -1, 83, 83, 83,
1259    83, 83, 83, 70, 83, 83, 77, 83,
1260    -1, -1, 83, -1, -1, -1, 83, 77,
1261    -1, -1, -1, -1, -1, -1, -1, -1,
1262    -1, -1 },
1263   { -1, -1, 83, 83, 73, 83, 83, 83,
1264    -1, 83, -1, -1, -1, 83, 83, 83,
1265    83, 83, 83, 83, 83, 83, 77, 83,
1266    -1, -1, 73, -1, -1, -1, 83, 77,
1267    -1, -1, -1, -1, -1, -1, -1, -1,
1268    -1, -1 },
1269   { -1, -1, 83, 83, 83, 83, 83, 83,
1270    -1, 83, -1, -1, -1, 83, 79, 83,
1271    83, 83, 83, 83, 83, 83, 77, 83,
1272    -1, -1, 83, -1, -1, -1, 83, 77,
1273    -1, -1, -1, -1, -1, -1, -1, -1,
1274    -1, -1 },
1275   { -1, -1, 83, 83, 83, 83, 83, 83,
1276    -1, 83, -1, -1, -1, 83, 83, 80,
1277    83, 83, 83, 83, 83, 83, 77, 83,
1278    -1, -1, 83, -1, -1, -1, 83, 77,
1279    -1, -1, -1, -1, -1, -1, -1, -1,
1280    -1, -1 },
1281   { -1, -1, 83, 83, 83, 83, 83, 83,
1282    -1, 83, -1, -1, -1, 83, 74, 83,
1283    83, 83, 83, 83, 83, 83, 77, 83,
1284    -1, -1, 83, -1, -1, -1, 83, 77,
1285    -1, -1, -1, -1, -1, -1, -1, -1,
1286    -1, -1 },
1287   { -1, -1, 83, 83, 83, 83, 83, 83,
1288    -1, 83, -1, -1, -1, 83, 83, 83,
1289    83, 83, 82, 83, 83, 83, 77, 83,
1290    -1, -1, 83, -1, -1, -1, 83, 77,
1291    -1, -1, -1, -1, -1, -1, -1, -1,
1292    -1, -1 },
1293   { -1, -1, 83, 83, 83, 83, 83, 83,
1294    -1, 83, -1, -1, -1, 83, 83, 83,
1295    83, 83, 75, 83, 83, 83, 77, 83,
1296    -1, -1, 83, -1, -1, -1, 83, 77,
1297    -1, -1, -1, -1, -1, -1, -1, -1,
1298    -1, -1 },
1299   { -1, -1, 83, 83, 83, 78, 83, 83,
1300    -1, 83, -1, -1, -1, 83, 83, 83,
1301    83, 83, 83, 83, 83, 83, 77, 83,
1302    -1, -1, 83, -1, -1, -1, 83, 77,
1303    -1, -1, -1, -1, -1, -1, -1, -1,
1304    -1, -1 }
1305   };
1306 internal CqlLexer.Token yylex()
1307   {
1308   char yy_lookahead;
1309   int yy_anchor = YY_NO_ANCHOR;
1310   int yy_state = yy_state_dtrans[yy_lexical_state];
1311   int yy_next_state = YY_NO_STATE;
1312   int yy_last_accept_state = YY_NO_STATE;
1313   bool yy_initial = true;
1314   int yy_this_accept;
1315
1316   yy_mark_start();
1317   yy_this_accept = yy_acpt[yy_state];
1318   if (YY_NOT_ACCEPT != yy_this_accept)
1319     {
1320     yy_last_accept_state = yy_state;
1321     yy_mark_end();
1322     }
1323   while (true)
1324     {
1325     if (yy_initial && yy_at_bol)
1326       yy_lookahead = (char) YY_BOL;
1327     else
1328       {
1329       yy_lookahead = yy_advance();
1330       }
1331     yy_next_state = yy_nxt[yy_rmap[yy_state],yy_cmap[yy_lookahead]];
1332     if (YY_EOF == yy_lookahead && yy_initial)
1333       {
1334
1335     return null;
1336       }
1337     if (YY_F != yy_next_state)
1338       {
1339       yy_state = yy_next_state;
1340       yy_initial = false;
1341       yy_this_accept = yy_acpt[yy_state];
1342       if (YY_NOT_ACCEPT != yy_this_accept)
1343         {
1344         yy_last_accept_state = yy_state;
1345         yy_mark_end();
1346         }
1347       }
1348     else
1349       {
1350       if (YY_NO_STATE == yy_last_accept_state)
1351         {
1352              throw new System.Data.EntitySqlException(EntitySqlException.GetGenericErrorMessage (_query, yychar)); 
1353         }
1354       else
1355         {
1356         yy_anchor = yy_acpt[yy_last_accept_state];
1357         if (0 != (YY_END & yy_anchor))
1358           {
1359           yy_move_end();
1360           }
1361         yy_to_mark();
1362         if (yy_last_accept_state < 0)
1363           {
1364           if (yy_last_accept_state < 85)
1365             yy_error(YY_E_INTERNAL, false);
1366           }
1367         else
1368           {
1369           AcceptMethod m = accept_dispatch[yy_last_accept_state];
1370           if (m != null)
1371             {
1372             CqlLexer.Token tmp = m();
1373             if (tmp != null)
1374               return tmp;
1375             }
1376           }
1377         yy_initial = true;
1378         yy_state = yy_state_dtrans[yy_lexical_state];
1379         yy_next_state = YY_NO_STATE;
1380         yy_last_accept_state = YY_NO_STATE;
1381         yy_mark_start();
1382         yy_this_accept = yy_acpt[yy_state];
1383         if (YY_NOT_ACCEPT != yy_this_accept)
1384           {
1385           yy_last_accept_state = yy_state;
1386           yy_mark_end();
1387           }
1388         }
1389       }
1390     }
1391   }
1392 }
1393
1394 }