KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mr > api > jms > selector > parser > SelectorLexer


1 /*
2  * Copyright 2002 by
3  * <a HREF="http://www.coridan.com">Coridan</a>
4  * <a HREF="mailto: support@coridan.com ">support@coridan.com</a>
5  *
6  * The contents of this file are subject to the Mozilla Public License Version
7  * 1.1 (the "License"); you may not use this file except in compliance with the
8  * License. You may obtain a copy of the License at
9  * http://www.mozilla.org/MPL/
10  *
11  * Software distributed under the License is distributed on an "AS IS" basis,
12  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13  * for the specific language governing rights and limitations under the
14  * License.
15  *
16  * The Original Code is "MantaRay" (TM).
17  *
18  * The Initial Developer of the Original Code is Coridan.
19  * Portions created by the Initial Developer are Copyright (C) 2006
20  * Coridan Inc. All Rights Reserved.
21  *
22  * Contributor(s): all the names of the contributors are added in the source
23  * code where applicable.
24  *
25  * Alternatively, the contents of this file may be used under the terms of the
26  * LGPL license (the "GNU LESSER GENERAL PUBLIC LICENSE"), in which case the
27  * provisions of LGPL are applicable instead of those above. If you wish to
28  * allow use of your version of this file only under the terms of the LGPL
29  * License and not to allow others to use your version of this file under
30  * the MPL, indicate your decision by deleting the provisions above and
31  * replace them with the notice and other provisions required by the LGPL.
32  * If you do not delete the provisions above, a recipient may use your version
33  * of this file under either the MPL or the GNU LESSER GENERAL PUBLIC LICENSE.
34  
35  *
36  * This library is free software; you can redistribute it and/or modify it
37  * under the terms of the MPL as stated above or under the terms of the GNU
38  * Lesser General Public License as published by the Free Software Foundation;
39  * either version 2.1 of the License, or any later version.
40  *
41  * This library is distributed in the hope that it will be useful, but WITHOUT
42  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
43  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
44  * License for more details.
45  */

46 // $ANTLR 2.7.2: "Selector.g" -> "SelectorLexer.java"$
47

48
49 /**
50  * NO ONE IS TO MODIFY THIS CLASS WITHOUT TALKING TO YUVAL.
51  */

52 package org.mr.api.jms.selector.parser;
53
54 import java.io.InputStream JavaDoc;
55 import java.io.Reader JavaDoc;
56 import java.util.Hashtable JavaDoc;
57
58 import antlr.ANTLRHashString;
59 import antlr.ByteBuffer;
60 import antlr.CharBuffer;
61 import antlr.CharStreamException;
62 import antlr.CharStreamIOException;
63 import antlr.InputBuffer;
64 import antlr.LexerSharedInputState;
65 import antlr.NoViableAltForCharException;
66 import antlr.RecognitionException;
67 import antlr.Token;
68 import antlr.TokenStream;
69 import antlr.TokenStreamException;
70 import antlr.TokenStreamIOException;
71 import antlr.TokenStreamRecognitionException;
72 import antlr.collections.impl.BitSet;
73
74
75 public class SelectorLexer extends antlr.CharScanner implements SelectorTokenTypes, TokenStream
76  {
77
78     public void initialise()
79     {
80         setColumn(1); // CharScanner sets the column to 0 - bug? TODO
81
}
82 public SelectorLexer(InputStream JavaDoc in) {
83     this(new ByteBuffer(in));
84 }
85 public SelectorLexer(Reader JavaDoc in) {
86     this(new CharBuffer(in));
87 }
88 public SelectorLexer(InputBuffer ib) {
89     this(new LexerSharedInputState(ib));
90 }
91 public SelectorLexer(LexerSharedInputState state) {
92     super(state);
93     caseSensitiveLiterals = false;
94     setCaseSensitive(true);
95     literals = new Hashtable JavaDoc();
96     literals.put(new ANTLRHashString("between", this), new Integer JavaDoc(23));
97     literals.put(new ANTLRHashString("null", this), new Integer JavaDoc(22));
98     literals.put(new ANTLRHashString("like", this), new Integer JavaDoc(25));
99     literals.put(new ANTLRHashString("in", this), new Integer JavaDoc(24));
100     literals.put(new ANTLRHashString("or", this), new Integer JavaDoc(5));
101     literals.put(new ANTLRHashString("escape", this), new Integer JavaDoc(27));
102     literals.put(new ANTLRHashString("true", this), new Integer JavaDoc(32));
103     literals.put(new ANTLRHashString("and", this), new Integer JavaDoc(6));
104     literals.put(new ANTLRHashString("not", this), new Integer JavaDoc(7));
105     literals.put(new ANTLRHashString("false", this), new Integer JavaDoc(31));
106     literals.put(new ANTLRHashString("is", this), new Integer JavaDoc(21));
107 }
108
109 public Token nextToken() throws TokenStreamException {
110     Token theRetToken=null;
111 tryAgain:
112     for (;;) {
113         Token _token = null;
114         int _ttype = Token.INVALID_TYPE;
115         resetText();
116         try { // for char stream error handling
117
try { // for lexical error handling
118
switch ( LA(1)) {
119                 case '(':
120                 {
121                     mLPAREN(true);
122                     theRetToken=_returnToken;
123                     break;
124                 }
125                 case ')':
126                 {
127                     mRPAREN(true);
128                     theRetToken=_returnToken;
129                     break;
130                 }
131                 case ',':
132                 {
133                     mCOMMA(true);
134                     theRetToken=_returnToken;
135                     break;
136                 }
137                 case '=':
138                 {
139                     mEQUAL(true);
140                     theRetToken=_returnToken;
141                     break;
142                 }
143                 case '/':
144                 {
145                     mDIVIDE(true);
146                     theRetToken=_returnToken;
147                     break;
148                 }
149                 case '+':
150                 {
151                     mPLUS(true);
152                     theRetToken=_returnToken;
153                     break;
154                 }
155                 case '-':
156                 {
157                     mMINUS(true);
158                     theRetToken=_returnToken;
159                     break;
160                 }
161                 case '*':
162                 {
163                     mMULTIPLY(true);
164                     theRetToken=_returnToken;
165                     break;
166                 }
167                 case '\t': case '\n': case '\u000c': case '\r':
168                 case ' ':
169                 {
170                     mWS(true);
171                     theRetToken=_returnToken;
172                     break;
173                 }
174                 case '\'':
175                 {
176                     mSTRING_LITERAL(true);
177                     theRetToken=_returnToken;
178                     break;
179                 }
180                 case '.': case '0': case '1': case '2':
181                 case '3': case '4': case '5': case '6':
182                 case '7': case '8': case '9':
183                 {
184                     mNUM_INT(true);
185                     theRetToken=_returnToken;
186                     break;
187                 }
188                 default:
189                     if ((LA(1)=='<') && (LA(2)=='>')) {
190                         mNOT_EQUAL(true);
191                         theRetToken=_returnToken;
192                     }
193                     else if ((LA(1)=='>') && (LA(2)=='=')) {
194                         mGE(true);
195                         theRetToken=_returnToken;
196                     }
197                     else if ((LA(1)=='<') && (LA(2)=='=')) {
198                         mLE(true);
199                         theRetToken=_returnToken;
200                     }
201                     else if ((LA(1)=='>') && (true)) {
202                         mGT(true);
203                         theRetToken=_returnToken;
204                     }
205                     else if ((LA(1)=='<') && (true)) {
206                         mLT(true);
207                         theRetToken=_returnToken;
208                     }
209                     else if ((_tokenSet_0.member(LA(1)))) {
210                         mIDENT(true);
211                         theRetToken=_returnToken;
212                     }
213                 else {
214                     if (LA(1)==EOF_CHAR) {uponEOF(); _returnToken = makeToken(Token.EOF_TYPE);}
215                 else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
216                 }
217                 }
218                 if ( _returnToken==null ) continue tryAgain; // found SKIP token
219
_ttype = _returnToken.getType();
220                 _returnToken.setType(_ttype);
221                 return _returnToken;
222             }
223             catch (RecognitionException e) {
224                 throw new TokenStreamRecognitionException(e);
225             }
226         }
227         catch (CharStreamException cse) {
228             if ( cse instanceof CharStreamIOException ) {
229                 throw new TokenStreamIOException(((CharStreamIOException)cse).io);
230             }
231             else {
232                 throw new TokenStreamException(cse.getMessage());
233             }
234         }
235     }
236 }
237
238     public final void mLPAREN(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
239         int _ttype; Token _token=null; int _begin=text.length();
240         _ttype = LPAREN;
241         int _saveIndex;
242         
243         match('(');
244         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
245             _token = makeToken(_ttype);
246             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
247         }
248         _returnToken = _token;
249     }
250     
251     public final void mRPAREN(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
252         int _ttype; Token _token=null; int _begin=text.length();
253         _ttype = RPAREN;
254         int _saveIndex;
255         
256         match(')');
257         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
258             _token = makeToken(_ttype);
259             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
260         }
261         _returnToken = _token;
262     }
263     
264     public final void mCOMMA(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
265         int _ttype; Token _token=null; int _begin=text.length();
266         _ttype = COMMA;
267         int _saveIndex;
268         
269         match(',');
270         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
271             _token = makeToken(_ttype);
272             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
273         }
274         _returnToken = _token;
275     }
276     
277     public final void mEQUAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
278         int _ttype; Token _token=null; int _begin=text.length();
279         _ttype = EQUAL;
280         int _saveIndex;
281         
282         match('=');
283         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
284             _token = makeToken(_ttype);
285             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
286         }
287         _returnToken = _token;
288     }
289     
290     public final void mNOT_EQUAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
291         int _ttype; Token _token=null; int _begin=text.length();
292         _ttype = NOT_EQUAL;
293         int _saveIndex;
294         
295         match("<>");
296         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
297             _token = makeToken(_ttype);
298             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
299         }
300         _returnToken = _token;
301     }
302     
303     public final void mDIVIDE(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
304         int _ttype; Token _token=null; int _begin=text.length();
305         _ttype = DIVIDE;
306         int _saveIndex;
307         
308         match('/');
309         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
310             _token = makeToken(_ttype);
311             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
312         }
313         _returnToken = _token;
314     }
315     
316     public final void mPLUS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
317         int _ttype; Token _token=null; int _begin=text.length();
318         _ttype = PLUS;
319         int _saveIndex;
320         
321         match('+');
322         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
323             _token = makeToken(_ttype);
324             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
325         }
326         _returnToken = _token;
327     }
328     
329     public final void mMINUS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
330         int _ttype; Token _token=null; int _begin=text.length();
331         _ttype = MINUS;
332         int _saveIndex;
333         
334         match('-');
335         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
336             _token = makeToken(_ttype);
337             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
338         }
339         _returnToken = _token;
340     }
341     
342     public final void mMULTIPLY(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
343         int _ttype; Token _token=null; int _begin=text.length();
344         _ttype = MULTIPLY;
345         int _saveIndex;
346         
347         match('*');
348         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
349             _token = makeToken(_ttype);
350             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
351         }
352         _returnToken = _token;
353     }
354     
355     public final void mGE(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
356         int _ttype; Token _token=null; int _begin=text.length();
357         _ttype = GE;
358         int _saveIndex;
359         
360         match(">=");
361         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
362             _token = makeToken(_ttype);
363             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
364         }
365         _returnToken = _token;
366     }
367     
368     public final void mGT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
369         int _ttype; Token _token=null; int _begin=text.length();
370         _ttype = GT;
371         int _saveIndex;
372         
373         match(">");
374         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
375             _token = makeToken(_ttype);
376             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
377         }
378         _returnToken = _token;
379     }
380     
381     public final void mLE(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
382         int _ttype; Token _token=null; int _begin=text.length();
383         _ttype = LE;
384         int _saveIndex;
385         
386         match("<=");
387         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
388             _token = makeToken(_ttype);
389             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
390         }
391         _returnToken = _token;
392     }
393     
394     public final void mLT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
395         int _ttype; Token _token=null; int _begin=text.length();
396         _ttype = LT;
397         int _saveIndex;
398         
399         match('<');
400         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
401             _token = makeToken(_ttype);
402             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
403         }
404         _returnToken = _token;
405     }
406     
407     public final void mWS(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
408         int _ttype; Token _token=null; int _begin=text.length();
409         _ttype = WS;
410         int _saveIndex;
411         
412         {
413         switch ( LA(1)) {
414         case ' ':
415         {
416             match(' ');
417             break;
418         }
419         case '\t':
420         {
421             match('\t');
422             break;
423         }
424         case '\u000c':
425         {
426             match('\f');
427             break;
428         }
429         case '\n': case '\r':
430         {
431             {
432             if ((LA(1)=='\r') && (LA(2)=='\n')) {
433                 match("\r\n");
434             }
435             else if ((LA(1)=='\r') && (true)) {
436                 match('\r');
437             }
438             else if ((LA(1)=='\n')) {
439                 match('\n');
440             }
441             else {
442                 throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
443             }
444             
445             }
446             
447             newline();
448             
449             break;
450         }
451         default:
452         {
453             throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
454         }
455         }
456         }
457         
458         _ttype = Token.SKIP;
459         
460         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
461             _token = makeToken(_ttype);
462             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
463         }
464         _returnToken = _token;
465     }
466     
467     public final void mSTRING_LITERAL(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
468         int _ttype; Token _token=null; int _begin=text.length();
469         _ttype = STRING_LITERAL;
470         int _saveIndex;
471         
472         _saveIndex=text.length();
473         match('\'');
474         text.setLength(_saveIndex);
475         {
476         _loop57:
477         do {
478             if ((LA(1)=='\'') && (LA(2)=='\'')) {
479                 match('\'');
480                 _saveIndex=text.length();
481                 match('\'');
482                 text.setLength(_saveIndex);
483             }
484             else if ((_tokenSet_1.member(LA(1)))) {
485                 {
486                 match(_tokenSet_1);
487                 }
488             }
489             else {
490                 break _loop57;
491             }
492             
493         } while (true);
494         }
495         _saveIndex=text.length();
496         match('\'');
497         text.setLength(_saveIndex);
498         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
499             _token = makeToken(_ttype);
500             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
501         }
502         _returnToken = _token;
503     }
504     
505     protected final void mHEX_DIGIT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
506         int _ttype; Token _token=null; int _begin=text.length();
507         _ttype = HEX_DIGIT;
508         int _saveIndex;
509         
510         {
511         switch ( LA(1)) {
512         case '0': case '1': case '2': case '3':
513         case '4': case '5': case '6': case '7':
514         case '8': case '9':
515         {
516             matchRange('0','9');
517             break;
518         }
519         case 'A': case 'B': case 'C': case 'D':
520         case 'E': case 'F':
521         {
522             matchRange('A','F');
523             break;
524         }
525         case 'a': case 'b': case 'c': case 'd':
526         case 'e': case 'f':
527         {
528             matchRange('a','f');
529             break;
530         }
531         default:
532         {
533             throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
534         }
535         }
536         }
537         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
538             _token = makeToken(_ttype);
539             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
540         }
541         _returnToken = _token;
542     }
543     
544     public final void mIDENT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
545         int _ttype; Token _token=null; int _begin=text.length();
546         _ttype = IDENT;
547         int _saveIndex;
548         
549         {
550         mIDENT_START(false);
551         }
552         {
553         _loop63:
554         do {
555             if ((_tokenSet_2.member(LA(1)))) {
556                 mIDENT_PART(false);
557             }
558             else {
559                 break _loop63;
560             }
561             
562         } while (true);
563         }
564         _ttype = testLiteralsTable(_ttype);
565         if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
566             _token = makeToken(_ttype);
567             _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
568         }
569         _returnToken = _token;
570     }
571     
572     protected final void mIDENT_START(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
573         int _ttype; Token _token=null; int _begin=text.length();
574         _ttype = IDENT_START;
575         int _saveIndex;
576         
577         {
578         switch ( LA(1)) {
579         case '$':
580         {
581             match('$');
582             break;
583         }
584         case 'A': case 'B': case 'C': case 'D':
585         case 'E': case 'F': case 'G': case 'H':
586         case 'I': case 'J': case 'K': case 'L':
587         case 'M': case 'N': case 'O': case 'P':
588         case 'Q': case 'R': case 'S': case 'T':
589         case 'U': case 'V': case 'W': case 'X':
590         case 'Y': case 'Z':
591         {
592             matchRange('A','Z');
593             break;
594         }
595         case '_':
596         {
597             match('_');
598             break;
599         }
600         case 'a': case 'b': case 'c': case 'd':
601         case 'e': case 'f': case 'g': case 'h':
602         case 'i': case 'j': case 'k': case 'l':
603         case 'm': case 'n': case 'o': case 'p':
604         case 'q': case 'r': case 's': case 't':
605         case 'u': case 'v': case 'w': case 'x':
606         case 'y': case 'z':
607         {
608             matchRange('a','z');
609             break;
610         }
611         case '\u00a2': case '\u00a3': case '\u00a4': case '\u00a5':
612         {
613             matchRange('\u00A2','\u00A5');
614             break;
615         }
616         case '\u00aa':
617         {
618             match('\u00AA');
619             break;
620         }
621         case '\u00b5':
622         {
623             match('\u00B5');
624             break;
625         }
626         case '\u00ba':
627         {
628             match('\u00BA');
629             break;
630         }
631         case '\u00c0': case '\u00c1': case '\u00c2': case '\u00c3':
632         case '\u00c4': case '\u00c5': case '\u00c6': case '\u00c7':
633         case '\u00c8': case '\u00c9': case '\u00ca': case '\u00cb':
634         case '\u00cc': case '\u00cd': case '\u00ce': case '\u00cf':
635         case '\u00d0': case '\u00d1': case '\u00d2': case '\u00d3':
636         case '\u00d4': case '\u00d5': case '\u00d6':
637         {
638             matchRange('\u00C0','\u00D6');
639             break;
640         }
641         case '\u00d8': case '\u00d9': case '\u00da': case '\u00db':
642         case '\u00dc': case '\u00dd': case '\u00de': case '\u00df':
643         case '\u00e0': case '\u00e1': case '\u00e2': case '\u00e3':
644         case '\u00e4': case '\u00e5': case '\u00e6': case '\u00e7':
645         case '\u00e8': case '\u00e9': case '\u00ea': case '\u00eb':
646         case '\u00ec': case '\u00ed': case '\u00ee': case '\u00ef':
647         case '\u00f0': case '\u00f1': case '\u00f2': case '\u00f3':
648         case '\u00f4': case '\u00f5': case '\u00f6':
649         {
650             matchRange('\u00D8','\u00F6');
651             break;
652         }
653         case '\u01fa': case '\u01fb': case '\u01fc': case '\u01fd':
654         case '\u01fe': case '\u01ff': case '\u0200': case '\u0201':
655         case '\u0202': case '\u0203': case '\u0204': case '\u0205':
656         case '\u0206': case '\u0207': case '\u0208': case '\u0209':
657         case '\u020a': case '\u020b': case '\u020c': case '\u020d':
658         case '\u020e': case '\u020f': case '\u0210': case '\u0211':
659         case '\u0212': case '\u0213': case '\u0214': case '\u0215':
660         case '\u0216': case '\u0217':
661         {
662             matchRange('\u01FA','\u0217');
663             break;
664         }
665         case '\u0250': case '\u0251': case '\u0252': case '\u0253':
666         case '\u0254': case '\u0255': case '\u0256': case '\u0257':
667         case '\u0258': case '\u0259': case '\u025a': case '\u025b':
668         case '\u025c': case '\u025d': case '\u025e': case '\u025f':
669         case '\u0260': case '\u0261': case '\u0262': case '\u0263':
670         case '\u0264': case '\u0265': case '\u0266': case '\u0267':
671         case '\u0268': case '\u0269': case '\u026a': case '\u026b':
672         case '\u026c': case '\u026d': case '\u026e': case '\u026f':
673         case '\u0270': case '\u0271': case '\u0272': case '\u0273':
674         case '\u0274': case '\u0275': case '\u0276': case '\u0277':
675         case '\u0278': case '\u0279': case '\u027a': case '\u027b':
676         case '\u027c': case '\u027d': case '\u027e': case '\u027f':
677         case '\u0280': case '\u0281': case '\u0282': case '\u0283':
678         case '\u0284': case '\u0285': case '\u0286': case '\u0287':
679         case '\u0288': case '\u0289': case '\u028a': case '\u028b':
680         case '\u028c': case '\u028d': case '\u028e': case '\u028f':
681         case '\u0290': case '\u0291': case '\u0292': case '\u0293':
682         case '\u0294': case '\u0295': case '\u0296': case '\u0297':
683         case '\u0298': case '\u0299': case '\u029a': case '\u029b':
684         case '\u029c': case '\u029d': case '\u029e': case '\u029f':
685         case '\u02a0': case '\u02a1': case '\u02a2': case '\u02a3':
686         case '\u02a4': case '\u02a5': case '\u02a6': case '\u02a7':
687         case '\u02a8':
688         {
689             matchRange('\u0250','\u02A8');
690             break;
691         }
692         case '\u02b0': case '\u02b1': case '\u02b2': case '\u02b3':
693         case '\u02b4': case '\u02b5': case '\u02b6': case '\u02b7':
694         case '\u02b8':
695         {
696             matchRange('\u02B0','\u02B8');
697             break;
698         }
699         case '\u02bb': case '\u02bc': case '\u02bd': case '\u02be':
700         case '\u02bf': case '\u02c0': case '\u02c1':
701         {
702             matchRange('\u02BB','\u02C1');
703             break;
704         }
705         case '\u02d0': case '\u02d1':
706         {
707             matchRange('\u02D0','\u02D1');
708             break;
709         }
710         case '\u02e0': case '\u02e1': case '\u02e2': case '\u02e3':
711         case '\u02e4':
712         {
713             matchRange('\u02E0','\u02E4');
714             break;
715         }
716         case '\u037a':
717         {
718             match('\u037A');
719             break;
720         }
721         case '\u0386':
722         {
723             match('\u0386');
724             break;
725         }
726         case '\u0388': case '\u0389': case '\u038a':
727         {
728             matchRange('\u0388','\u038A');
729             break;
730         }
731         case '\u038c':
732         {
733             match('\u038C');
734             break;
735         }
736         case '\u038e': case '\u038f': case '\u0390': case '\u0391':
737         case '\u0392': case '\u0393': case '\u0394': case '\u0395':
738         case '\u0396': case '\u0397': case '\u0398': case '\u0399':
739         case '\u039a': case '\u039b': case '\u039c': case '\u039d':
740         case '\u039e': case '\u039f': case '\u03a0': case '\u03a1':
741         {
742             matchRange('\u038E','\u03A1');
743             break;
744         }
745         case '\u03a3': case '\u03a4': case '\u03a5': case '\u03a6':
746         case '\u03a7': case '\u03a8': case '\u03a9': case '\u03aa':
747         case '\u03ab': case '\u03ac': case '\u03ad': case '\u03ae':
748         case '\u03af': case '\u03b0': case '\u03b1': case '\u03b2':
749         case '\u03b3': case '\u03b4': case '\u03b5': case '\u03b6':
750         case '\u03b7': case '\u03b8': case '\u03b9': case '\u03ba':
751         case '\u03bb': case '\u03bc': case '\u03bd': case '\u03be':
752         case '\u03bf': case '\u03c0': case '\u03c1': case '\u03c2':
753         case '\u03c3': case '\u03c4': case '\u03c5': case '\u03c6':
754         case '\u03c7': case '\u03c8': case '\u03c9': case '\u03ca':
755         case '\u03cb': case '\u03cc': case '\u03cd': case '\u03ce':
756         {
757             matchRange('\u03A3','\u03CE');
758             break;
759         }
760         case '\u03d0': case '\u03d1': case '\u03d2': case '\u03d3':
761         case '\u03d4': case '\u03d5': case '\u03d6':
762         {
763             matchRange('\u03D0','\u03D6');
764             break;
765         }
766         case '\u03da':
767         {
768             match('\u03DA');
769             break;
770         }
771         case '\u03dc':
772         {
773             match('\u03DC');
774             break;
775         }
776         case '\u03de':
777         {
778             match('\u03DE');
779             break;
780         }
781         case '\u03e0':
782         {
783             match('\u03E0');
784             break;
785         }
786         case '\u03e2': case '\u03e3': case '\u03e4': case '\u03e5':
787         case '\u03e6': case '\u03e7': case '\u03e8': case '\u03e9':
788         case '\u03ea': case '\u03eb': case '\u03ec': case '\u03ed':
789         case '\u03ee': case '\u03ef': case '\u03f0': case '\u03f1':
790         case '\u03f2': case '\u03f3':
791         {
792             matchRange('\u03E2','\u03F3');
793             break;
794         }
795         case '\u0401': case '\u0402': case '\u0403': case '\u0404':
796         case '\u0405': case '\u0406': case '\u0407': case '\u0408':
797         case '\u0409': case '\u040a': case '\u040b': case '\u040c':
798         {
799             matchRange('\u0401','\u040C');
800             break;
801         }
802         case '\u040e': case '\u040f': case '\u0410': case '\u0411':
803         case '\u0412': case '\u0413': case '\u0414': case '\u0415':
804         case '\u0416': case '\u0417': case '\u0418': case '\u0419':
805         case '\u041a': case '\u041b': case '\u041c': case '\u041d':
806         case '\u041e': case '\u041f': case '\u0420': case '\u0421':
807         case '\u0422': case '\u0423': case '\u0424': case '\u0425':
808         case '\u0426': case '\u0427': case '\u0428': case '\u0429':
809         case '\u042a': case '\u042b': case '\u042c': case '\u042d':
810         case '\u042e': case '\u042f': case '\u0430': case '\u0431':
811         case '\u0432': case '\u0433': case '\u0434': case '\u0435':
812         case '\u0436': case '\u0437': case '\u0438': case '\u0439':
813         case '\u043a': case '\u043b': case '\u043c': case '\u043d':
814         case '\u043e': case '\u043f': case '\u0440': case '\u0441':
815         case '\u0442': case '\u0443': case '\u0444': case '\u0445':
816         case '\u0446': case '\u0447': case '\u0448': case '\u0449':
817         case '\u044a': case '\u044b': case '\u044c': case '\u044d':
818         case '\u044e': case '\u044f':
819         {
820             matchRange('\u040E','\u044F');
821             break;
822         }
823         case '\u0451': case '\u0452': case '\u0453': case '\u0454':
824         case '\u0455': case '\u0456': case '\u0457': case '\u0458':
825         case '\u0459': case '\u045a': case '\u045b': case '\u045c':
826         {
827             matchRange('\u0451','\u045C');
828             break;
829         }
830         case '\u045e': case '\u045f': case '\u0460': case '\u0461':
831         case '\u0462': case '\u0463': case '\u0464': case '\u0465':
832         case '\u0466': case '\u0467': case '\u0468': case '\u0469':
833         case '\u046a': case '\u046b': case '\u046c': case '\u046d':
834         case '\u046e': case '\u046f': case '\u0470': case '\u0471':
835         case '\u0472': case '\u0473': case '\u0474': case '\u0475':
836         case '\u0476': case '\u0477': case '\u0478': case '\u0479':
837         case '\u047a': case '\u047b': case '\u047c': case '\u047d':
838         case '\u047e': case '\u047f': case '\u0480': case '\u0481':
839         {
840             matchRange('\u045E','\u0481');
841             break;
842         }
843         case '\u0490': case '\u0491': case '\u0492': case '\u0493':
844         case '\u0494': case '\u0495': case '\u0496': case '\u0497':
845         case '\u0498': case '\u0499': case '\u049a': case '\u049b':
846         case '\u049c': case '\u049d': case '\u049e': case '\u049f':
847         case '\u04a0': case '\u04a1': case '\u04a2': case '\u04a3':
848         case '\u04a4': case '\u04a5': case '\u04a6': case '\u04a7':
849         case '\u04a8': case '\u04a9': case '\u04aa': case '\u04ab':
850         case '\u04ac': case '\u04ad': case '\u04ae': case '\u04af':
851         case '\u04b0': case '\u04b1': case '\u04b2': case '\u04b3':
852         case '\u04b4': case '\u04b5': case '\u04b6': case '\u04b7':
853         case '\u04b8': case '\u04b9': case '\u04ba': case '\u04bb':
854         case '\u04bc': case '\u04bd': case '\u04be': case '\u04bf':
855         case '\u04c0': case '\u04c1': case '\u04c2': case '\u04c3':
856         case '\u04c4':
857         {
858             matchRange('\u0490','\u04C4');
859             break;
860         }
861         case '\u04c7': case '\u04c8':
862         {
863             matchRange('\u04C7','\u04C8');
864             break;
865         }
866         case '\u04cb': case '\u04cc':
867         {
868             matchRange('\u04CB','\u04CC');
869             break;
870         }
871         case '\u04d0': case '\u04d1': case '\u04d2': case '\u04d3':
872         case '\u04d4': case '\u04d5': case '\u04d6': case '\u04d7':
873         case '\u04d8': case '\u04d9': case '\u04da': case '\u04db':
874         case '\u04dc': case '\u04dd': case '\u04de': case '\u04df':
875         case '\u04e0': case '\u04e1': case '\u04e2': case '\u04e3':
876         case '\u04e4': case '\u04e5': case '\u04e6': case '\u04e7':
877         case '\u04e8': case '\u04e9': case '\u04ea': case '\u04eb':
878         {
879             matchRange('\u04D0','\u04EB');
880             break;
881         }
882         case '\u04ee': case '\u04ef': case '\u04f0': case '\u04f1':
883         case '\u04f2': case '\u04f3': case '\u04f4': case '\u04f5':
884         {
885             matchRange('\u04EE','\u04F5');
886             break;
887         }
888         case '\u04f8': case '\u04f9':
889         {
890             matchRange('\u04F8','\u04F9');
891             break;
892         }
893         case '\u0531': case '\u0532': case '\u0533': case '\u0534':
894         case '\u0535': case '\u0536': case '\u0537': case '\u0538':
895         case '\u0539': case '\u053a': case '\u053b': case '\u053c':
896         case '\u053d': case '\u053e': case '\u053f': case '\u0540':
897         case '\u0541': case '\u0542': case '\u0543': case '\u0544':
898         case '\u0545': case '\u0546': case '\u0547': case '\u0548':
899         case '\u0549': case '\u054a': case '\u054b': case '\u054c':
900         case '\u054d': case '\u054e': case '\u054f': case '\u0550':
901         case '\u0551': case '\u0552': case '\u0553': case '\u0554':
902         case '\u0555': case '\u0556':
903         {
904             matchRange('\u0531','\u0556');
905             break;
906         }
907         case '\u0559':
908         {
909             match('\u0559');
910             break;
911         }
912         case '\u0561': case '\u0562': case '\u0563': case '\u0564':
913         case '\u0565': case '\u0566': case '\u0567': case '\u0568':
914         case '\u0569': case '\u056a': case '\u056b': case '\u056c':
915         case '\u056d': case '\u056e': case '\u056f': case '\u0570':
916         case '\u0571': case '\u0572': case '\u0573': case '\u0574':
917         case '\u0575': case '\u0576': case '\u0577': case '\u0578':
918         case '\u0579': case '\u057a': case '\u057b': case '\u057c':
919         case '\u057d': case '\u057e': case '\u057f': case '\u0580':
920         case '\u0581': case '\u0582': case '\u0583': case '\u0584':
921         case '\u0585': case '\u0586': case '\u0587':
922         {
923             matchRange('\u0561','\u0587');
924             break;
925         }
926         case '\u05d0': case '\u05d1': case '\u05d2': case '\u05d3':
927         case '\u05d4': case '\u05d5': case '\u05d6': case '\u05d7':
928         case '\u05d8': case '\u05d9': case '\u05da': case '\u05db':
929         case '\u05dc': case '\u05dd': case '\u05de': case '\u05df':
930         case '\u05e0': case '\u05e1': case '\u05e2': case '\u05e3':
931         case '\u05e4': case '\u05e5': case '\u05e6': case '\u05e7':
932         case '\u05e8': case '\u05e9': case '\u05ea':
933         {
934             matchRange('\u05D0','\u05EA');
935             break;
936         }
937         case '\u05f0': case '\u05f1': case '\u05f2':
938         {
939             matchRange('\u05F0','\u05F2');
940             break;
941         }
942         case '\u0621': case '\u0622': case '\u0623': case '\u0624':
943         case '\u0625': case '\u0626': case '\u0627': case '\u0628':
944         case '\u0629': case '\u062a': case '\u062b': case '\u062c':
945         case '\u062d': case '\u062e': case '\u062f': case '\u0630':
946         case '\u0631': case '\u0632': case '\u0633': case '\u0634':
947         case '\u0635': case '\u0636': case '\u0637': case '\u0638':
948         case '\u0639': case '\u063a':
949         {
950             matchRange('\u0621','\u063A');
951             break;
952         }
953         case '\u0640': case '\u0641': case '\u0642': case '\u0643':
954         case '\u0644': case '\u0645': case '\u0646': case '\u0647':
955         case '\u0648': case '\u0649': case '\u064a':
956         {
957             matchRange('\u0640','\u064A');
958             break;
959         }
960         case '\u0671': case '\u0672': case '\u0673': case '\u0674':
961         case '\u0675': case '\u0676': case '\u0677': case '\u0678':
962         case '\u0679': case '\u067a': case '\u067b': case '\u067c':
963         case '\u067d': case '\u067e': case '\u067f': case '\u0680':
964         case '\u0681': case '\u0682': case '\u0683': case '\u0684':
965         case '\u0685': case '\u0686': case '\u0687': case '\u0688':
966         case '\u0689': case '\u068a': case '\u068b': case '\u068c':
967         case '\u068d': case '\u068e': case '\u068f': case '\u0690':
968         case '\u0691': case '\u0692': case '\u0693': case '\u0694':
969         case '\u0695': case '\u0696': case '\u0697': case '\u0698':
970         case '\u0699': case '\u069a': case '\u069b': case '\u069c':
971         case '\u069d': case '\u069e': case '\u069f': case '\u06a0':
972         case '\u06a1': case '\u06a2': case '\u06a3': case '\u06a4':
973         case '\u06a5': case '\u06a6': case '\u06a7': case '\u06a8':
974         case '\u06a9': case '\u06aa': case '\u06ab': case '\u06ac':
975         case '\u06ad': case '\u06ae': case '\u06af': case '\u06b0':
976         case '\u06b1': case '\u06b2': case '\u06b3': case '\u06b4':
977         case '\u06b5': case '\u06b6': case '\u06b7':
978         {
979             matchRange('\u0671','\u06B7');
980             break;
981         }
982         case '\u06ba': case '\u06bb': case '\u06bc': case '\u06bd':
983         case '\u06be':
984         {
985             matchRange('\u06BA','\u06BE');
986             break;
987         }
988         case '\u06c0': case '\u06c1': case '\u06c2': case '\u06c3':
989         case '\u06c4': case '\u06c5': case '\u06c6': case '\u06c7':
990         case '\u06c8': case '\u06c9': case '\u06ca': case '\u06cb':
991         case '\u06cc': case '\u06cd': case '\u06ce':
992         {
993             matchRange('\u06C0','\u06CE');
994             break;
995         }
996         case '\u06d0': case '\u06d1': case '\u06d2': case '\u06d3':
997         {
998             matchRange('\u06D0','\u06D3');
999             break;
1000        }
1001        case '\u06d5':
1002        {
1003            match('\u06D5');
1004            break;
1005        }
1006        case '\u06e5': case '\u06e6':
1007        {
1008            matchRange('\u06E5','\u06E6');
1009            break;
1010        }
1011        case '\u0905': case '\u0906': case '\u0907': case '\u0908':
1012        case '\u0909': case '\u090a': case '\u090b': case '\u090c':
1013        case '\u090d': case '\u090e': case '\u090f': case '\u0910':
1014        case '\u0911': case '\u0912': case '\u0913': case '\u0914':
1015        case '\u0915': case '\u0916': case '\u0917': case '\u0918':
1016        case '\u0919': case '\u091a': case '\u091b': case '\u091c':
1017        case '\u091d': case '\u091e': case '\u091f': case '\u0920':
1018        case '\u0921': case '\u0922': case '\u0923': case '\u0924':
1019        case '\u0925': case '\u0926': case '\u0927': case '\u0928':
1020        case '\u0929': case '\u092a': case '\u092b': case '\u092c':
1021        case '\u092d': case '\u092e': case '\u092f': case '\u0930':
1022        case '\u0931': case '\u0932': case '\u0933': case '\u0934':
1023        case '\u0935': case '\u0936': case '\u0937': case '\u0938':
1024        case '\u0939':
1025        {
1026            matchRange('\u0905','\u0939');
1027            break;
1028        }
1029        case '\u093d':
1030        {
1031            match('\u093D');
1032            break;
1033        }
1034        case '\u0958': case '\u0959': case '\u095a': case '\u095b':
1035        case '\u095c': case '\u095d': case '\u095e': case '\u095f':
1036        case '\u0960': case '\u0961':
1037        {
1038            matchRange('\u0958','\u0961');
1039            break;
1040        }
1041        case '\u0985': case '\u0986': case '\u0987': case '\u0988':
1042        case '\u0989': case '\u098a': case '\u098b': case '\u098c':
1043        {
1044            matchRange('\u0985','\u098C');
1045            break;
1046        }
1047        case '\u098f': case '\u0990':
1048        {
1049            matchRange('\u098F','\u0990');
1050            break;
1051        }
1052        case '\u0993': case '\u0994': case '\u0995': case '\u0996':
1053        case '\u0997': case '\u0998': case '\u0999': case '\u099a':
1054        case '\u099b': case '\u099c': case '\u099d': case '\u099e':
1055        case '\u099f': case '\u09a0': case '\u09a1': case '\u09a2':
1056        case '\u09a3': case '\u09a4': case '\u09a5': case '\u09a6':
1057        case '\u09a7': case '\u09a8':
1058        {
1059            matchRange('\u0993','\u09A8');
1060            break;
1061        }
1062        case '\u09aa': case '\u09ab': case '\u09ac': case '\u09ad':
1063        case '\u09ae': case '\u09af': case '\u09b0':
1064        {
1065            matchRange('\u09AA','\u09B0');
1066            break;
1067        }
1068        case '\u09b2':
1069        {
1070            match('\u09B2');
1071            break;
1072        }
1073        case '\u09b6': case '\u09b7': case '\u09b8': case '\u09b9':
1074        {
1075            matchRange('\u09B6','\u09B9');
1076            break;
1077        }
1078        case '\u09dc': case '\u09dd':
1079        {
1080            matchRange('\u09DC','\u09DD');
1081            break;
1082        }
1083        case '\u09df': case '\u09e0': case '\u09e1':
1084        {
1085            matchRange('\u09DF','\u09E1');
1086            break;
1087        }
1088        case '\u09f0': case '\u09f1': case '\u09f2': case '\u09f3':
1089        {
1090            matchRange('\u09F0','\u09F3');
1091            break;
1092        }
1093        case '\u0a05': case '\u0a06': case '\u0a07': case '\u0a08':
1094        case '\u0a09': case '\u0a0a':
1095        {
1096            matchRange('\u0A05','\u0A0A');
1097            break;
1098        }
1099        case '\u0a0f': case '\u0a10':
1100        {
1101            matchRange('\u0A0F','\u0A10');
1102            break;
1103        }
1104        case '\u0a13': case '\u0a14': case '\u0a15': case '\u0a16':
1105        case '\u0a17': case '\u0a18': case '\u0a19': case '\u0a1a':
1106        case '\u0a1b': case '\u0a1c': case '\u0a1d': case '\u0a1e':
1107        case '\u0a1f': case '\u0a20': case '\u0a21': case '\u0a22':
1108        case '\u0a23': case '\u0a24': case '\u0a25': case '\u0a26':
1109        case '\u0a27': case '\u0a28':
1110        {
1111            matchRange('\u0A13','\u0A28');
1112            break;
1113        }
1114        case '\u0a2a': case '\u0a2b': case '\u0a2c': case '\u0a2d':
1115        case '\u0a2e': case '\u0a2f': case '\u0a30':
1116        {
1117            matchRange('\u0A2A','\u0A30');
1118            break;
1119        }
1120        case '\u0a32': case '\u0a33':
1121        {
1122            matchRange('\u0A32','\u0A33');
1123            break;
1124        }
1125        case '\u0a35': case '\u0a36':
1126        {
1127            matchRange('\u0A35','\u0A36');
1128            break;
1129        }
1130        case '\u0a38': case '\u0a39':
1131        {
1132            matchRange('\u0A38','\u0A39');
1133            break;
1134        }
1135        case '\u0a59': case '\u0a5a': case '\u0a5b': case '\u0a5c':
1136        {
1137            matchRange('\u0A59','\u0A5C');
1138            break;
1139        }
1140        case '\u0a5e':
1141        {
1142            match('\u0A5E');
1143            break;
1144        }
1145        case '\u0a72': case '\u0a73': case '\u0a74':
1146        {
1147            matchRange('\u0A72','\u0A74');
1148            break;
1149        }
1150        case '\u0a85': case '\u0a86': case '\u0a87': case '\u0a88':
1151        case '\u0a89': case '\u0a8a': case '\u0a8b':
1152        {
1153            matchRange('\u0A85','\u0A8B');
1154            break;
1155        }
1156        case '\u0a8d':
1157        {
1158            match('\u0A8D');
1159            break;
1160        }
1161        case '\u0a8f': case '\u0a90': case '\u0a91':
1162        {
1163            matchRange('\u0A8F','\u0A91');
1164            break;
1165        }
1166        case '\u0a93': case '\u0a94': case '\u0a95': case '\u0a96':
1167        case '\u0a97': case '\u0a98': case '\u0a99': case '\u0a9a':
1168        case '\u0a9b': case '\u0a9c': case '\u0a9d': case '\u0a9e':
1169        case '\u0a9f': case '\u0aa0': case '\u0aa1': case '\u0aa2':
1170        case '\u0aa3': case '\u0aa4': case '\u0aa5': case '\u0aa6':
1171        case '\u0aa7': case '\u0aa8':
1172        {
1173            matchRange('\u0A93','\u0AA8');
1174            break;
1175        }
1176        case '\u0aaa': case '\u0aab': case '\u0aac': case '\u0aad':
1177        case '\u0aae': case '\u0aaf': case '\u0ab0':
1178        {
1179            matchRange('\u0AAA','\u0AB0');
1180            break;
1181        }
1182        case '\u0ab2': case '\u0ab3':
1183        {
1184            matchRange('\u0AB2','\u0AB3');
1185            break;
1186        }
1187        case '\u0ab5': case '\u0ab6': case '\u0ab7': case '\u0ab8':
1188        case '\u0ab9':
1189        {
1190            matchRange('\u0AB5','\u0AB9');
1191            break;
1192        }
1193        case '\u0abd':
1194        {
1195            match('\u0ABD');
1196            break;
1197        }
1198        case '\u0ae0':
1199        {
1200            match('\u0AE0');
1201            break;
1202        }
1203        case '\u0b05': case '\u0b06': case '\u0b07': case '\u0b08':
1204        case '\u0b09': case '\u0b0a': case '\u0b0b': case '\u0b0c':
1205        {
1206            matchRange('\u0B05','\u0B0C');
1207            break;
1208        }
1209        case '\u0b0f': case '\u0b10':
1210        {
1211            matchRange('\u0B0F','\u0B10');
1212            break;
1213        }
1214        case '\u0b13': case '\u0b14': case '\u0b15': case '\u0b16':
1215        case '\u0b17': case '\u0b18': case '\u0b19': case '\u0b1a':
1216        case '\u0b1b': case '\u0b1c': case '\u0b1d': case '\u0b1e':
1217        case '\u0b1f': case '\u0b20': case '\u0b21': case '\u0b22':
1218        case '\u0b23': case '\u0b24': case '\u0b25': case '\u0b26':
1219        case '\u0b27': case '\u0b28':
1220        {
1221            matchRange('\u0B13','\u0B28');
1222            break;
1223        }
1224        case '\u0b2a': case '\u0b2b': case '\u0b2c': case '\u0b2d':
1225        case '\u0b2e': case '\u0b2f': case '\u0b30':
1226        {
1227            matchRange('\u0B2A','\u0B30');
1228            break;
1229        }
1230        case '\u0b32': case '\u0b33':
1231        {
1232            matchRange('\u0B32','\u0B33');
1233            break;
1234        }
1235        case '\u0b36': case '\u0b37': case '\u0b38': case '\u0b39':
1236        {
1237            matchRange('\u0B36','\u0B39');
1238            break;
1239        }
1240        case '\u0b3d':
1241        {
1242            match('\u0B3D');
1243            break;
1244        }
1245        case '\u0b5c': case '\u0b5d':
1246        {
1247            matchRange('\u0B5C','\u0B5D');
1248            break;
1249        }
1250        case '\u0b5f': case '\u0b60': case '\u0b61':
1251        {
1252            matchRange('\u0B5F','\u0B61');
1253            break;
1254        }
1255        case '\u0b85': case '\u0b86': case '\u0b87': case '\u0b88':
1256        case '\u0b89': case '\u0b8a':
1257        {
1258            matchRange('\u0B85','\u0B8A');
1259            break;
1260        }
1261        case '\u0b8e': case '\u0b8f': case '\u0b90':
1262        {
1263            matchRange('\u0B8E','\u0B90');
1264            break;
1265        }
1266        case '\u0b92': case '\u0b93': case '\u0b94': case '\u0b95':
1267        {
1268            matchRange('\u0B92','\u0B95');
1269            break;
1270        }
1271        case '\u0b99': case '\u0b9a':
1272        {
1273            matchRange('\u0B99','\u0B9A');
1274            break;
1275        }
1276        case '\u0b9c':
1277        {
1278            match('\u0B9C');
1279            break;
1280        }
1281        case '\u0b9e': case '\u0b9f':
1282        {
1283            matchRange('\u0B9E','\u0B9F');
1284            break;
1285        }
1286        case '\u0ba3': case '\u0ba4':
1287        {
1288            matchRange('\u0BA3','\u0BA4');
1289            break;
1290        }
1291        case '\u0ba8': case '\u0ba9': case '\u0baa':
1292        {
1293            matchRange('\u0BA8','\u0BAA');
1294            break;
1295        }
1296        case '\u0bae': case '\u0baf': case '\u0bb0': case '\u0bb1':
1297        case '\u0bb2': case '\u0bb3': case '\u0bb4': case '\u0bb5':
1298        {
1299            matchRange('\u0BAE','\u0BB5');
1300            break;
1301        }
1302        case '\u0bb7': case '\u0bb8': case '\u0bb9':
1303        {
1304            matchRange('\u0BB7','\u0BB9');
1305            break;
1306        }
1307        case '\u0c05': case '\u0c06': case '\u0c07': case '\u0c08':
1308        case '\u0c09': case '\u0c0a': case '\u0c0b': case '\u0c0c':
1309        {
1310            matchRange('\u0C05','\u0C0C');
1311            break;
1312        }
1313        case '\u0c0e': case '\u0c0f': case '\u0c10':
1314        {
1315            matchRange('\u0C0E','\u0C10');
1316            break;
1317        }
1318        case '\u0c12': case '\u0c13': case '\u0c14': case '\u0c15':
1319        case '\u0c16': case '\u0c17': case '\u0c18': case '\u0c19':
1320        case '\u0c1a': case '\u0c1b': case '\u0c1c': case '\u0c1d':
1321        case '\u0c1e': case '\u0c1f': case '\u0c20': case '\u0c21':
1322        case '\u0c22': case '\u0c23': case '\u0c24': case '\u0c25':
1323        case '\u0c26': case '\u0c27': case '\u0c28':
1324        {
1325            matchRange('\u0C12','\u0C28');
1326            break;
1327        }
1328        case '\u0c2a': case '\u0c2b': case '\u0c2c': case '\u0c2d':
1329        case '\u0c2e': case '\u0c2f': case '\u0c30': case '\u0c31':
1330        case '\u0c32': case '\u0c33':
1331        {
1332            matchRange('\u0C2A','\u0C33');
1333            break;
1334        }
1335        case '\u0c35': case '\u0c36': case '\u0c37': case '\u0c38':
1336        case '\u0c39':
1337        {
1338            matchRange('\u0C35','\u0C39');
1339            break;
1340        }
1341        case '\u0c60': case '\u0c61':
1342        {
1343            matchRange('\u0C60','\u0C61');
1344            break;
1345        }
1346        case '\u0c85': case '\u0c86': case '\u0c87': case '\u0c88':
1347        case '\u0c89': case '\u0c8a': case '\u0c8b': case '\u0c8c':
1348        {
1349            matchRange('\u0C85','\u0C8C');
1350            break;
1351        }
1352        case '\u0c8e': case '\u0c8f': case '\u0c90':
1353        {
1354            matchRange('\u0C8E','\u0C90');
1355            break;
1356        }
1357        case '\u0c92': case '\u0c93': case '\u0c94': case '\u0c95':
1358        case '\u0c96': case '\u0c97': case '\u0c98': case '\u0c99':
1359        case '\u0c9a': case '\u0c9b': case '\u0c9c': case '\u0c9d':
1360        case '\u0c9e': case '\u0c9f': case '\u0ca0': case '\u0ca1':
1361        case '\u0ca2': case '\u0ca3': case '\u0ca4': case '\u0ca5':
1362        case '\u0ca6': case '\u0ca7': case '\u0ca8':
1363        {
1364            matchRange('\u0C92','\u0CA8');
1365            break;
1366        }
1367        case '\u0caa': case '\u0cab': case '\u0cac': case '\u0cad':
1368        case '\u0cae': case '\u0caf': case '\u0cb0': case '\u0cb1':
1369        case '\u0cb2': case '\u0cb3':
1370        {
1371            matchRange('\u0CAA','\u0CB3');
1372            break;
1373        }
1374        case '\u0cb5': case '\u0cb6': case '\u0cb7': case '\u0cb8':
1375        case '\u0cb9':
1376        {
1377            matchRange('\u0CB5','\u0CB9');
1378            break;
1379        }
1380        case '\u0cde':
1381        {
1382            match('\u0CDE');
1383            break;
1384        }
1385        case '\u0ce0': case '\u0ce1':
1386        {
1387            matchRange('\u0CE0','\u0CE1');
1388            break;
1389        }
1390        case '\u0d05': case '\u0d06': case '\u0d07': case '\u0d08':
1391        case '\u0d09': case '\u0d0a': case '\u0d0b': case '\u0d0c':
1392        {
1393            matchRange('\u0D05','\u0D0C');
1394            break;
1395        }
1396        case '\u0d0e': case '\u0d0f': case '\u0d10':
1397        {
1398            matchRange('\u0D0E','\u0D10');
1399            break;
1400        }
1401        case '\u0d12': case '\u0d13': case '\u0d14': case '\u0d15':
1402        case '\u0d16': case '\u0d17': case '\u0d18': case '\u0d19':
1403        case '\u0d1a': case '\u0d1b': case '\u0d1c': case '\u0d1d':
1404        case '\u0d1e': case '\u0d1f': case '\u0d20': case '\u0d21':
1405        case '\u0d22': case '\u0d23': case '\u0d24': case '\u0d25':
1406        case '\u0d26': case '\u0d27': case '\u0d28':
1407        {
1408            matchRange('\u0D12','\u0D28');
1409            break;
1410        }
1411        case '\u0d2a': case '\u0d2b': case '\u0d2c': case '\u0d2d':
1412        case '\u0d2e': case '\u0d2f': case '\u0d30': case '\u0d31':
1413        case '\u0d32': case '\u0d33': case '\u0d34': case '\u0d35':
1414        case '\u0d36': case '\u0d37': case '\u0d38': case '\u0d39':
1415        {
1416            matchRange('\u0D2A','\u0D39');
1417            break;
1418        }
1419        case '\u0d60': case '\u0d61':
1420        {
1421            matchRange('\u0D60','\u0D61');
1422            break;
1423        }
1424        case '\u0e01': case '\u0e02': case '\u0e03': case '\u0e04':
1425        case '\u0e05': case '\u0e06': case '\u0e07': case '\u0e08':
1426        case '\u0e09': case '\u0e0a': case '\u0e0b': case '\u0e0c':
1427        case '\u0e0d': case '\u0e0e': case '\u0e0f': case '\u0e10':
1428        case '\u0e11': case '\u0e12': case '\u0e13': case '\u0e14':
1429        case '\u0e15': case '\u0e16': case '\u0e17': case '\u0e18':
1430        case '\u0e19': case '\u0e1a': case '\u0e1b': case '\u0e1c':
1431        case '\u0e1d': case '\u0e1e': case '\u0e1f': case '\u0e20':
1432        case '\u0e21': case '\u0e22': case '\u0e23': case '\u0e24':
1433        case '\u0e25': case '\u0e26': case '\u0e27': case '\u0e28':
1434        case '\u0e29': case '\u0e2a': case '\u0e2b': case '\u0e2c':
1435        case '\u0e2d': case '\u0e2e':
1436        {
1437            matchRange('\u0E01','\u0E2E');
1438            break;
1439        }
1440        case '\u0e30':
1441        {
1442            match('\u0E30');
1443            break;
1444        }
1445        case '\u0e32': case '\u0e33':
1446        {
1447            matchRange('\u0E32','\u0E33');
1448            break;
1449        }
1450        case '\u0e3f': case '\u0e40': case '\u0e41': case '\u0e42':
1451        case '\u0e43': case '\u0e44': case '\u0e45': case '\u0e46':
1452        {
1453            matchRange('\u0E3F','\u0E46');
1454            break;
1455        }
1456        case '\u0e81': case '\u0e82':
1457        {
1458            matchRange('\u0E81','\u0E82');
1459            break;
1460        }
1461        case '\u0e84':
1462        {
1463            match('\u0E84');
1464            break;
1465        }
1466        case '\u0e87': case '\u0e88':
1467        {
1468            matchRange('\u0E87','\u0E88');
1469            break;
1470        }
1471        case '\u0e8a':
1472        {
1473            match('\u0E8A');
1474            break;
1475        }
1476        case '\u0e8d':
1477        {
1478            match('\u0E8D');
1479            break;
1480        }
1481        case '\u0e94': case '\u0e95': case '\u0e96': case '\u0e97':
1482        {
1483            matchRange('\u0E94','\u0E97');
1484            break;
1485        }
1486        case '\u0e99': case '\u0e9a': case '\u0e9b': case '\u0e9c':
1487        case '\u0e9d': case '\u0e9e': case '\u0e9f':
1488        {
1489            matchRange('\u0E99','\u0E9F');
1490            break;
1491        }
1492        case '\u0ea1': case '\u0ea2': case '\u0ea3':
1493        {
1494            matchRange('\u0EA1','\u0EA3');
1495            break;
1496        }
1497        case '\u0ea5':
1498        {
1499            match('\u0EA5');
1500            break;
1501        }
1502        case '\u0ea7':
1503        {
1504            match('\u0EA7');
1505            break;
1506        }
1507        case '\u0eaa': case '\u0eab':
1508        {
1509            matchRange('\u0EAA','\u0EAB');
1510            break;
1511        }
1512        case '\u0ead': case '\u0eae':
1513        {
1514            matchRange('\u0EAD','\u0EAE');
1515            break;
1516        }
1517        case '\u0eb0':
1518        {
1519            match('\u0EB0');
1520            break;
1521        }
1522        case '\u0eb2': case '\u0eb3':
1523        {
1524            matchRange('\u0EB2','\u0EB3');
1525            break;
1526        }
1527        case '\u0ebd':
1528        {
1529            match('\u0EBD');
1530            break;
1531        }
1532        case '\u0ec0': case '\u0ec1': case '\u0ec2': case '\u0ec3':
1533        case '\u0ec4':
1534        {
1535            matchRange('\u0EC0','\u0EC4');
1536            break;
1537        }
1538        case '\u0ec6':
1539        {
1540            match('\u0EC6');
1541            break;
1542        }
1543        case '\u0edc': case '\u0edd':
1544        {
1545            matchRange('\u0EDC','\u0EDD');
1546            break;
1547        }
1548        case '\u0f40': case '\u0f41': case '\u0f42': case '\u0f43':
1549        case '\u0f44': case '\u0f45': case '\u0f46': case '\u0f47':
1550        {
1551            matchRange('\u0F40','\u0F47');
1552            break;
1553        }
1554        case '\u0f49': case '\u0f4a': case '\u0f4b': case '\u0f4c':
1555        case '\u0f4d': case '\u0f4e': case '\u0f4f': case '\u0f50':
1556        case '\u0f51': case '\u0f52': case '\u0f53': case '\u0f54':
1557        case '\u0f55': case '\u0f56': case '\u0f57': case '\u0f58':
1558        case '\u0f59': case '\u0f5a': case '\u0f5b': case '\u0f5c':
1559        case '\u0f5d': case '\u0f5e': case '\u0f5f': case '\u0f60':
1560        case '\u0f61': case '\u0f62': case '\u0f63': case '\u0f64':
1561        case '\u0f65': case '\u0f66': case '\u0f67': case '\u0f68':
1562        case '\u0f69':
1563        {
1564            matchRange('\u0F49','\u0F69');
1565            break;
1566        }
1567        case '\u10a0': case '\u10a1': case '\u10a2': case '\u10a3':
1568        case '\u10a4': case '\u10a5': case '\u10a6': case '\u10a7':
1569        case '\u10a8': case '\u10a9': case '\u10aa': case '\u10ab':
1570        case '\u10ac': case '\u10ad': case '\u10ae': case '\u10af':
1571        case '\u10b0': case '\u10b1': case '\u10b2': case '\u10b3':
1572        case '\u10b4': case '\u10b5': case '\u10b6': case '\u10b7':
1573        case '\u10b8': case '\u10b9': case '\u10ba': case '\u10bb':
1574        case '\u10bc': case '\u10bd': case '\u10be': case '\u10bf':
1575        case '\u10c0': case '\u10c1': case '\u10c2': case '\u10c3':
1576        case '\u10c4': case '\u10c5':
1577        {
1578            matchRange('\u10A0','\u10C5');
1579            break;
1580        }
1581        case '\u10d0': case '\u10d1': case '\u10d2': case '\u10d3':
1582        case '\u10d4': case '\u10d5': case '\u10d6': case '\u10d7':
1583        case '\u10d8': case '\u10d9': case '\u10da': case '\u10db':
1584        case '\u10dc': case '\u10dd': case '\u10de': case '\u10df':
1585        case '\u10e0': case '\u10e1': case '\u10e2': case '\u10e3':
1586        case '\u10e4': case '\u10e5': case '\u10e6': case '\u10e7':
1587        case '\u10e8': case '\u10e9': case '\u10ea': case '\u10eb':
1588        case '\u10ec': case '\u10ed': case '\u10ee': case '\u10ef':
1589        case '\u10f0': case '\u10f1': case '\u10f2': case '\u10f3':
1590        case '\u10f4': case '\u10f5': case '\u10f6':
1591        {
1592            matchRange('\u10D0','\u10F6');
1593            break;
1594        }
1595        case '\u1100': case '\u1101': case '\u1102': case '\u1103':
1596        case '\u1104': case '\u1105': case '\u1106': case '\u1107':
1597        case '\u1108': case '\u1109': case '\u110a': case '\u110b':
1598        case '\u110c': case '\u110d': case '\u110e': case '\u110f':
1599        case '\u1110': case '\u1111': case '\u1112': case '\u1113':
1600        case '\u1114': case '\u1115': case '\u1116': case '\u1117':
1601        case '\u1118': case '\u1119': case '\u111a': case '\u111b':
1602        case '\u111c': case '\u111d': case '\u111e': case '\u111f':
1603        case '\u1120': case '\u1121': case '\u1122': case '\u1123':
1604        case '\u1124': case '\u1125': case '\u1126': case '\u1127':
1605        case '\u1128': case '\u1129': case '\u112a': case '\u112b':
1606        case '\u112c': case '\u112d': case '\u112e': case '\u112f':
1607        case '\u1130': case '\u1131': case '\u1132': case '\u1133':
1608        case '\u1134': case '\u1135': case '\u1136': case '\u1137':
1609        case '\u1138': case '\u1139': case '\u113a': case '\u113b':
1610        case '\u113c': case '\u113d': case '\u113e': case '\u113f':
1611        case '\u1140': case '\u1141': case '\u1142': case '\u1143':
1612        case '\u1144': case '\u1145': case '\u1146': case '\u1147':
1613        case '\u1148': case '\u1149': case '\u114a': case '\u114b':
1614        case '\u114c': case '\u114d': case '\u114e': case '\u114f':
1615        case '\u1150': case '\u1151': case '\u1152': case '\u1153':
1616        case '\u1154': case '\u1155': case '\u1156': case '\u1157':
1617        case '\u1158': case '\u1159':
1618        {
1619            matchRange('\u1100','\u1159');
1620            break;
1621        }
1622        case '\u115f': case '\u1160': case '\u1161': case '\u1162':
1623        case '\u1163': case '\u1164': case '\u1165': case '\u1166':
1624        case '\u1167': case '\u1168': case '\u1169': case '\u116a':
1625        case '\u116b': case '\u116c': case '\u116d': case '\u116e':
1626        case '\u116f': case '\u1170': case '\u1171': case '\u1172':
1627        case '\u1173': case '\u1174': case '\u1175': case '\u1176':
1628        case '\u1177': case '\u1178': case '\u1179': case '\u117a':
1629        case '\u117b': case '\u117c': case '\u117d': case '\u117e':
1630        case '\u117f': case '\u1180': case '\u1181': case '\u1182':
1631        case '\u1183': case '\u1184': case '\u1185': case '\u1186':
1632        case '\u1187': case '\u1188': case '\u1189': case '\u118a':
1633        case '\u118b': case '\u118c': case '\u118d': case '\u118e':
1634        case '\u118f': case '\u1190': case '\u1191': case '\u1192':
1635        case '\u1193': case '\u1194': case '\u1195': case '\u1196':
1636        case '\u1197': case '\u1198': case '\u1199': case '\u119a':
1637        case '\u119b': case '\u119c': case '\u119d': case '\u119e':
1638        case '\u119f': case '\u11a0': case '\u11a1': case '\u11a2':
1639        {
1640            matchRange('\u115F','\u11A2');
1641            break;
1642        }
1643        case '\u11a8': case '\u11a9': case '\u11aa': case '\u11ab':
1644        case '\u11ac': case '\u11ad': case '\u11ae': case '\u11af':
1645        case '\u11b0': case '\u11b1': case '\u11b2': case '\u11b3':
1646        case '\u11b4': case '\u11b5': case '\u11b6': case '\u11b7':
1647        case '\u11b8': case '\u11b9': case '\u11ba': case '\u11bb':
1648        case '\u11bc': case '\u11bd': case '\u11be': case '\u11bf':
1649        case '\u11c0': case '\u11c1': case '\u11c2': case '\u11c3':
1650        case '\u11c4': case '\u11c5': case '\u11c6': case '\u11c7':
1651        case '\u11c8': case '\u11c9': case '\u11ca': case '\u11cb':
1652        case '\u11cc': case '\u11cd': case '\u11ce': case '\u11cf':
1653        case '\u11d0': case '\u11d1': case '\u11d2': case '\u11d3':
1654        case '\u11d4': case '\u11d5': case '\u11d6': case '\u11d7':
1655        case '\u11d8': case '\u11d9': case '\u11da': case '\u11db':
1656        case '\u11dc': case '\u11dd': case '\u11de': case '\u11df':
1657        case '\u11e0': case '\u11e1': case '\u11e2': case '\u11e3':
1658        case '\u11e4': case '\u11e5': case '\u11e6': case '\u11e7':
1659        case '\u11e8': case '\u11e9': case '\u11ea': case '\u11eb':
1660        case '\u11ec': case '\u11ed': case '\u11ee': case '\u11ef':
1661        case '\u11f0': case '\u11f1': case '\u11f2': case '\u11f3':
1662        case '\u11f4': case '\u11f5': case '\u11f6': case '\u11f7':
1663        case '\u11f8': case '\u11f9':
1664        {
1665            matchRange('\u11A8','\u11F9');
1666            break;
1667        }
1668        case '\u1ea0': case '\u1ea1': case '\u1ea2': case '\u1ea3':
1669        case '\u1ea4': case '\u1ea5': case '\u1ea6': case '\u1ea7':
1670        case '\u1ea8': case '\u1ea9': case '\u1eaa': case '\u1eab':
1671        case '\u1eac': case '\u1ead': case '\u1eae': case '\u1eaf':
1672        case '\u1eb0': case '\u1eb1': case '\u1eb2': case '\u1eb3':
1673        case '\u1eb4': case '\u1eb5': case '\u1eb6': case '\u1eb7':
1674        case '\u1eb8': case '\u1eb9': case '\u1eba': case '\u1ebb':
1675        case '\u1ebc': case '\u1ebd': case '\u1ebe': case '\u1ebf':
1676        case '\u1ec0': case '\u1ec1': case '\u1ec2': case '\u1ec3':
1677        case '\u1ec4': case '\u1ec5': case '\u1ec6': case '\u1ec7':
1678        case '\u1ec8': case '\u1ec9': case '\u1eca': case '\u1ecb':
1679        case '\u1ecc': case '\u1ecd': case '\u1ece': case '\u1ecf':
1680        case '\u1ed0': case '\u1ed1': case '\u1ed2': case '\u1ed3':
1681        case '\u1ed4': case '\u1ed5': case '\u1ed6': case '\u1ed7':
1682        case '\u1ed8': case '\u1ed9': case '\u1eda': case '\u1edb':
1683        case '\u1edc': case '\u1edd': case '\u1ede': case '\u1edf':
1684        case '\u1ee0': case '\u1ee1': case '\u1ee2': case '\u1ee3':
1685        case '\u1ee4': case '\u1ee5': case '\u1ee6': case '\u1ee7':
1686        case '\u1ee8': case '\u1ee9': case '\u1eea': case '\u1eeb':
1687        case '\u1eec': case '\u1eed': case '\u1eee': case '\u1eef':
1688        case '\u1ef0': case '\u1ef1': case '\u1ef2': case '\u1ef3':
1689        case '\u1ef4': case '\u1ef5': case '\u1ef6': case '\u1ef7':
1690        case '\u1ef8': case '\u1ef9':
1691        {
1692            matchRange('\u1EA0','\u1EF9');
1693            break;
1694        }
1695        case '\u1f00': case '\u1f01': case '\u1f02': case '\u1f03':
1696        case '\u1f04': case '\u1f05': case '\u1f06': case '\u1f07':
1697        case '\u1f08': case '\u1f09': case '\u1f0a': case '\u1f0b':
1698        case '\u1f0c': case '\u1f0d': case '\u1f0e': case '\u1f0f':
1699        case '\u1f10': case '\u1f11': case '\u1f12': case '\u1f13':
1700        case '\u1f14': case '\u1f15':
1701        {
1702            matchRange('\u1F00','\u1F15');
1703            break;
1704        }
1705        case '\u1f18': case '\u1f19': case '\u1f1a': case '\u1f1b':
1706        case '\u1f1c': case '\u1f1d':
1707        {
1708            matchRange('\u1F18','\u1F1D');
1709            break;
1710        }
1711        case '\u1f20': case '\u1f21': case '\u1f22': case '\u1f23':
1712        case '\u1f24': case '\u1f25': case '\u1f26': case '\u1f27':
1713        case '\u1f28': case '\u1f29': case '\u1f2a': case '\u1f2b':
1714        case '\u1f2c': case '\u1f2d': case '\u1f2e': case '\u1f2f':
1715        case '\u1f30': case '\u1f31': case '\u1f32': case '\u1f33':
1716        case '\u1f34': case '\u1f35': case '\u1f36': case '\u1f37':
1717        case '\u1f38': case '\u1f39': case '\u1f3a': case '\u1f3b':
1718        case '\u1f3c': case '\u1f3d': case '\u1f3e': case '\u1f3f':
1719        case '\u1f40': case '\u1f41': case '\u1f42': case '\u1f43':
1720        case '\u1f44': case '\u1f45':
1721        {
1722            matchRange('\u1F20','\u1F45');
1723            break;
1724        }
1725        case '\u1f48': case '\u1f49': case '\u1f4a': case '\u1f4b':
1726        case '\u1f4c': case '\u1f4d':
1727        {
1728            matchRange('\u1F48','\u1F4D');
1729            break;
1730        }
1731        case '\u1f50': case '\u1f51': case '\u1f52': case '\u1f53':
1732        case '\u1f54': case '\u1f55': case '\u1f56': case '\u1f57':
1733        {
1734            matchRange('\u1F50','\u1F57');
1735            break;
1736        }
1737        case '\u1f59':
1738        {
1739            match('\u1F59');
1740            break;
1741        }
1742        case '\u1f5b':
1743        {
1744            match('\u1F5B');
1745            break;
1746        }
1747        case '\u1f5d':
1748        {
1749            match('\u1F5D');
1750            break;
1751        }
1752        case '\u1f5f': case '\u1f60': case '\u1f61': case '\u1f62':
1753        case '\u1f63': case '\u1f64': case '\u1f65': case '\u1f66':
1754        case '\u1f67': case '\u1f68': case '\u1f69': case '\u1f6a':
1755        case '\u1f6b': case '\u1f6c': case '\u1f6d': case '\u1f6e':
1756        case '\u1f6f': case '\u1f70': case '\u1f71': case '\u1f72':
1757        case '\u1f73': case '\u1f74': case '\u1f75': case '\u1f76':
1758        case '\u1f77': case '\u1f78': case '\u1f79': case '\u1f7a':
1759        case '\u1f7b': case '\u1f7c': case '\u1f7d':
1760        {
1761            matchRange('\u1F5F','\u1F7D');
1762            break;
1763        }
1764        case '\u1f80': case '\u1f81': case '\u1f82': case '\u1f83':
1765        case '\u1f84': case '\u1f85': case '\u1f86': case '\u1f87':
1766        case '\u1f88': case '\u1f89': case '\u1f8a': case '\u1f8b':
1767        case '\u1f8c': case '\u1f8d': case '\u1f8e': case '\u1f8f':
1768        case '\u1f90': case '\u1f91': case '\u1f92': case '\u1f93':
1769        case '\u1f94': case '\u1f95': case '\u1f96': case '\u1f97':
1770        case '\u1f98': case '\u1f99': case '\u1f9a': case '\u1f9b':
1771        case '\u1f9c': case '\u1f9d': case '\u1f9e': case '\u1f9f':
1772        case '\u1fa0': case '\u1fa1': case '\u1fa2': case '\u1fa3':
1773        case '\u1fa4': case '\u1fa5': case '\u1fa6': case '\u1fa7':
1774        case '\u1fa8': case '\u1fa9': case '\u1faa': case '\u1fab':
1775        case '\u1fac': case '\u1fad': case '\u1fae': case '\u1faf':
1776        case '\u1fb0': case '\u1fb1': case '\u1fb2': case '\u1fb3':
1777        case '\u1fb4':
1778        {
1779            matchRange('\u1F80','\u1FB4');
1780            break;
1781        }
1782        case '\u1fb6': case '\u1fb7': case '\u1fb8': case '\u1fb9':
1783        case '\u1fba': case '\u1fbb': case '\u1fbc':
1784        {
1785            matchRange('\u1FB6','\u1FBC');
1786            break;
1787        }
1788        case '\u1fbe':
1789        {
1790            match('\u1FBE');
1791            break;
1792        }
1793        case '\u1fc2': case '\u1fc3': case '\u1fc4':
1794        {
1795            matchRange('\u1FC2','\u1FC4');
1796            break;
1797        }
1798        case '\u1fc6': case '\u1fc7': case '\u1fc8': case '\u1fc9':
1799        case '\u1fca': case '\u1fcb': case '\u1fcc':
1800        {
1801            matchRange('\u1FC6','\u1FCC');
1802            break;
1803        }
1804        case '\u1fd0': case '\u1fd1': case '\u1fd2': case '\u1fd3':
1805        {
1806            matchRange('\u1FD0','\u1FD3');
1807            break;
1808        }
1809        case '\u1fd6': case '\u1fd7': case '\u1fd8': case '\u1fd9':
1810        case '\u1fda': case '\u1fdb':
1811        {
1812            matchRange('\u1FD6','\u1FDB');
1813            break;
1814        }
1815        case '\u1fe0': case '\u1fe1': case '\u1fe2': case '\u1fe3':
1816        case '\u1fe4': case '\u1fe5': case '\u1fe6': case '\u1fe7':
1817        case '\u1fe8': case '\u1fe9': case '\u1fea': case '\u1feb':
1818        case '\u1fec':
1819        {
1820            matchRange('\u1FE0','\u1FEC');
1821            break;
1822        }
1823        case '\u1ff2': case '\u1ff3': case '\u1ff4':
1824        {
1825            matchRange('\u1FF2','\u1FF4');
1826            break;
1827        }
1828        case '\u1ff6': case '\u1ff7': case '\u1ff8': case '\u1ff9':
1829        case '\u1ffa': case '\u1ffb': case '\u1ffc':
1830        {
1831            matchRange('\u1FF6','\u1FFC');
1832            break;
1833        }
1834        case '\u203f': case '\u2040':
1835        {
1836            matchRange('\u203F','\u2040');
1837            break;
1838        }
1839        case '\u207f':
1840        {
1841            match('\u207F');
1842            break;
1843        }
1844        case '\u20a0': case '\u20a1': case '\u20a2': case '\u20a3':
1845        case '\u20a4': case '\u20a5': case '\u20a6': case '\u20a7':
1846        case '\u20a8': case '\u20a9': case '\u20aa': case '\u20ab':
1847        case '\u20ac':
1848        {
1849            matchRange('\u20A0','\u20AC');
1850            break;
1851        }
1852        case '\u2102':
1853        {
1854            match('\u2102');
1855            break;
1856        }
1857        case '\u2107':
1858        {
1859            match('\u2107');
1860            break;
1861        }
1862        case '\u210a': case '\u210b': case '\u210c': case '\u210d':
1863        case '\u210e': case '\u210f': case '\u2110': case '\u2111':
1864        case '\u2112': case '\u2113':
1865        {
1866            matchRange('\u210A','\u2113');
1867            break;
1868        }
1869        case '\u2115':
1870        {
1871            match('\u2115');
1872            break;
1873        }
1874        case '\u2118': case '\u2119': case '\u211a': case '\u211b':
1875        case '\u211c': case '\u211d':
1876        {
1877            matchRange('\u2118','\u211D');
1878            break;
1879        }
1880        case '\u2124':
1881        {
1882            match('\u2124');
1883            break;
1884        }
1885        case '\u2126':
1886        {
1887            match('\u2126');
1888            break;
1889        }
1890        case '\u2128':
1891        {
1892            match('\u2128');
1893            break;
1894        }
1895        case '\u212a': case '\u212b': case '\u212c': case '\u212d':
1896        case '\u212e': case '\u212f': case '\u2130': case '\u2131':
1897        {
1898            matchRange('\u212A','\u2131');
1899            break;
1900        }
1901        case '\u2133': case '\u2134': case '\u2135': case '\u2136':
1902        case '\u2137': case '\u2138':
1903        {
1904            matchRange('\u2133','\u2138');
1905            break;
1906        }
1907        case '\u2160': case '\u2161': case '\u2162': case '\u2163':
1908        case '\u2164': case '\u2165': case '\u2166': case '\u2167':
1909        case '\u2168': case '\u2169': case '\u216a': case '\u216b':
1910        case '\u216c': case '\u216d': case '\u216e': case '\u216f':
1911        case '\u2170': case '\u2171': case '\u2172': case '\u2173':
1912        case '\u2174': case '\u2175': case '\u2176': case '\u2177':
1913        case '\u2178': case '\u2179': case '\u217a': case '\u217b':
1914        case '\u217c': case '\u217d': case '\u217e': case '\u217f':
1915        case '\u2180': case '\u2181': case '\u2182':
1916        {
1917            matchRange('\u2160','\u2182');
1918            break;
1919        }
1920        case '\u3005':
1921        {
1922            match('\u3005');
1923            break;
1924        }
1925        case '\u3007':
1926        {
1927            match('\u3007');
1928            break;
1929        }
1930        case '\u3021': case '\u3022': case '\u3023': case '\u3024':
1931        case '\u3025': case '\u3026': case '\u3027': case '\u3028':
1932        case '\u3029':
1933        {
1934            matchRange('\u3021','\u3029');
1935            break;
1936        }
1937        case '\u3031': case '\u3032': case '\u3033': case '\u3034':
1938        case '\u3035':
1939        {
1940            matchRange('\u3031','\u3035');
1941            break;
1942        }
1943        case '\u3041': case '\u3042': case '\u3043': case '\u3044':
1944        case '\u3045': case '\u3046': case '\u3047': case '\u3048':
1945        case '\u3049': case '\u304a': case '\u304b': case '\u304c':
1946        case '\u304d': case '\u304e': case '\u304f': case '\u3050':
1947        case '\u3051': case '\u3052': case '\u3053': case '\u3054':
1948        case '\u3055': case '\u3056': case '\u3057': case '\u3058':
1949        case '\u3059': case '\u305a': case '\u305b': case '\u305c':
1950        case '\u305d': case '\u305e': case '\u305f': case '\u3060':
1951        case '\u3061': case '\u3062': case '\u3063': case '\u3064':
1952        case '\u3065': case '\u3066': case '\u3067': case '\u3068':
1953        case '\u3069': case '\u306a': case '\u306b': case '\u306c':
1954        case '\u306d': case '\u306e': case '\u306f': case '\u3070':
1955        case '\u3071': case '\u3072': case '\u3073': case '\u3074':
1956        case '\u3075': case '\u3076': case '\u3077': case '\u3078':
1957        case '\u3079': case '\u307a': case '\u307b': case '\u307c':
1958        case '\u307d': case '\u307e': case '\u307f': case '\u3080':
1959        case '\u3081': case '\u3082': case '\u3083': case '\u3084':
1960        case '\u3085': case '\u3086': case '\u3087': case '\u3088':
1961        case '\u3089': case '\u308a': case '\u308b': case '\u308c':
1962        case '\u308d': case '\u308e': case '\u308f': case '\u3090':
1963        case '\u3091': case '\u3092': case '\u3093': case '\u3094':
1964        {
1965            matchRange('\u3041','\u3094');
1966            break;
1967        }
1968        case '\u309b': case '\u309c': case '\u309d': case '\u309e':
1969        {
1970            matchRange('\u309B','\u309E');
1971            break;
1972        }
1973        case '\u30a1': case '\u30a2': case '\u30a3': case '\u30a4':
1974        case '\u30a5': case '\u30a6': case '\u30a7': case '\u30a8':
1975        case '\u30a9': case '\u30aa': case '\u30ab': case '\u30ac':
1976        case '\u30ad': case '\u30ae': case '\u30af': case '\u30b0':
1977        case '\u30b1': case '\u30b2': case '\u30b3': case '\u30b4':
1978        case '\u30b5': case '\u30b6': case '\u30b7': case '\u30b8':
1979        case '\u30b9': case '\u30ba': case '\u30bb': case '\u30bc':
1980        case '\u30bd': case '\u30be': case '\u30bf': case '\u30c0':
1981        case '\u30c1': case '\u30c2': case '\u30c3': case '\u30c4':
1982        case '\u30c5': case '\u30c6': case '\u30c7': case '\u30c8':
1983        case '\u30c9': case '\u30ca': case '\u30cb': case '\u30cc':
1984        case '\u30cd': case '\u30ce': case '\u30cf': case '\u30d0':
1985        case '\u30d1': case '\u30d2': case '\u30d3': case '\u30d4':
1986        case '\u30d5': case '\u30d6': case '\u30d7': case '\u30d8':
1987        case '\u30d9': case '\u30da': case '\u30db': case '\u30dc':
1988        case '\u30dd': case '\u30de': case '\u30df': case '\u30e0':
1989        case '\u30e1': case '\u30e2': case '\u30e3': case '\u30e4':
1990        case '\u30e5': case '\u30e6': case '\u30e7': case '\u30e8':
1991        case '\u30e9': case '\u30ea': case '\u30eb': case '\u30ec':
1992        case '\u30ed': case '\u30ee': case '\u30ef': case '\u30f0':
1993        case '\u30f1': case '\u30f2': case '\u30f3': case '\u30f4':
1994        case '\u30f5': case '\u30f6': case '\u30f7': case '\u30f8':
1995        case '\u30f9': case '\u30fa':
1996        {
1997            matchRange('\u30A1','\u30FA');
1998            break;
1999        }
2000        case '\u30fc': case '\u30fd': case '\u30fe':
2001        {
2002            matchRange('\u30FC','\u30FE');
2003            break;
2004        }
2005        case '\u3105': case '\u3106': case '\u3107': case '\u3108':
2006        case '\u3109': case '\u310a': case '\u310b': case '\u310c':
2007        case '\u310d': case '\u310e': case '\u310f': case '\u3110':
2008        case '\u3111': case '\u3112': case '\u3113': case '\u3114':
2009        case '\u3115': case '\u3116': case '\u3117': case '\u3118':
2010        case '\u3119': case '\u311a': case '\u311b': case '\u311c':
2011        case '\u311d': case '\u311e': case '\u311f': case '\u3120':
2012        case '\u3121': case '\u3122': case '\u3123': case '\u3124':
2013        case '\u3125': case '\u3126': case '\u3127': case '\u3128':
2014        case '\u3129': case '\u312a': case '\u312b': case '\u312c':
2015        {
2016            matchRange('\u3105','\u312C');
2017            break;
2018        }
2019        case '\u3131': case '\u3132': case '\u3133': case '\u3134':
2020        case '\u3135': case '\u3136': case '\u3137': case '\u3138':
2021        case '\u3139': case '\u313a': case '\u313b': case '\u313c':
2022        case '\u313d': case '\u313e': case '\u313f': case '\u3140':
2023        case '\u3141': case '\u3142': case '\u3143': case '\u3144':
2024        case '\u3145': case '\u3146': case '\u3147': case '\u3148':
2025        case '\u3149': case '\u314a': case '\u314b': case '\u314c':
2026        case '\u314d': case '\u314e': case '\u314f': case '\u3150':
2027        case '\u3151': case '\u3152': case '\u3153': case '\u3154':
2028        case '\u3155': case '\u3156': case '\u3157': case '\u3158':
2029        case '\u3159': case '\u315a': case '\u315b': case '\u315c':
2030        case '\u315d': case '\u315e': case '\u315f': case '\u3160':
2031        case '\u3161': case '\u3162': case '\u3163': case '\u3164':
2032        case '\u3165': case '\u3166': case '\u3167': case '\u3168':
2033        case '\u3169': case '\u316a': case '\u316b': case '\u316c':
2034        case '\u316d': case '\u316e': case '\u316f': case '\u3170':
2035        case '\u3171': case '\u3172': case '\u3173': case '\u3174':
2036        case '\u3175': case '\u3176': case '\u3177': case '\u3178':
2037        case '\u3179': case '\u317a': case '\u317b': case '\u317c':
2038        case '\u317d': case '\u317e': case '\u317f': case '\u3180':
2039        case '\u3181': case '\u3182': case '\u3183': case '\u3184':
2040        case '\u3185': case '\u3186': case '\u3187': case '\u3188':
2041        case '\u3189': case '\u318a': case '\u318b': case '\u318c':
2042        case '\u318d': case '\u318e':
2043        {
2044            matchRange('\u3131','\u318E');
2045            break;
2046        }
2047        case '\ufb00': case '\ufb01': case '\ufb02': case '\ufb03':
2048        case '\ufb04': case '\ufb05': case '\ufb06':
2049        {
2050            matchRange('\uFB00','\uFB06');
2051            break;
2052        }
2053        case '\ufb13': case '\ufb14': case '\ufb15': case '\ufb16':
2054        case '\ufb17':
2055        {
2056            matchRange('\uFB13','\uFB17');
2057            break;
2058        }
2059        case '\ufb1f': case '\ufb20': case '\ufb21': case '\ufb22':
2060        case '\ufb23': case '\ufb24': case '\ufb25': case '\ufb26':
2061        case '\ufb27': case '\ufb28':
2062        {
2063            matchRange('\uFB1F','\uFB28');
2064            break;
2065        }
2066        case '\ufb2a': case '\ufb2b': case '\ufb2c': case '\ufb2d':
2067        case '\ufb2e': case '\ufb2f': case '\ufb30': case '\ufb31':
2068        case '\ufb32': case '\ufb33': case '\ufb34': case '\ufb35':
2069        case '\ufb36':
2070        {
2071            matchRange('\uFB2A','\uFB36');
2072            break;
2073        }
2074        case '\ufb38': case '\ufb39': case '\ufb3a': case '\ufb3b':
2075        case '\ufb3c':
2076        {
2077            matchRange('\uFB38','\uFB3C');
2078            break;
2079        }
2080        case '\ufb3e':
2081        {
2082            match('\uFB3E');
2083            break;
2084        }
2085        case '\ufb40': case '\ufb41':
2086        {
2087            matchRange('\uFB40','\uFB41');
2088            break;
2089        }
2090        case '\ufb43': case '\ufb44':
2091        {
2092            matchRange('\uFB43','\uFB44');
2093            break;
2094        }
2095        case '\ufb46': case '\ufb47': case '\ufb48': case '\ufb49':
2096        case '\ufb4a': case '\ufb4b': case '\ufb4c': case '\ufb4d':
2097        case '\ufb4e': case '\ufb4f': case '\ufb50': case '\ufb51':
2098        case '\ufb52': case '\ufb53': case '\ufb54': case '\ufb55':
2099        case '\ufb56': case '\ufb57': case '\ufb58': case '\ufb59':
2100        case '\ufb5a': case '\ufb5b': case '\ufb5c': case '\ufb5d':
2101        case '\ufb5e': case '\ufb5f': case '\ufb60': case '\ufb61':
2102        case '\ufb62': case '\ufb63': case '\ufb64': case '\ufb65':
2103        case '\ufb66': case '\ufb67': case '\ufb68': case '\ufb69':
2104        case '\ufb6a': case '\ufb6b': case '\ufb6c': case '\ufb6d':
2105        case '\ufb6e': case '\ufb6f': case '\ufb70': case '\ufb71':
2106        case '\ufb72': case '\ufb73': case '\ufb74': case '\ufb75':
2107        case '\ufb76': case '\ufb77': case '\ufb78': case '\ufb79':
2108        case '\ufb7a': case '\ufb7b': case '\ufb7c': case '\ufb7d':
2109        case '\ufb7e': case '\ufb7f': case '\ufb80': case '\ufb81':
2110        case '\ufb82': case '\ufb83': case '\ufb84': case '\ufb85':
2111        case '\ufb86': case '\ufb87': case '\ufb88': case '\ufb89':
2112        case '\ufb8a': case '\ufb8b': case '\ufb8c': case '\ufb8d':
2113        case '\ufb8e': case '\ufb8f': case '\ufb90': case '\ufb91':
2114        case '\ufb92': case '\ufb93': case '\ufb94': case '\ufb95':
2115        case '\ufb96': case '\ufb97': case '\ufb98': case '\ufb99':
2116        case '\ufb9a': case '\ufb9b': case '\ufb9c': case '\ufb9d':
2117        case '\ufb9e': case '\ufb9f': case '\ufba0': case '\ufba1':
2118        case '\ufba2': case '\ufba3': case '\ufba4': case '\ufba5':
2119        case '\ufba6': case '\ufba7': case '\ufba8': case '\ufba9':
2120        case '\ufbaa': case '\ufbab': case '\ufbac': case '\ufbad':
2121        case '\ufbae': case '\ufbaf': case '\ufbb0': case '\ufbb1':
2122        {
2123            matchRange('\uFB46','\uFBB1');
2124            break;
2125        }
2126        case '\ufd50': case '\ufd51': case '\ufd52': case '\ufd53':
2127        case '\ufd54': case '\ufd55': case '\ufd56': case '\ufd57':
2128        case '\ufd58': case '\ufd59': case '\ufd5a': case '\ufd5b':
2129        case '\ufd5c': case '\ufd5d': case '\ufd5e': case '\ufd5f':
2130        case '\ufd60': case '\ufd61': case '\ufd62': case '\ufd63':
2131        case '\ufd64': case '\ufd65': case '\ufd66': case '\ufd67':
2132        case '\ufd68': case '\ufd69': case '\ufd6a': case '\ufd6b':
2133        case '\ufd6c': case '\ufd6d': case '\ufd6e': case '\ufd6f':
2134        case '\ufd70': case '\ufd71': case '\ufd72': case '\ufd73':
2135        case '\ufd74': case '\ufd75': case '\ufd76': case '\ufd77':
2136        case '\ufd78': case '\ufd79': case '\ufd7a': case '\ufd7b':
2137        case '\ufd7c': case '\ufd7d': case '\ufd7e': case '\ufd7f':
2138        case '\ufd80': case '\ufd81': case '\ufd82': case '\ufd83':
2139        case '\ufd84': case '\ufd85': case '\ufd86': case '\ufd87':
2140        case '\ufd88': case '\ufd89': case '\ufd8a': case '\ufd8b':
2141        case '\ufd8c': case '\ufd8d': case '\ufd8e': case '\ufd8f':
2142        {
2143            matchRange('\uFD50','\uFD8F');
2144            break;
2145        }
2146        case '\ufd92': case '\ufd93': case '\ufd94': case '\ufd95':
2147        case '\ufd96': case '\ufd97': case '\ufd98': case '\ufd99':
2148        case '\ufd9a': case '\ufd9b': case '\ufd9c': case '\ufd9d':
2149        case '\ufd9e': case '\ufd9f': case '\ufda0': case '\ufda1':
2150        case '\ufda2': case '\ufda3': case '\ufda4': case '\ufda5':
2151        case '\ufda6': case '\ufda7': case '\ufda8': case '\ufda9':
2152        case '\ufdaa': case '\ufdab': case '\ufdac': case '\ufdad':
2153        case '\ufdae': case '\ufdaf': case '\ufdb0': case '\ufdb1':
2154        case '\ufdb2': case '\ufdb3': case '\ufdb4': case '\ufdb5':
2155        case '\ufdb6': case '\ufdb7': case '\ufdb8': case '\ufdb9':
2156        case '\ufdba': case '\ufdbb': case '\ufdbc': case '\ufdbd':
2157        case '\ufdbe': case '\ufdbf': case '\ufdc0': case '\ufdc1':
2158        case '\ufdc2': case '\ufdc3': case '\ufdc4': case '\ufdc5':
2159        case '\ufdc6': case '\ufdc7':
2160        {
2161            matchRange('\uFD92','\uFDC7');
2162            break;
2163        }
2164        case '\ufdf0': case '\ufdf1': case '\ufdf2': case '\ufdf3':
2165        case '\ufdf4': case '\ufdf5': case '\ufdf6': case '\ufdf7':
2166        case '\ufdf8': case '\ufdf9': case '\ufdfa': case '\ufdfb':
2167        {
2168            matchRange('\uFDF0','\uFDFB');
2169            break;
2170        }
2171        case '\ufe33': case '\ufe34':
2172        {
2173            matchRange('\uFE33','\uFE34');
2174            break;
2175        }
2176        case '\ufe4d': case '\ufe4e': case '\ufe4f':
2177        {
2178            matchRange('\uFE4D','\uFE4F');
2179            break;
2180        }
2181        case '\ufe69':
2182        {
2183            match('\uFE69');
2184            break;
2185        }
2186        case '\ufe70': case '\ufe71': case '\ufe72':
2187        {
2188            matchRange('\uFE70','\uFE72');
2189            break;
2190        }
2191        case '\ufe74':
2192        {
2193            match('\uFE74');
2194            break;
2195        }
2196        case '\uff04':
2197        {
2198            match('\uFF04');
2199            break;
2200        }
2201        case '\uff21': case '\uff22': case '\uff23': case '\uff24':
2202        case '\uff25': case '\uff26': case '\uff27': case '\uff28':
2203        case '\uff29': case '\uff2a': case '\uff2b': case '\uff2c':
2204        case '\uff2d': case '\uff2e': case '\uff2f': case '\uff30':
2205        case '\uff31': case '\uff32': case '\uff33': case '\uff34':
2206        case '\uff35': case '\uff36': case '\uff37': case '\uff38':
2207        case '\uff39': case '\uff3a':
2208        {
2209            matchRange('\uFF21','\uFF3A');
2210            break;
2211        }
2212        case '\uff3f':
2213        {
2214            match('\uFF3F');
2215            break;
2216        }
2217        case '\uff41': case '\uff42': case '\uff43': case '\uff44':
2218        case '\uff45': case '\uff46': case '\uff47': case '\uff48':
2219        case '\uff49': case '\uff4a': case '\uff4b': case '\uff4c':
2220        case '\uff4d': case '\uff4e': case '\uff4f': case '\uff50':
2221        case '\uff51': case '\uff52': case '\uff53': case '\uff54':
2222        case '\uff55': case '\uff56': case '\uff57': case '\uff58':
2223        case '\uff59': case '\uff5a':
2224        {
2225            matchRange('\uFF41','\uFF5A');
2226            break;
2227        }
2228        case '\uff66': case '\uff67': case '\uff68': case '\uff69':
2229        case '\uff6a': case '\uff6b': case '\uff6c': case '\uff6d':
2230        case '\uff6e': case '\uff6f': case '\uff70': case '\uff71':
2231        case '\uff72': case '\uff73': case '\uff74': case '\uff75':
2232        case '\uff76': case '\uff77': case '\uff78': case '\uff79':
2233        case '\uff7a': case '\uff7b': case '\uff7c': case '\uff7d':
2234        case '\uff7e': case '\uff7f': case '\uff80': case '\uff81':
2235        case '\uff82': case '\uff83': case '\uff84': case '\uff85':
2236        case '\uff86': case '\uff87': case '\uff88': case '\uff89':
2237        case '\uff8a': case '\uff8b': case '\uff8c': case '\uff8d':
2238        case '\uff8e': case '\uff8f': case '\uff90': case '\uff91':
2239        case '\uff92': case '\uff93': case '\uff94': case '\uff95':
2240        case '\uff96': case '\uff97': case '\uff98': case '\uff99':
2241        case '\uff9a': case '\uff9b': case '\uff9c': case '\uff9d':
2242        case '\uff9e': case '\uff9f': case '\uffa0': case '\uffa1':
2243        case '\uffa2': case '\uffa3': case '\uffa4': case '\uffa5':
2244        case '\uffa6': case '\uffa7': case '\uffa8': case '\uffa9':
2245        case '\uffaa': case '\uffab': case '\uffac': case '\uffad':
2246        case '\uffae': case '\uffaf': case '\uffb0': case '\uffb1':
2247        case '\uffb2': case '\uffb3': case '\uffb4': case '\uffb5':
2248        case '\uffb6': case '\uffb7': case '\uffb8': case '\uffb9':
2249        case '\uffba': case '\uffbb': case '\uffbc': case '\uffbd':
2250        case '\uffbe':
2251        {
2252            matchRange('\uFF66','\uFFBE');
2253            break;
2254        }
2255        case '\uffc2': case '\uffc3': case '\uffc4': case '\uffc5':
2256        case '\uffc6': case '\uffc7':
2257        {
2258            matchRange('\uFFC2','\uFFC7');
2259            break;
2260        }
2261        case '\uffca': case '\uffcb': case '\uffcc': case '\uffcd':
2262        case '\uffce': case '\uffcf':
2263        {
2264            matchRange('\uFFCA','\uFFCF');
2265            break;
2266        }
2267        case '\uffd2': case '\uffd3': case '\uffd4': case '\uffd5':
2268        case '\uffd6': case '\uffd7':
2269        {
2270            matchRange('\uFFD2','\uFFD7');
2271            break;
2272        }
2273        case '\uffda': case '\uffdb': case '\uffdc':
2274        {
2275            matchRange('\uFFDA','\uFFDC');
2276            break;
2277        }
2278        case '\uffe0': case '\uffe1':
2279        {
2280            matchRange('\uFFE0','\uFFE1');
2281            break;
2282        }
2283        case '\uffe5': case '\uffe6':
2284        {
2285            matchRange('\uFFE5','\uFFE6');
2286            break;
2287        }
2288        default:
2289            if (((LA(1) >= '\u00f8' && LA(1) <= '\u01f5'))) {
2290                matchRange('\u00F8','\u01F5');
2291            }
2292            else if (((LA(1) >= '\u1e00' && LA(1) <= '\u1e9b'))) {
2293                matchRange('\u1E00','\u1E9B');
2294            }
2295            else if (((LA(1) >= '\u4e00' && LA(1) <= '\u9fa5'))) {
2296                matchRange('\u4E00','\u9FA5');
2297            }
2298            else if (((LA(1) >= '\uac00' && LA(1) <= '\ud7a3'))) {
2299                matchRange('\uAC00','\uD7A3');
2300            }
2301            else if (((LA(1) >= '\uf900' && LA(1) <= '\ufa2d'))) {
2302                matchRange('\uF900','\uFA2D');
2303            }
2304            else if (((LA(1) >= '\ufbd3' && LA(1) <= '\ufd3d'))) {
2305                matchRange('\uFBD3','\uFD3D');
2306            }
2307            else if (((LA(1) >= '\ufe76' && LA(1) <= '\ufefc'))) {
2308                matchRange('\uFE76','\uFEFC');
2309            }
2310        else {
2311            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2312        }
2313        }
2314        }
2315        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
2316            _token = makeToken(_ttype);
2317            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
2318        }
2319        _returnToken = _token;
2320    }
2321    
2322    protected final void mIDENT_PART(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
2323        int _ttype; Token _token=null; int _begin=text.length();
2324        _ttype = IDENT_PART;
2325        int _saveIndex;
2326        
2327        {
2328        if ((_tokenSet_0.member(LA(1)))) {
2329            mIDENT_START(false);
2330        }
2331        else if ((_tokenSet_3.member(LA(1)))) {
2332            mIDENT_NON_START(false);
2333        }
2334        else {
2335            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2336        }
2337        
2338        }
2339        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
2340            _token = makeToken(_ttype);
2341            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
2342        }
2343        _returnToken = _token;
2344    }
2345    
2346    public final void mNUM_INT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
2347        int _ttype; Token _token=null; int _begin=text.length();
2348        _ttype = NUM_INT;
2349        int _saveIndex;
2350        
2351        boolean isDecimal = false;
2352        
2353        
2354        switch ( LA(1)) {
2355        case '.':
2356        {
2357            match('.');
2358            {
2359            if (((LA(1) >= '0' && LA(1) <= '9'))) {
2360                {
2361                int _cnt67=0;
2362                _loop67:
2363                do {
2364                    if (((LA(1) >= '0' && LA(1) <= '9'))) {
2365                        matchRange('0','9');
2366                    }
2367                    else {
2368                        if ( _cnt67>=1 ) { break _loop67; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
2369                    }
2370                    
2371                    _cnt67++;
2372                } while (true);
2373                }
2374                {
2375                if ((LA(1)=='E'||LA(1)=='e')) {
2376                    mEXPONENT(false);
2377                }
2378                else {
2379                }
2380                
2381                }
2382                {
2383                if ((_tokenSet_4.member(LA(1)))) {
2384                    mFLOAT_SUFFIX(false);
2385                }
2386                else {
2387                }
2388                
2389                }
2390                _ttype = NUM_FLOAT;
2391            }
2392            else {
2393            }
2394            
2395            }
2396            break;
2397        }
2398        case '0': case '1': case '2': case '3':
2399        case '4': case '5': case '6': case '7':
2400        case '8': case '9':
2401        {
2402            {
2403            switch ( LA(1)) {
2404            case '0':
2405            {
2406                match('0');
2407                isDecimal = true;
2408                {
2409                switch ( LA(1)) {
2410                case 'X': case 'x':
2411                {
2412                    {
2413                    switch ( LA(1)) {
2414                    case 'x':
2415                    {
2416                        match('x');
2417                        break;
2418                    }
2419                    case 'X':
2420                    {
2421                        match('X');
2422                        break;
2423                    }
2424                    default:
2425                    {
2426                        throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2427                    }
2428                    }
2429                    }
2430                    {
2431                    int _cnt74=0;
2432                    _loop74:
2433                    do {
2434                        if ((_tokenSet_5.member(LA(1))) && (true)) {
2435                            mHEX_DIGIT(false);
2436                        }
2437                        else {
2438                            if ( _cnt74>=1 ) { break _loop74; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
2439                        }
2440                        
2441                        _cnt74++;
2442                    } while (true);
2443                    }
2444                    break;
2445                }
2446                case '0': case '1': case '2': case '3':
2447                case '4': case '5': case '6': case '7':
2448                {
2449                    {
2450                    int _cnt76=0;
2451                    _loop76:
2452                    do {
2453                        if (((LA(1) >= '0' && LA(1) <= '7'))) {
2454                            matchRange('0','7');
2455                        }
2456                        else {
2457                            if ( _cnt76>=1 ) { break _loop76; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
2458                        }
2459                        
2460                        _cnt76++;
2461                    } while (true);
2462                    }
2463                    break;
2464                }
2465                default:
2466                    {
2467                    }
2468                }
2469                }
2470                break;
2471            }
2472            case '1': case '2': case '3': case '4':
2473            case '5': case '6': case '7': case '8':
2474            case '9':
2475            {
2476                {
2477                matchRange('1','9');
2478                }
2479                {
2480                _loop79:
2481                do {
2482                    if (((LA(1) >= '0' && LA(1) <= '9'))) {
2483                        matchRange('0','9');
2484                    }
2485                    else {
2486                        break _loop79;
2487                    }
2488                    
2489                } while (true);
2490                }
2491                isDecimal = true;
2492                break;
2493            }
2494            default:
2495            {
2496                throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2497            }
2498            }
2499            }
2500            {
2501            if (((_tokenSet_6.member(LA(1))))&&(isDecimal)) {
2502                {
2503                switch ( LA(1)) {
2504                case '.':
2505                {
2506                    match('.');
2507                    {
2508                    _loop83:
2509                    do {
2510                        if (((LA(1) >= '0' && LA(1) <= '9'))) {
2511                            matchRange('0','9');
2512                        }
2513                        else {
2514                            break _loop83;
2515                        }
2516                        
2517                    } while (true);
2518                    }
2519                    {
2520                    if ((LA(1)=='E'||LA(1)=='e')) {
2521                        mEXPONENT(false);
2522                    }
2523                    else {
2524                    }
2525                    
2526                    }
2527                    {
2528                    if ((_tokenSet_4.member(LA(1)))) {
2529                        mFLOAT_SUFFIX(false);
2530                    }
2531                    else {
2532                    }
2533                    
2534                    }
2535                    break;
2536                }
2537                case 'E': case 'e':
2538                {
2539                    mEXPONENT(false);
2540                    {
2541                    if ((_tokenSet_4.member(LA(1)))) {
2542                        mFLOAT_SUFFIX(false);
2543                    }
2544                    else {
2545                    }
2546                    
2547                    }
2548                    break;
2549                }
2550                case 'D': case 'F': case 'd': case 'f':
2551                {
2552                    mFLOAT_SUFFIX(false);
2553                    break;
2554                }
2555                default:
2556                {
2557                    throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2558                }
2559                }
2560                }
2561                _ttype = NUM_FLOAT;
2562            }
2563            else {
2564            }
2565            
2566            }
2567            break;
2568        }
2569        default:
2570        {
2571            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2572        }
2573        }
2574        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
2575            _token = makeToken(_ttype);
2576            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
2577        }
2578        _returnToken = _token;
2579    }
2580    
2581    protected final void mEXPONENT(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
2582        int _ttype; Token _token=null; int _begin=text.length();
2583        _ttype = EXPONENT;
2584        int _saveIndex;
2585        
2586        {
2587        switch ( LA(1)) {
2588        case 'e':
2589        {
2590            match('e');
2591            break;
2592        }
2593        case 'E':
2594        {
2595            match('E');
2596            break;
2597        }
2598        default:
2599        {
2600            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2601        }
2602        }
2603        }
2604        {
2605        switch ( LA(1)) {
2606        case '+':
2607        {
2608            match('+');
2609            break;
2610        }
2611        case '-':
2612        {
2613            match('-');
2614            break;
2615        }
2616        case '0': case '1': case '2': case '3':
2617        case '4': case '5': case '6': case '7':
2618        case '8': case '9':
2619        {
2620            break;
2621        }
2622        default:
2623        {
2624            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2625        }
2626        }
2627        }
2628        {
2629        int _cnt91=0;
2630        _loop91:
2631        do {
2632            if (((LA(1) >= '0' && LA(1) <= '9'))) {
2633                matchRange('0','9');
2634            }
2635            else {
2636                if ( _cnt91>=1 ) { break _loop91; } else {throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());}
2637            }
2638            
2639            _cnt91++;
2640        } while (true);
2641        }
2642        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
2643            _token = makeToken(_ttype);
2644            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
2645        }
2646        _returnToken = _token;
2647    }
2648    
2649    protected final void mFLOAT_SUFFIX(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
2650        int _ttype; Token _token=null; int _begin=text.length();
2651        _ttype = FLOAT_SUFFIX;
2652        int _saveIndex;
2653        
2654        switch ( LA(1)) {
2655        case 'f':
2656        {
2657            match('f');
2658            break;
2659        }
2660        case 'F':
2661        {
2662            match('F');
2663            break;
2664        }
2665        case 'd':
2666        {
2667            match('d');
2668            break;
2669        }
2670        case 'D':
2671        {
2672            match('D');
2673            break;
2674        }
2675        default:
2676        {
2677            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
2678        }
2679        }
2680        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
2681            _token = makeToken(_ttype);
2682            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
2683        }
2684        _returnToken = _token;
2685    }
2686    
2687    protected final void mIDENT_NON_START(boolean _createToken) throws RecognitionException, CharStreamException, TokenStreamException {
2688        int _ttype; Token _token=null; int _begin=text.length();
2689        _ttype = IDENT_NON_START;
2690        int _saveIndex;
2691        
2692        {
2693        switch ( LA(1)) {
2694        case '\u0001': case '\u0002': case '\u0003': case '\u0004':
2695        case '\u0005': case '\u0006': case '\u0007': case '\u0008':
2696        {
2697            matchRange('\u0001','\u0008');
2698            break;
2699        }
2700        case '\u000e': case '\u000f': case '\u0010': case '\u0011':
2701        case '\u0012': case '\u0013': case '\u0014': case '\u0015':
2702        case '\u0016': case '\u0017': case '\u0018': case '\u0019':
2703        case '\u001a': case '\u001b':
2704        {
2705            matchRange('\u000E','\u001B');
2706            break;
2707        }
2708        case '0': case '1': case '2': case '3':
2709        case '4': case '5': case '6': case '7':
2710        case '8': case '9':
2711        {
2712            matchRange('0','9');
2713            break;
2714        }
2715        case '\u007f': case '\u0080': case '\u0081': case '\u0082':
2716        case '\u0083': case '\u0084': case '\u0085': case '\u0086':
2717        case '\u0087': case '\u0088': case '\u0089': case '\u008a':
2718        case '\u008b': case '\u008c': case '\u008d': case '\u008e':
2719        case '\u008f': case '\u0090': case '\u0091': case '\u0092':
2720        case '\u0093': case '\u0094': case '\u0095': case '\u0096':
2721        case '\u0097': case '\u0098': case '\u0099': case '\u009a':
2722        case '\u009b': case '\u009c': case '\u009d': case '\u009e':
2723        case '\u009f':
2724        {
2725            matchRange('\u007F','\u009F');
2726            break;
2727        }
2728        case '\u0300': case '\u0301': case '\u0302': case '\u0303':
2729        case '\u0304': case '\u0305': case '\u0306': case '\u0307':
2730        case '\u0308': case '\u0309': case '\u030a': case '\u030b':
2731        case '\u030c': case '\u030d': case '\u030e': case '\u030f':
2732        case '\u0310': case '\u0311': case '\u0312': case '\u0313':
2733        case '\u0314': case '\u0315': case '\u0316': case '\u0317':
2734        case '\u0318': case '\u0319': case '\u031a': case '\u031b':
2735        case '\u031c': case '\u031d': case '\u031e': case '\u031f':
2736        case '\u0320': case '\u0321': case '\u0322': case '\u0323':
2737        case '\u0324': case '\u0325': case '\u0326': case '\u0327':
2738        case '\u0328': case '\u0329': case '\u032a': case '\u032b':
2739        case '\u032c': case '\u032d': case '\u032e': case '\u032f':
2740        case '\u0330': case '\u0331': case '\u0332': case '\u0333':
2741        case '\u0334': case '\u0335': case '\u0336': case '\u0337':
2742        case '\u0338': case '\u0339': case '\u033a': case '\u033b':
2743        case '\u033c': case '\u033d': case '\u033e': case '\u033f':
2744        case '\u0340': case '\u0341': case '\u0342': case '\u0343':
2745        case '\u0344': case '\u0345':
2746        {
2747            matchRange('\u0300','\u0345');
2748            break;
2749        }
2750        case '\u0360': case '\u0361':
2751        {
2752            matchRange('\u0360','\u0361');
2753            break;
2754        }
2755        case '\u0483': case '\u0484': case '\u0485': case '\u0486':
2756        {
2757            matchRange('\u0483','\u0486');
2758            break;
2759        }
2760        case '\u0591': case '\u0592': case '\u0593': case '\u0594':
2761        case '\u0595': case '\u0596': case '\u0597': case '\u0598':
2762        case '\u0599': case '\u059a': case '\u059b': case '\u059c':
2763        case '\u059d': case '\u059e': case '\u059f': case '\u05a0':
2764        case '\u05a1':
2765        {
2766            matchRange('\u0591','\u05A1');
2767            break;
2768        }
2769        case '\u05a3': case '\u05a4': case '\u05a5': case '\u05a6':
2770        case '\u05a7': case '\u05a8': case '\u05a9': case '\u05aa':
2771        case '\u05ab': case '\u05ac': case '\u05ad': case '\u05ae':
2772        case '\u05af': case '\u05b0': case '\u05b1': case '\u05b2':
2773        case '\u05b3': case '\u05b4': case '\u05b5': case '\u05b6':
2774        case '\u05b7': case '\u05b8': case '\u05b9':
2775        {
2776            matchRange('\u05A3','\u05B9');
2777            break;
2778        }
2779        case '\u05bb': case '\u05bc': case '\u05bd':
2780        {
2781            matchRange('\u05BB','\u05BD');
2782            break;
2783        }
2784        case '\u05bf':
2785        {
2786            match('\u05BF');
2787            break;
2788        }
2789        case '\u05c1': case '\u05c2':
2790        {
2791            matchRange('\u05C1','\u05C2');
2792            break;
2793        }
2794        case '\u05c4':
2795        {
2796            match('\u05C4');
2797            break;
2798        }
2799        case '\u064b': case '\u064c': case '\u064d': case '\u064e':
2800        case '\u064f': case '\u0650': case '\u0651': case '\u0652':
2801        {
2802            matchRange('\u064B','\u0652');
2803            break;
2804        }
2805        case '\u0660': case '\u0661': case '\u0662': case '\u0663':
2806        case '\u0664': case '\u0665': case '\u0666': case '\u0667':
2807        case '\u0668': case '\u0669':
2808        {
2809            matchRange('\u0660','\u0669');
2810            break;
2811        }
2812        case '\u0670':
2813        {
2814            match('\u0670');
2815            break;
2816        }
2817        case '\u06d6': case '\u06d7': case '\u06d8': case '\u06d9':
2818        case '\u06da': case '\u06db': case '\u06dc':
2819        {
2820            matchRange('\u06D6','\u06DC');
2821            break;
2822        }
2823        case '\u06df': case '\u06e0': case '\u06e1': case '\u06e2':
2824        case '\u06e3': case '\u06e4':
2825        {
2826            matchRange('\u06DF','\u06E4');
2827            break;
2828        }
2829        case '\u06e7': case '\u06e8':
2830        {
2831            matchRange('\u06E7','\u06E8');
2832            break;
2833        }
2834        case '\u06ea': case '\u06eb': case '\u06ec': case '\u06ed':
2835        {
2836            matchRange('\u06EA','\u06ED');
2837            break;
2838        }
2839        case '\u06f0': case '\u06f1': case '\u06f2': case '\u06f3':
2840        case '\u06f4': case '\u06f5': case '\u06f6': case '\u06f7':
2841        case '\u06f8': case '\u06f9':
2842        {
2843            matchRange('\u06F0','\u06F9');
2844            break;
2845        }
2846        case '\u0901': case '\u0902': case '\u0903':
2847        {
2848            matchRange('\u0901','\u0903');
2849            break;
2850        }
2851        case '\u093c':
2852        {
2853            match('\u093C');
2854            break;
2855        }
2856        case '\u093e': case '\u093f': case '\u0940': case '\u0941':
2857        case '\u0942': case '\u0943': case '\u0944': case '\u0945':
2858        case '\u0946': case '\u0947': case '\u0948': case '\u0949':
2859        case '\u094a': case '\u094b': case '\u094c': case '\u094d':
2860        {
2861            matchRange('\u093E','\u094D');
2862            break;
2863        }
2864        case '\u0951': case '\u0952': case '\u0953': case '\u0954':
2865        {
2866            matchRange('\u0951','\u0954');
2867            break;
2868        }
2869        case '\u0962': case '\u0963':
2870        {
2871            matchRange('\u0962','\u0963');
2872            break;
2873        }
2874        case '\u0966': case '\u0967': case '\u0968': case '\u0969':
2875        case '\u096a': case '\u096b': case '\u096c': case '\u096d':
2876        case '\u096e': case '\u096f':
2877        {
2878            matchRange('\u0966','\u096F');
2879            break;
2880        }
2881        case '\u0981': case '\u0982': case '\u0983':
2882        {
2883            matchRange('\u0981','\u0983');
2884            break;
2885        }
2886        case '\u09bc':
2887        {
2888            match('\u09BC');
2889            break;
2890        }
2891        case '\u09be': case '\u09bf': case '\u09c0': case '\u09c1':
2892        case '\u09c2': case '\u09c3': case '\u09c4':
2893        {
2894            matchRange('\u09BE','\u09C4');
2895            break;
2896        }
2897        case '\u09c7': case '\u09c8':
2898        {
2899            matchRange('\u09C7','\u09C8');
2900            break;
2901        }
2902        case '\u09cb': case '\u09cc': case '\u09cd':
2903        {
2904            matchRange('\u09CB','\u09CD');
2905            break;
2906        }
2907        case '\u09d7':
2908        {
2909            match('\u09D7');
2910            break;
2911        }
2912        case '\u09e2': case '\u09e3':
2913        {
2914            matchRange('\u09E2','\u09E3');
2915            break;
2916        }
2917        case '\u09e6': case '\u09e7': case '\u09e8': case '\u09e9':
2918        case '\u09ea': case '\u09eb': case '\u09ec': case '\u09ed':
2919        case '\u09ee': case '\u09ef':
2920        {
2921            matchRange('\u09E6','\u09EF');
2922            break;
2923        }
2924        case '\u0a02':
2925        {
2926            match('\u0A02');
2927            break;
2928        }
2929        case '\u0a3c':
2930        {
2931            match('\u0A3C');
2932            break;
2933        }
2934        case '\u0a3e': case '\u0a3f': case '\u0a40': case '\u0a41':
2935        case '\u0a42':
2936        {
2937            matchRange('\u0A3E','\u0A42');
2938            break;
2939        }
2940        case '\u0a47': case '\u0a48':
2941        {
2942            matchRange('\u0A47','\u0A48');
2943            break;
2944        }
2945        case '\u0a4b': case '\u0a4c': case '\u0a4d':
2946        {
2947            matchRange('\u0A4B','\u0A4D');
2948            break;
2949        }
2950        case '\u0a66': case '\u0a67': case '\u0a68': case '\u0a69':
2951        case '\u0a6a': case '\u0a6b': case '\u0a6c': case '\u0a6d':
2952        case '\u0a6e': case '\u0a6f': case '\u0a70': case '\u0a71':
2953        {
2954            matchRange('\u0A66','\u0A71');
2955            break;
2956        }
2957        case '\u0a81': case '\u0a82': case '\u0a83':
2958        {
2959            matchRange('\u0A81','\u0A83');
2960            break;
2961        }
2962        case '\u0abc':
2963        {
2964            match('\u0ABC');
2965            break;
2966        }
2967        case '\u0abe': case '\u0abf': case '\u0ac0': case '\u0ac1':
2968        case '\u0ac2': case '\u0ac3': case '\u0ac4': case '\u0ac5':
2969        {
2970            matchRange('\u0ABE','\u0AC5');
2971            break;
2972        }
2973        case '\u0ac7': case '\u0ac8': case '\u0ac9':
2974        {
2975            matchRange('\u0AC7','\u0AC9');
2976            break;
2977        }
2978        case '\u0acb': case '\u0acc': case '\u0acd':
2979        {
2980            matchRange('\u0ACB','\u0ACD');
2981            break;
2982        }
2983        case '\u0ae6': case '\u0ae7': case '\u0ae8': case '\u0ae9':
2984        case '\u0aea': case '\u0aeb': case '\u0aec': case '\u0aed':
2985        case '\u0aee': case '\u0aef':
2986        {
2987            matchRange('\u0AE6','\u0AEF');
2988            break;
2989        }
2990        case '\u0b01': case '\u0b02': case '\u0b03':
2991        {
2992            matchRange('\u0B01','\u0B03');
2993            break;
2994        }
2995        case '\u0b3c':
2996        {
2997            match('\u0B3C');
2998            break;
2999        }
3000        case '\u0b3e': case '\u0b3f': case '\u0b40': case '\u0b41':
3001        case '\u0b42': case '\u0b43':
3002        {
3003            matchRange('\u0B3E','\u0B43');
3004            break;
3005        }
3006        case '\u0b47': case '\u0b48':
3007        {
3008            matchRange('\u0B47','\u0B48');
3009            break;
3010        }
3011        case '\u0b4b': case '\u0b4c': case '\u0b4d':
3012        {
3013            matchRange('\u0B4B','\u0B4D');
3014            break;
3015        }
3016        case '\u0b56': case '\u0b57':
3017        {
3018            matchRange('\u0B56','\u0B57');
3019            break;
3020        }
3021        case '\u0b66': case '\u0b67': case '\u0b68': case '\u0b69':
3022        case '\u0b6a': case '\u0b6b': case '\u0b6c': case '\u0b6d':
3023        case '\u0b6e': case '\u0b6f':
3024        {
3025            matchRange('\u0B66','\u0B6F');
3026            break;
3027        }
3028        case '\u0b82': case '\u0b83':
3029        {
3030            matchRange('\u0B82','\u0B83');
3031            break;
3032        }
3033        case '\u0bbe': case '\u0bbf': case '\u0bc0': case '\u0bc1':
3034        case '\u0bc2':
3035        {
3036            matchRange('\u0BBE','\u0BC2');
3037            break;
3038        }
3039        case '\u0bc6': case '\u0bc7': case '\u0bc8':
3040        {
3041            matchRange('\u0BC6','\u0BC8');
3042            break;
3043        }
3044        case '\u0bca': case '\u0bcb': case '\u0bcc': case '\u0bcd':
3045        {
3046            matchRange('\u0BCA','\u0BCD');
3047            break;
3048        }
3049        case '\u0bd7':
3050        {
3051            match('\u0BD7');
3052            break;
3053        }
3054        case '\u0be7': case '\u0be8': case '\u0be9': case '\u0bea':
3055        case '\u0beb': case '\u0bec': case '\u0bed': case '\u0bee':
3056        case '\u0bef':
3057        {
3058            matchRange('\u0BE7','\u0BEF');
3059            break;
3060        }
3061        case '\u0c01': case '\u0c02': case '\u0c03':
3062        {
3063            matchRange('\u0C01','\u0C03');
3064            break;
3065        }
3066        case '\u0c3e': case '\u0c3f': case '\u0c40': case '\u0c41':
3067        case '\u0c42': case '\u0c43': case '\u0c44':
3068        {
3069            matchRange('\u0C3E','\u0C44');
3070            break;
3071        }
3072        case '\u0c46': case '\u0c47': case '\u0c48':
3073        {
3074            matchRange('\u0C46','\u0C48');
3075            break;
3076        }
3077        case '\u0c4a': case '\u0c4b': case '\u0c4c': case '\u0c4d':
3078        {
3079            matchRange('\u0C4A','\u0C4D');
3080            break;
3081        }
3082        case '\u0c55': case '\u0c56':
3083        {
3084            matchRange('\u0C55','\u0C56');
3085            break;
3086        }
3087        case '\u0c66': case '\u0c67': case '\u0c68': case '\u0c69':
3088        case '\u0c6a': case '\u0c6b': case '\u0c6c': case '\u0c6d':
3089        case '\u0c6e': case '\u0c6f':
3090        {
3091            matchRange('\u0C66','\u0C6F');
3092            break;
3093        }
3094        case '\u0c82': case '\u0c83':
3095        {
3096            matchRange('\u0C82','\u0C83');
3097            break;
3098        }
3099        case '\u0cbe': case '\u0cbf': case '\u0cc0': case '\u0cc1':
3100        case '\u0cc2': case '\u0cc3': case '\u0cc4':
3101        {
3102            matchRange('\u0CBE','\u0CC4');
3103            break;
3104        }
3105        case '\u0cc6': case '\u0cc7': case '\u0cc8':
3106        {
3107            matchRange('\u0CC6','\u0CC8');
3108            break;
3109        }
3110        case '\u0cca': case '\u0ccb': case '\u0ccc': case '\u0ccd':
3111        {
3112            matchRange('\u0CCA','\u0CCD');
3113            break;
3114        }
3115        case '\u0cd5': case '\u0cd6':
3116        {
3117            matchRange('\u0CD5','\u0CD6');
3118            break;
3119        }
3120        case '\u0ce6': case '\u0ce7': case '\u0ce8': case '\u0ce9':
3121        case '\u0cea': case '\u0ceb': case '\u0cec': case '\u0ced':
3122        case '\u0cee': case '\u0cef':
3123        {
3124            matchRange('\u0CE6','\u0CEF');
3125            break;
3126        }
3127        case '\u0d02': case '\u0d03':
3128        {
3129            matchRange('\u0D02','\u0D03');
3130            break;
3131        }
3132        case '\u0d3e': case '\u0d3f': case '\u0d40': case '\u0d41':
3133        case '\u0d42': case '\u0d43':
3134        {
3135            matchRange('\u0D3E','\u0D43');
3136            break;
3137        }
3138        case '\u0d46': case '\u0d47': case '\u0d48':
3139        {
3140            matchRange('\u0D46','\u0D48');
3141            break;
3142        }
3143        case '\u0d4a': case '\u0d4b': case '\u0d4c': case '\u0d4d':
3144        {
3145            matchRange('\u0D4A','\u0D4D');
3146            break;
3147        }
3148        case '\u0d57':
3149        {
3150            match('\u0D57');
3151            break;
3152        }
3153        case '\u0d66': case '\u0d67': case '\u0d68': case '\u0d69':
3154        case '\u0d6a': case '\u0d6b': case '\u0d6c': case '\u0d6d':
3155        case '\u0d6e': case '\u0d6f':
3156        {
3157            matchRange('\u0D66','\u0D6F');
3158            break;
3159        }
3160        case '\u0e31':
3161        {
3162            match('\u0E31');
3163            break;
3164        }
3165        case '\u0e34': case '\u0e35': case '\u0e36': case '\u0e37':
3166        case '\u0e38': case '\u0e39': case '\u0e3a':
3167        {
3168            matchRange('\u0E34','\u0E3A');
3169            break;
3170        }
3171        case '\u0e47': case '\u0e48': case '\u0e49': case '\u0e4a':
3172        case '\u0e4b': case '\u0e4c': case '\u0e4d': case '\u0e4e':
3173        {
3174            matchRange('\u0E47','\u0E4E');
3175            break;
3176        }
3177        case '\u0e50': case '\u0e51': case '\u0e52': case '\u0e53':
3178        case '\u0e54': case '\u0e55': case '\u0e56': case '\u0e57':
3179        case '\u0e58': case '\u0e59':
3180        {
3181            matchRange('\u0E50','\u0E59');
3182            break;
3183        }
3184        case '\u0eb1':
3185        {
3186            match('\u0EB1');
3187            break;
3188        }
3189        case '\u0eb4': case '\u0eb5': case '\u0eb6': case '\u0eb7':
3190        case '\u0eb8': case '\u0eb9':
3191        {
3192            matchRange('\u0EB4','\u0EB9');
3193            break;
3194        }
3195        case '\u0ebb': case '\u0ebc':
3196        {
3197            matchRange('\u0EBB','\u0EBC');
3198            break;
3199        }
3200        case '\u0ec8': case '\u0ec9': case '\u0eca': case '\u0ecb':
3201        case '\u0ecc': case '\u0ecd':
3202        {
3203            matchRange('\u0EC8','\u0ECD');
3204            break;
3205        }
3206        case '\u0ed0': case '\u0ed1': case '\u0ed2': case '\u0ed3':
3207        case '\u0ed4': case '\u0ed5': case '\u0ed6': case '\u0ed7':
3208        case '\u0ed8': case '\u0ed9':
3209        {
3210            matchRange('\u0ED0','\u0ED9');
3211            break;
3212        }
3213        case '\u0f18': case '\u0f19':
3214        {
3215            matchRange('\u0F18','\u0F19');
3216            break;
3217        }
3218        case '\u0f20': case '\u0f21': case '\u0f22': case '\u0f23':
3219        case '\u0f24': case '\u0f25': case '\u0f26': case '\u0f27':
3220        case '\u0f28': case '\u0f29':
3221        {
3222            matchRange('\u0F20','\u0F29');
3223            break;
3224        }
3225        case '\u0f35':
3226        {
3227            match('\u0F35');
3228            break;
3229        }
3230        case '\u0f37':
3231        {
3232            match('\u0F37');
3233            break;
3234        }
3235        case '\u0f39':
3236        {
3237            match('\u0F39');
3238            break;
3239        }
3240        case '\u0f3e': case '\u0f3f':
3241        {
3242            matchRange('\u0F3E','\u0F3F');
3243            break;
3244        }
3245        case '\u0f71': case '\u0f72': case '\u0f73': case '\u0f74':
3246        case '\u0f75': case '\u0f76': case '\u0f77': case '\u0f78':
3247        case '\u0f79': case '\u0f7a': case '\u0f7b': case '\u0f7c':
3248        case '\u0f7d': case '\u0f7e': case '\u0f7f': case '\u0f80':
3249        case '\u0f81': case '\u0f82': case '\u0f83': case '\u0f84':
3250        {
3251            matchRange('\u0F71','\u0F84');
3252            break;
3253        }
3254        case '\u0f86': case '\u0f87': case '\u0f88': case '\u0f89':
3255        case '\u0f8a': case '\u0f8b':
3256        {
3257            matchRange('\u0F86','\u0F8B');
3258            break;
3259        }
3260        case '\u0f90': case '\u0f91': case '\u0f92': case '\u0f93':
3261        case '\u0f94': case '\u0f95':
3262        {
3263            matchRange('\u0F90','\u0F95');
3264            break;
3265        }
3266        case '\u0f97':
3267        {
3268            match('\u0F97');
3269            break;
3270        }
3271        case '\u0f99': case '\u0f9a': case '\u0f9b': case '\u0f9c':
3272        case '\u0f9d': case '\u0f9e': case '\u0f9f': case '\u0fa0':
3273        case '\u0fa1': case '\u0fa2': case '\u0fa3': case '\u0fa4':
3274        case '\u0fa5': case '\u0fa6': case '\u0fa7': case '\u0fa8':
3275        case '\u0fa9': case '\u0faa': case '\u0fab': case '\u0fac':
3276        case '\u0fad':
3277        {
3278            matchRange('\u0F99','\u0FAD');
3279            break;
3280        }
3281        case '\u0fb1': case '\u0fb2': case '\u0fb3': case '\u0fb4':
3282        case '\u0fb5': case '\u0fb6': case '\u0fb7':
3283        {
3284            matchRange('\u0FB1','\u0FB7');
3285            break;
3286        }
3287        case '\u0fb9':
3288        {
3289            match('\u0FB9');
3290            break;
3291        }
3292        case '\u200c': case '\u200d': case '\u200e': case '\u200f':
3293        {
3294            matchRange('\u200C','\u200F');
3295            break;
3296        }
3297        case '\u202a': case '\u202b': case '\u202c': case '\u202d':
3298        case '\u202e':
3299        {
3300            matchRange('\u202A','\u202E');
3301            break;
3302        }
3303        case '\u206a': case '\u206b': case '\u206c': case '\u206d':
3304        case '\u206e': case '\u206f':
3305        {
3306            matchRange('\u206A','\u206F');
3307            break;
3308        }
3309        case '\u20d0': case '\u20d1': case '\u20d2': case '\u20d3':
3310        case '\u20d4': case '\u20d5': case '\u20d6': case '\u20d7':
3311        case '\u20d8': case '\u20d9': case '\u20da': case '\u20db':
3312        case '\u20dc':
3313        {
3314            matchRange('\u20D0','\u20DC');
3315            break;
3316        }
3317        case '\u20e1':
3318        {
3319            match('\u20E1');
3320            break;
3321        }
3322        case '\u302a': case '\u302b': case '\u302c': case '\u302d':
3323        case '\u302e': case '\u302f':
3324        {
3325            matchRange('\u302A','\u302F');
3326            break;
3327        }
3328        case '\u3099': case '\u309a':
3329        {
3330            matchRange('\u3099','\u309A');
3331            break;
3332        }
3333        case '\ufb1e':
3334        {
3335            match('\uFB1E');
3336            break;
3337        }
3338        case '\ufe20': case '\ufe21': case '\ufe22': case '\ufe23':
3339        {
3340            matchRange('\uFE20','\uFE23');
3341            break;
3342        }
3343        case '\ufeff':
3344        {
3345            match('\uFEFF');
3346            break;
3347        }
3348        case '\uff10': case '\uff11': case '\uff12': case '\uff13':
3349        case '\uff14': case '\uff15': case '\uff16': case '\uff17':
3350        case '\uff18': case '\uff19':
3351        {
3352            matchRange('\uFF10','\uFF19');
3353            break;
3354        }
3355        default:
3356        {
3357            throw new NoViableAltForCharException((char)LA(1), getFilename(), getLine(), getColumn());
3358        }
3359        }
3360        }
3361        if ( _createToken && _token==null && _ttype!=Token.SKIP ) {
3362            _token = makeToken(_ttype);
3363            _token.setText(new String JavaDoc(text.getBuffer(), _begin, text.length()-_begin));
3364        }
3365        _returnToken = _token;
3366    }
3367    
3368    
3369    private static final long[] mk_tokenSet_0() {
3370        long[] data = new long[4088];
3371        data[0]=68719476736L;
3372        data[1]=576460745995190270L;
3373        data[2]=297242231151001600L;
3374        data[3]=-36028797027352577L;
3375        for (int i = 4; i<=6; i++) { data[i]=-1L; }
3376        data[7]=-270215977642229761L;
3377        data[8]=16777215L;
3378        data[9]=-65536L;
3379        data[10]=-432624840181022721L;
3380        data[11]=133144182787L;
3381        data[13]=288230376151711744L;
3382        data[14]=-17179879616L;
3383        data[15]=4503588160110591L;
3384        data[16]=-8194L;
3385        data[17]=-536936449L;
3386        data[18]=-65533L;
3387        data[19]=234134404065073567L;
3388        data[20]=-562949953421312L;
3389        data[21]=-8547991553L;
3390        data[22]=255L;
3391        data[23]=1979120929931264L;
3392        data[24]=576460743713488896L;
3393        data[25]=-562949953419265L;
3394        data[26]=9007199254740991999L;
3395        data[27]=412319973375L;
3396        data[36]=2594073385365405664L;
3397        data[37]=17163091968L;
3398        data[38]=271902628478820320L;
3399        data[39]=4222140488351744L;
3400        data[40]=247132830528276448L;
3401        data[41]=7881300924956672L;
3402        data[42]=2589004636761075680L;
3403        data[43]=4294967296L;
3404        data[44]=2579997437506199520L;
3405        data[45]=15837691904L;
3406        data[46]=270153412153034720L;
3407        data[48]=283724577500946400L;
3408        data[49]=12884901888L;
3409        data[50]=283724577500946400L;
3410        data[51]=13958643712L;
3411        data[52]=288228177128316896L;
3412        data[53]=12884901888L;
3413        data[56]=-9219572124669181954L;
3414        data[57]=127L;
3415        data[58]=2309621682768192918L;
3416        data[59]=805306463L;
3417        data[61]=4398046510847L;
3418        data[66]=-4294967296L;
3419        data[67]=36028797018898495L;
3420        data[68]=-1L;
3421        data[69]=-2080374785L;
3422        data[70]=-1065151889409L;
3423        data[71]=288230376151711743L;
3424        for (int i = 120; i<=121; i++) { data[i]=-1L; }
3425        data[122]=-4026531841L;
3426        data[123]=288230376151711743L;
3427        data[124]=-3233808385L;
3428        data[125]=4611686017001275199L;
3429        data[126]=6908521828386340863L;
3430        data[127]=2295745090394464220L;
3431        data[128]=-9223372036854775808L;
3432        data[129]=-9223372036854775807L;
3433        data[130]=35180077121536L;
3434        data[132]=142986334291623044L;
3435        data[133]=-4294967296L;
3436        data[134]=7L;
3437        data[192]=17455838012637344L;
3438        data[193]=-2L;
3439        data[194]=-6574571521L;
3440        data[195]=8646911284551352319L;
3441        data[196]=-527765581332512L;
3442        data[197]=-1L;
3443        data[198]=32767L;
3444        for (int i = 312; i<=637; i++) { data[i]=-1L; }
3445        data[638]=274877906943L;
3446        for (int i = 688; i<=861; i++) { data[i]=-1L; }
3447        data[862]=68719476735L;
3448        for (int i = 996; i<=999; i++) { data[i]=-1L; }
3449        data[1000]=70368744177663L;
3450        data[1004]=6881498029467631743L;
3451        data[1005]=-37L;
3452        data[1006]=1125899906842623L;
3453        data[1007]=-524288L;
3454        for (int i = 1008; i<=1011; i++) { data[i]=-1L; }
3455        data[1012]=4611686018427387903L;
3456        data[1013]=-65536L;
3457        data[1014]=-196609L;
3458        data[1015]=1152640029630136575L;
3459        data[1016]=6755399441055744L;
3460        data[1017]=-11538275021824000L;
3461        data[1018]=-1L;
3462        data[1019]=2305843009213693951L;
3463        data[1020]=-8646911293141286896L;
3464        data[1021]=-274743689218L;
3465        data[1022]=9223372036854775807L;
3466        data[1023]=425688104188L;
3467        return data;
3468    }
3469    public static final BitSet _tokenSet_0 = new BitSet(mk_tokenSet_0());
3470    private static final long[] mk_tokenSet_1() {
3471        long[] data = new long[2048];
3472        data[0]=-549755823106L;
3473        for (int i = 1; i<=1022; i++) { data[i]=-1L; }
3474        data[1023]=9223372036854775807L;
3475        return data;
3476    }
3477    public static final BitSet _tokenSet_1 = new BitSet(mk_tokenSet_1());
3478    private static final long[] mk_tokenSet_2() {
3479        long[] data = new long[4088];
3480        data[0]=287948970162897406L;
3481        data[1]=-8646911290859585538L;
3482        data[2]=297242235445968895L;
3483        data[3]=-36028797027352577L;
3484        for (int i = 4; i<=6; i++) { data[i]=-1L; }
3485        data[7]=-270215977642229761L;
3486        data[8]=16777215L;
3487        data[9]=-65536L;
3488        data[10]=-432624840181022721L;
3489        data[11]=133144182787L;
3490        data[12]=-1L;
3491        data[13]=288230389036613695L;
3492        data[14]=-17179879616L;
3493        data[15]=4503588160110591L;
3494        data[16]=-8194L;
3495        data[17]=-536936449L;
3496        data[18]=-65413L;
3497        data[19]=234134404065073567L;
3498        data[20]=-562949953421312L;
3499        data[21]=-8547991553L;
3500        data[22]=-4899916411759099649L;
3501        data[23]=1979120929931286L;
3502        data[24]=576460743713488896L;
3503        data[25]=-277081224642561L;
3504        data[26]=9007199254740991999L;
3505        data[27]=288017069284229119L;
3506        data[36]=-864691128455135250L;
3507        data[37]=281268803485695L;
3508        data[38]=-3186861885341720594L;
3509        data[39]=4503392135166367L;
3510        data[40]=-3211631683292264476L;
3511        data[41]=9006925953907079L;
3512        data[42]=-869759877059465234L;
3513        data[43]=281204393786303L;
3514        data[44]=-878767076314341394L;
3515        data[45]=281215949093263L;
3516        data[46]=-4341532606274353172L;
3517        data[47]=280925229301191L;
3518        data[48]=-4327961440926441490L;
3519        data[49]=281212990012895L;
3520        data[50]=-4327961440926441492L;
3521        data[51]=281214063754719L;
3522        data[52]=-4323457841299070996L;
3523        data[53]=281212992110031L;
3524        data[56]=-8647052022039707650L;
3525        data[57]=67076095L;
3526        data[58]=4323293666156225942L;
3527        data[59]=872365919L;
3528        data[60]=-4422530440275951616L;
3529        data[61]=-558551906910465L;
3530        data[62]=215680200883507167L;
3531        data[66]=-4294967296L;
3532        data[67]=36028797018898495L;
3533        data[68]=-1L;
3534        data[69]=-2080374785L;
3535        data[70]=-1065151889409L;
3536        data[71]=288230376151711743L;
3537        for (int i = 120; i<=121; i++) { data[i]=-1L; }
3538        data[122]=-4026531841L;
3539        data[123]=288230376151711743L;
3540        data[124]=-3233808385L;
3541        data[125]=4611686017001275199L;
3542        data[126]=6908521828386340863L;
3543        data[127]=2295745090394464220L;
3544        data[128]=-9223235697412870144L;
3545        data[129]=-9223094959924576255L;
3546        data[130]=35180077121536L;
3547        data[131]=9126739968L;
3548        data[132]=142986334291623044L;
3549        data[133]=-4294967296L;
3550        data[134]=7L;
3551        data[192]=17732914942836896L;
3552        data[193]=-2L;
3553        data[194]=-6473908225L;
3554        data[195]=8646911284551352319L;
3555        data[196]=-527765581332512L;
3556        data[197]=-1L;
3557        data[198]=32767L;
3558        for (int i = 312; i<=637; i++) { data[i]=-1L; }
3559        data[638]=274877906943L;
3560        for (int i = 688; i<=861; i++) { data[i]=-1L; }
3561        data[862]=68719476735L;
3562        for (int i = 996; i<=999; i++) { data[i]=-1L; }
3563        data[1000]=70368744177663L;
3564        data[1004]=6881498030541373567L;
3565        data[1005]=-37L;
3566        data[1006]=1125899906842623L;
3567        data[1007]=-524288L;
3568        for (int i = 1008; i<=1011; i++) { data[i]=-1L; }
3569        data[1012]=4611686018427387903L;
3570        data[1013]=-65536L;
3571        data[1014]=-196609L;
3572        data[1015]=1152640029630136575L;
3573        data[1016]=6755463865565184L;
3574        data[1017]=-11538275021824000L;
3575        data[1018]=-1L;
3576        data[1019]=-6917529027641081857L;
3577        data[1020]=-8646911293074243568L;
3578        data[1021]=-274743689218L;
3579        data[1022]=9223372036854775807L;
3580        data[1023]=425688104188L;
3581        return data;
3582    }
3583    public static final BitSet _tokenSet_2 = new BitSet(mk_tokenSet_2());
3584    private static final long[] mk_tokenSet_3() {
3585        long[] data = new long[2042];
3586        data[0]=287948901443420670L;
3587        data[1]=-9223372036854775808L;
3588        data[2]=4294967295L;
3589        data[12]=-1L;
3590        data[13]=12884901951L;
3591        data[18]=120L;
3592        data[22]=-4899916411759099904L;
3593        data[23]=22L;
3594        data[25]=285868728776704L;
3595        data[27]=288016656964255744L;
3596        data[36]=-3458764513820540914L;
3597        data[37]=281251640393727L;
3598        data[38]=-3458764513820540914L;
3599        data[39]=281251646814623L;
3600        data[40]=-3458764513820540924L;
3601        data[41]=1125625028950407L;
3602        data[42]=-3458764513820540914L;
3603        data[43]=281200098819007L;
3604        data[44]=-3458764513820540914L;
3605        data[45]=281200111401359L;
3606        data[46]=-4611686018427387892L;
3607        data[47]=280925229301191L;
3608        data[48]=-4611686018427387890L;
3609        data[49]=281200105111007L;
3610        data[50]=-4611686018427387892L;
3611        data[51]=281200105111007L;
3612        data[52]=-4611686018427387892L;
3613        data[53]=281200107208143L;
3614        data[56]=572520102629474304L;
3615        data[57]=67075968L;
3616        data[58]=2013671983388033024L;
3617        data[59]=67059456L;
3618        data[60]=-4422530440275951616L;
3619        data[61]=-562949953421312L;
3620        data[62]=215680200883507167L;
3621        data[128]=136339441905664L;
3622        data[129]=277076930199552L;
3623        data[131]=9126739968L;
3624        data[192]=277076930199552L;
3625        data[194]=100663296L;
3626        data[1004]=1073741824L;
3627        data[1016]=64424509440L;
3628        data[1019]=-9223372036854775808L;
3629        data[1020]=67043328L;
3630        return data;
3631    }
3632    public static final BitSet _tokenSet_3 = new BitSet(mk_tokenSet_3());
3633    private static final long[] mk_tokenSet_4() {
3634        long[] data = new long[1025];
3635        data[1]=343597383760L;
3636        return data;
3637    }
3638    public static final BitSet _tokenSet_4 = new BitSet(mk_tokenSet_4());
3639    private static final long[] mk_tokenSet_5() {
3640        long[] data = new long[1025];
3641        data[0]=287948901175001088L;
3642        data[1]=541165879422L;
3643        return data;
3644    }
3645    public static final BitSet _tokenSet_5 = new BitSet(mk_tokenSet_5());
3646    private static final long[] mk_tokenSet_6() {
3647        long[] data = new long[1025];
3648        data[0]=70368744177664L;
3649        data[1]=481036337264L;
3650        return data;
3651    }
3652    public static final BitSet _tokenSet_6 = new BitSet(mk_tokenSet_6());
3653    
3654    }
3655
Popular Tags