Source Code Cross Referenced for JDOQLLexer.java in  » Database-ORM » db-ojb » org » apache » ojb » jdo » jdoql » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Database ORM » db ojb » org.apache.ojb.jdo.jdoql 
Source Cross Referenced  Class Diagram Java Document (Java Doc) 


0001:        // $ANTLR 2.7.5 (20050128): "jdoql-ojb-lexer.g" -> "JDOQLLexer.java"$
0002:
0003:        package org.apache.ojb.jdo.jdoql;
0004:
0005:        /* Copyright 2003-2005 The Apache Software Foundation
0006:         *
0007:         * Licensed under the Apache License, Version 2.0 (the "License");
0008:         * you may not use this file except in compliance with the License.
0009:         * You may obtain a copy of the License at
0010:         *
0011:         *     http://www.apache.org/licenses/LICENSE-2.0
0012:         *
0013:         * Unless required by applicable law or agreed to in writing, software
0014:         * distributed under the License is distributed on an "AS IS" BASIS,
0015:         * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
0016:         * See the License for the specific language governing permissions and
0017:         * limitations under the License.
0018:         */
0019:
0020:        import java.io.InputStream;
0021:        import java.io.Reader;
0022:        import java.util.Hashtable;
0023:
0024:        import antlr.ANTLRHashString;
0025:        import antlr.ByteBuffer;
0026:        import antlr.CharBuffer;
0027:        import antlr.CharStreamException;
0028:        import antlr.CharStreamIOException;
0029:        import antlr.InputBuffer;
0030:        import antlr.LexerSharedInputState;
0031:        import antlr.NoViableAltForCharException;
0032:        import antlr.RecognitionException;
0033:        import antlr.Token;
0034:        import antlr.TokenStream;
0035:        import antlr.TokenStreamException;
0036:        import antlr.TokenStreamIOException;
0037:        import antlr.TokenStreamRecognitionException;
0038:        import antlr.collections.impl.BitSet;
0039:
0040:        public class JDOQLLexer extends antlr.CharScanner implements 
0041:                JDOQLTokenTypes, TokenStream {
0042:            public JDOQLLexer(InputStream in) {
0043:                this (new ByteBuffer(in));
0044:            }
0045:
0046:            public JDOQLLexer(Reader in) {
0047:                this (new CharBuffer(in));
0048:            }
0049:
0050:            public JDOQLLexer(InputBuffer ib) {
0051:                this (new LexerSharedInputState(ib));
0052:            }
0053:
0054:            public JDOQLLexer(LexerSharedInputState state) {
0055:                super (state);
0056:                caseSensitiveLiterals = true;
0057:                setCaseSensitive(true);
0058:                literals = new Hashtable();
0059:                literals
0060:                        .put(new ANTLRHashString("this", this ), new Integer(26));
0061:                literals.put(new ANTLRHashString("false", this ),
0062:                        new Integer(24));
0063:                literals
0064:                        .put(new ANTLRHashString("true", this ), new Integer(23));
0065:                literals.put(new ANTLRHashString("import", this ), new Integer(
0066:                        20));
0067:                literals.put(new ANTLRHashString("float", this ),
0068:                        new Integer(33));
0069:                literals.put(new ANTLRHashString("boolean", this ), new Integer(
0070:                        27));
0071:                literals.put(new ANTLRHashString("ascending", this ),
0072:                        new Integer(21));
0073:                literals
0074:                        .put(new ANTLRHashString("long", this ), new Integer(31));
0075:                literals
0076:                        .put(new ANTLRHashString("null", this ), new Integer(25));
0077:                literals.put(new ANTLRHashString("short", this ),
0078:                        new Integer(29));
0079:                literals
0080:                        .put(new ANTLRHashString("char", this ), new Integer(32));
0081:                literals
0082:                        .put(new ANTLRHashString("byte", this ), new Integer(28));
0083:                literals.put(new ANTLRHashString("descending", this ),
0084:                        new Integer(22));
0085:                literals.put(new ANTLRHashString("int", this ), new Integer(30));
0086:                literals.put(new ANTLRHashString("double", this ), new Integer(
0087:                        34));
0088:            }
0089:
0090:            public Token nextToken() throws TokenStreamException {
0091:                Token theRetToken = null;
0092:                tryAgain: for (;;) {
0093:                    Token _token = null;
0094:                    int _ttype = Token.INVALID_TYPE;
0095:                    resetText();
0096:                    try { // for char stream error handling
0097:                        try { // for lexical error handling
0098:                            switch (LA(1)) {
0099:                            case '(': {
0100:                                mSEP_OPENING_PARENTHESIS(true);
0101:                                theRetToken = _returnToken;
0102:                                break;
0103:                            }
0104:                            case ')': {
0105:                                mSEP_CLOSING_PARENTHESIS(true);
0106:                                theRetToken = _returnToken;
0107:                                break;
0108:                            }
0109:                            case ';': {
0110:                                mSEP_SEMICOLON(true);
0111:                                theRetToken = _returnToken;
0112:                                break;
0113:                            }
0114:                            case ',': {
0115:                                mSEP_COMMA(true);
0116:                                theRetToken = _returnToken;
0117:                                break;
0118:                            }
0119:                            case '=': {
0120:                                mOP_EQUAL(true);
0121:                                theRetToken = _returnToken;
0122:                                break;
0123:                            }
0124:                            case '>': {
0125:                                mOP_GREATER(true);
0126:                                theRetToken = _returnToken;
0127:                                break;
0128:                            }
0129:                            case '<': {
0130:                                mOP_LOWER(true);
0131:                                theRetToken = _returnToken;
0132:                                break;
0133:                            }
0134:                            case '!': {
0135:                                mOP_NOT(true);
0136:                                theRetToken = _returnToken;
0137:                                break;
0138:                            }
0139:                            case '~': {
0140:                                mOP_BITWISE_COMPLEMENT(true);
0141:                                theRetToken = _returnToken;
0142:                                break;
0143:                            }
0144:                            case '&': {
0145:                                mOP_BITWISE_AND(true);
0146:                                theRetToken = _returnToken;
0147:                                break;
0148:                            }
0149:                            case '|': {
0150:                                mOP_BITWISE_OR(true);
0151:                                theRetToken = _returnToken;
0152:                                break;
0153:                            }
0154:                            case '^': {
0155:                                mOP_BITWISE_XOR(true);
0156:                                theRetToken = _returnToken;
0157:                                break;
0158:                            }
0159:                            case '+': {
0160:                                mOP_BINARY_PLUS(true);
0161:                                theRetToken = _returnToken;
0162:                                break;
0163:                            }
0164:                            case '-': {
0165:                                mOP_BINARY_MINUS(true);
0166:                                theRetToken = _returnToken;
0167:                                break;
0168:                            }
0169:                            case '*': {
0170:                                mOP_MULTIPLY(true);
0171:                                theRetToken = _returnToken;
0172:                                break;
0173:                            }
0174:                            case '/': {
0175:                                mOP_DIVIDE(true);
0176:                                theRetToken = _returnToken;
0177:                                break;
0178:                            }
0179:                            case '\t':
0180:                            case '\n':
0181:                            case '\u000c':
0182:                            case '\r':
0183:                            case ' ': {
0184:                                mWHITESPACE(true);
0185:                                theRetToken = _returnToken;
0186:                                break;
0187:                            }
0188:                            case '\'': {
0189:                                mCHARACTER_LITERAL(true);
0190:                                theRetToken = _returnToken;
0191:                                break;
0192:                            }
0193:                            case '"': {
0194:                                mSTRING_LITERAL(true);
0195:                                theRetToken = _returnToken;
0196:                                break;
0197:                            }
0198:                            case '.':
0199:                            case '0':
0200:                            case '1':
0201:                            case '2':
0202:                            case '3':
0203:                            case '4':
0204:                            case '5':
0205:                            case '6':
0206:                            case '7':
0207:                            case '8':
0208:                            case '9': {
0209:                                mINT_OR_FLOAT_LITERAL_OR_DOT(true);
0210:                                theRetToken = _returnToken;
0211:                                break;
0212:                            }
0213:                            default:
0214:                                if ((_tokenSet_0.member(LA(1)))) {
0215:                                    mIDENTIFIER(true);
0216:                                    theRetToken = _returnToken;
0217:                                } else {
0218:                                    if (LA(1) == EOF_CHAR) {
0219:                                        uponEOF();
0220:                                        _returnToken = makeToken(Token.EOF_TYPE);
0221:                                    } else {
0222:                                        throw new NoViableAltForCharException(
0223:                                                LA(1), getFilename(),
0224:                                                getLine(), getColumn());
0225:                                    }
0226:                                }
0227:                            }
0228:                            if (_returnToken == null)
0229:                                continue tryAgain; // found SKIP token
0230:                            _ttype = _returnToken.getType();
0231:                            _returnToken.setType(_ttype);
0232:                            return _returnToken;
0233:                        } catch (RecognitionException e) {
0234:                            throw new TokenStreamRecognitionException(e);
0235:                        }
0236:                    } catch (CharStreamException cse) {
0237:                        if (cse instanceof  CharStreamIOException) {
0238:                            throw new TokenStreamIOException(
0239:                                    ((CharStreamIOException) cse).io);
0240:                        } else {
0241:                            throw new TokenStreamException(cse.getMessage());
0242:                        }
0243:                    }
0244:                }
0245:            }
0246:
0247:            public final void mSEP_OPENING_PARENTHESIS(boolean _createToken)
0248:                    throws RecognitionException, CharStreamException,
0249:                    TokenStreamException {
0250:                int _ttype;
0251:                Token _token = null;
0252:                int _begin = text.length();
0253:                _ttype = SEP_OPENING_PARENTHESIS;
0254:                int _saveIndex;
0255:
0256:                match('(');
0257:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0258:                    _token = makeToken(_ttype);
0259:                    _token.setText(new String(text.getBuffer(), _begin, text
0260:                            .length()
0261:                            - _begin));
0262:                }
0263:                _returnToken = _token;
0264:            }
0265:
0266:            public final void mSEP_CLOSING_PARENTHESIS(boolean _createToken)
0267:                    throws RecognitionException, CharStreamException,
0268:                    TokenStreamException {
0269:                int _ttype;
0270:                Token _token = null;
0271:                int _begin = text.length();
0272:                _ttype = SEP_CLOSING_PARENTHESIS;
0273:                int _saveIndex;
0274:
0275:                match(')');
0276:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0277:                    _token = makeToken(_ttype);
0278:                    _token.setText(new String(text.getBuffer(), _begin, text
0279:                            .length()
0280:                            - _begin));
0281:                }
0282:                _returnToken = _token;
0283:            }
0284:
0285:            public final void mSEP_SEMICOLON(boolean _createToken)
0286:                    throws RecognitionException, CharStreamException,
0287:                    TokenStreamException {
0288:                int _ttype;
0289:                Token _token = null;
0290:                int _begin = text.length();
0291:                _ttype = SEP_SEMICOLON;
0292:                int _saveIndex;
0293:
0294:                match(';');
0295:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0296:                    _token = makeToken(_ttype);
0297:                    _token.setText(new String(text.getBuffer(), _begin, text
0298:                            .length()
0299:                            - _begin));
0300:                }
0301:                _returnToken = _token;
0302:            }
0303:
0304:            public final void mSEP_COMMA(boolean _createToken)
0305:                    throws RecognitionException, CharStreamException,
0306:                    TokenStreamException {
0307:                int _ttype;
0308:                Token _token = null;
0309:                int _begin = text.length();
0310:                _ttype = SEP_COMMA;
0311:                int _saveIndex;
0312:
0313:                match(',');
0314:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0315:                    _token = makeToken(_ttype);
0316:                    _token.setText(new String(text.getBuffer(), _begin, text
0317:                            .length()
0318:                            - _begin));
0319:                }
0320:                _returnToken = _token;
0321:            }
0322:
0323:            public final void mOP_EQUAL(boolean _createToken)
0324:                    throws RecognitionException, CharStreamException,
0325:                    TokenStreamException {
0326:                int _ttype;
0327:                Token _token = null;
0328:                int _begin = text.length();
0329:                _ttype = OP_EQUAL;
0330:                int _saveIndex;
0331:
0332:                match("==");
0333:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0334:                    _token = makeToken(_ttype);
0335:                    _token.setText(new String(text.getBuffer(), _begin, text
0336:                            .length()
0337:                            - _begin));
0338:                }
0339:                _returnToken = _token;
0340:            }
0341:
0342:            public final void mOP_GREATER(boolean _createToken)
0343:                    throws RecognitionException, CharStreamException,
0344:                    TokenStreamException {
0345:                int _ttype;
0346:                Token _token = null;
0347:                int _begin = text.length();
0348:                _ttype = OP_GREATER;
0349:                int _saveIndex;
0350:
0351:                match('>');
0352:                {
0353:                    if ((LA(1) == '=')) {
0354:                        match('=');
0355:
0356:                        _ttype = OP_GREATER_OR_EQUAL;
0357:
0358:                    } else {
0359:                    }
0360:
0361:                }
0362:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0363:                    _token = makeToken(_ttype);
0364:                    _token.setText(new String(text.getBuffer(), _begin, text
0365:                            .length()
0366:                            - _begin));
0367:                }
0368:                _returnToken = _token;
0369:            }
0370:
0371:            public final void mOP_LOWER(boolean _createToken)
0372:                    throws RecognitionException, CharStreamException,
0373:                    TokenStreamException {
0374:                int _ttype;
0375:                Token _token = null;
0376:                int _begin = text.length();
0377:                _ttype = OP_LOWER;
0378:                int _saveIndex;
0379:
0380:                match('<');
0381:                {
0382:                    if ((LA(1) == '=')) {
0383:                        match('=');
0384:
0385:                        _ttype = OP_LOWER_OR_EQUAL;
0386:
0387:                    } else {
0388:                    }
0389:
0390:                }
0391:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0392:                    _token = makeToken(_ttype);
0393:                    _token.setText(new String(text.getBuffer(), _begin, text
0394:                            .length()
0395:                            - _begin));
0396:                }
0397:                _returnToken = _token;
0398:            }
0399:
0400:            public final void mOP_NOT(boolean _createToken)
0401:                    throws RecognitionException, CharStreamException,
0402:                    TokenStreamException {
0403:                int _ttype;
0404:                Token _token = null;
0405:                int _begin = text.length();
0406:                _ttype = OP_NOT;
0407:                int _saveIndex;
0408:
0409:                match('!');
0410:                {
0411:                    if ((LA(1) == '=')) {
0412:                        match('=');
0413:
0414:                        _ttype = OP_NOT_EQUAL;
0415:
0416:                    } else {
0417:                    }
0418:
0419:                }
0420:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0421:                    _token = makeToken(_ttype);
0422:                    _token.setText(new String(text.getBuffer(), _begin, text
0423:                            .length()
0424:                            - _begin));
0425:                }
0426:                _returnToken = _token;
0427:            }
0428:
0429:            public final void mOP_BITWISE_COMPLEMENT(boolean _createToken)
0430:                    throws RecognitionException, CharStreamException,
0431:                    TokenStreamException {
0432:                int _ttype;
0433:                Token _token = null;
0434:                int _begin = text.length();
0435:                _ttype = OP_BITWISE_COMPLEMENT;
0436:                int _saveIndex;
0437:
0438:                match('~');
0439:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0440:                    _token = makeToken(_ttype);
0441:                    _token.setText(new String(text.getBuffer(), _begin, text
0442:                            .length()
0443:                            - _begin));
0444:                }
0445:                _returnToken = _token;
0446:            }
0447:
0448:            public final void mOP_BITWISE_AND(boolean _createToken)
0449:                    throws RecognitionException, CharStreamException,
0450:                    TokenStreamException {
0451:                int _ttype;
0452:                Token _token = null;
0453:                int _begin = text.length();
0454:                _ttype = OP_BITWISE_AND;
0455:                int _saveIndex;
0456:
0457:                match('&');
0458:                {
0459:                    if ((LA(1) == '&')) {
0460:                        match('&');
0461:
0462:                        _ttype = OP_AND;
0463:
0464:                    } else {
0465:                    }
0466:
0467:                }
0468:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0469:                    _token = makeToken(_ttype);
0470:                    _token.setText(new String(text.getBuffer(), _begin, text
0471:                            .length()
0472:                            - _begin));
0473:                }
0474:                _returnToken = _token;
0475:            }
0476:
0477:            public final void mOP_BITWISE_OR(boolean _createToken)
0478:                    throws RecognitionException, CharStreamException,
0479:                    TokenStreamException {
0480:                int _ttype;
0481:                Token _token = null;
0482:                int _begin = text.length();
0483:                _ttype = OP_BITWISE_OR;
0484:                int _saveIndex;
0485:
0486:                match('|');
0487:                {
0488:                    if ((LA(1) == '|')) {
0489:                        match('|');
0490:
0491:                        _ttype = OP_OR;
0492:
0493:                    } else {
0494:                    }
0495:
0496:                }
0497:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0498:                    _token = makeToken(_ttype);
0499:                    _token.setText(new String(text.getBuffer(), _begin, text
0500:                            .length()
0501:                            - _begin));
0502:                }
0503:                _returnToken = _token;
0504:            }
0505:
0506:            public final void mOP_BITWISE_XOR(boolean _createToken)
0507:                    throws RecognitionException, CharStreamException,
0508:                    TokenStreamException {
0509:                int _ttype;
0510:                Token _token = null;
0511:                int _begin = text.length();
0512:                _ttype = OP_BITWISE_XOR;
0513:                int _saveIndex;
0514:
0515:                match('^');
0516:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0517:                    _token = makeToken(_ttype);
0518:                    _token.setText(new String(text.getBuffer(), _begin, text
0519:                            .length()
0520:                            - _begin));
0521:                }
0522:                _returnToken = _token;
0523:            }
0524:
0525:            public final void mOP_BINARY_PLUS(boolean _createToken)
0526:                    throws RecognitionException, CharStreamException,
0527:                    TokenStreamException {
0528:                int _ttype;
0529:                Token _token = null;
0530:                int _begin = text.length();
0531:                _ttype = OP_BINARY_PLUS;
0532:                int _saveIndex;
0533:
0534:                match('+');
0535:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0536:                    _token = makeToken(_ttype);
0537:                    _token.setText(new String(text.getBuffer(), _begin, text
0538:                            .length()
0539:                            - _begin));
0540:                }
0541:                _returnToken = _token;
0542:            }
0543:
0544:            public final void mOP_BINARY_MINUS(boolean _createToken)
0545:                    throws RecognitionException, CharStreamException,
0546:                    TokenStreamException {
0547:                int _ttype;
0548:                Token _token = null;
0549:                int _begin = text.length();
0550:                _ttype = OP_BINARY_MINUS;
0551:                int _saveIndex;
0552:
0553:                match('-');
0554:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0555:                    _token = makeToken(_ttype);
0556:                    _token.setText(new String(text.getBuffer(), _begin, text
0557:                            .length()
0558:                            - _begin));
0559:                }
0560:                _returnToken = _token;
0561:            }
0562:
0563:            public final void mOP_MULTIPLY(boolean _createToken)
0564:                    throws RecognitionException, CharStreamException,
0565:                    TokenStreamException {
0566:                int _ttype;
0567:                Token _token = null;
0568:                int _begin = text.length();
0569:                _ttype = OP_MULTIPLY;
0570:                int _saveIndex;
0571:
0572:                match('*');
0573:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0574:                    _token = makeToken(_ttype);
0575:                    _token.setText(new String(text.getBuffer(), _begin, text
0576:                            .length()
0577:                            - _begin));
0578:                }
0579:                _returnToken = _token;
0580:            }
0581:
0582:            public final void mOP_DIVIDE(boolean _createToken)
0583:                    throws RecognitionException, CharStreamException,
0584:                    TokenStreamException {
0585:                int _ttype;
0586:                Token _token = null;
0587:                int _begin = text.length();
0588:                _ttype = OP_DIVIDE;
0589:                int _saveIndex;
0590:
0591:                match('/');
0592:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0593:                    _token = makeToken(_ttype);
0594:                    _token.setText(new String(text.getBuffer(), _begin, text
0595:                            .length()
0596:                            - _begin));
0597:                }
0598:                _returnToken = _token;
0599:            }
0600:
0601:            public final void mWHITESPACE(boolean _createToken)
0602:                    throws RecognitionException, CharStreamException,
0603:                    TokenStreamException {
0604:                int _ttype;
0605:                Token _token = null;
0606:                int _begin = text.length();
0607:                _ttype = WHITESPACE;
0608:                int _saveIndex;
0609:
0610:                {
0611:                    int _cnt24 = 0;
0612:                    _loop24: do {
0613:                        switch (LA(1)) {
0614:                        case ' ': {
0615:                            match(' ');
0616:                            break;
0617:                        }
0618:                        case '\t': {
0619:                            match('\t');
0620:                            break;
0621:                        }
0622:                        case '\u000c': {
0623:                            match('\f');
0624:                            break;
0625:                        }
0626:                        case '\n':
0627:                        case '\r': {
0628:                            mLINE_TERMINATOR(false);
0629:                            break;
0630:                        }
0631:                        default: {
0632:                            if (_cnt24 >= 1) {
0633:                                break _loop24;
0634:                            } else {
0635:                                throw new NoViableAltForCharException(LA(1),
0636:                                        getFilename(), getLine(), getColumn());
0637:                            }
0638:                        }
0639:                        }
0640:                        _cnt24++;
0641:                    } while (true);
0642:                }
0643:
0644:                _ttype = Token.SKIP;
0645:
0646:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0647:                    _token = makeToken(_ttype);
0648:                    _token.setText(new String(text.getBuffer(), _begin, text
0649:                            .length()
0650:                            - _begin));
0651:                }
0652:                _returnToken = _token;
0653:            }
0654:
0655:            protected final void mLINE_TERMINATOR(boolean _createToken)
0656:                    throws RecognitionException, CharStreamException,
0657:                    TokenStreamException {
0658:                int _ttype;
0659:                Token _token = null;
0660:                int _begin = text.length();
0661:                _ttype = LINE_TERMINATOR;
0662:                int _saveIndex;
0663:
0664:                {
0665:                    {
0666:                        switch (LA(1)) {
0667:                        case '\r': {
0668:                            match('\r');
0669:                            break;
0670:                        }
0671:                        case '\n': {
0672:                            break;
0673:                        }
0674:                        default: {
0675:                            throw new NoViableAltForCharException(LA(1),
0676:                                    getFilename(), getLine(), getColumn());
0677:                        }
0678:                        }
0679:                    }
0680:                    match('\n');
0681:                }
0682:
0683:                newline();
0684:                _ttype = Token.SKIP;
0685:
0686:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0687:                    _token = makeToken(_ttype);
0688:                    _token.setText(new String(text.getBuffer(), _begin, text
0689:                            .length()
0690:                            - _begin));
0691:                }
0692:                _returnToken = _token;
0693:            }
0694:
0695:            public final void mIDENTIFIER(boolean _createToken)
0696:                    throws RecognitionException, CharStreamException,
0697:                    TokenStreamException {
0698:                int _ttype;
0699:                Token _token = null;
0700:                int _begin = text.length();
0701:                _ttype = IDENTIFIER;
0702:                int _saveIndex;
0703:
0704:                mIDENTIFIER_START(false);
0705:                {
0706:                    _loop27: do {
0707:                        if ((_tokenSet_1.member(LA(1)))) {
0708:                            mIDENTIFIER_PART(false);
0709:                        } else {
0710:                            break _loop27;
0711:                        }
0712:
0713:                    } while (true);
0714:                }
0715:                _ttype = testLiteralsTable(_ttype);
0716:                if (_createToken && _token == null && _ttype != Token.SKIP) {
0717:                    _token = makeToken(_ttype);
0718:                    _token.setText(new String(text.getBuffer(), _begin, text
0719:                            .length()
0720:                            - _begin));
0721:                }
0722:                _returnToken = _token;
0723:            }
0724:
0725:            protected final void mIDENTIFIER_START(boolean _createToken)
0726:                    throws RecognitionException, CharStreamException,
0727:                    TokenStreamException {
0728:                int _ttype;
0729:                Token _token = null;
0730:                int _begin = text.length();
0731:                _ttype = IDENTIFIER_START;
0732:                int _saveIndex;
0733:
0734:                {
0735:                    switch (LA(1)) {
0736:                    case '$': {
0737:                        match('\u0024');
0738:                        break;
0739:                    }
0740:                    case 'A':
0741:                    case 'B':
0742:                    case 'C':
0743:                    case 'D':
0744:                    case 'E':
0745:                    case 'F':
0746:                    case 'G':
0747:                    case 'H':
0748:                    case 'I':
0749:                    case 'J':
0750:                    case 'K':
0751:                    case 'L':
0752:                    case 'M':
0753:                    case 'N':
0754:                    case 'O':
0755:                    case 'P':
0756:                    case 'Q':
0757:                    case 'R':
0758:                    case 'S':
0759:                    case 'T':
0760:                    case 'U':
0761:                    case 'V':
0762:                    case 'W':
0763:                    case 'X':
0764:                    case 'Y':
0765:                    case 'Z': {
0766:                        matchRange('\u0041', '\u005a');
0767:                        break;
0768:                    }
0769:                    case '_': {
0770:                        match('\u005f');
0771:                        break;
0772:                    }
0773:                    case 'a':
0774:                    case 'b':
0775:                    case 'c':
0776:                    case 'd':
0777:                    case 'e':
0778:                    case 'f':
0779:                    case 'g':
0780:                    case 'h':
0781:                    case 'i':
0782:                    case 'j':
0783:                    case 'k':
0784:                    case 'l':
0785:                    case 'm':
0786:                    case 'n':
0787:                    case 'o':
0788:                    case 'p':
0789:                    case 'q':
0790:                    case 'r':
0791:                    case 's':
0792:                    case 't':
0793:                    case 'u':
0794:                    case 'v':
0795:                    case 'w':
0796:                    case 'x':
0797:                    case 'y':
0798:                    case 'z': {
0799:                        matchRange('\u0061', '\u007a');
0800:                        break;
0801:                    }
0802:                    case '\u00a2':
0803:                    case '\u00a3':
0804:                    case '\u00a4':
0805:                    case '\u00a5': {
0806:                        matchRange('\u00a2', '\u00a5');
0807:                        break;
0808:                    }
0809:                    case '\u00aa': {
0810:                        match('\u00aa');
0811:                        break;
0812:                    }
0813:                    case '\u00b5': {
0814:                        match('\u00b5');
0815:                        break;
0816:                    }
0817:                    case '\u00ba': {
0818:                        match('\u00ba');
0819:                        break;
0820:                    }
0821:                    case '\u00c0':
0822:                    case '\u00c1':
0823:                    case '\u00c2':
0824:                    case '\u00c3':
0825:                    case '\u00c4':
0826:                    case '\u00c5':
0827:                    case '\u00c6':
0828:                    case '\u00c7':
0829:                    case '\u00c8':
0830:                    case '\u00c9':
0831:                    case '\u00ca':
0832:                    case '\u00cb':
0833:                    case '\u00cc':
0834:                    case '\u00cd':
0835:                    case '\u00ce':
0836:                    case '\u00cf':
0837:                    case '\u00d0':
0838:                    case '\u00d1':
0839:                    case '\u00d2':
0840:                    case '\u00d3':
0841:                    case '\u00d4':
0842:                    case '\u00d5':
0843:                    case '\u00d6': {
0844:                        matchRange('\u00c0', '\u00d6');
0845:                        break;
0846:                    }
0847:                    case '\u00d8':
0848:                    case '\u00d9':
0849:                    case '\u00da':
0850:                    case '\u00db':
0851:                    case '\u00dc':
0852:                    case '\u00dd':
0853:                    case '\u00de':
0854:                    case '\u00df':
0855:                    case '\u00e0':
0856:                    case '\u00e1':
0857:                    case '\u00e2':
0858:                    case '\u00e3':
0859:                    case '\u00e4':
0860:                    case '\u00e5':
0861:                    case '\u00e6':
0862:                    case '\u00e7':
0863:                    case '\u00e8':
0864:                    case '\u00e9':
0865:                    case '\u00ea':
0866:                    case '\u00eb':
0867:                    case '\u00ec':
0868:                    case '\u00ed':
0869:                    case '\u00ee':
0870:                    case '\u00ef':
0871:                    case '\u00f0':
0872:                    case '\u00f1':
0873:                    case '\u00f2':
0874:                    case '\u00f3':
0875:                    case '\u00f4':
0876:                    case '\u00f5':
0877:                    case '\u00f6': {
0878:                        matchRange('\u00d8', '\u00f6');
0879:                        break;
0880:                    }
0881:                    case '\u01fa':
0882:                    case '\u01fb':
0883:                    case '\u01fc':
0884:                    case '\u01fd':
0885:                    case '\u01fe':
0886:                    case '\u01ff':
0887:                    case '\u0200':
0888:                    case '\u0201':
0889:                    case '\u0202':
0890:                    case '\u0203':
0891:                    case '\u0204':
0892:                    case '\u0205':
0893:                    case '\u0206':
0894:                    case '\u0207':
0895:                    case '\u0208':
0896:                    case '\u0209':
0897:                    case '\u020a':
0898:                    case '\u020b':
0899:                    case '\u020c':
0900:                    case '\u020d':
0901:                    case '\u020e':
0902:                    case '\u020f':
0903:                    case '\u0210':
0904:                    case '\u0211':
0905:                    case '\u0212':
0906:                    case '\u0213':
0907:                    case '\u0214':
0908:                    case '\u0215':
0909:                    case '\u0216':
0910:                    case '\u0217': {
0911:                        matchRange('\u01fa', '\u0217');
0912:                        break;
0913:                    }
0914:                    case '\u0250':
0915:                    case '\u0251':
0916:                    case '\u0252':
0917:                    case '\u0253':
0918:                    case '\u0254':
0919:                    case '\u0255':
0920:                    case '\u0256':
0921:                    case '\u0257':
0922:                    case '\u0258':
0923:                    case '\u0259':
0924:                    case '\u025a':
0925:                    case '\u025b':
0926:                    case '\u025c':
0927:                    case '\u025d':
0928:                    case '\u025e':
0929:                    case '\u025f':
0930:                    case '\u0260':
0931:                    case '\u0261':
0932:                    case '\u0262':
0933:                    case '\u0263':
0934:                    case '\u0264':
0935:                    case '\u0265':
0936:                    case '\u0266':
0937:                    case '\u0267':
0938:                    case '\u0268':
0939:                    case '\u0269':
0940:                    case '\u026a':
0941:                    case '\u026b':
0942:                    case '\u026c':
0943:                    case '\u026d':
0944:                    case '\u026e':
0945:                    case '\u026f':
0946:                    case '\u0270':
0947:                    case '\u0271':
0948:                    case '\u0272':
0949:                    case '\u0273':
0950:                    case '\u0274':
0951:                    case '\u0275':
0952:                    case '\u0276':
0953:                    case '\u0277':
0954:                    case '\u0278':
0955:                    case '\u0279':
0956:                    case '\u027a':
0957:                    case '\u027b':
0958:                    case '\u027c':
0959:                    case '\u027d':
0960:                    case '\u027e':
0961:                    case '\u027f':
0962:                    case '\u0280':
0963:                    case '\u0281':
0964:                    case '\u0282':
0965:                    case '\u0283':
0966:                    case '\u0284':
0967:                    case '\u0285':
0968:                    case '\u0286':
0969:                    case '\u0287':
0970:                    case '\u0288':
0971:                    case '\u0289':
0972:                    case '\u028a':
0973:                    case '\u028b':
0974:                    case '\u028c':
0975:                    case '\u028d':
0976:                    case '\u028e':
0977:                    case '\u028f':
0978:                    case '\u0290':
0979:                    case '\u0291':
0980:                    case '\u0292':
0981:                    case '\u0293':
0982:                    case '\u0294':
0983:                    case '\u0295':
0984:                    case '\u0296':
0985:                    case '\u0297':
0986:                    case '\u0298':
0987:                    case '\u0299':
0988:                    case '\u029a':
0989:                    case '\u029b':
0990:                    case '\u029c':
0991:                    case '\u029d':
0992:                    case '\u029e':
0993:                    case '\u029f':
0994:                    case '\u02a0':
0995:                    case '\u02a1':
0996:                    case '\u02a2':
0997:                    case '\u02a3':
0998:                    case '\u02a4':
0999:                    case '\u02a5':
1000:                    case '\u02a6':
1001:                    case '\u02a7':
1002:                    case '\u02a8': {
1003:                        matchRange('\u0250', '\u02a8');
1004:                        break;
1005:                    }
1006:                    case '\u02b0':
1007:                    case '\u02b1':
1008:                    case '\u02b2':
1009:                    case '\u02b3':
1010:                    case '\u02b4':
1011:                    case '\u02b5':
1012:                    case '\u02b6':
1013:                    case '\u02b7':
1014:                    case '\u02b8': {
1015:                        matchRange('\u02b0', '\u02b8');
1016:                        break;
1017:                    }
1018:                    case '\u02bb':
1019:                    case '\u02bc':
1020:                    case '\u02bd':
1021:                    case '\u02be':
1022:                    case '\u02bf':
1023:                    case '\u02c0':
1024:                    case '\u02c1': {
1025:                        matchRange('\u02bb', '\u02c1');
1026:                        break;
1027:                    }
1028:                    case '\u02d0':
1029:                    case '\u02d1': {
1030:                        matchRange('\u02d0', '\u02d1');
1031:                        break;
1032:                    }
1033:                    case '\u02e0':
1034:                    case '\u02e1':
1035:                    case '\u02e2':
1036:                    case '\u02e3':
1037:                    case '\u02e4': {
1038:                        matchRange('\u02e0', '\u02e4');
1039:                        break;
1040:                    }
1041:                    case '\u037a': {
1042:                        match('\u037a');
1043:                        break;
1044:                    }
1045:                    case '\u0386': {
1046:                        match('\u0386');
1047:                        break;
1048:                    }
1049:                    case '\u0388':
1050:                    case '\u0389':
1051:                    case '\u038a': {
1052:                        matchRange('\u0388', '\u038a');
1053:                        break;
1054:                    }
1055:                    case '\u038c': {
1056:                        match('\u038c');
1057:                        break;
1058:                    }
1059:                    case '\u038e':
1060:                    case '\u038f':
1061:                    case '\u0390':
1062:                    case '\u0391':
1063:                    case '\u0392':
1064:                    case '\u0393':
1065:                    case '\u0394':
1066:                    case '\u0395':
1067:                    case '\u0396':
1068:                    case '\u0397':
1069:                    case '\u0398':
1070:                    case '\u0399':
1071:                    case '\u039a':
1072:                    case '\u039b':
1073:                    case '\u039c':
1074:                    case '\u039d':
1075:                    case '\u039e':
1076:                    case '\u039f':
1077:                    case '\u03a0':
1078:                    case '\u03a1': {
1079:                        matchRange('\u038e', '\u03a1');
1080:                        break;
1081:                    }
1082:                    case '\u03a3':
1083:                    case '\u03a4':
1084:                    case '\u03a5':
1085:                    case '\u03a6':
1086:                    case '\u03a7':
1087:                    case '\u03a8':
1088:                    case '\u03a9':
1089:                    case '\u03aa':
1090:                    case '\u03ab':
1091:                    case '\u03ac':
1092:                    case '\u03ad':
1093:                    case '\u03ae':
1094:                    case '\u03af':
1095:                    case '\u03b0':
1096:                    case '\u03b1':
1097:                    case '\u03b2':
1098:                    case '\u03b3':
1099:                    case '\u03b4':
1100:                    case '\u03b5':
1101:                    case '\u03b6':
1102:                    case '\u03b7':
1103:                    case '\u03b8':
1104:                    case '\u03b9':
1105:                    case '\u03ba':
1106:                    case '\u03bb':
1107:                    case '\u03bc':
1108:                    case '\u03bd':
1109:                    case '\u03be':
1110:                    case '\u03bf':
1111:                    case '\u03c0':
1112:                    case '\u03c1':
1113:                    case '\u03c2':
1114:                    case '\u03c3':
1115:                    case '\u03c4':
1116:                    case '\u03c5':
1117:                    case '\u03c6':
1118:                    case '\u03c7':
1119:                    case '\u03c8':
1120:                    case '\u03c9':
1121:                    case '\u03ca':
1122:                    case '\u03cb':
1123:                    case '\u03cc':
1124:                    case '\u03cd':
1125:                    case '\u03ce': {
1126:                        matchRange('\u03a3', '\u03ce');
1127:                        break;
1128:                    }
1129:                    case '\u03d0':
1130:                    case '\u03d1':
1131:                    case '\u03d2':
1132:                    case '\u03d3':
1133:                    case '\u03d4':
1134:                    case '\u03d5':
1135:                    case '\u03d6': {
1136:                        matchRange('\u03d0', '\u03d6');
1137:                        break;
1138:                    }
1139:                    case '\u03da': {
1140:                        match('\u03da');
1141:                        break;
1142:                    }
1143:                    case '\u03dc': {
1144:                        match('\u03dc');
1145:                        break;
1146:                    }
1147:                    case '\u03de': {
1148:                        match('\u03de');
1149:                        break;
1150:                    }
1151:                    case '\u03e0': {
1152:                        match('\u03e0');
1153:                        break;
1154:                    }
1155:                    case '\u03e2':
1156:                    case '\u03e3':
1157:                    case '\u03e4':
1158:                    case '\u03e5':
1159:                    case '\u03e6':
1160:                    case '\u03e7':
1161:                    case '\u03e8':
1162:                    case '\u03e9':
1163:                    case '\u03ea':
1164:                    case '\u03eb':
1165:                    case '\u03ec':
1166:                    case '\u03ed':
1167:                    case '\u03ee':
1168:                    case '\u03ef':
1169:                    case '\u03f0':
1170:                    case '\u03f1':
1171:                    case '\u03f2':
1172:                    case '\u03f3': {
1173:                        matchRange('\u03e2', '\u03f3');
1174:                        break;
1175:                    }
1176:                    case '\u0401':
1177:                    case '\u0402':
1178:                    case '\u0403':
1179:                    case '\u0404':
1180:                    case '\u0405':
1181:                    case '\u0406':
1182:                    case '\u0407':
1183:                    case '\u0408':
1184:                    case '\u0409':
1185:                    case '\u040a':
1186:                    case '\u040b':
1187:                    case '\u040c': {
1188:                        matchRange('\u0401', '\u040c');
1189:                        break;
1190:                    }
1191:                    case '\u040e':
1192:                    case '\u040f':
1193:                    case '\u0410':
1194:                    case '\u0411':
1195:                    case '\u0412':
1196:                    case '\u0413':
1197:                    case '\u0414':
1198:                    case '\u0415':
1199:                    case '\u0416':
1200:                    case '\u0417':
1201:                    case '\u0418':
1202:                    case '\u0419':
1203:                    case '\u041a':
1204:                    case '\u041b':
1205:                    case '\u041c':
1206:                    case '\u041d':
1207:                    case '\u041e':
1208:                    case '\u041f':
1209:                    case '\u0420':
1210:                    case '\u0421':
1211:                    case '\u0422':
1212:                    case '\u0423':
1213:                    case '\u0424':
1214:                    case '\u0425':
1215:                    case '\u0426':
1216:                    case '\u0427':
1217:                    case '\u0428':
1218:                    case '\u0429':
1219:                    case '\u042a':
1220:                    case '\u042b':
1221:                    case '\u042c':
1222:                    case '\u042d':
1223:                    case '\u042e':
1224:                    case '\u042f':
1225:                    case '\u0430':
1226:                    case '\u0431':
1227:                    case '\u0432':
1228:                    case '\u0433':
1229:                    case '\u0434':
1230:                    case '\u0435':
1231:                    case '\u0436':
1232:                    case '\u0437':
1233:                    case '\u0438':
1234:                    case '\u0439':
1235:                    case '\u043a':
1236:                    case '\u043b':
1237:                    case '\u043c':
1238:                    case '\u043d':
1239:                    case '\u043e':
1240:                    case '\u043f':
1241:                    case '\u0440':
1242:                    case '\u0441':
1243:                    case '\u0442':
1244:                    case '\u0443':
1245:                    case '\u0444':
1246:                    case '\u0445':
1247:                    case '\u0446':
1248:                    case '\u0447':
1249:                    case '\u0448':
1250:                    case '\u0449':
1251:                    case '\u044a':
1252:                    case '\u044b':
1253:                    case '\u044c':
1254:                    case '\u044d':
1255:                    case '\u044e':
1256:                    case '\u044f': {
1257:                        matchRange('\u040e', '\u044f');
1258:                        break;
1259:                    }
1260:                    case '\u0451':
1261:                    case '\u0452':
1262:                    case '\u0453':
1263:                    case '\u0454':
1264:                    case '\u0455':
1265:                    case '\u0456':
1266:                    case '\u0457':
1267:                    case '\u0458':
1268:                    case '\u0459':
1269:                    case '\u045a':
1270:                    case '\u045b':
1271:                    case '\u045c': {
1272:                        matchRange('\u0451', '\u045c');
1273:                        break;
1274:                    }
1275:                    case '\u045e':
1276:                    case '\u045f':
1277:                    case '\u0460':
1278:                    case '\u0461':
1279:                    case '\u0462':
1280:                    case '\u0463':
1281:                    case '\u0464':
1282:                    case '\u0465':
1283:                    case '\u0466':
1284:                    case '\u0467':
1285:                    case '\u0468':
1286:                    case '\u0469':
1287:                    case '\u046a':
1288:                    case '\u046b':
1289:                    case '\u046c':
1290:                    case '\u046d':
1291:                    case '\u046e':
1292:                    case '\u046f':
1293:                    case '\u0470':
1294:                    case '\u0471':
1295:                    case '\u0472':
1296:                    case '\u0473':
1297:                    case '\u0474':
1298:                    case '\u0475':
1299:                    case '\u0476':
1300:                    case '\u0477':
1301:                    case '\u0478':
1302:                    case '\u0479':
1303:                    case '\u047a':
1304:                    case '\u047b':
1305:                    case '\u047c':
1306:                    case '\u047d':
1307:                    case '\u047e':
1308:                    case '\u047f':
1309:                    case '\u0480':
1310:                    case '\u0481': {
1311:                        matchRange('\u045e', '\u0481');
1312:                        break;
1313:                    }
1314:                    case '\u0490':
1315:                    case '\u0491':
1316:                    case '\u0492':
1317:                    case '\u0493':
1318:                    case '\u0494':
1319:                    case '\u0495':
1320:                    case '\u0496':
1321:                    case '\u0497':
1322:                    case '\u0498':
1323:                    case '\u0499':
1324:                    case '\u049a':
1325:                    case '\u049b':
1326:                    case '\u049c':
1327:                    case '\u049d':
1328:                    case '\u049e':
1329:                    case '\u049f':
1330:                    case '\u04a0':
1331:                    case '\u04a1':
1332:                    case '\u04a2':
1333:                    case '\u04a3':
1334:                    case '\u04a4':
1335:                    case '\u04a5':
1336:                    case '\u04a6':
1337:                    case '\u04a7':
1338:                    case '\u04a8':
1339:                    case '\u04a9':
1340:                    case '\u04aa':
1341:                    case '\u04ab':
1342:                    case '\u04ac':
1343:                    case '\u04ad':
1344:                    case '\u04ae':
1345:                    case '\u04af':
1346:                    case '\u04b0':
1347:                    case '\u04b1':
1348:                    case '\u04b2':
1349:                    case '\u04b3':
1350:                    case '\u04b4':
1351:                    case '\u04b5':
1352:                    case '\u04b6':
1353:                    case '\u04b7':
1354:                    case '\u04b8':
1355:                    case '\u04b9':
1356:                    case '\u04ba':
1357:                    case '\u04bb':
1358:                    case '\u04bc':
1359:                    case '\u04bd':
1360:                    case '\u04be':
1361:                    case '\u04bf':
1362:                    case '\u04c0':
1363:                    case '\u04c1':
1364:                    case '\u04c2':
1365:                    case '\u04c3':
1366:                    case '\u04c4': {
1367:                        matchRange('\u0490', '\u04c4');
1368:                        break;
1369:                    }
1370:                    case '\u04c7':
1371:                    case '\u04c8': {
1372:                        matchRange('\u04c7', '\u04c8');
1373:                        break;
1374:                    }
1375:                    case '\u04cb':
1376:                    case '\u04cc': {
1377:                        matchRange('\u04cb', '\u04cc');
1378:                        break;
1379:                    }
1380:                    case '\u04d0':
1381:                    case '\u04d1':
1382:                    case '\u04d2':
1383:                    case '\u04d3':
1384:                    case '\u04d4':
1385:                    case '\u04d5':
1386:                    case '\u04d6':
1387:                    case '\u04d7':
1388:                    case '\u04d8':
1389:                    case '\u04d9':
1390:                    case '\u04da':
1391:                    case '\u04db':
1392:                    case '\u04dc':
1393:                    case '\u04dd':
1394:                    case '\u04de':
1395:                    case '\u04df':
1396:                    case '\u04e0':
1397:                    case '\u04e1':
1398:                    case '\u04e2':
1399:                    case '\u04e3':
1400:                    case '\u04e4':
1401:                    case '\u04e5':
1402:                    case '\u04e6':
1403:                    case '\u04e7':
1404:                    case '\u04e8':
1405:                    case '\u04e9':
1406:                    case '\u04ea':
1407:                    case '\u04eb': {
1408:                        matchRange('\u04d0', '\u04eb');
1409:                        break;
1410:                    }
1411:                    case '\u04ee':
1412:                    case '\u04ef':
1413:                    case '\u04f0':
1414:                    case '\u04f1':
1415:                    case '\u04f2':
1416:                    case '\u04f3':
1417:                    case '\u04f4':
1418:                    case '\u04f5': {
1419:                        matchRange('\u04ee', '\u04f5');
1420:                        break;
1421:                    }
1422:                    case '\u04f8':
1423:                    case '\u04f9': {
1424:                        matchRange('\u04f8', '\u04f9');
1425:                        break;
1426:                    }
1427:                    case '\u0531':
1428:                    case '\u0532':
1429:                    case '\u0533':
1430:                    case '\u0534':
1431:                    case '\u0535':
1432:                    case '\u0536':
1433:                    case '\u0537':
1434:                    case '\u0538':
1435:                    case '\u0539':
1436:                    case '\u053a':
1437:                    case '\u053b':
1438:                    case '\u053c':
1439:                    case '\u053d':
1440:                    case '\u053e':
1441:                    case '\u053f':
1442:                    case '\u0540':
1443:                    case '\u0541':
1444:                    case '\u0542':
1445:                    case '\u0543':
1446:                    case '\u0544':
1447:                    case '\u0545':
1448:                    case '\u0546':
1449:                    case '\u0547':
1450:                    case '\u0548':
1451:                    case '\u0549':
1452:                    case '\u054a':
1453:                    case '\u054b':
1454:                    case '\u054c':
1455:                    case '\u054d':
1456:                    case '\u054e':
1457:                    case '\u054f':
1458:                    case '\u0550':
1459:                    case '\u0551':
1460:                    case '\u0552':
1461:                    case '\u0553':
1462:                    case '\u0554':
1463:                    case '\u0555':
1464:                    case '\u0556': {
1465:                        matchRange('\u0531', '\u0556');
1466:                        break;
1467:                    }
1468:                    case '\u0559': {
1469:                        match('\u0559');
1470:                        break;
1471:                    }
1472:                    case '\u0561':
1473:                    case '\u0562':
1474:                    case '\u0563':
1475:                    case '\u0564':
1476:                    case '\u0565':
1477:                    case '\u0566':
1478:                    case '\u0567':
1479:                    case '\u0568':
1480:                    case '\u0569':
1481:                    case '\u056a':
1482:                    case '\u056b':
1483:                    case '\u056c':
1484:                    case '\u056d':
1485:                    case '\u056e':
1486:                    case '\u056f':
1487:                    case '\u0570':
1488:                    case '\u0571':
1489:                    case '\u0572':
1490:                    case '\u0573':
1491:                    case '\u0574':
1492:                    case '\u0575':
1493:                    case '\u0576':
1494:                    case '\u0577':
1495:                    case '\u0578':
1496:                    case '\u0579':
1497:                    case '\u057a':
1498:                    case '\u057b':
1499:                    case '\u057c':
1500:                    case '\u057d':
1501:                    case '\u057e':
1502:                    case '\u057f':
1503:                    case '\u0580':
1504:                    case '\u0581':
1505:                    case '\u0582':
1506:                    case '\u0583':
1507:                    case '\u0584':
1508:                    case '\u0585':
1509:                    case '\u0586':
1510:                    case '\u0587': {
1511:                        matchRange('\u0561', '\u0587');
1512:                        break;
1513:                    }
1514:                    case '\u05d0':
1515:                    case '\u05d1':
1516:                    case '\u05d2':
1517:                    case '\u05d3':
1518:                    case '\u05d4':
1519:                    case '\u05d5':
1520:                    case '\u05d6':
1521:                    case '\u05d7':
1522:                    case '\u05d8':
1523:                    case '\u05d9':
1524:                    case '\u05da':
1525:                    case '\u05db':
1526:                    case '\u05dc':
1527:                    case '\u05dd':
1528:                    case '\u05de':
1529:                    case '\u05df':
1530:                    case '\u05e0':
1531:                    case '\u05e1':
1532:                    case '\u05e2':
1533:                    case '\u05e3':
1534:                    case '\u05e4':
1535:                    case '\u05e5':
1536:                    case '\u05e6':
1537:                    case '\u05e7':
1538:                    case '\u05e8':
1539:                    case '\u05e9':
1540:                    case '\u05ea': {
1541:                        matchRange('\u05d0', '\u05ea');
1542:                        break;
1543:                    }
1544:                    case '\u05f0':
1545:                    case '\u05f1':
1546:                    case '\u05f2': {
1547:                        matchRange('\u05f0', '\u05f2');
1548:                        break;
1549:                    }
1550:                    case '\u0621':
1551:                    case '\u0622':
1552:                    case '\u0623':
1553:                    case '\u0624':
1554:                    case '\u0625':
1555:                    case '\u0626':
1556:                    case '\u0627':
1557:                    case '\u0628':
1558:                    case '\u0629':
1559:                    case '\u062a':
1560:                    case '\u062b':
1561:                    case '\u062c':
1562:                    case '\u062d':
1563:                    case '\u062e':
1564:                    case '\u062f':
1565:                    case '\u0630':
1566:                    case '\u0631':
1567:                    case '\u0632':
1568:                    case '\u0633':
1569:                    case '\u0634':
1570:                    case '\u0635':
1571:                    case '\u0636':
1572:                    case '\u0637':
1573:                    case '\u0638':
1574:                    case '\u0639':
1575:                    case '\u063a': {
1576:                        matchRange('\u0621', '\u063a');
1577:                        break;
1578:                    }
1579:                    case '\u0640':
1580:                    case '\u0641':
1581:                    case '\u0642':
1582:                    case '\u0643':
1583:                    case '\u0644':
1584:                    case '\u0645':
1585:                    case '\u0646':
1586:                    case '\u0647':
1587:                    case '\u0648':
1588:                    case '\u0649':
1589:                    case '\u064a': {
1590:                        matchRange('\u0640', '\u064a');
1591:                        break;
1592:                    }
1593:                    case '\u0671':
1594:                    case '\u0672':
1595:                    case '\u0673':
1596:                    case '\u0674':
1597:                    case '\u0675':
1598:                    case '\u0676':
1599:                    case '\u0677':
1600:                    case '\u0678':
1601:                    case '\u0679':
1602:                    case '\u067a':
1603:                    case '\u067b':
1604:                    case '\u067c':
1605:                    case '\u067d':
1606:                    case '\u067e':
1607:                    case '\u067f':
1608:                    case '\u0680':
1609:                    case '\u0681':
1610:                    case '\u0682':
1611:                    case '\u0683':
1612:                    case '\u0684':
1613:                    case '\u0685':
1614:                    case '\u0686':
1615:                    case '\u0687':
1616:                    case '\u0688':
1617:                    case '\u0689':
1618:                    case '\u068a':
1619:                    case '\u068b':
1620:                    case '\u068c':
1621:                    case '\u068d':
1622:                    case '\u068e':
1623:                    case '\u068f':
1624:                    case '\u0690':
1625:                    case '\u0691':
1626:                    case '\u0692':
1627:                    case '\u0693':
1628:                    case '\u0694':
1629:                    case '\u0695':
1630:                    case '\u0696':
1631:                    case '\u0697':
1632:                    case '\u0698':
1633:                    case '\u0699':
1634:                    case '\u069a':
1635:                    case '\u069b':
1636:                    case '\u069c':
1637:                    case '\u069d':
1638:                    case '\u069e':
1639:                    case '\u069f':
1640:                    case '\u06a0':
1641:                    case '\u06a1':
1642:                    case '\u06a2':
1643:                    case '\u06a3':
1644:                    case '\u06a4':
1645:                    case '\u06a5':
1646:                    case '\u06a6':
1647:                    case '\u06a7':
1648:                    case '\u06a8':
1649:                    case '\u06a9':
1650:                    case '\u06aa':
1651:                    case '\u06ab':
1652:                    case '\u06ac':
1653:                    case '\u06ad':
1654:                    case '\u06ae':
1655:                    case '\u06af':
1656:                    case '\u06b0':
1657:                    case '\u06b1':
1658:                    case '\u06b2':
1659:                    case '\u06b3':
1660:                    case '\u06b4':
1661:                    case '\u06b5':
1662:                    case '\u06b6':
1663:                    case '\u06b7': {
1664:                        matchRange('\u0671', '\u06b7');
1665:                        break;
1666:                    }
1667:                    case '\u06ba':
1668:                    case '\u06bb':
1669:                    case '\u06bc':
1670:                    case '\u06bd':
1671:                    case '\u06be': {
1672:                        matchRange('\u06ba', '\u06be');
1673:                        break;
1674:                    }
1675:                    case '\u06c0':
1676:                    case '\u06c1':
1677:                    case '\u06c2':
1678:                    case '\u06c3':
1679:                    case '\u06c4':
1680:                    case '\u06c5':
1681:                    case '\u06c6':
1682:                    case '\u06c7':
1683:                    case '\u06c8':
1684:                    case '\u06c9':
1685:                    case '\u06ca':
1686:                    case '\u06cb':
1687:                    case '\u06cc':
1688:                    case '\u06cd':
1689:                    case '\u06ce': {
1690:                        matchRange('\u06c0', '\u06ce');
1691:                        break;
1692:                    }
1693:                    case '\u06d0':
1694:                    case '\u06d1':
1695:                    case '\u06d2':
1696:                    case '\u06d3': {
1697:                        matchRange('\u06d0', '\u06d3');
1698:                        break;
1699:                    }
1700:                    case '\u06d5': {
1701:                        match('\u06d5');
1702:                        break;
1703:                    }
1704:                    case '\u06e5':
1705:                    case '\u06e6': {
1706:                        matchRange('\u06e5', '\u06e6');
1707:                        break;
1708:                    }
1709:                    case '\u0905':
1710:                    case '\u0906':
1711:                    case '\u0907':
1712:                    case '\u0908':
1713:                    case '\u0909':
1714:                    case '\u090a':
1715:                    case '\u090b':
1716:                    case '\u090c':
1717:                    case '\u090d':
1718:                    case '\u090e':
1719:                    case '\u090f':
1720:                    case '\u0910':
1721:                    case '\u0911':
1722:                    case '\u0912':
1723:                    case '\u0913':
1724:                    case '\u0914':
1725:                    case '\u0915':
1726:                    case '\u0916':
1727:                    case '\u0917':
1728:                    case '\u0918':
1729:                    case '\u0919':
1730:                    case '\u091a':
1731:                    case '\u091b':
1732:                    case '\u091c':
1733:                    case '\u091d':
1734:                    case '\u091e':
1735:                    case '\u091f':
1736:                    case '\u0920':
1737:                    case '\u0921':
1738:                    case '\u0922':
1739:                    case '\u0923':
1740:                    case '\u0924':
1741:                    case '\u0925':
1742:                    case '\u0926':
1743:                    case '\u0927':
1744:                    case '\u0928':
1745:                    case '\u0929':
1746:                    case '\u092a':
1747:                    case '\u092b':
1748:                    case '\u092c':
1749:                    case '\u092d':
1750:                    case '\u092e':
1751:                    case '\u092f':
1752:                    case '\u0930':
1753:                    case '\u0931':
1754:                    case '\u0932':
1755:                    case '\u0933':
1756:                    case '\u0934':
1757:                    case '\u0935':
1758:                    case '\u0936':
1759:                    case '\u0937':
1760:                    case '\u0938':
1761:                    case '\u0939': {
1762:                        matchRange('\u0905', '\u0939');
1763:                        break;
1764:                    }
1765:                    case '\u093d': {
1766:                        match('\u093d');
1767:                        break;
1768:                    }
1769:                    case '\u0958':
1770:                    case '\u0959':
1771:                    case '\u095a':
1772:                    case '\u095b':
1773:                    case '\u095c':
1774:                    case '\u095d':
1775:                    case '\u095e':
1776:                    case '\u095f':
1777:                    case '\u0960':
1778:                    case '\u0961': {
1779:                        matchRange('\u0958', '\u0961');
1780:                        break;
1781:                    }
1782:                    case '\u0985':
1783:                    case '\u0986':
1784:                    case '\u0987':
1785:                    case '\u0988':
1786:                    case '\u0989':
1787:                    case '\u098a':
1788:                    case '\u098b':
1789:                    case '\u098c': {
1790:                        matchRange('\u0985', '\u098c');
1791:                        break;
1792:                    }
1793:                    case '\u098f':
1794:                    case '\u0990': {
1795:                        matchRange('\u098f', '\u0990');
1796:                        break;
1797:                    }
1798:                    case '\u0993':
1799:                    case '\u0994':
1800:                    case '\u0995':
1801:                    case '\u0996':
1802:                    case '\u0997':
1803:                    case '\u0998':
1804:                    case '\u0999':
1805:                    case '\u099a':
1806:                    case '\u099b':
1807:                    case '\u099c':
1808:                    case '\u099d':
1809:                    case '\u099e':
1810:                    case '\u099f':
1811:                    case '\u09a0':
1812:                    case '\u09a1':
1813:                    case '\u09a2':
1814:                    case '\u09a3':
1815:                    case '\u09a4':
1816:                    case '\u09a5':
1817:                    case '\u09a6':
1818:                    case '\u09a7':
1819:                    case '\u09a8': {
1820:                        matchRange('\u0993', '\u09a8');
1821:                        break;
1822:                    }
1823:                    case '\u09aa':
1824:                    case '\u09ab':
1825:                    case '\u09ac':
1826:                    case '\u09ad':
1827:                    case '\u09ae':
1828:                    case '\u09af':
1829:                    case '\u09b0': {
1830:                        matchRange('\u09aa', '\u09b0');
1831:                        break;
1832:                    }
1833:                    case '\u09b2': {
1834:                        match('\u09b2');
1835:                        break;
1836:                    }
1837:                    case '\u09b6':
1838:                    case '\u09b7':
1839:                    case '\u09b8':
1840:                    case '\u09b9': {
1841:                        matchRange('\u09b6', '\u09b9');
1842:                        break;
1843:                    }
1844:                    case '\u09dc':
1845:                    case '\u09dd': {
1846:                        matchRange('\u09dc', '\u09dd');
1847:                        break;
1848:                    }
1849:                    case '\u09df':
1850:                    case '\u09e0':
1851:                    case '\u09e1': {
1852:                        matchRange('\u09df', '\u09e1');
1853:                        break;
1854:                    }
1855:                    case '\u09f0':
1856:                    case '\u09f1':
1857:                    case '\u09f2':
1858:                    case '\u09f3': {
1859:                        matchRange('\u09f0', '\u09f3');
1860:                        break;
1861:                    }
1862:                    case '\u0a05':
1863:                    case '\u0a06':
1864:                    case '\u0a07':
1865:                    case '\u0a08':
1866:                    case '\u0a09':
1867:                    case '\u0a0a': {
1868:                        matchRange('\u0a05', '\u0a0a');
1869:                        break;
1870:                    }
1871:                    case '\u0a0f':
1872:                    case '\u0a10': {
1873:                        matchRange('\u0a0f', '\u0a10');
1874:                        break;
1875:                    }
1876:                    case '\u0a13':
1877:                    case '\u0a14':
1878:                    case '\u0a15':
1879:                    case '\u0a16':
1880:                    case '\u0a17':
1881:                    case '\u0a18':
1882:                    case '\u0a19':
1883:                    case '\u0a1a':
1884:                    case '\u0a1b':
1885:                    case '\u0a1c':
1886:                    case '\u0a1d':
1887:                    case '\u0a1e':
1888:                    case '\u0a1f':
1889:                    case '\u0a20':
1890:                    case '\u0a21':
1891:                    case '\u0a22':
1892:                    case '\u0a23':
1893:                    case '\u0a24':
1894:                    case '\u0a25':
1895:                    case '\u0a26':
1896:                    case '\u0a27':
1897:                    case '\u0a28': {
1898:                        matchRange('\u0a13', '\u0a28');
1899:                        break;
1900:                    }
1901:                    case '\u0a2a':
1902:                    case '\u0a2b':
1903:                    case '\u0a2c':
1904:                    case '\u0a2d':
1905:                    case '\u0a2e':
1906:                    case '\u0a2f':
1907:                    case '\u0a30': {
1908:                        matchRange('\u0a2a', '\u0a30');
1909:                        break;
1910:                    }
1911:                    case '\u0a32':
1912:                    case '\u0a33': {
1913:                        matchRange('\u0a32', '\u0a33');
1914:                        break;
1915:                    }
1916:                    case '\u0a35':
1917:                    case '\u0a36': {
1918:                        matchRange('\u0a35', '\u0a36');
1919:                        break;
1920:                    }
1921:                    case '\u0a38':
1922:                    case '\u0a39': {
1923:                        matchRange('\u0a38', '\u0a39');
1924:                        break;
1925:                    }
1926:                    case '\u0a59':
1927:                    case '\u0a5a':
1928:                    case '\u0a5b':
1929:                    case '\u0a5c': {
1930:                        matchRange('\u0a59', '\u0a5c');
1931:                        break;
1932:                    }
1933:                    case '\u0a5e': {
1934:                        match('\u0a5e');
1935:                        break;
1936:                    }
1937:                    case '\u0a72':
1938:                    case '\u0a73':
1939:                    case '\u0a74': {
1940:                        matchRange('\u0a72', '\u0a74');
1941:                        break;
1942:                    }
1943:                    case '\u0a85':
1944:                    case '\u0a86':
1945:                    case '\u0a87':
1946:                    case '\u0a88':
1947:                    case '\u0a89':
1948:                    case '\u0a8a':
1949:                    case '\u0a8b': {
1950:                        matchRange('\u0a85', '\u0a8b');
1951:                        break;
1952:                    }
1953:                    case '\u0a8d': {
1954:                        match('\u0a8d');
1955:                        break;
1956:                    }
1957:                    case '\u0a8f':
1958:                    case '\u0a90':
1959:                    case '\u0a91': {
1960:                        matchRange('\u0a8f', '\u0a91');
1961:                        break;
1962:                    }
1963:                    case '\u0a93':
1964:                    case '\u0a94':
1965:                    case '\u0a95':
1966:                    case '\u0a96':
1967:                    case '\u0a97':
1968:                    case '\u0a98':
1969:                    case '\u0a99':
1970:                    case '\u0a9a':
1971:                    case '\u0a9b':
1972:                    case '\u0a9c':
1973:                    case '\u0a9d':
1974:                    case '\u0a9e':
1975:                    case '\u0a9f':
1976:                    case '\u0aa0':
1977:                    case '\u0aa1':
1978:                    case '\u0aa2':
1979:                    case '\u0aa3':
1980:                    case '\u0aa4':
1981:                    case '\u0aa5':
1982:                    case '\u0aa6':
1983:                    case '\u0aa7':
1984:                    case '\u0aa8': {
1985:                        matchRange('\u0a93', '\u0aa8');
1986:                        break;
1987:                    }
1988:                    case '\u0aaa':
1989:                    case '\u0aab':
1990:                    case '\u0aac':
1991:                    case '\u0aad':
1992:                    case '\u0aae':
1993:                    case '\u0aaf':
1994:                    case '\u0ab0': {
1995:                        matchRange('\u0aaa', '\u0ab0');
1996:                        break;
1997:                    }
1998:                    case '\u0ab2':
1999:                    case '\u0ab3': {
2000:                        matchRange('\u0ab2', '\u0ab3');
2001:                        break;
2002:                    }
2003:                    case '\u0ab5':
2004:                    case '\u0ab6':
2005:                    case '\u0ab7':
2006:                    case '\u0ab8':
2007:                    case '\u0ab9': {
2008:                        matchRange('\u0ab5', '\u0ab9');
2009:                        break;
2010:                    }
2011:                    case '\u0abd': {
2012:                        match('\u0abd');
2013:                        break;
2014:                    }
2015:                    case '\u0ae0': {
2016:                        match('\u0ae0');
2017:                        break;
2018:                    }
2019:                    case '\u0b05':
2020:                    case '\u0b06':
2021:                    case '\u0b07':
2022:                    case '\u0b08':
2023:                    case '\u0b09':
2024:                    case '\u0b0a':
2025:                    case '\u0b0b':
2026:                    case '\u0b0c': {
2027:                        matchRange('\u0b05', '\u0b0c');
2028:                        break;
2029:                    }
2030:                    case '\u0b0f':
2031:                    case '\u0b10': {
2032:                        matchRange('\u0b0f', '\u0b10');
2033:                        break;
2034:                    }
2035:                    case '\u0b13':
2036:                    case '\u0b14':
2037:                    case '\u0b15':
2038:                    case '\u0b16':
2039:                    case '\u0b17':
2040:                    case '\u0b18':
2041:                    case '\u0b19':
2042:                    case '\u0b1a':
2043:                    case '\u0b1b':
2044:                    case '\u0b1c':
2045:                    case '\u0b1d':
2046:                    case '\u0b1e':
2047:                    case '\u0b1f':
2048:                    case '\u0b20':
2049:                    case '\u0b21':
2050:                    case '\u0b22':
2051:                    case '\u0b23':
2052:                    case '\u0b24':
2053:                    case '\u0b25':
2054:                    case '\u0b26':
2055:                    case '\u0b27':
2056:                    case '\u0b28': {
2057:                        matchRange('\u0b13', '\u0b28');
2058:                        break;
2059:                    }
2060:                    case '\u0b2a':
2061:                    case '\u0b2b':
2062:                    case '\u0b2c':
2063:                    case '\u0b2d':
2064:                    case '\u0b2e':
2065:                    case '\u0b2f':
2066:                    case '\u0b30': {
2067:                        matchRange('\u0b2a', '\u0b30');
2068:                        break;
2069:                    }
2070:                    case '\u0b32':
2071:                    case '\u0b33': {
2072:                        matchRange('\u0b32', '\u0b33');
2073:                        break;
2074:                    }
2075:                    case '\u0b36':
2076:                    case '\u0b37':
2077:                    case '\u0b38':
2078:                    case '\u0b39': {
2079:                        matchRange('\u0b36', '\u0b39');
2080:                        break;
2081:                    }
2082:                    case '\u0b3d': {
2083:                        match('\u0b3d');
2084:                        break;
2085:                    }
2086:                    case '\u0b5c':
2087:                    case '\u0b5d': {
2088:                        matchRange('\u0b5c', '\u0b5d');
2089:                        break;
2090:                    }
2091:                    case '\u0b5f':
2092:                    case '\u0b60':
2093:                    case '\u0b61': {
2094:                        matchRange('\u0b5f', '\u0b61');
2095:                        break;
2096:                    }
2097:                    case '\u0b85':
2098:                    case '\u0b86':
2099:                    case '\u0b87':
2100:                    case '\u0b88':
2101:                    case '\u0b89':
2102:                    case '\u0b8a': {
2103:                        matchRange('\u0b85', '\u0b8a');
2104:                        break;
2105:                    }
2106:                    case '\u0b8e':
2107:                    case '\u0b8f':
2108:                    case '\u0b90': {
2109:                        matchRange('\u0b8e', '\u0b90');
2110:                        break;
2111:                    }
2112:                    case '\u0b92':
2113:                    case '\u0b93':
2114:                    case '\u0b94':
2115:                    case '\u0b95': {
2116:                        matchRange('\u0b92', '\u0b95');
2117:                        break;
2118:                    }
2119:                    case '\u0b99':
2120:                    case '\u0b9a': {
2121:                        matchRange('\u0b99', '\u0b9a');
2122:                        break;
2123:                    }
2124:                    case '\u0b9c': {
2125:                        match('\u0b9c');
2126:                        break;
2127:                    }
2128:                    case '\u0b9e':
2129:                    case '\u0b9f': {
2130:                        matchRange('\u0b9e', '\u0b9f');
2131:                        break;
2132:                    }
2133:                    case '\u0ba3':
2134:                    case '\u0ba4': {
2135:                        matchRange('\u0ba3', '\u0ba4');
2136:                        break;
2137:                    }
2138:                    case '\u0ba8':
2139:                    case '\u0ba9':
2140:                    case '\u0baa': {
2141:                        matchRange('\u0ba8', '\u0baa');
2142:                        break;
2143:                    }
2144:                    case '\u0bae':
2145:                    case '\u0baf':
2146:                    case '\u0bb0':
2147:                    case '\u0bb1':
2148:                    case '\u0bb2':
2149:                    case '\u0bb3':
2150:                    case '\u0bb4':
2151:                    case '\u0bb5': {
2152:                        matchRange('\u0bae', '\u0bb5');
2153:                        break;
2154:                    }
2155:                    case '\u0bb7':
2156:                    case '\u0bb8':
2157:                    case '\u0bb9': {
2158:                        matchRange('\u0bb7', '\u0bb9');
2159:                        break;
2160:                    }
2161:                    case '\u0c05':
2162:                    case '\u0c06':
2163:                    case '\u0c07':
2164:                    case '\u0c08':
2165:                    case '\u0c09':
2166:                    case '\u0c0a':
2167:                    case '\u0c0b':
2168:                    case '\u0c0c': {
2169:                        matchRange('\u0c05', '\u0c0c');
2170:                        break;
2171:                    }
2172:                    case '\u0c0e':
2173:                    case '\u0c0f':
2174:                    case '\u0c10': {
2175:                        matchRange('\u0c0e', '\u0c10');
2176:                        break;
2177:                    }
2178:                    case '\u0c12':
2179:                    case '\u0c13':
2180:                    case '\u0c14':
2181:                    case '\u0c15':
2182:                    case '\u0c16':
2183:                    case '\u0c17':
2184:                    case '\u0c18':
2185:                    case '\u0c19':
2186:                    case '\u0c1a':
2187:                    case '\u0c1b':
2188:                    case '\u0c1c':
2189:                    case '\u0c1d':
2190:                    case '\u0c1e':
2191:                    case '\u0c1f':
2192:                    case '\u0c20':
2193:                    case '\u0c21':
2194:                    case '\u0c22':
2195:                    case '\u0c23':
2196:                    case '\u0c24':
2197:                    case '\u0c25':
2198:                    case '\u0c26':
2199:                    case '\u0c27':
2200:                    case '\u0c28': {
2201:                        matchRange('\u0c12', '\u0c28');
2202:                        break;
2203:                    }
2204:                    case '\u0c2a':
2205:                    case '\u0c2b':
2206:                    case '\u0c2c':
2207:                    case '\u0c2d':
2208:                    case '\u0c2e':
2209:                    case '\u0c2f':
2210:                    case '\u0c30':
2211:                    case '\u0c31':
2212:                    case '\u0c32':
2213:                    case '\u0c33': {
2214:                        matchRange('\u0c2a', '\u0c33');
2215:                        break;
2216:                    }
2217:                    case '\u0c35':
2218:                    case '\u0c36':
2219:                    case '\u0c37':
2220:                    case '\u0c38':
2221:                    case '\u0c39': {
2222:                        matchRange('\u0c35', '\u0c39');
2223:                        break;
2224:                    }
2225:                    case '\u0c60':
2226:                    case '\u0c61': {
2227:                        matchRange('\u0c60', '\u0c61');
2228:                        break;
2229:                    }
2230:                    case '\u0c85':
2231:                    case '\u0c86':
2232:                    case '\u0c87':
2233:                    case '\u0c88':
2234:                    case '\u0c89':
2235:                    case '\u0c8a':
2236:                    case '\u0c8b':
2237:                    case '\u0c8c': {
2238:                        matchRange('\u0c85', '\u0c8c');
2239:                        break;
2240:                    }
2241:                    case '\u0c8e':
2242:                    case '\u0c8f':
2243:                    case '\u0c90': {
2244:                        matchRange('\u0c8e', '\u0c90');
2245:                        break;
2246:                    }
2247:                    case '\u0c92':
2248:                    case '\u0c93':
2249:                    case '\u0c94':
2250:                    case '\u0c95':
2251:                    case '\u0c96':
2252:                    case '\u0c97':
2253:                    case '\u0c98':
2254:                    case '\u0c99':
2255:                    case '\u0c9a':
2256:                    case '\u0c9b':
2257:                    case '\u0c9c':
2258:                    case '\u0c9d':
2259:                    case '\u0c9e':
2260:                    case '\u0c9f':
2261:                    case '\u0ca0':
2262:                    case '\u0ca1':
2263:                    case '\u0ca2':
2264:                    case '\u0ca3':
2265:                    case '\u0ca4':
2266:                    case '\u0ca5':
2267:                    case '\u0ca6':
2268:                    case '\u0ca7':
2269:                    case '\u0ca8': {
2270:                        matchRange('\u0c92', '\u0ca8');
2271:                        break;
2272:                    }
2273:                    case '\u0caa':
2274:                    case '\u0cab':
2275:                    case '\u0cac':
2276:                    case '\u0cad':
2277:                    case '\u0cae':
2278:                    case '\u0caf':
2279:                    case '\u0cb0':
2280:                    case '\u0cb1':
2281:                    case '\u0cb2':
2282:                    case '\u0cb3': {
2283:                        matchRange('\u0caa', '\u0cb3');
2284:                        break;
2285:                    }
2286:                    case '\u0cb5':
2287:                    case '\u0cb6':
2288:                    case '\u0cb7':
2289:                    case '\u0cb8':
2290:                    case '\u0cb9': {
2291:                        matchRange('\u0cb5', '\u0cb9');
2292:                        break;
2293:                    }
2294:                    case '\u0cde': {
2295:                        match('\u0cde');
2296:                        break;
2297:                    }
2298:                    case '\u0ce0':
2299:                    case '\u0ce1': {
2300:                        matchRange('\u0ce0', '\u0ce1');
2301:                        break;
2302:                    }
2303:                    case '\u0d05':
2304:                    case '\u0d06':
2305:                    case '\u0d07':
2306:                    case '\u0d08':
2307:                    case '\u0d09':
2308:                    case '\u0d0a':
2309:                    case '\u0d0b':
2310:                    case '\u0d0c': {
2311:                        matchRange('\u0d05', '\u0d0c');
2312:                        break;
2313:                    }
2314:                    case '\u0d0e':
2315:                    case '\u0d0f':
2316:                    case '\u0d10': {
2317:                        matchRange('\u0d0e', '\u0d10');
2318:                        break;
2319:                    }
2320:                    case '\u0d12':
2321:                    case '\u0d13':
2322:                    case '\u0d14':
2323:                    case '\u0d15':
2324:                    case '\u0d16':
2325:                    case '\u0d17':
2326:                    case '\u0d18':
2327:                    case '\u0d19':
2328:                    case '\u0d1a':
2329:                    case '\u0d1b':
2330:                    case '\u0d1c':
2331:                    case '\u0d1d':
2332:                    case '\u0d1e':
2333:                    case '\u0d1f':
2334:                    case '\u0d20':
2335:                    case '\u0d21':
2336:                    case '\u0d22':
2337:                    case '\u0d23':
2338:                    case '\u0d24':
2339:                    case '\u0d25':
2340:                    case '\u0d26':
2341:                    case '\u0d27':
2342:                    case '\u0d28': {
2343:                        matchRange('\u0d12', '\u0d28');
2344:                        break;
2345:                    }
2346:                    case '\u0d2a':
2347:                    case '\u0d2b':
2348:                    case '\u0d2c':
2349:                    case '\u0d2d':
2350:                    case '\u0d2e':
2351:                    case '\u0d2f':
2352:                    case '\u0d30':
2353:                    case '\u0d31':
2354:                    case '\u0d32':
2355:                    case '\u0d33':
2356:                    case '\u0d34':
2357:                    case '\u0d35':
2358:                    case '\u0d36':
2359:                    case '\u0d37':
2360:                    case '\u0d38':
2361:                    case '\u0d39': {
2362:                        matchRange('\u0d2a', '\u0d39');
2363:                        break;
2364:                    }
2365:                    case '\u0d60':
2366:                    case '\u0d61': {
2367:                        matchRange('\u0d60', '\u0d61');
2368:                        break;
2369:                    }
2370:                    case '\u0e01':
2371:                    case '\u0e02':
2372:                    case '\u0e03':
2373:                    case '\u0e04':
2374:                    case '\u0e05':
2375:                    case '\u0e06':
2376:                    case '\u0e07':
2377:                    case '\u0e08':
2378:                    case '\u0e09':
2379:                    case '\u0e0a':
2380:                    case '\u0e0b':
2381:                    case '\u0e0c':
2382:                    case '\u0e0d':
2383:                    case '\u0e0e':
2384:                    case '\u0e0f':
2385:                    case '\u0e10':
2386:                    case '\u0e11':
2387:                    case '\u0e12':
2388:                    case '\u0e13':
2389:                    case '\u0e14':
2390:                    case '\u0e15':
2391:                    case '\u0e16':
2392:                    case '\u0e17':
2393:                    case '\u0e18':
2394:                    case '\u0e19':
2395:                    case '\u0e1a':
2396:                    case '\u0e1b':
2397:                    case '\u0e1c':
2398:                    case '\u0e1d':
2399:                    case '\u0e1e':
2400:                    case '\u0e1f':
2401:                    case '\u0e20':
2402:                    case '\u0e21':
2403:                    case '\u0e22':
2404:                    case '\u0e23':
2405:                    case '\u0e24':
2406:                    case '\u0e25':
2407:                    case '\u0e26':
2408:                    case '\u0e27':
2409:                    case '\u0e28':
2410:                    case '\u0e29':
2411:                    case '\u0e2a':
2412:                    case '\u0e2b':
2413:                    case '\u0e2c':
2414:                    case '\u0e2d':
2415:                    case '\u0e2e': {
2416:                        matchRange('\u0e01', '\u0e2e');
2417:                        break;
2418:                    }
2419:                    case '\u0e30': {
2420:                        match('\u0e30');
2421:                        break;
2422:                    }
2423:                    case '\u0e32':
2424:                    case '\u0e33': {
2425:                        matchRange('\u0e32', '\u0e33');
2426:                        break;
2427:                    }
2428:                    case '\u0e3f':
2429:                    case '\u0e40':
2430:                    case '\u0e41':
2431:                    case '\u0e42':
2432:                    case '\u0e43':
2433:                    case '\u0e44':
2434:                    case '\u0e45':
2435:                    case '\u0e46': {
2436:                        matchRange('\u0e3f', '\u0e46');
2437:                        break;
2438:                    }
2439:                    case '\u0e81':
2440:                    case '\u0e82': {
2441:                        matchRange('\u0e81', '\u0e82');
2442:                        break;
2443:                    }
2444:                    case '\u0e84': {
2445:                        match('\u0e84');
2446:                        break;
2447:                    }
2448:                    case '\u0e87':
2449:                    case '\u0e88': {
2450:                        matchRange('\u0e87', '\u0e88');
2451:                        break;
2452:                    }
2453:                    case '\u0e8a': {
2454:                        match('\u0e8a');
2455:                        break;
2456:                    }
2457:                    case '\u0e8d': {
2458:                        match('\u0e8d');
2459:                        break;
2460:                    }
2461:                    case '\u0e94':
2462:                    case '\u0e95':
2463:                    case '\u0e96':
2464:                    case '\u0e97': {
2465:                        matchRange('\u0e94', '\u0e97');
2466:                        break;
2467:                    }
2468:                    case '\u0e99':
2469:                    case '\u0e9a':
2470:                    case '\u0e9b':
2471:                    case '\u0e9c':
2472:                    case '\u0e9d':
2473:                    case '\u0e9e':
2474:                    case '\u0e9f': {
2475:                        matchRange('\u0e99', '\u0e9f');
2476:                        break;
2477:                    }
2478:                    case '\u0ea1':
2479:                    case '\u0ea2':
2480:                    case '\u0ea3': {
2481:                        matchRange('\u0ea1', '\u0ea3');
2482:                        break;
2483:                    }
2484:                    case '\u0ea5': {
2485:                        match('\u0ea5');
2486:                        break;
2487:                    }
2488:                    case '\u0ea7': {
2489:                        match('\u0ea7');
2490:                        break;
2491:                    }
2492:                    case '\u0eaa':
2493:                    case '\u0eab': {
2494:                        matchRange('\u0eaa', '\u0eab');
2495:                        break;
2496:                    }
2497:                    case '\u0ead':
2498:                    case '\u0eae': {
2499:                        matchRange('\u0ead', '\u0eae');
2500:                        break;
2501:                    }
2502:                    case '\u0eb0': {
2503:                        match('\u0eb0');
2504:                        break;
2505:                    }
2506:                    case '\u0eb2':
2507:                    case '\u0eb3': {
2508:                        matchRange('\u0eb2', '\u0eb3');
2509:                        break;
2510:                    }
2511:                    case '\u0ebd': {
2512:                        match('\u0ebd');
2513:                        break;
2514:                    }
2515:                    case '\u0ec0':
2516:                    case '\u0ec1':
2517:                    case '\u0ec2':
2518:                    case '\u0ec3':
2519:                    case '\u0ec4': {
2520:                        matchRange('\u0ec0', '\u0ec4');
2521:                        break;
2522:                    }
2523:                    case '\u0ec6': {
2524:                        match('\u0ec6');
2525:                        break;
2526:                    }
2527:                    case '\u0edc':
2528:                    case '\u0edd': {
2529:                        matchRange('\u0edc', '\u0edd');
2530:                        break;
2531:                    }
2532:                    case '\u0f40':
2533:                    case '\u0f41':
2534:                    case '\u0f42':
2535:                    case '\u0f43':
2536:                    case '\u0f44':
2537:                    case '\u0f45':
2538:                    case '\u0f46':
2539:                    case '\u0f47': {
2540:                        matchRange('\u0f40', '\u0f47');
2541:                        break;
2542:                    }
2543:                    case '\u0f49':
2544:                    case '\u0f4a':
2545:                    case '\u0f4b':
2546:                    case '\u0f4c':
2547:                    case '\u0f4d':
2548:                    case '\u0f4e':
2549:                    case '\u0f4f':
2550:                    case '\u0f50':
2551:                    case '\u0f51':
2552:                    case '\u0f52':
2553:                    case '\u0f53':
2554:                    case '\u0f54':
2555:                    case '\u0f55':
2556:                    case '\u0f56':
2557:                    case '\u0f57':
2558:                    case '\u0f58':
2559:                    case '\u0f59':
2560:                    case '\u0f5a':
2561:                    case '\u0f5b':
2562:                    case '\u0f5c':
2563:                    case '\u0f5d':
2564:                    case '\u0f5e':
2565:                    case '\u0f5f':
2566:                    case '\u0f60':
2567:                    case '\u0f61':
2568:                    case '\u0f62':
2569:                    case '\u0f63':
2570:                    case '\u0f64':
2571:                    case '\u0f65':
2572:                    case '\u0f66':
2573:                    case '\u0f67':
2574:                    case '\u0f68':
2575:                    case '\u0f69': {
2576:                        matchRange('\u0f49', '\u0f69');
2577:                        break;
2578:                    }
2579:                    case '\u10a0':
2580:                    case '\u10a1':
2581:                    case '\u10a2':
2582:                    case '\u10a3':
2583:                    case '\u10a4':
2584:                    case '\u10a5':
2585:                    case '\u10a6':
2586:                    case '\u10a7':
2587:                    case '\u10a8':
2588:                    case '\u10a9':
2589:                    case '\u10aa':
2590:                    case '\u10ab':
2591:                    case '\u10ac':
2592:                    case '\u10ad':
2593:                    case '\u10ae':
2594:                    case '\u10af':
2595:                    case '\u10b0':
2596:                    case '\u10b1':
2597:                    case '\u10b2':
2598:                    case '\u10b3':
2599:                    case '\u10b4':
2600:                    case '\u10b5':
2601:                    case '\u10b6':
2602:                    case '\u10b7':
2603:                    case '\u10b8':
2604:                    case '\u10b9':
2605:                    case '\u10ba':
2606:                    case '\u10bb':
2607:                    case '\u10bc':
2608:                    case '\u10bd':
2609:                    case '\u10be':
2610:                    case '\u10bf':
2611:                    case '\u10c0':
2612:                    case '\u10c1':
2613:                    case '\u10c2':
2614:                    case '\u10c3':
2615:                    case '\u10c4':
2616:                    case '\u10c5': {
2617:                        matchRange('\u10a0', '\u10c5');
2618:                        break;
2619:                    }
2620:                    case '\u10d0':
2621:                    case '\u10d1':
2622:                    case '\u10d2':
2623:                    case '\u10d3':
2624:                    case '\u10d4':
2625:                    case '\u10d5':
2626:                    case '\u10d6':
2627:                    case '\u10d7':
2628:                    case '\u10d8':
2629:                    case '\u10d9':
2630:                    case '\u10da':
2631:                    case '\u10db':
2632:                    case '\u10dc':
2633:                    case '\u10dd':
2634:                    case '\u10de':
2635:                    case '\u10df':
2636:                    case '\u10e0':
2637:                    case '\u10e1':
2638:                    case '\u10e2':
2639:                    case '\u10e3':
2640:                    case '\u10e4':
2641:                    case '\u10e5':
2642:                    case '\u10e6':
2643:                    case '\u10e7':
2644:                    case '\u10e8':
2645:                    case '\u10e9':
2646:                    case '\u10ea':
2647:                    case '\u10eb':
2648:                    case '\u10ec':
2649:                    case '\u10ed':
2650:                    case '\u10ee':
2651:                    case '\u10ef':
2652:                    case '\u10f0':
2653:                    case '\u10f1':
2654:                    case '\u10f2':
2655:                    case '\u10f3':
2656:                    case '\u10f4':
2657:                    case '\u10f5':
2658:                    case '\u10f6': {
2659:                        matchRange('\u10d0', '\u10f6');
2660:                        break;
2661:                    }
2662:                    case '\u1100':
2663:                    case '\u1101':
2664:                    case '\u1102':
2665:                    case '\u1103':
2666:                    case '\u1104':
2667:                    case '\u1105':
2668:                    case '\u1106':
2669:                    case '\u1107':
2670:                    case '\u1108':
2671:                    case '\u1109':
2672:                    case '\u110a':
2673:                    case '\u110b':
2674:                    case '\u110c':
2675:                    case '\u110d':
2676:                    case '\u110e':
2677:                    case '\u110f':
2678:                    case '\u1110':
2679:                    case '\u1111':
2680:                    case '\u1112':
2681:                    case '\u1113':
2682:                    case '\u1114':
2683:                    case '\u1115':
2684:                    case '\u1116':
2685:                    case '\u1117':
2686:                    case '\u1118':
2687:                    case '\u1119':
2688:                    case '\u111a':
2689:                    case '\u111b':
2690:                    case '\u111c':
2691:                    case '\u111d':
2692:                    case '\u111e':
2693:                    case '\u111f':
2694:                    case '\u1120':
2695:                    case '\u1121':
2696:                    case '\u1122':
2697:                    case '\u1123':
2698:                    case '\u1124':
2699:                    case '\u1125':
2700:                    case '\u1126':
2701:                    case '\u1127':
2702:                    case '\u1128':
2703:                    case '\u1129':
2704:                    case '\u112a':
2705:                    case '\u112b':
2706:                    case '\u112c':
2707:                    case '\u112d':
2708:                    case '\u112e':
2709:                    case '\u112f':
2710:                    case '\u1130':
2711:                    case '\u1131':
2712:                    case '\u1132':
2713:                    case '\u1133':
2714:                    case '\u1134':
2715:                    case '\u1135':
2716:                    case '\u1136':
2717:                    case '\u1137':
2718:                    case '\u1138':
2719:                    case '\u1139':
2720:                    case '\u113a':
2721:                    case '\u113b':
2722:                    case '\u113c':
2723:                    case '\u113d':
2724:                    case '\u113e':
2725:                    case '\u113f':
2726:                    case '\u1140':
2727:                    case '\u1141':
2728:                    case '\u1142':
2729:                    case '\u1143':
2730:                    case '\u1144':
2731:                    case '\u1145':
2732:                    case '\u1146':
2733:                    case '\u1147':
2734:                    case '\u1148':
2735:                    case '\u1149':
2736:                    case '\u114a':
2737:                    case '\u114b':
2738:                    case '\u114c':
2739:                    case '\u114d':
2740:                    case '\u114e':
2741:                    case '\u114f':
2742:                    case '\u1150':
2743:                    case '\u1151':
2744:                    case '\u1152':
2745:                    case '\u1153':
2746:                    case '\u1154':
2747:                    case '\u1155':
2748:                    case '\u1156':
2749:                    case '\u1157':
2750:                    case '\u1158':
2751:                    case '\u1159': {
2752:                        matchRange('\u1100', '\u1159');
2753:                        break;
2754:                    }
2755:                    case '\u115f':
2756:                    case '\u1160':
2757:                    case '\u1161':
2758:                    case '\u1162':
2759:                    case '\u1163':
2760:                    case '\u1164':
2761:                    case '\u1165':
2762:                    case '\u1166':
2763:                    case '\u1167':
2764:                    case '\u1168':
2765:                    case '\u1169':
2766:                    case '\u116a':
2767:                    case '\u116b':
2768:                    case '\u116c':
2769:                    case '\u116d':
2770:                    case '\u116e':
2771:                    case '\u116f':
2772:                    case '\u1170':
2773:                    case '\u1171':
2774:                    case '\u1172':
2775:                    case '\u1173':
2776:                    case '\u1174':
2777:                    case '\u1175':
2778:                    case '\u1176':
2779:                    case '\u1177':
2780:                    case '\u1178':
2781:                    case '\u1179':
2782:                    case '\u117a':
2783:                    case '\u117b':
2784:                    case '\u117c':
2785:                    case '\u117d':
2786:                    case '\u117e':
2787:                    case '\u117f':
2788:                    case '\u1180':
2789:                    case '\u1181':
2790:                    case '\u1182':
2791:                    case '\u1183':
2792:                    case '\u1184':
2793:                    case '\u1185':
2794:                    case '\u1186':
2795:                    case '\u1187':
2796:                    case '\u1188':
2797:                    case '\u1189':
2798:                    case '\u118a':
2799:                    case '\u118b':
2800:                    case '\u118c':
2801:                    case '\u118d':
2802:                    case '\u118e':
2803:                    case '\u118f':
2804:                    case '\u1190':
2805:                    case '\u1191':
2806:                    case '\u1192':
2807:                    case '\u1193':
2808:                    case '\u1194':
2809:                    case '\u1195':
2810:                    case '\u1196':
2811:                    case '\u1197':
2812:                    case '\u1198':
2813:                    case '\u1199':
2814:                    case '\u119a':
2815:                    case '\u119b':
2816:                    case '\u119c':
2817:                    case '\u119d':
2818:                    case '\u119e':
2819:                    case '\u119f':
2820:                    case '\u11a0':
2821:                    case '\u11a1':
2822:                    case '\u11a2': {
2823:                        matchRange('\u115f', '\u11a2');
2824:                        break;
2825:                    }
2826:                    case '\u11a8':
2827:                    case '\u11a9':
2828:                    case '\u11aa':
2829:                    case '\u11ab':
2830:                    case '\u11ac':
2831:                    case '\u11ad':
2832:                    case '\u11ae':
2833:                    case '\u11af':
2834:                    case '\u11b0':
2835:                    case '\u11b1':
2836:                    case '\u11b2':
2837:                    case '\u11b3':
2838:                    case '\u11b4':
2839:                    case '\u11b5':
2840:                    case '\u11b6':
2841:                    case '\u11b7':
2842:                    case '\u11b8':
2843:                    case '\u11b9':
2844:                    case '\u11ba':
2845:                    case '\u11bb':
2846:                    case '\u11bc':
2847:                    case '\u11bd':
2848:                    case '\u11be':
2849:                    case '\u11bf':
2850:                    case '\u11c0':
2851:                    case '\u11c1':
2852:                    case '\u11c2':
2853:                    case '\u11c3':
2854:                    case '\u11c4':
2855:                    case '\u11c5':
2856:                    case '\u11c6':
2857:                    case '\u11c7':
2858:                    case '\u11c8':
2859:                    case '\u11c9':
2860:                    case '\u11ca':
2861:                    case '\u11cb':
2862:                    case '\u11cc':
2863:                    case '\u11cd':
2864:                    case '\u11ce':
2865:                    case '\u11cf':
2866:                    case '\u11d0':
2867:                    case '\u11d1':
2868:                    case '\u11d2':
2869:                    case '\u11d3':
2870:                    case '\u11d4':
2871:                    case '\u11d5':
2872:                    case '\u11d6':
2873:                    case '\u11d7':
2874:                    case '\u11d8':
2875:                    case '\u11d9':
2876:                    case '\u11da':
2877:                    case '\u11db':
2878:                    case '\u11dc':
2879:                    case '\u11dd':
2880:                    case '\u11de':
2881:                    case '\u11df':
2882:                    case '\u11e0':
2883:                    case '\u11e1':
2884:                    case '\u11e2':
2885:                    case '\u11e3':
2886:                    case '\u11e4':
2887:                    case '\u11e5':
2888:                    case '\u11e6':
2889:                    case '\u11e7':
2890:                    case '\u11e8':
2891:                    case '\u11e9':
2892:                    case '\u11ea':
2893:                    case '\u11eb':
2894:                    case '\u11ec':
2895:                    case '\u11ed':
2896:                    case '\u11ee':
2897:                    case '\u11ef':
2898:                    case '\u11f0':
2899:                    case '\u11f1':
2900:                    case '\u11f2':
2901:                    case '\u11f3':
2902:                    case '\u11f4':
2903:                    case '\u11f5':
2904:                    case '\u11f6':
2905:                    case '\u11f7':
2906:                    case '\u11f8':
2907:                    case '\u11f9': {
2908:                        matchRange('\u11a8', '\u11f9');
2909:                        break;
2910:                    }
2911:                    case '\u1ea0':
2912:                    case '\u1ea1':
2913:                    case '\u1ea2':
2914:                    case '\u1ea3':
2915:                    case '\u1ea4':
2916:                    case '\u1ea5':
2917:                    case '\u1ea6':
2918:                    case '\u1ea7':
2919:                    case '\u1ea8':
2920:                    case '\u1ea9':
2921:                    case '\u1eaa':
2922:                    case '\u1eab':
2923:                    case '\u1eac':
2924:                    case '\u1ead':
2925:                    case '\u1eae':
2926:                    case '\u1eaf':
2927:                    case '\u1eb0':
2928:                    case '\u1eb1':
2929:                    case '\u1eb2':
2930:                    case '\u1eb3':
2931:                    case '\u1eb4':
2932:                    case '\u1eb5':
2933:                    case '\u1eb6':
2934:                    case '\u1eb7':
2935:                    case '\u1eb8':
2936:                    case '\u1eb9':
2937:                    case '\u1eba':
2938:                    case '\u1ebb':
2939:                    case '\u1ebc':
2940:                    case '\u1ebd':
2941:                    case '\u1ebe':
2942:                    case '\u1ebf':
2943:                    case '\u1ec0':
2944:                    case '\u1ec1':
2945:                    case '\u1ec2':
2946:                    case '\u1ec3':
2947:                    case '\u1ec4':
2948:                    case '\u1ec5':
2949:                    case '\u1ec6':
2950:                    case '\u1ec7':
2951:                    case '\u1ec8':
2952:                    case '\u1ec9':
2953:                    case '\u1eca':
2954:                    case '\u1ecb':
2955:                    case '\u1ecc':
2956:                    case '\u1ecd':
2957:                    case '\u1ece':
2958:                    case '\u1ecf':
2959:                    case '\u1ed0':
2960:                    case '\u1ed1':
2961:                    case '\u1ed2':
2962:                    case '\u1ed3':
2963:                    case '\u1ed4':
2964:                    case '\u1ed5':
2965:                    case '\u1ed6':
2966:                    case '\u1ed7':
2967:                    case '\u1ed8':
2968:                    case '\u1ed9':
2969:                    case '\u1eda':
2970:                    case '\u1edb':
2971:                    case '\u1edc':
2972:                    case '\u1edd':
2973:                    case '\u1ede':
2974:                    case '\u1edf':
2975:                    case '\u1ee0':
2976:                    case '\u1ee1':
2977:                    case '\u1ee2':
2978:                    case '\u1ee3':
2979:                    case '\u1ee4':
2980:                    case '\u1ee5':
2981:                    case '\u1ee6':
2982:                    case '\u1ee7':
2983:                    case '\u1ee8':
2984:                    case '\u1ee9':
2985:                    case '\u1eea':
2986:                    case '\u1eeb':
2987:                    case '\u1eec':
2988:                    case '\u1eed':
2989:                    case '\u1eee':
2990:                    case '\u1eef':
2991:                    case '\u1ef0':
2992:                    case '\u1ef1':
2993:                    case '\u1ef2':
2994:                    case '\u1ef3':
2995:                    case '\u1ef4':
2996:                    case '\u1ef5':
2997:                    case '\u1ef6':
2998:                    case '\u1ef7':
2999:                    case '\u1ef8':
3000:                    case '\u1ef9': {
3001:                        matchRange('\u1ea0', '\u1ef9');
3002:                        break;
3003:                    }
3004:                    case '\u1f00':
3005:                    case '\u1f01':
3006:                    case '\u1f02':
3007:                    case '\u1f03':
3008:                    case '\u1f04':
3009:                    case '\u1f05':
3010:                    case '\u1f06':
3011:                    case '\u1f07':
3012:                    case '\u1f08':
3013:                    case '\u1f09':
3014:                    case '\u1f0a':
3015:                    case '\u1f0b':
3016:                    case '\u1f0c':
3017:                    case '\u1f0d':
3018:                    case '\u1f0e':
3019:                    case '\u1f0f':
3020:                    case '\u1f10':
3021:                    case '\u1f11':
3022:                    case '\u1f12':
3023:                    case '\u1f13':
3024:                    case '\u1f14':
3025:                    case '\u1f15': {
3026:                        matchRange('\u1f00', '\u1f15');
3027:                        break;
3028:                    }
3029:                    case '\u1f18':
3030:                    case '\u1f19':
3031:                    case '\u1f1a':
3032:                    case '\u1f1b':
3033:                    case '\u1f1c':
3034:                    case '\u1f1d': {
3035:                        matchRange('\u1f18', '\u1f1d');
3036:                        break;
3037:                    }
3038:                    case '\u1f20':
3039:                    case '\u1f21':
3040:                    case '\u1f22':
3041:                    case '\u1f23':
3042:                    case '\u1f24':
3043:                    case '\u1f25':
3044:                    case '\u1f26':
3045:                    case '\u1f27':
3046:                    case '\u1f28':
3047:                    case '\u1f29':
3048:                    case '\u1f2a':
3049:                    case '\u1f2b':
3050:                    case '\u1f2c':
3051:                    case '\u1f2d':
3052:                    case '\u1f2e':
3053:                    case '\u1f2f':
3054:                    case '\u1f30':
3055:                    case '\u1f31':
3056:                    case '\u1f32':
3057:                    case '\u1f33':
3058:                    case '\u1f34':
3059:                    case '\u1f35':
3060:                    case '\u1f36':
3061:                    case '\u1f37':
3062:                    case '\u1f38':
3063:                    case '\u1f39':
3064:                    case '\u1f3a':
3065:                    case '\u1f3b':
3066:                    case '\u1f3c':
3067:                    case '\u1f3d':
3068:                    case '\u1f3e':
3069:                    case '\u1f3f':
3070:                    case '\u1f40':
3071:                    case '\u1f41':
3072:                    case '\u1f42':
3073:                    case '\u1f43':
3074:                    case '\u1f44':
3075:                    case '\u1f45': {
3076:                        matchRange('\u1f20', '\u1f45');
3077:                        break;
3078:                    }
3079:                    case '\u1f48':
3080:                    case '\u1f49':
3081:                    case '\u1f4a':
3082:                    case '\u1f4b':
3083:                    case '\u1f4c':
3084:                    case '\u1f4d': {
3085:                        matchRange('\u1f48', '\u1f4d');
3086:                        break;
3087:                    }
3088:                    case '\u1f50':
3089:                    case '\u1f51':
3090:                    case '\u1f52':
3091:                    case '\u1f53':
3092:                    case '\u1f54':
3093:                    case '\u1f55':
3094:                    case '\u1f56':
3095:                    case '\u1f57': {
3096:                        matchRange('\u1f50', '\u1f57');
3097:                        break;
3098:                    }
3099:                    case '\u1f59': {
3100:                        match('\u1f59');
3101:                        break;
3102:                    }
3103:                    case '\u1f5b': {
3104:                        match('\u1f5b');
3105:                        break;
3106:                    }
3107:                    case '\u1f5d': {
3108:                        match('\u1f5d');
3109:                        break;
3110:                    }
3111:                    case '\u1f5f':
3112:                    case '\u1f60':
3113:                    case '\u1f61':
3114:                    case '\u1f62':
3115:                    case '\u1f63':
3116:                    case '\u1f64':
3117:                    case '\u1f65':
3118:                    case '\u1f66':
3119:                    case '\u1f67':
3120:                    case '\u1f68':
3121:                    case '\u1f69':
3122:                    case '\u1f6a':
3123:                    case '\u1f6b':
3124:                    case '\u1f6c':
3125:                    case '\u1f6d':
3126:                    case '\u1f6e':
3127:                    case '\u1f6f':
3128:                    case '\u1f70':
3129:                    case '\u1f71':
3130:                    case '\u1f72':
3131:                    case '\u1f73':
3132:                    case '\u1f74':
3133:                    case '\u1f75':
3134:                    case '\u1f76':
3135:                    case '\u1f77':
3136:                    case '\u1f78':
3137:                    case '\u1f79':
3138:                    case '\u1f7a':
3139:                    case '\u1f7b':
3140:                    case '\u1f7c':
3141:                    case '\u1f7d': {
3142:                        matchRange('\u1f5f', '\u1f7d');
3143:                        break;
3144:                    }
3145:                    case '\u1f80':
3146:                    case '\u1f81':
3147:                    case '\u1f82':
3148:                    case '\u1f83':
3149:                    case '\u1f84':
3150:                    case '\u1f85':
3151:                    case '\u1f86':
3152:                    case '\u1f87':
3153:                    case '\u1f88':
3154:                    case '\u1f89':
3155:                    case '\u1f8a':
3156:                    case '\u1f8b':
3157:                    case '\u1f8c':
3158:                    case '\u1f8d':
3159:                    case '\u1f8e':
3160:                    case '\u1f8f':
3161:                    case '\u1f90':
3162:                    case '\u1f91':
3163:                    case '\u1f92':
3164:                    case '\u1f93':
3165:                    case '\u1f94':
3166:                    case '\u1f95':
3167:                    case '\u1f96':
3168:                    case '\u1f97':
3169:                    case '\u1f98':
3170:                    case '\u1f99':
3171:                    case '\u1f9a':
3172:                    case '\u1f9b':
3173:                    case '\u1f9c':
3174:                    case '\u1f9d':
3175:                    case '\u1f9e':
3176:                    case '\u1f9f':
3177:                    case '\u1fa0':
3178:                    case '\u1fa1':
3179:                    case '\u1fa2':
3180:                    case '\u1fa3':
3181:                    case '\u1fa4':
3182:                    case '\u1fa5':
3183:                    case '\u1fa6':
3184:                    case '\u1fa7':
3185:                    case '\u1fa8':
3186:                    case '\u1fa9':
3187:                    case '\u1faa':
3188:                    case '\u1fab':
3189:                    case '\u1fac':
3190:                    case '\u1fad':
3191:                    case '\u1fae':
3192:                    case '\u1faf':
3193:                    case '\u1fb0':
3194:                    case '\u1fb1':
3195:                    case '\u1fb2':
3196:                    case '\u1fb3':
3197:                    case '\u1fb4': {
3198:                        matchRange('\u1f80', '\u1fb4');
3199:                        break;
3200:                    }
3201:                    case '\u1fb6':
3202:                    case '\u1fb7':
3203:                    case '\u1fb8':
3204:                    case '\u1fb9':
3205:                    case '\u1fba':
3206:                    case '\u1fbb':
3207:                    case '\u1fbc': {
3208:                        matchRange('\u1fb6', '\u1fbc');
3209:                        break;
3210:                    }
3211:                    case '\u1fbe': {
3212:                        match('\u1fbe');
3213:                        break;
3214:                    }
3215:                    case '\u1fc2':
3216:                    case '\u1fc3':
3217:                    case '\u1fc4': {
3218:                        matchRange('\u1fc2', '\u1fc4');
3219:                        break;
3220:                    }
3221:                    case '\u1fc6':
3222:                    case '\u1fc7':
3223:                    case '\u1fc8':
3224:                    case '\u1fc9':
3225:                    case '\u1fca':
3226:                    case '\u1fcb':
3227:                    case '\u1fcc': {
3228:                        matchRange('\u1fc6', '\u1fcc');
3229:                        break;
3230:                    }
3231:                    case '\u1fd0':
3232:                    case '\u1fd1':
3233:                    case '\u1fd2':
3234:                    case '\u1fd3': {
3235:                        matchRange('\u1fd0', '\u1fd3');
3236:                        break;
3237:                    }
3238:                    case '\u1fd6':
3239:                    case '\u1fd7':
3240:                    case '\u1fd8':
3241:                    case '\u1fd9':
3242:                    case '\u1fda':
3243:                    case '\u1fdb': {
3244:                        matchRange('\u1fd6', '\u1fdb');
3245:                        break;
3246:                    }
3247:                    case '\u1fe0':
3248:                    case '\u1fe1':
3249:                    case '\u1fe2':
3250:                    case '\u1fe3':
3251:                    case '\u1fe4':
3252:                    case '\u1fe5':
3253:                    case '\u1fe6':
3254:                    case '\u1fe7':
3255:                    case '\u1fe8':
3256:                    case '\u1fe9':
3257:                    case '\u1fea':
3258:                    case '\u1feb':
3259:                    case '\u1fec': {
3260:                        matchRange('\u1fe0', '\u1fec');
3261:                        break;
3262:                    }
3263:                    case '\u1ff2':
3264:                    case '\u1ff3':
3265:                    case '\u1ff4': {
3266:                        matchRange('\u1ff2', '\u1ff4');
3267:                        break;
3268:                    }
3269:                    case '\u1ff6':
3270:                    case '\u1ff7':
3271:                    case '\u1ff8':
3272:                    case '\u1ff9':
3273:                    case '\u1ffa':
3274:                    case '\u1ffb':
3275:                    case '\u1ffc': {
3276:                        matchRange('\u1ff6', '\u1ffc');
3277:                        break;
3278:                    }
3279:                    case '\u203f':
3280:                    case '\u2040': {
3281:                        matchRange('\u203f', '\u2040');
3282:                        break;
3283:                    }
3284:                    case '\u207f': {
3285:                        match('\u207f');
3286:                        break;
3287:                    }
3288:                    case '\u20a0':
3289:                    case '\u20a1':
3290:                    case '\u20a2':
3291:                    case '\u20a3':
3292:                    case '\u20a4':
3293:                    case '\u20a5':
3294:                    case '\u20a6':
3295:                    case '\u20a7':
3296:                    case '\u20a8':
3297:                    case '\u20a9':
3298:                    case '\u20aa':
3299:                    case '\u20ab':
3300:                    case '\u20ac': {
3301:                        matchRange('\u20a0', '\u20ac');
3302:                        break;
3303:                    }
3304:                    case '\u2102': {
3305:                        match('\u2102');
3306:                        break;
3307:                    }
3308:                    case '\u2107': {
3309:                        match('\u2107');
3310:                        break;
3311:                    }
3312:                    case '\u210a':
3313:                    case '\u210b':
3314:                    case '\u210c':
3315:                    case '\u210d':
3316:                    case '\u210e':
3317:                    case '\u210f':
3318:                    case '\u2110':
3319:                    case '\u2111':
3320:                    case '\u2112':
3321:                    case '\u2113': {
3322:                        matchRange('\u210a', '\u2113');
3323:                        break;
3324:                    }
3325:                    case '\u2115': {
3326:                        match('\u2115');
3327:                        break;
3328:                    }
3329:                    case '\u2118':
3330:                    case '\u2119':
3331:                    case '\u211a':
3332:                    case '\u211b':
3333:                    case '\u211c':
3334:                    case '\u211d': {
3335:                        matchRange('\u2118', '\u211d');
3336:                        break;
3337:                    }
3338:                    case '\u2124': {
3339:                        match('\u2124');
3340:                        break;
3341:                    }
3342:                    case '\u2126': {
3343:                        match('\u2126');
3344:                        break;
3345:                    }
3346:                    case '\u2128': {
3347:                        match('\u2128');
3348:                        break;
3349:                    }
3350:                    case '\u212a':
3351:                    case '\u212b':
3352:                    case '\u212c':
3353:                    case '\u212d':
3354:                    case '\u212e':
3355:                    case '\u212f':
3356:                    case '\u2130':
3357:                    case '\u2131': {
3358:                        matchRange('\u212a', '\u2131');
3359:                        break;
3360:                    }
3361:                    case '\u2133':
3362:                    case '\u2134':
3363:                    case '\u2135':
3364:                    case '\u2136':
3365:                    case '\u2137':
3366:                    case '\u2138': {
3367:                        matchRange('\u2133', '\u2138');
3368:                        break;
3369:                    }
3370:                    case '\u2160':
3371:                    case '\u2161':
3372:                    case '\u2162':
3373:                    case '\u2163':
3374:                    case '\u2164':
3375:                    case '\u2165':
3376:                    case '\u2166':
3377:                    case '\u2167':
3378:                    case '\u2168':
3379:                    case '\u2169':
3380:                    case '\u216a':
3381:                    case '\u216b':
3382:                    case '\u216c':
3383:                    case '\u216d':
3384:                    case '\u216e':
3385:                    case '\u216f':
3386:                    case '\u2170':
3387:                    case '\u2171':
3388:                    case '\u2172':
3389:                    case '\u2173':
3390:                    case '\u2174':
3391:                    case '\u2175':
3392:                    case '\u2176':
3393:                    case '\u2177':
3394:                    case '\u2178':
3395:                    case '\u2179':
3396:                    case '\u217a':
3397:                    case '\u217b':
3398:                    case '\u217c':
3399:                    case '\u217d':
3400:                    case '\u217e':
3401:                    case '\u217f':
3402:                    case '\u2180':
3403:                    case '\u2181':
3404:                    case '\u2182': {
3405:                        matchRange('\u2160', '\u2182');
3406:                        break;
3407:                    }
3408:                    case '\u3005': {
3409:                        match('\u3005');
3410:                        break;
3411:                    }
3412:                    case '\u3007': {
3413:                        match('\u3007');
3414:                        break;
3415:                    }
3416:                    case '\u3021':
3417:                    case '\u3022':
3418:                    case '\u3023':
3419:                    case '\u3024':
3420:                    case '\u3025':
3421:                    case '\u3026':
3422:                    case '\u3027':
3423:                    case '\u3028':
3424:                    case '\u3029': {
3425:                        matchRange('\u3021', '\u3029');
3426:                        break;
3427:                    }
3428:                    case '\u3031':
3429:                    case '\u3032':
3430:                    case '\u3033':
3431:                    case '\u3034':
3432:                    case '\u3035': {
3433:                        matchRange('\u3031', '\u3035');
3434:                        break;
3435:                    }
3436:                    case '\u3041':
3437:                    case '\u3042':
3438:                    case '\u3043':
3439:                    case '\u3044':
3440:                    case '\u3045':
3441:                    case '\u3046':
3442:                    case '\u3047':
3443:                    case '\u3048':
3444:                    case '\u3049':
3445:                    case '\u304a':
3446:                    case '\u304b':
3447:                    case '\u304c':
3448:                    case '\u304d':
3449:                    case '\u304e':
3450:                    case '\u304f':
3451:                    case '\u3050':
3452:                    case '\u3051':
3453:                    case '\u3052':
3454:                    case '\u3053':
3455:                    case '\u3054':
3456:                    case '\u3055':
3457:                    case '\u3056':
3458:                    case '\u3057':
3459:                    case '\u3058':
3460:                    case '\u3059':
3461:                    case '\u305a':
3462:                    case '\u305b':
3463:                    case '\u305c':
3464:                    case '\u305d':
3465:                    case '\u305e':
3466:                    case '\u305f':
3467:                    case '\u3060':
3468:                    case '\u3061':
3469:                    case '\u3062':
3470:                    case '\u3063':
3471:                    case '\u3064':
3472:                    case '\u3065':
3473:                    case '\u3066':
3474:                    case '\u3067':
3475:                    case '\u3068':
3476:                    case '\u3069':
3477:                    case '\u306a':
3478:                    case '\u306b':
3479:                    case '\u306c':
3480:                    case '\u306d':
3481:                    case '\u306e':
3482:                    case '\u306f':
3483:                    case '\u3070':
3484:                    case '\u3071':
3485:                    case '\u3072':
3486:                    case '\u3073':
3487:                    case '\u3074':
3488:                    case '\u3075':
3489:                    case '\u3076':
3490:                    case '\u3077':
3491:                    case '\u3078':
3492:                    case '\u3079':
3493:                    case '\u307a':
3494:                    case '\u307b':
3495:                    case '\u307c':
3496:                    case '\u307d':
3497:                    case '\u307e':
3498:                    case '\u307f':
3499:                    case '\u3080':
3500:                    case '\u3081':
3501:                    case '\u3082':
3502:                    case '\u3083':
3503:                    case '\u3084':
3504:                    case '\u3085':
3505:                    case '\u3086':
3506:                    case '\u3087':
3507:                    case '\u3088':
3508:                    case '\u3089':
3509:                    case '\u308a':
3510:                    case '\u308b':
3511:                    case '\u308c':
3512:                    case '\u308d':
3513:                    case '\u308e':
3514:                    case '\u308f':
3515:                    case '\u3090':
3516:                    case '\u3091':
3517:                    case '\u3092':
3518:                    case '\u3093':
3519:                    case '\u3094': {
3520:                        matchRange('\u3041', '\u3094');
3521:                        break;
3522:                    }
3523:                    case '\u309b':
3524:                    case '\u309c':
3525:                    case '\u309d':
3526:                    case '\u309e': {
3527:                        matchRange('\u309b', '\u309e');
3528:                        break;
3529:                    }
3530:                    case '\u30a1':
3531:                    case '\u30a2':
3532:                    case '\u30a3':
3533:                    case '\u30a4':
3534:                    case '\u30a5':
3535:                    case '\u30a6':
3536:                    case '\u30a7':
3537:                    case '\u30a8':
3538:                    case '\u30a9':
3539:                    case '\u30aa':
3540:                    case '\u30ab':
3541:                    case '\u30ac':
3542:                    case '\u30ad':
3543:                    case '\u30ae':
3544:                    case '\u30af':
3545:                    case '\u30b0':
3546:                    case '\u30b1':
3547:                    case '\u30b2':
3548:                    case '\u30b3':
3549:                    case '\u30b4':
3550:                    case '\u30b5':
3551:                    case '\u30b6':
3552:                    case '\u30b7':
3553:                    case '\u30b8':
3554:                    case '\u30b9':
3555:                    case '\u30ba':
3556:                    case '\u30bb':
3557:                    case '\u30bc':
3558:                    case '\u30bd':
3559:                    case '\u30be':
3560:                    case '\u30bf':
3561:                    case '\u30c0':
3562:                    case '\u30c1':
3563:                    case '\u30c2':
3564:                    case '\u30c3':
3565:                    case '\u30c4':
3566:                    case '\u30c5':
3567:                    case '\u30c6':
3568:                    case '\u30c7':
3569:                    case '\u30c8':
3570:                    case '\u30c9':
3571:                    case '\u30ca':
3572:                    case '\u30cb':
3573:                    case '\u30cc':
3574:                    case '\u30cd':
3575:                    case '\u30ce':
3576:                    case '\u30cf':
3577:                    case '\u30d0':
3578:                    case '\u30d1':
3579:                    case '\u30d2':
3580:                    case '\u30d3':
3581:                    case '\u30d4':
3582:                    case '\u30d5':
3583:                    case '\u30d6':
3584:                    case '\u30d7':
3585:                    case '\u30d8':
3586:                    case '\u30d9':
3587:                    case '\u30da':
3588:                    case '\u30db':
3589:                    case '\u30dc':
3590:                    case '\u30dd':
3591:                    case '\u30de':
3592:                    case '\u30df':
3593:                    case '\u30e0':
3594:                    case '\u30e1':
3595:                    case '\u30e2':
3596:                    case '\u30e3':
3597:                    case '\u30e4':
3598:                    case '\u30e5':
3599:                    case '\u30e6':
3600:                    case '\u30e7':
3601:                    case '\u30e8':
3602:                    case '\u30e9':
3603:                    case '\u30ea':
3604:                    case '\u30eb':
3605:                    case '\u30ec':
3606:                    case '\u30ed':
3607:                    case '\u30ee':
3608:                    case '\u30ef':
3609:                    case '\u30f0':
3610:                    case '\u30f1':
3611:                    case '\u30f2':
3612:                    case '\u30f3':
3613:                    case '\u30f4':
3614:                    case '\u30f5':
3615:                    case '\u30f6':
3616:                    case '\u30f7':
3617:                    case '\u30f8':
3618:                    case '\u30f9':
3619:                    case '\u30fa': {
3620:                        matchRange('\u30a1', '\u30fa');
3621:                        break;
3622:                    }
3623:                    case '\u30fc':
3624:                    case '\u30fd':
3625:                    case '\u30fe': {
3626:                        matchRange('\u30fc', '\u30fe');
3627:                        break;
3628:                    }
3629:                    case '\u3105':
3630:                    case '\u3106':
3631:                    case '\u3107':
3632:                    case '\u3108':
3633:                    case '\u3109':
3634:                    case '\u310a':
3635:                    case '\u310b':
3636:                    case '\u310c':
3637:                    case '\u310d':
3638:                    case '\u310e':
3639:                    case '\u310f':
3640:                    case '\u3110':
3641:                    case '\u3111':
3642:                    case '\u3112':
3643:                    case '\u3113':
3644:                    case '\u3114':
3645:                    case '\u3115':
3646:                    case '\u3116':
3647:                    case '\u3117':
3648:                    case '\u3118':
3649:                    case '\u3119':
3650:                    case '\u311a':
3651:                    case '\u311b':
3652:                    case '\u311c':
3653:                    case '\u311d':
3654:                    case '\u311e':
3655:                    case '\u311f':
3656:                    case '\u3120':
3657:                    case '\u3121':
3658:                    case '\u3122':
3659:                    case '\u3123':
3660:                    case '\u3124':
3661:                    case '\u3125':
3662:                    case '\u3126':
3663:                    case '\u3127':
3664:                    case '\u3128':
3665:                    case '\u3129':
3666:                    case '\u312a':
3667:                    case '\u312b':
3668:                    case '\u312c': {
3669:                        matchRange('\u3105', '\u312c');
3670:                        break;
3671:                    }
3672:                    case '\u3131':
3673:                    case '\u3132':
3674:                    case '\u3133':
3675:                    case '\u3134':
3676:                    case '\u3135':
3677:                    case '\u3136':
3678:                    case '\u3137':
3679:                    case '\u3138':
3680:                    case '\u3139':
3681:                    case '\u313a':
3682:                    case '\u313b':
3683:                    case '\u313c':
3684:                    case '\u313d':
3685:                    case '\u313e':
3686:                    case '\u313f':
3687:                    case '\u3140':
3688:                    case '\u3141':
3689:                    case '\u3142':
3690:                    case '\u3143':
3691:                    case '\u3144':
3692:                    case '\u3145':
3693:                    case '\u3146':
3694:                    case '\u3147':
3695:                    case '\u3148':
3696:                    case '\u3149':
3697:                    case '\u314a':
3698:                    case '\u314b':
3699:                    case '\u314c':
3700:                    case '\u314d':
3701:                    case '\u314e':
3702:                    case '\u314f':
3703:                    case '\u3150':
3704:                    case '\u3151':
3705:                    case '\u3152':
3706:                    case '\u3153':
3707:                    case '\u3154':
3708:                    case '\u3155':
3709:                    case '\u3156':
3710:                    case '\u3157':
3711:                    case '\u3158':
3712:                    case '\u3159':
3713:                    case '\u315a':
3714:                    case '\u315b':
3715:                    case '\u315c':
3716:                    case '\u315d':
3717:                    case '\u315e':
3718:                    case '\u315f':
3719:                    case '\u3160':
3720:                    case '\u3161':
3721:                    case '\u3162':
3722:                    case '\u3163':
3723:                    case '\u3164':
3724:                    case '\u3165':
3725:                    case '\u3166':
3726:                    case '\u3167':
3727:                    case '\u3168':
3728:                    case '\u3169':
3729:                    case '\u316a':
3730:                    case '\u316b':
3731:                    case '\u316c':
3732:                    case '\u316d':
3733:                    case '\u316e':
3734:                    case '\u316f':
3735:                    case '\u3170':
3736:                    case '\u3171':
3737:                    case '\u3172':
3738:                    case '\u3173':
3739:                    case '\u3174':
3740:                    case '\u3175':
3741:                    case '\u3176':
3742:                    case '\u3177':
3743:                    case '\u3178':
3744:                    case '\u3179':
3745:                    case '\u317a':
3746:                    case '\u317b':
3747:                    case '\u317c':
3748:                    case '\u317d':
3749:                    case '\u317e':
3750:                    case '\u317f':
3751:                    case '\u3180':
3752:                    case '\u3181':
3753:                    case '\u3182':
3754:                    case '\u3183':
3755:                    case '\u3184':
3756:                    case '\u3185':
3757:                    case '\u3186':
3758:                    case '\u3187':
3759:                    case '\u3188':
3760:                    case '\u3189':
3761:                    case '\u318a':
3762:                    case '\u318b':
3763:                    case '\u318c':
3764:                    case '\u318d':
3765:                    case '\u318e': {
3766:                        matchRange('\u3131', '\u318e');
3767:                        break;
3768:                    }
3769:                    case '\ufb00':
3770:                    case '\ufb01':
3771:                    case '\ufb02':
3772:                    case '\ufb03':
3773:                    case '\ufb04':
3774:                    case '\ufb05':
3775:                    case '\ufb06': {
3776:                        matchRange('\ufb00', '\ufb06');
3777:                        break;
3778:                    }
3779:                    case '\ufb13':
3780:                    case '\ufb14':
3781:                    case '\ufb15':
3782:                    case '\ufb16':
3783:                    case '\ufb17': {
3784:                        matchRange('\ufb13', '\ufb17');
3785:                        break;
3786:                    }
3787:                    case '\ufb1f':
3788:                    case '\ufb20':
3789:                    case '\ufb21':
3790:                    case '\ufb22':
3791:                    case '\ufb23':
3792:                    case '\ufb24':
3793:                    case '\ufb25':
3794:                    case '\ufb26':
3795:                    case '\ufb27':
3796:                    case '\ufb28': {
3797:                        matchRange('\ufb1f', '\ufb28');
3798:                        break;
3799:                    }
3800:                    case '\ufb2a':
3801:                    case '\ufb2b':
3802:                    case '\ufb2c':
3803:                    case '\ufb2d':
3804:                    case '\ufb2e':
3805:                    case '\ufb2f':
3806:                    case '\ufb30':
3807:                    case '\ufb31':
3808:                    case '\ufb32':
3809:                    case '\ufb33':
3810:                    case '\ufb34':
3811:                    case '\ufb35':
3812:                    case '\ufb36': {
3813:                        matchRange('\ufb2a', '\ufb36');
3814:                        break;
3815:                    }
3816:                    case '\ufb38':
3817:                    case '\ufb39':
3818:                    case '\ufb3a':
3819:                    case '\ufb3b':
3820:                    case '\ufb3c': {
3821:                        matchRange('\ufb38', '\ufb3c');
3822:                        break;
3823:                    }
3824:                    case '\ufb3e': {
3825:                        match('\ufb3e');
3826:                        break;
3827:                    }
3828:                    case '\ufb40':
3829:                    case '\ufb41': {
3830:                        matchRange('\ufb40', '\ufb41');
3831:                        break;
3832:                    }
3833:                    case '\ufb43':
3834:                    case '\ufb44': {
3835:                        matchRange('\ufb43', '\ufb44');
3836:                        break;
3837:                    }
3838:                    case '\ufb46':
3839:                    case '\ufb47':
3840:                    case '\ufb48':
3841:                    case '\ufb49':
3842:                    case '\ufb4a':
3843:                    case '\ufb4b':
3844:                    case '\ufb4c':
3845:                    case '\ufb4d':
3846:                    case '\ufb4e':
3847:                    case '\ufb4f':
3848:                    case '\ufb50':
3849:                    case '\ufb51':
3850:                    case '\ufb52':
3851:                    case '\ufb53':
3852:                    case '\ufb54':
3853:                    case '\ufb55':
3854:                    case '\ufb56':
3855:                    case '\ufb57':
3856:                    case '\ufb58':
3857:                    case '\ufb59':
3858:                    case '\ufb5a':
3859:                    case '\ufb5b':
3860:                    case '\ufb5c':
3861:                    case '\ufb5d':
3862:                    case '\ufb5e':
3863:                    case '\ufb5f':
3864:                    case '\ufb60':
3865:                    case '\ufb61':
3866:                    case '\ufb62':
3867:                    case '\ufb63':
3868:                    case '\ufb64':
3869:                    case '\ufb65':
3870:                    case '\ufb66':
3871:                    case '\ufb67':
3872:                    case '\ufb68':
3873:                    case '\ufb69':
3874:                    case '\ufb6a':
3875:                    case '\ufb6b':
3876:                    case '\ufb6c':
3877:                    case '\ufb6d':
3878:                    case '\ufb6e':
3879:                    case '\ufb6f':
3880:                    case '\ufb70':
3881:                    case '\ufb71':
3882:                    case '\ufb72':
3883:                    case '\ufb73':
3884:                    case '\ufb74':
3885:                    case '\ufb75':
3886:                    case '\ufb76':
3887:                    case '\ufb77':
3888:                    case '\ufb78':
3889:                    case '\ufb79':
3890:                    case '\ufb7a':
3891:                    case '\ufb7b':
3892:                    case '\ufb7c':
3893:                    case '\ufb7d':
3894:                    case '\ufb7e':
3895:                    case '\ufb7f':
3896:                    case '\ufb80':
3897:                    case '\ufb81':
3898:                    case '\ufb82':
3899:                    case '\ufb83':
3900:                    case '\ufb84':
3901:                    case '\ufb85':
3902:                    case '\ufb86':
3903:                    case '\ufb87':
3904:                    case '\ufb88':
3905:                    case '\ufb89':
3906:                    case '\ufb8a':
3907:                    case '\ufb8b':
3908:                    case '\ufb8c':
3909:                    case '\ufb8d':
3910:                    case '\ufb8e':
3911:                    case '\ufb8f':
3912:                    case '\ufb90':
3913:                    case '\ufb91':
3914:                    case '\ufb92':
3915:                    case '\ufb93':
3916:                    case '\ufb94':
3917:                    case '\ufb95':
3918:                    case '\ufb96':
3919:                    case '\ufb97':
3920:                    case '\ufb98':
3921:                    case '\ufb99':
3922:                    case '\ufb9a':
3923:                    case '\ufb9b':
3924:                    case '\ufb9c':
3925:                    case '\ufb9d':
3926:                    case '\ufb9e':
3927:                    case '\ufb9f':
3928:                    case '\ufba0':
3929:                    case '\ufba1':
3930:                    case '\ufba2':
3931:                    case '\ufba3':
3932:                    case '\ufba4':
3933:                    case '\ufba5':
3934:                    case '\ufba6':
3935:                    case '\ufba7':
3936:                    case '\ufba8':
3937:                    case '\ufba9':
3938:                    case '\ufbaa':
3939:                    case '\ufbab':
3940:                    case '\ufbac':
3941:                    case '\ufbad':
3942:                    case '\ufbae':
3943:                    case '\ufbaf':
3944:                    case '\ufbb0':
3945:                    case '\ufbb1': {
3946:                        matchRange('\ufb46', '\ufbb1');
3947:                        break;
3948:                    }
3949:                    case '\ufd50':
3950:                    case '\ufd51':
3951:                    case '\ufd52':
3952:                    case '\ufd53':
3953:                    case '\ufd54':
3954:                    case '\ufd55':
3955:                    case '\ufd56':
3956:                    case '\ufd57':
3957:                    case '\ufd58':
3958:                    case '\ufd59':
3959:                    case '\ufd5a':
3960:                    case '\ufd5b':
3961:                    case '\ufd5c':
3962:                    case '\ufd5d':
3963:                    case '\ufd5e':
3964:                    case '\ufd5f':
3965:                    case '\ufd60':
3966:                    case '\ufd61':
3967:                    case '\ufd62':
3968:                    case '\ufd63':
3969:                    case '\ufd64':
3970:                    case '\ufd65':
3971:                    case '\ufd66':
3972:                    case '\ufd67':
3973:                    case '\ufd68':
3974:                    case '\ufd69':
3975:                    case '\ufd6a':
3976:                    case '\ufd6b':
3977:                    case '\ufd6c':
3978:                    case '\ufd6d':
3979:                    case '\ufd6e':
3980:                    case '\ufd6f':
3981:                    case '\ufd70':
3982:                    case '\ufd71':
3983:                    case '\ufd72':
3984:                    case '\ufd73':
3985:                    case '\ufd74':
3986:                    case '\ufd75':
3987:                    case '\ufd76':
3988:                    case '\ufd77':
3989:                    case '\ufd78':
3990:                    case '\ufd79':
3991:                    case '\ufd7a':
3992:                    case '\ufd7b':
3993:                    case '\ufd7c':
3994:                    case '\ufd7d':
3995:                    case '\ufd7e':
3996:                    case '\ufd7f':
3997:                    case '\ufd80':
3998:                    case '\ufd81':
3999:                    case '\ufd82':
4000:                    case '\ufd83':
4001:                    case '\ufd84':
4002:                    case '\ufd85':
4003:                    case '\ufd86':
4004:                    case '\ufd87':
4005:                    case '\ufd88':
4006:                    case '\ufd89':
4007:                    case '\ufd8a':
4008:                    case '\ufd8b':
4009:                    case '\ufd8c':
4010:                    case '\ufd8d':
4011:                    case '\ufd8e':
4012:                    case '\ufd8f': {
4013:                        matchRange('\ufd50', '\ufd8f');
4014:                        break;
4015:                    }
4016:                    case '\ufd92':
4017:                    case '\ufd93':
4018:                    case '\ufd94':
4019:                    case '\ufd95':
4020:                    case '\ufd96':
4021:                    case '\ufd97':
4022:                    case '\ufd98':
4023:                    case '\ufd99':
4024:                    case '\ufd9a':
4025:                    case '\ufd9b':
4026:                    case '\ufd9c':
4027:                    case '\ufd9d':
4028:                    case '\ufd9e':
4029:                    case '\ufd9f':
4030:                    case '\ufda0':
4031:                    case '\ufda1':
4032:                    case '\ufda2':
4033:                    case '\ufda3':
4034:                    case '\ufda4':
4035:                    case '\ufda5':
4036:                    case '\ufda6':
4037:                    case '\ufda7':
4038:                    case '\ufda8':
4039:                    case '\ufda9':
4040:                    case '\ufdaa':
4041:                    case '\ufdab':
4042:                    case '\ufdac':
4043:                    case '\ufdad':
4044:                    case '\ufdae':
4045:                    case '\ufdaf':
4046:                    case '\ufdb0':
4047:                    case '\ufdb1':
4048:                    case '\ufdb2':
4049:                    case '\ufdb3':
4050:                    case '\ufdb4':
4051:                    case '\ufdb5':
4052:                    case '\ufdb6':
4053:                    case '\ufdb7':
4054:                    case '\ufdb8':
4055:                    case '\ufdb9':
4056:                    case '\ufdba':
4057:                    case '\ufdbb':
4058:                    case '\ufdbc':
4059:                    case '\ufdbd':
4060:                    case '\ufdbe':
4061:                    case '\ufdbf':
4062:                    case '\ufdc0':
4063:                    case '\ufdc1':
4064:                    case '\ufdc2':
4065:                    case '\ufdc3':
4066:                    case '\ufdc4':
4067:                    case '\ufdc5':
4068:                    case '\ufdc6':
4069:                    case '\ufdc7': {
4070:                        matchRange('\ufd92', '\ufdc7');
4071:                        break;
4072:                    }
4073:                    case '\ufdf0':
4074:                    case '\ufdf1':
4075:                    case '\ufdf2':
4076:                    case '\ufdf3':
4077:                    case '\ufdf4':
4078:                    case '\ufdf5':
4079:                    case '\ufdf6':
4080:                    case '\ufdf7':
4081:                    case '\ufdf8':
4082:                    case '\ufdf9':
4083:                    case '\ufdfa':
4084:                    case '\ufdfb': {
4085:                        matchRange('\ufdf0', '\ufdfb');
4086:                        break;
4087:                    }
4088:                    case '\ufe33':
4089:                    case '\ufe34': {
4090:                        matchRange('\ufe33', '\ufe34');
4091:                        break;
4092:                    }
4093:                    case '\ufe4d':
4094:                    case '\ufe4e':
4095:                    case '\ufe4f': {
4096:                        matchRange('\ufe4d', '\ufe4f');
4097:                        break;
4098:                    }
4099:                    case '\ufe69': {
4100:                        match('\ufe69');
4101:                        break;
4102:                    }
4103:                    case '\ufe70':
4104:                    case '\ufe71':
4105:                    case '\ufe72': {
4106:                        matchRange('\ufe70', '\ufe72');
4107:                        break;
4108:                    }
4109:                    case '\ufe74': {
4110:                        match('\ufe74');
4111:                        break;
4112:                    }
4113:                    case '\uff04': {
4114:                        match('\uff04');
4115:                        break;
4116:                    }
4117:                    case '\uff21':
4118:                    case '\uff22':
4119:                    case '\uff23':
4120:                    case '\uff24':
4121:                    case '\uff25':
4122:                    case '\uff26':
4123:                    case '\uff27':
4124:                    case '\uff28':
4125:                    case '\uff29':
4126:                    case '\uff2a':
4127:                    case '\uff2b':
4128:                    case '\uff2c':
4129:                    case '\uff2d':
4130:                    case '\uff2e':
4131:                    case '\uff2f':
4132:                    case '\uff30':
4133:                    case '\uff31':
4134:                    case '\uff32':
4135:                    case '\uff33':
4136:                    case '\uff34':
4137:                    case '\uff35':
4138:                    case '\uff36':
4139:                    case '\uff37':
4140:                    case '\uff38':
4141:                    case '\uff39':
4142:                    case '\uff3a': {
4143:                        matchRange('\uff21', '\uff3a');
4144:                        break;
4145:                    }
4146:                    case '\uff3f': {
4147:                        match('\uff3f');
4148:                        break;
4149:                    }
4150:                    case '\uff41':
4151:                    case '\uff42':
4152:                    case '\uff43':
4153:                    case '\uff44':
4154:                    case '\uff45':
4155:                    case '\uff46':
4156:                    case '\uff47':
4157:                    case '\uff48':
4158:                    case '\uff49':
4159:                    case '\uff4a':
4160:                    case '\uff4b':
4161:                    case '\uff4c':
4162:                    case '\uff4d':
4163:                    case '\uff4e':
4164:                    case '\uff4f':
4165:                    case '\uff50':
4166:                    case '\uff51':
4167:                    case '\uff52':
4168:                    case '\uff53':
4169:                    case '\uff54':
4170:                    case '\uff55':
4171:                    case '\uff56':
4172:                    case '\uff57':
4173:                    case '\uff58':
4174:                    case '\uff59':
4175:                    case '\uff5a': {
4176:                        matchRange('\uff41', '\uff5a');
4177:                        break;
4178:                    }
4179:                    case '\uff66':
4180:                    case '\uff67':
4181:                    case '\uff68':
4182:                    case '\uff69':
4183:                    case '\uff6a':
4184:                    case '\uff6b':
4185:                    case '\uff6c':
4186:                    case '\uff6d':
4187:                    case '\uff6e':
4188:                    case '\uff6f':
4189:                    case '\uff70':
4190:                    case '\uff71':
4191:                    case '\uff72':
4192:                    case '\uff73':
4193:                    case '\uff74':
4194:                    case '\uff75':
4195:                    case '\uff76':
4196:                    case '\uff77':
4197:                    case '\uff78':
4198:                    case '\uff79':
4199:                    case '\uff7a':
4200:                    case '\uff7b':
4201:                    case '\uff7c':
4202:                    case '\uff7d':
4203:                    case '\uff7e':
4204:                    case '\uff7f':
4205:                    case '\uff80':
4206:                    case '\uff81':
4207:                    case '\uff82':
4208:                    case '\uff83':
4209:                    case '\uff84':
4210:                    case '\uff85':
4211:                    case '\uff86':
4212:                    case '\uff87':
4213:                    case '\uff88':
4214:                    case '\uff89':
4215:                    case '\uff8a':
4216:                    case '\uff8b':
4217:                    case '\uff8c':
4218:                    case '\uff8d':
4219:                    case '\uff8e':
4220:                    case '\uff8f':
4221:                    case '\uff90':
4222:                    case '\uff91':
4223:                    case '\uff92':
4224:                    case '\uff93':
4225:                    case '\uff94':
4226:                    case '\uff95':
4227:                    case '\uff96':
4228:                    case '\uff97':
4229:                    case '\uff98':
4230:                    case '\uff99':
4231:                    case '\uff9a':
4232:                    case '\uff9b':
4233:                    case '\uff9c':
4234:                    case '\uff9d':
4235:                    case '\uff9e':
4236:                    case '\uff9f':
4237:                    case '\uffa0':
4238:                    case '\uffa1':
4239:                    case '\uffa2':
4240:                    case '\uffa3':
4241:                    case '\uffa4':
4242:                    case '\uffa5':
4243:                    case '\uffa6':
4244:                    case '\uffa7':
4245:                    case '\uffa8':
4246:                    case '\uffa9':
4247:                    case '\uffaa':
4248:                    case '\uffab':
4249:                    case '\uffac':
4250:                    case '\uffad':
4251:                    case '\uffae':
4252:                    case '\uffaf':
4253:                    case '\uffb0':
4254:                    case '\uffb1':
4255:                    case '\uffb2':
4256:                    case '\uffb3':
4257:                    case '\uffb4':
4258:                    case '\uffb5':
4259:                    case '\uffb6':
4260:                    case '\uffb7':
4261:                    case '\uffb8':
4262:                    case '\uffb9':
4263:                    case '\uffba':
4264:                    case '\uffbb':
4265:                    case '\uffbc':
4266:                    case '\uffbd':
4267:                    case '\uffbe': {
4268:                        matchRange('\uff66', '\uffbe');
4269:                        break;
4270:                    }
4271:                    case '\uffc2':
4272:                    case '\uffc3':
4273:                    case '\uffc4':
4274:                    case '\uffc5':
4275:                    case '\uffc6':
4276:                    case '\uffc7': {
4277:                        matchRange('\uffc2', '\uffc7');
4278:                        break;
4279:                    }
4280:                    case '\uffca':
4281:                    case '\uffcb':
4282:                    case '\uffcc':
4283:                    case '\uffcd':
4284:                    case '\uffce':
4285:                    case '\uffcf': {
4286:                        matchRange('\uffca', '\uffcf');
4287:                        break;
4288:                    }
4289:                    case '\uffd2':
4290:                    case '\uffd3':
4291:                    case '\uffd4':
4292:                    case '\uffd5':
4293:                    case '\uffd6':
4294:                    case '\uffd7': {
4295:                        matchRange('\uffd2', '\uffd7');
4296:                        break;
4297:                    }
4298:                    case '\uffda':
4299:                    case '\uffdb':
4300:                    case '\uffdc': {
4301:                        matchRange('\uffda', '\uffdc');
4302:                        break;
4303:                    }
4304:                    case '\uffe0':
4305:                    case '\uffe1': {
4306:                        matchRange('\uffe0', '\uffe1');
4307:                        break;
4308:                    }
4309:                    case '\uffe5':
4310:                    case '\uffe6': {
4311:                        matchRange('\uffe5', '\uffe6');
4312:                        break;
4313:                    }
4314:                    default:
4315:                        if (((LA(1) >= '\u00f8' && LA(1) <= '\u01f5'))) {
4316:                            matchRange('\u00f8', '\u01f5');
4317:                        } else if (((LA(1) >= '\u1e00' && LA(1) <= '\u1e9b'))) {
4318:                            matchRange('\u1e00', '\u1e9b');
4319:                        } else if (((LA(1) >= '\u4e00' && LA(1) <= '\u9fa5'))) {
4320:                            matchRange('\u4e00', '\u9fa5');
4321:                        } else if (((LA(1) >= '\uac00' && LA(1) <= '\ud7a3'))) {
4322:                            matchRange('\uac00', '\ud7a3');
4323:                        } else if (((LA(1) >= '\uf900' && LA(1) <= '\ufa2d'))) {
4324:                            matchRange('\uf900', '\ufa2d');
4325:                        } else if (((LA(1) >= '\ufbd3' && LA(1) <= '\ufd3d'))) {
4326:                            matchRange('\ufbd3', '\ufd3d');
4327:                        } else if (((LA(1) >= '\ufe76' && LA(1) <= '\ufefc'))) {
4328:                            matchRange('\ufe76', '\ufefc');
4329:                        } else {
4330:                            throw new NoViableAltForCharException(LA(1),
4331:                                    getFilename(), getLine(), getColumn());
4332:                        }
4333:                    }
4334:                }
4335:                if (_createToken && _token == null && _ttype != Token.SKIP) {
4336:                    _token = makeToken(_ttype);
4337:                    _token.setText(new String(text.getBuffer(), _begin, text
4338:                            .length()
4339:                            - _begin));
4340:                }
4341:                _returnToken = _token;
4342:            }
4343:
4344:            protected final void mIDENTIFIER_PART(boolean _createToken)
4345:                    throws RecognitionException, CharStreamException,
4346:                    TokenStreamException {
4347:                int _ttype;
4348:                Token _token = null;
4349:                int _begin = text.length();
4350:                _ttype = IDENTIFIER_PART;
4351:                int _saveIndex;
4352:
4353:                if ((_tokenSet_0.member(LA(1)))) {
4354:                    mIDENTIFIER_START(false);
4355:                } else if ((_tokenSet_2.member(LA(1)))) {
4356:                    {
4357:                        switch (LA(1)) {
4358:                        case '\u0000':
4359:                        case '\u0001':
4360:                        case '\u0002':
4361:                        case '\u0003':
4362:                        case '\u0004':
4363:                        case '\u0005':
4364:                        case '\u0006':
4365:                        case '\u0007':
4366:                        case '\u0008': {
4367:                            matchRange('\u0000', '\u0008');
4368:                            break;
4369:                        }
4370:                        case '\u000e':
4371:                        case '\u000f':
4372:                        case '\u0010':
4373:                        case '\u0011':
4374:                        case '\u0012':
4375:                        case '\u0013':
4376:                        case '\u0014':
4377:                        case '\u0015':
4378:                        case '\u0016':
4379:                        case '\u0017':
4380:                        case '\u0018':
4381:                        case '\u0019':
4382:                        case '\u001a':
4383:                        case '\u001b': {
4384:                            matchRange('\u000e', '\u001b');
4385:                            break;
4386:                        }
4387:                        case '0':
4388:                        case '1':
4389:                        case '2':
4390:                        case '3':
4391:                        case '4':
4392:                        case '5':
4393:                        case '6':
4394:                        case '7':
4395:                        case '8':
4396:                        case '9': {
4397:                            matchRange('\u0030', '\u0039');
4398:                            break;
4399:                        }
4400:                        case '\u007f':
4401:                        case '\u0080':
4402:                        case '\u0081':
4403:                        case '\u0082':
4404:                        case '\u0083':
4405:                        case '\u0084':
4406:                        case '\u0085':
4407:                        case '\u0086':
4408:                        case '\u0087':
4409:                        case '\u0088':
4410:                        case '\u0089':
4411:                        case '\u008a':
4412:                        case '\u008b':
4413:                        case '\u008c':
4414:                        case '\u008d':
4415:                        case '\u008e':
4416:                        case '\u008f':
4417:                        case '\u0090':
4418:                        case '\u0091':
4419:                        case '\u0092':
4420:                        case '\u0093':
4421:                        case '\u0094':
4422:                        case '\u0095':
4423:                        case '\u0096':
4424:                        case '\u0097':
4425:                        case '\u0098':
4426:                        case '\u0099':
4427:                        case '\u009a':
4428:                        case '\u009b':
4429:                        case '\u009c':
4430:                        case '\u009d':
4431:                        case '\u009e':
4432:                        case '\u009f': {
4433:                            matchRange('\u007f', '\u009f');
4434:                            break;
4435:                        }
4436:                        case '\u0300':
4437:                        case '\u0301':
4438:                        case '\u0302':
4439:                        case '\u0303':
4440:                        case '\u0304':
4441:                        case '\u0305':
4442:                        case '\u0306':
4443:                        case '\u0307':
4444:                        case '\u0308':
4445:                        case '\u0309':
4446:                        case '\u030a':
4447:                        case '\u030b':
4448:                        case '\u030c':
4449:                        case '\u030d':
4450:                        case '\u030e':
4451:                        case '\u030f':
4452:                        case '\u0310':
4453:                        case '\u0311':
4454:                        case '\u0312':
4455:                        case '\u0313':
4456:                        case '\u0314':
4457:                        case '\u0315':
4458:                        case '\u0316':
4459:                        case '\u0317':
4460:                        case '\u0318':
4461:                        case '\u0319':
4462:                        case '\u031a':
4463:                        case '\u031b':
4464:                        case '\u031c':
4465:                        case '\u031d':
4466:                        case '\u031e':
4467:                        case '\u031f':
4468:                        case '\u0320':
4469:                        case '\u0321':
4470:                        case '\u0322':
4471:                        case '\u0323':
4472:                        case '\u0324':
4473:                        case '\u0325':
4474:                        case '\u0326':
4475:                        case '\u0327':
4476:                        case '\u0328':
4477:                        case '\u0329':
4478:                        case '\u032a':
4479:                        case '\u032b':
4480:                        case '\u032c':
4481:                        case '\u032d':
4482:                        case '\u032e':
4483:                        case '\u032f':
4484:                        case '\u0330':
4485:                        case '\u0331':
4486:                        case '\u0332':
4487:                        case '\u0333':
4488:                        case '\u0334':
4489:                        case '\u0335':
4490:                        case '\u0336':
4491:                        case '\u0337':
4492:                        case '\u0338':
4493:                        case '\u0339':
4494:                        case '\u033a':
4495:                        case '\u033b':
4496:                        case '\u033c':
4497:                        case '\u033d':
4498:                        case '\u033e':
4499:                        case '\u033f':
4500:                        case '\u0340':
4501:                        case '\u0341':
4502:                        case '\u0342':
4503:                        case '\u0343':
4504:                        case '\u0344':
4505:                        case '\u0345': {
4506:                            matchRange('\u0300', '\u0345');
4507:                            break;
4508:                        }
4509:                        case '\u0360':
4510:                        case '\u0361': {
4511:                            matchRange('\u0360', '\u0361');
4512:                            break;
4513:                        }
4514:                        case '\u0483':
4515:                        case '\u0484':
4516:                        case '\u0485':
4517:                        case '\u0486': {
4518:                            matchRange('\u0483', '\u0486');
4519:                            break;
4520:                        }
4521:                        case '\u0591':
4522:                        case '\u0592':
4523:                        case '\u0593':
4524:                        case '\u0594':
4525:                        case '\u0595':
4526:                        case '\u0596':
4527:                        case '\u0597':
4528:                        case '\u0598':
4529:                        case '\u0599':
4530:                        case '\u059a':
4531:                        case '\u059b':
4532:                        case '\u059c':
4533:                        case '\u059d':
4534:                        case '\u059e':
4535:                        case '\u059f':
4536:                        case '\u05a0':
4537:                        case '\u05a1': {
4538:                            matchRange('\u0591', '\u05a1');
4539:                            break;
4540:                        }
4541:                        case '\u05a3':
4542:                        case '\u05a4':
4543:                        case '\u05a5':
4544:                        case '\u05a6':
4545:                        case '\u05a7':
4546:                        case '\u05a8':
4547:                        case '\u05a9':
4548:                        case '\u05aa':
4549:                        case '\u05ab':
4550:                        case '\u05ac':
4551:                        case '\u05ad':
4552:                        case '\u05ae':
4553:                        case '\u05af':
4554:                        case '\u05b0':
4555:                        case '\u05b1':
4556:                        case '\u05b2':
4557:                        case '\u05b3':
4558:                        case '\u05b4':
4559:                        case '\u05b5':
4560:                        case '\u05b6':
4561:                        case '\u05b7':
4562:                        case '\u05b8':
4563:                        case '\u05b9': {
4564:                            matchRange('\u05a3', '\u05b9');
4565:                            break;
4566:                        }
4567:                        case '\u05bb':
4568:                        case '\u05bc':
4569:                        case '\u05bd': {
4570:                            matchRange('\u05bb', '\u05bd');
4571:                            break;
4572:                        }
4573:                        case '\u05bf': {
4574:                            match('\u05bf');
4575:                            break;
4576:                        }
4577:                        case '\u05c1':
4578:                        case '\u05c2': {
4579:                            matchRange('\u05c1', '\u05c2');
4580:                            break;
4581:                        }
4582:                        case '\u05c4': {
4583:                            match('\u05c4');
4584:                            break;
4585:                        }
4586:                        case '\u064b':
4587:                        case '\u064c':
4588:                        case '\u064d':
4589:                        case '\u064e':
4590:                        case '\u064f':
4591:                        case '\u0650':
4592:                        case '\u0651':
4593:                        case '\u0652': {
4594:                            matchRange('\u064b', '\u0652');
4595:                            break;
4596:                        }
4597:                        case '\u0660':
4598:                        case '\u0661':
4599:                        case '\u0662':
4600:                        case '\u0663':
4601:                        case '\u0664':
4602:                        case '\u0665':
4603:                        case '\u0666':
4604:                        case '\u0667':
4605:                        case '\u0668':
4606:                        case '\u0669': {
4607:                            matchRange('\u0660', '\u0669');
4608:                            break;
4609:                        }
4610:                        case '\u0670': {
4611:                            match('\u0670');
4612:                            break;
4613:                        }
4614:                        case '\u06d6':
4615:                        case '\u06d7':
4616:                        case '\u06d8':
4617:                        case '\u06d9':
4618:                        case '\u06da':
4619:                        case '\u06db':
4620:                        case '\u06dc': {
4621:                            matchRange('\u06d6', '\u06dc');
4622:                            break;
4623:                        }
4624:                        case '\u06df':
4625:                        case '\u06e0':
4626:                        case '\u06e1':
4627:                        case '\u06e2':
4628:                        case '\u06e3':
4629:                        case '\u06e4': {
4630:                            matchRange('\u06df', '\u06e4');
4631:                            break;
4632:                        }
4633:                        case '\u06e7':
4634:                        case '\u06e8': {
4635:                            matchRange('\u06e7', '\u06e8');
4636:                            break;
4637:                        }
4638:                        case '\u06ea':
4639:                        case '\u06eb':
4640:                        case '\u06ec':
4641:                        case '\u06ed': {
4642:                            matchRange('\u06ea', '\u06ed');
4643:                            break;
4644:                        }
4645:                        case '\u06f0':
4646:                        case '\u06f1':
4647:                        case '\u06f2':
4648:                        case '\u06f3':
4649:                        case '\u06f4':
4650:                        case '\u06f5':
4651:                        case '\u06f6':
4652:                        case '\u06f7':
4653:                        case '\u06f8':
4654:                        case '\u06f9': {
4655:                            matchRange('\u06f0', '\u06f9');
4656:                            break;
4657:                        }
4658:                        case '\u0901':
4659:                        case '\u0902':
4660:                        case '\u0903': {
4661:                            matchRange('\u0901', '\u0903');
4662:                            break;
4663:                        }
4664:                        case '\u093c': {
4665:                            match('\u093c');
4666:                            break;
4667:                        }
4668:                        case '\u093e':
4669:                        case '\u093f':
4670:                        case '\u0940':
4671:                        case '\u0941':
4672:                        case '\u0942':
4673:                        case '\u0943':
4674:                        case '\u0944':
4675:                        case '\u0945':
4676:                        case '\u0946':
4677:                        case '\u0947':
4678:                        case '\u0948':
4679:                        case '\u0949':
4680:                        case '\u094a':
4681:                        case '\u094b':
4682:                        case '\u094c':
4683:                        case '\u094d': {
4684:                            matchRange('\u093e', '\u094d');
4685:                            break;
4686:                        }
4687:                        case '\u0951':
4688:                        case '\u0952':
4689:                        case '\u0953':
4690:                        case '\u0954': {
4691:                            matchRange('\u0951', '\u0954');
4692:                            break;
4693:                        }
4694:                        case '\u0962':
4695:                        case '\u0963': {
4696:                            matchRange('\u0962', '\u0963');
4697:                            break;
4698:                        }
4699:                        case '\u0966':
4700:                        case '\u0967':
4701:                        case '\u0968':
4702:                        case '\u0969':
4703:                        case '\u096a':
4704:                        case '\u096b':
4705:                        case '\u096c':
4706:                        case '\u096d':
4707:                        case '\u096e':
4708:                        case '\u096f': {
4709:                            matchRange('\u0966', '\u096f');
4710:                            break;
4711:                        }
4712:                        case '\u0981':
4713:                        case '\u0982':
4714:                        case '\u0983': {
4715:                            matchRange('\u0981', '\u0983');
4716:                            break;
4717:                        }
4718:                        case '\u09bc': {
4719:                            match('\u09bc');
4720:                            break;
4721:                        }
4722:                        case '\u09be':
4723:                        case '\u09bf':
4724:                        case '\u09c0':
4725:                        case '\u09c1':
4726:                        case '\u09c2':
4727:                        case '\u09c3':
4728:                        case '\u09c4': {
4729:                            matchRange('\u09be', '\u09c4');
4730:                            break;
4731:                        }
4732:                        case '\u09c7':
4733:                        case '\u09c8': {
4734:                            matchRange('\u09c7', '\u09c8');
4735:                            break;
4736:                        }
4737:                        case '\u09cb':
4738:                        case '\u09cc':
4739:                        case '\u09cd': {
4740:                            matchRange('\u09cb', '\u09cd');
4741:                            break;
4742:                        }
4743:                        case '\u09d7': {
4744:                            match('\u09d7');
4745:                            break;
4746:                        }
4747:                        case '\u09e2':
4748:                        case '\u09e3': {
4749:                            matchRange('\u09e2', '\u09e3');
4750:                            break;
4751:                        }
4752:                        case '\u09e6':
4753:                        case '\u09e7':
4754:                        case '\u09e8':
4755:                        case '\u09e9':
4756:                        case '\u09ea':
4757:                        case '\u09eb':
4758:                        case '\u09ec':
4759:                        case '\u09ed':
4760:                        case '\u09ee':
4761:                        case '\u09ef': {
4762:                            matchRange('\u09e6', '\u09ef');
4763:                            break;
4764:                        }
4765:                        case '\u0a02': {
4766:                            match('\u0a02');
4767:                            break;
4768:                        }
4769:                        case '\u0a3c': {
4770:                            match('\u0a3c');
4771:                            break;
4772:                        }
4773:                        case '\u0a3e':
4774:                        case '\u0a3f':
4775:                        case '\u0a40':
4776:                        case '\u0a41':
4777:                        case '\u0a42': {
4778:                            matchRange('\u0a3e', '\u0a42');
4779:                            break;
4780:                        }
4781:                        case '\u0a47':
4782:                        case '\u0a48': {
4783:                            matchRange('\u0a47', '\u0a48');
4784:                            break;
4785:                        }
4786:                        case '\u0a4b':
4787:                        case '\u0a4c':
4788:                        case '\u0a4d': {
4789:                            matchRange('\u0a4b', '\u0a4d');
4790:                            break;
4791:                        }
4792:                        case '\u0a66':
4793:                        case '\u0a67':
4794:                        case '\u0a68':
4795:                        case '\u0a69':
4796:                        case '\u0a6a':
4797:                        case '\u0a6b':
4798:                        case '\u0a6c':
4799:                        case '\u0a6d':
4800:                        case '\u0a6e':
4801:                        case '\u0a6f':
4802:                        case '\u0a70':
4803:                        case '\u0a71': {
4804:                            matchRange('\u0a66', '\u0a71');
4805:                            break;
4806:                        }
4807:                        case '\u0a81':
4808:                        case '\u0a82':
4809:                        case '\u0a83': {
4810:                            matchRange('\u0a81', '\u0a83');
4811:                            break;
4812:                        }
4813:                        case '\u0abc': {
4814:                            match('\u0abc');
4815:                            break;
4816:                        }
4817:                        case '\u0abe':
4818:                        case '\u0abf':
4819:                        case '\u0ac0':
4820:                        case '\u0ac1':
4821:                        case '\u0ac2':
4822:                        case '\u0ac3':
4823:                        case '\u0ac4':
4824:                        case '\u0ac5': {
4825:                            matchRange('\u0abe', '\u0ac5');
4826:                            break;
4827:                        }
4828:                        case '\u0ac7':
4829:                        case '\u0ac8':
4830:                        case '\u0ac9': {
4831:                            matchRange('\u0ac7', '\u0ac9');
4832:                            break;
4833:                        }
4834:                        case '\u0acb':
4835:                        case '\u0acc':
4836:                        case '\u0acd': {
4837:                            matchRange('\u0acb', '\u0acd');
4838:                            break;
4839:                        }
4840:                        case '\u0ae6':
4841:                        case '\u0ae7':
4842:                        case '\u0ae8':
4843:                        case '\u0ae9':
4844:                        case '\u0aea':
4845:                        case '\u0aeb':
4846:                        case '\u0aec':
4847:                        case '\u0aed':
4848:                        case '\u0aee':
4849:                        case '\u0aef': {
4850:                            matchRange('\u0ae6', '\u0aef');
4851:                            break;
4852:                        }
4853:                        case '\u0b01':
4854:                        case '\u0b02':
4855:                        case '\u0b03': {
4856:                            matchRange('\u0b01', '\u0b03');
4857:                            break;
4858:                        }
4859:                        case '\u0b3c': {
4860:                            match('\u0b3c');
4861:                            break;
4862:                        }
4863:                        case '\u0b3e':
4864:                        case '\u0b3f':
4865:                        case '\u0b40':
4866:                        case '\u0b41':
4867:                        case '\u0b42':
4868:                        case '\u0b43': {
4869:                            matchRange('\u0b3e', '\u0b43');
4870:                            break;
4871:                        }
4872:                        case '\u0b47':
4873:                        case '\u0b48': {
4874:                            matchRange('\u0b47', '\u0b48');
4875:                            break;
4876:                        }
4877:                        case '\u0b4b':
4878:                        case '\u0b4c':
4879:                        case '\u0b4d': {
4880:                            matchRange('\u0b4b', '\u0b4d');
4881:                            break;
4882:                        }
4883:                        case '\u0b56':
4884:                        case '\u0b57': {
4885:                            matchRange('\u0b56', '\u0b57');
4886:                            break;
4887:                        }
4888:                        case '\u0b66':
4889:                        case '\u0b67':
4890:                        case '\u0b68':
4891:                        case '\u0b69':
4892:                        case '\u0b6a':
4893:                        case '\u0b6b':
4894:                        case '\u0b6c':
4895:                        case '\u0b6d':
4896:                        case '\u0b6e':
4897:                        case '\u0b6f': {
4898:                            matchRange('\u0b66', '\u0b6f');
4899:                            break;
4900:                        }
4901:                        case '\u0b82':
4902:                        case '\u0b83': {
4903:                            matchRange('\u0b82', '\u0b83');
4904:                            break;
4905:                        }
4906:                        case '\u0bbe':
4907:                        case '\u0bbf':
4908:                        case '\u0bc0':
4909:                        case '\u0bc1':
4910:                        case '\u0bc2': {
4911:                            matchRange('\u0bbe', '\u0bc2');
4912:                            break;
4913:                        }
4914:                        case '\u0bc6':
4915:                        case '\u0bc7':
4916:                        case '\u0bc8': {
4917:                            matchRange('\u0bc6', '\u0bc8');
4918:                            break;
4919:                        }
4920:                        case '\u0bca':
4921:                        case '\u0bcb':
4922:                        case '\u0bcc':
4923:                        case '\u0bcd': {
4924:                            matchRange('\u0bca', '\u0bcd');
4925:                            break;
4926:                        }
4927:                        case '\u0bd7': {
4928:                            match('\u0bd7');
4929:                            break;
4930:                        }
4931:                        case '\u0be7':
4932:                        case '\u0be8':
4933:                        case '\u0be9':
4934:                        case '\u0bea':
4935:                        case '\u0beb':
4936:                        case '\u0bec':
4937:                        case '\u0bed':
4938:                        case '\u0bee':
4939:                        case '\u0bef': {
4940:                            matchRange('\u0be7', '\u0bef');
4941:                            break;
4942:                        }
4943:                        case '\u0c01':
4944:                        case '\u0c02':
4945:                        case '\u0c03': {
4946:                            matchRange('\u0c01', '\u0c03');
4947:                            break;
4948:                        }
4949:                        case '\u0c3e':
4950:                        case '\u0c3f':
4951:                        case '\u0c40':
4952:                        case '\u0c41':
4953:                        case '\u0c42':
4954:                        case '\u0c43':
4955:                        case '\u0c44': {
4956:                            matchRange('\u0c3e', '\u0c44');
4957:                            break;
4958:                        }
4959:                        case '\u0c46':
4960:                        case '\u0c47':
4961:                        case '\u0c48': {
4962:                            matchRange('\u0c46', '\u0c48');
4963:                            break;
4964:                        }
4965:                        case '\u0c4a':
4966:                        case '\u0c4b':
4967:                        case '\u0c4c':
4968:                        case '\u0c4d': {
4969:                            matchRange('\u0c4a', '\u0c4d');
4970:                            break;
4971:                        }
4972:                        case '\u0c55':
4973:                        case '\u0c56': {
4974:                            matchRange('\u0c55', '\u0c56');
4975:                            break;
4976:                        }
4977:                        case '\u0c66':
4978:                        case '\u0c67':
4979:                        case '\u0c68':
4980:                        case '\u0c69':
4981:                        case '\u0c6a':
4982:                        case '\u0c6b':
4983:                        case '\u0c6c':
4984:                        case '\u0c6d':
4985:                        case '\u0c6e':
4986:                        case '\u0c6f': {
4987:                            matchRange('\u0c66', '\u0c6f');
4988:                            break;
4989:                        }
4990:                        case '\u0c82':
4991:                        case '\u0c83': {
4992:                            matchRange('\u0c82', '\u0c83');
4993:                            break;
4994:                        }
4995:                        case '\u0cbe':
4996:                        case '\u0cbf':
4997:                        case '\u0cc0':
4998:                        case '\u0cc1':
4999:                        case '\u0cc2':
5000:                        case '\u0cc3':
5001:                        case '\u0cc4': {
5002:                            matchRange('\u0cbe', '\u0cc4');
5003:                            break;
5004:                        }
5005:                        case '\u0cc6':
5006:                        case '\u0cc7':
5007:                        case '\u0cc8': {
5008:                            matchRange('\u0cc6', '\u0cc8');
5009:                            break;
5010:                        }
5011:                        case '\u0cca':
5012:                        case '\u0ccb':
5013:                        case '\u0ccc':
5014:                        case '\u0ccd': {
5015:                            matchRange('\u0cca', '\u0ccd');
5016:                            break;
5017:                        }
5018:                        case '\u0cd5':
5019:                        case '\u0cd6': {
5020:                            matchRange('\u0cd5', '\u0cd6');
5021:                            break;
5022:                        }
5023:                        case '\u0ce6':
5024:                        case '\u0ce7':
5025:                        case '\u0ce8':
5026:                        case '\u0ce9':
5027:                        case '\u0cea':
5028:                        case '\u0ceb':
5029:                        case '\u0cec':
5030:                        case '\u0ced':
5031:                        case '\u0cee':
5032:                        case '\u0cef': {
5033:                            matchRange('\u0ce6', '\u0cef');
5034:                            break;
5035:                        }
5036:                        case '\u0d02':
5037:                        case '\u0d03': {
5038:                            matchRange('\u0d02', '\u0d03');
5039:                            break;
5040:                        }
5041:                        case '\u0d3e':
5042:                        case '\u0d3f':
5043:                        case '\u0d40':
5044:                        case '\u0d41':
5045:                        case '\u0d42':
5046:                        case '\u0d43': {
5047:                            matchRange('\u0d3e', '\u0d43');
5048:                            break;
5049:                        }
5050:                        case '\u0d46':
5051:                        case '\u0d47':
5052:                        case '\u0d48': {
5053:                            matchRange('\u0d46', '\u0d48');
5054:                            break;
5055:                        }
5056:                        case '\u0d4a':
5057:                        case '\u0d4b':
5058:                        case '\u0d4c':
5059:                        case '\u0d4d': {
5060:                            matchRange('\u0d4a', '\u0d4d');
5061:                            break;
5062:                        }
5063:                        case '\u0d57': {
5064:                            match('\u0d57');
5065:                            break;
5066:                        }
5067:                        case '\u0d66':
5068:                        case '\u0d67':
5069:                        case '\u0d68':
5070:                        case '\u0d69':
5071:                        case '\u0d6a':
5072:                        case '\u0d6b':
5073:                        case '\u0d6c':
5074:                        case '\u0d6d':
5075:                        case '\u0d6e':
5076:                        case '\u0d6f': {
5077:                            matchRange('\u0d66', '\u0d6f');
5078:                            break;
5079:                        }
5080:                        case '\u0e31': {
5081:                            match('\u0e31');
5082:                            break;
5083:                        }
5084:                        case '\u0e34':
5085:                        case '\u0e35':
5086:                        case '\u0e36':
5087:                        case '\u0e37':
5088:                        case '\u0e38':
5089:                        case '\u0e39':
5090:                        case '\u0e3a': {
5091:                            matchRange('\u0e34', '\u0e3a');
5092:                            break;
5093:                        }
5094:                        case '\u0e47':
5095:                        case '\u0e48':
5096:                        case '\u0e49':
5097:                        case '\u0e4a':
5098:                        case '\u0e4b':
5099:                        case '\u0e4c':
5100:                        case '\u0e4d':
5101:                        case '\u0e4e': {
5102:                            matchRange('\u0e47', '\u0e4e');
5103:                            break;
5104:                        }
5105:                        case '\u0e50':
5106:                        case '\u0e51':
5107:                        case '\u0e52':
5108:                        case '\u0e53':
5109:                        case '\u0e54':
5110:                        case '\u0e55':
5111:                        case '\u0e56':
5112:                        case '\u0e57':
5113:                        case '\u0e58':
5114:                        case '\u0e59': {
5115:                            matchRange('\u0e50', '\u0e59');
5116:                            break;
5117:                        }
5118:                        case '\u0eb1': {
5119:                            match('\u0eb1');
5120:                            break;
5121:                        }
5122:                        case '\u0eb4':
5123:                        case '\u0eb5':
5124:                        case '\u0eb6':
5125:                        case '\u0eb7':
5126:                        case '\u0eb8':
5127:                        case '\u0eb9': {
5128:                            matchRange('\u0eb4', '\u0eb9');
5129:                            break;
5130:                        }
5131:                        case '\u0ebb':
5132:                        case '\u0ebc': {
5133:                            matchRange('\u0ebb', '\u0ebc');
5134:                            break;
5135:                        }
5136:                        case '\u0ec8':
5137:                        case '\u0ec9':
5138:                        case '\u0eca':
5139:                        case '\u0ecb':
5140:                        case '\u0ecc':
5141:                        case '\u0ecd': {
5142:                            matchRange('\u0ec8', '\u0ecd');
5143:                            break;
5144:                        }
5145:                        case '\u0ed0':
5146:                        case '\u0ed1':
5147:                        case '\u0ed2':
5148:                        case '\u0ed3':
5149:                        case '\u0ed4':
5150:                        case '\u0ed5':
5151:                        case '\u0ed6':
5152:                        case '\u0ed7':
5153:                        case '\u0ed8':
5154:                        case '\u0ed9': {
5155:                            matchRange('\u0ed0', '\u0ed9');
5156:                            break;
5157:                        }
5158:                        case '\u0f18':
5159:                        case '\u0f19': {
5160:                            matchRange('\u0f18', '\u0f19');
5161:                            break;
5162:                        }
5163:                        case '\u0f20':
5164:                        case '\u0f21':
5165:                        case '\u0f22':
5166:                        case '\u0f23':
5167:                        case '\u0f24':
5168:                        case '\u0f25':
5169:                        case '\u0f26':
5170:                        case '\u0f27':
5171:                        case '\u0f28':
5172:                        case '\u0f29': {
5173:                            matchRange('\u0f20', '\u0f29');
5174:                            break;
5175:                        }
5176:                        case '\u0f35': {
5177:                            match('\u0f35');
5178:                            break;
5179:                        }
5180:                        case '\u0f37': {
5181:                            match('\u0f37');
5182:                            break;
5183:                        }
5184:                        case '\u0f39': {
5185:                            match('\u0f39');
5186:                            break;
5187:                        }
5188:                        case '\u0f3e':
5189:                        case '\u0f3f': {
5190:                            matchRange('\u0f3e', '\u0f3f');
5191:                            break;
5192:                        }
5193:                        case '\u0f71':
5194:                        case '\u0f72':
5195:                        case '\u0f73':
5196:                        case '\u0f74':
5197:                        case '\u0f75':
5198:                        case '\u0f76':
5199:                        case '\u0f77':
5200:                        case '\u0f78':
5201:                        case '\u0f79':
5202:                        case '\u0f7a':
5203:                        case '\u0f7b':
5204:                        case '\u0f7c':
5205:                        case '\u0f7d':
5206:                        case '\u0f7e':
5207:                        case '\u0f7f':
5208:                        case '\u0f80':
5209:                        case '\u0f81':
5210:                        case '\u0f82':
5211:                        case '\u0f83':
5212:                        case '\u0f84': {
5213:                            matchRange('\u0f71', '\u0f84');
5214:                            break;
5215:                        }
5216:                        case '\u0f86':
5217:                        case '\u0f87':
5218:                        case '\u0f88':
5219:                        case '\u0f89':
5220:                        case '\u0f8a':
5221:                        case '\u0f8b': {
5222:                            matchRange('\u0f86', '\u0f8b');
5223:                            break;
5224:                        }
5225:                        case '\u0f90':
5226:                        case '\u0f91':
5227:                        case '\u0f92':
5228:                        case '\u0f93':
5229:                        case '\u0f94':
5230:                        case '\u0f95': {
5231:                            matchRange('\u0f90', '\u0f95');
5232:                            break;
5233:                        }
5234:                        case '\u0f97': {
5235:                            match('\u0f97');
5236:                            break;
5237:                        }
5238:                        case '\u0f99':
5239:                        case '\u0f9a':
5240:                        case '\u0f9b':
5241:                        case '\u0f9c':
5242:                        case '\u0f9d':
5243:                        case '\u0f9e':
5244:                        case '\u0f9f':
5245:                        case '\u0fa0':
5246:                        case '\u0fa1':
5247:                        case '\u0fa2':
5248:                        case '\u0fa3':
5249:                        case '\u0fa4':
5250:                        case '\u0fa5':
5251:                        case '\u0fa6':
5252:                        case '\u0fa7':
5253:                        case '\u0fa8':
5254:                        case '\u0fa9':
5255:                        case '\u0faa':
5256:                        case '\u0fab':
5257:                        case '\u0fac':
5258:                        case '\u0fad': {
5259:                            matchRange('\u0f99', '\u0fad');
5260:                            break;
5261:                        }
5262:                        case '\u0fb1':
5263:                        case '\u0fb2':
5264:                        case '\u0fb3':
5265:                        case '\u0fb4':
5266:                        case '\u0fb5':
5267:                        case '\u0fb6':
5268:                        case '\u0fb7': {
5269:                            matchRange('\u0fb1', '\u0fb7');
5270:                            break;
5271:                        }
5272:                        case '\u0fb9': {
5273:                            match('\u0fb9');
5274:                            break;
5275:                        }
5276:                        case '\u200c':
5277:                        case '\u200d':
5278:                        case '\u200e':
5279:                        case '\u200f': {
5280:                            matchRange('\u200c', '\u200f');
5281:                            break;
5282:                        }
5283:                        case '\u202a':
5284:                        case '\u202b':
5285:                        case '\u202c':
5286:                        case '\u202d':
5287:                        case '\u202e': {
5288:                            matchRange('\u202a', '\u202e');
5289:                            break;
5290:                        }
5291:                        case '\u206a':
5292:                        case '\u206b':
5293:                        case '\u206c':
5294:                        case '\u206d':
5295:                        case '\u206e':
5296:                        case '\u206f': {
5297:                            matchRange('\u206a', '\u206f');
5298:                            break;
5299:                        }
5300:                        case '\u20d0':
5301:                        case '\u20d1':
5302:                        case '\u20d2':
5303:                        case '\u20d3':
5304:                        case '\u20d4':
5305:                        case '\u20d5':
5306:                        case '\u20d6':
5307:                        case '\u20d7':
5308:                        case '\u20d8':
5309:                        case '\u20d9':
5310:                        case '\u20da':
5311:                        case '\u20db':
5312:                        case '\u20dc': {
5313:                            matchRange('\u20d0', '\u20dc');
5314:                            break;
5315:                        }
5316:                        case '\u20e1': {
5317:                            match('\u20e1');
5318:                            break;
5319:                        }
5320:                        case '\u302a':
5321:                        case '\u302b':
5322:                        case '\u302c':
5323:                        case '\u302d':
5324:                        case '\u302e':
5325:                        case '\u302f': {
5326:                            matchRange('\u302a', '\u302f');
5327:                            break;
5328:                        }
5329:                        case '\u3099':
5330:                        case '\u309a': {
5331:                            matchRange('\u3099', '\u309a');
5332:                            break;
5333:                        }
5334:                        case '\ufb1e': {
5335:                            match('\ufb1e');
5336:                            break;
5337:                        }
5338:                        case '\ufe20':
5339:                        case '\ufe21':
5340:                        case '\ufe22':
5341:                        case '\ufe23': {
5342:                            matchRange('\ufe20', '\ufe23');
5343:                            break;
5344:                        }
5345:                        case '\ufeff': {
5346:                            match('\ufeff');
5347:                            break;
5348:                        }
5349:                        case '\uff10':
5350:                        case '\uff11':
5351:                        case '\uff12':
5352:                        case '\uff13':
5353:                        case '\uff14':
5354:                        case '\uff15':
5355:                        case '\uff16':
5356:                        case '\uff17':
5357:                        case '\uff18':
5358:                        case '\uff19': {
5359:                            matchRange('\uff10', '\uff19');
5360:                            break;
5361:                        }
5362:                        default: {
5363:                            throw new NoViableAltForCharException(LA(1),
5364:                                    getFilename(), getLine(), getColumn());
5365:                        }
5366:                        }
5367:                    }
5368:                } else {
5369:                    throw new NoViableAltForCharException(LA(1), getFilename(),
5370:                            getLine(), getColumn());
5371:                }
5372:
5373:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5374:                    _token = makeToken(_ttype);
5375:                    _token.setText(new String(text.getBuffer(), _begin, text
5376:                            .length()
5377:                            - _begin));
5378:                }
5379:                _returnToken = _token;
5380:            }
5381:
5382:            public final void mCHARACTER_LITERAL(boolean _createToken)
5383:                    throws RecognitionException, CharStreamException,
5384:                    TokenStreamException {
5385:                int _ttype;
5386:                Token _token = null;
5387:                int _begin = text.length();
5388:                _ttype = CHARACTER_LITERAL;
5389:                int _saveIndex;
5390:
5391:                _saveIndex = text.length();
5392:                match('\'');
5393:                text.setLength(_saveIndex);
5394:                {
5395:                    if ((_tokenSet_3.member(LA(1)))) {
5396:                        {
5397:                            match(_tokenSet_3);
5398:                        }
5399:                    } else if ((LA(1) == '\\')) {
5400:                        mESCAPE_SEQUENCE(false);
5401:                    } else {
5402:                        throw new NoViableAltForCharException(LA(1),
5403:                                getFilename(), getLine(), getColumn());
5404:                    }
5405:
5406:                }
5407:                _saveIndex = text.length();
5408:                match('\'');
5409:                text.setLength(_saveIndex);
5410:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5411:                    _token = makeToken(_ttype);
5412:                    _token.setText(new String(text.getBuffer(), _begin, text
5413:                            .length()
5414:                            - _begin));
5415:                }
5416:                _returnToken = _token;
5417:            }
5418:
5419:            protected final void mESCAPE_SEQUENCE(boolean _createToken)
5420:                    throws RecognitionException, CharStreamException,
5421:                    TokenStreamException {
5422:                int _ttype;
5423:                Token _token = null;
5424:                int _begin = text.length();
5425:                _ttype = ESCAPE_SEQUENCE;
5426:                int _saveIndex;
5427:
5428:                if ((LA(1) == '\\') && (_tokenSet_4.member(LA(2)))) {
5429:                    {
5430:                        match('\\');
5431:                        {
5432:                            switch (LA(1)) {
5433:                            case '"': {
5434:                                match('"');
5435:                                break;
5436:                            }
5437:                            case '\'': {
5438:                                match('\'');
5439:                                break;
5440:                            }
5441:                            case '\\': {
5442:                                match('\\');
5443:                                break;
5444:                            }
5445:                            case 'b': {
5446:                                match('b');
5447:                                break;
5448:                            }
5449:                            case 'f': {
5450:                                match('f');
5451:                                break;
5452:                            }
5453:                            case 'n': {
5454:                                match('n');
5455:                                break;
5456:                            }
5457:                            case 'r': {
5458:                                match('r');
5459:                                break;
5460:                            }
5461:                            case 't': {
5462:                                match('t');
5463:                                break;
5464:                            }
5465:                            default: {
5466:                                throw new NoViableAltForCharException(LA(1),
5467:                                        getFilename(), getLine(), getColumn());
5468:                            }
5469:                            }
5470:                        }
5471:                    }
5472:                } else if ((LA(1) == '\\') && (LA(2) == 'u')) {
5473:                    mUNICODE_ESCAPE(false);
5474:                } else if ((LA(1) == '\\') && ((LA(2) >= '0' && LA(2) <= '7'))) {
5475:                    mOCTAL_ESCAPE(false);
5476:                } else {
5477:                    throw new NoViableAltForCharException(LA(1), getFilename(),
5478:                            getLine(), getColumn());
5479:                }
5480:
5481:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5482:                    _token = makeToken(_ttype);
5483:                    _token.setText(new String(text.getBuffer(), _begin, text
5484:                            .length()
5485:                            - _begin));
5486:                }
5487:                _returnToken = _token;
5488:            }
5489:
5490:            public final void mSTRING_LITERAL(boolean _createToken)
5491:                    throws RecognitionException, CharStreamException,
5492:                    TokenStreamException {
5493:                int _ttype;
5494:                Token _token = null;
5495:                int _begin = text.length();
5496:                _ttype = STRING_LITERAL;
5497:                int _saveIndex;
5498:
5499:                _saveIndex = text.length();
5500:                match('"');
5501:                text.setLength(_saveIndex);
5502:                {
5503:                    _loop34: do {
5504:                        if ((_tokenSet_5.member(LA(1)))) {
5505:                            {
5506:                                match(_tokenSet_5);
5507:                            }
5508:                        } else if ((LA(1) == '\\')) {
5509:                            mESCAPE_SEQUENCE(false);
5510:                        } else {
5511:                            break _loop34;
5512:                        }
5513:
5514:                    } while (true);
5515:                }
5516:                _saveIndex = text.length();
5517:                match('"');
5518:                text.setLength(_saveIndex);
5519:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5520:                    _token = makeToken(_ttype);
5521:                    _token.setText(new String(text.getBuffer(), _begin, text
5522:                            .length()
5523:                            - _begin));
5524:                }
5525:                _returnToken = _token;
5526:            }
5527:
5528:            public final void mINT_OR_FLOAT_LITERAL_OR_DOT(boolean _createToken)
5529:                    throws RecognitionException, CharStreamException,
5530:                    TokenStreamException {
5531:                int _ttype;
5532:                Token _token = null;
5533:                int _begin = text.length();
5534:                _ttype = INT_OR_FLOAT_LITERAL_OR_DOT;
5535:                int _saveIndex;
5536:
5537:                boolean canBeOctal = true;
5538:
5539:                // initially we assume an int
5540:                _ttype = INTEGER_LITERAL;
5541:
5542:                {
5543:                    switch (LA(1)) {
5544:                    case '0': {
5545:                        match('0');
5546:                        {
5547:                            if ((LA(1) == 'X' || LA(1) == 'x')) {
5548:                                {
5549:                                    switch (LA(1)) {
5550:                                    case 'x': {
5551:                                        match('x');
5552:                                        break;
5553:                                    }
5554:                                    case 'X': {
5555:                                        match('X');
5556:                                        break;
5557:                                    }
5558:                                    default: {
5559:                                        throw new NoViableAltForCharException(
5560:                                                LA(1), getFilename(),
5561:                                                getLine(), getColumn());
5562:                                    }
5563:                                    }
5564:                                }
5565:                                {
5566:                                    int _cnt40 = 0;
5567:                                    _loop40: do {
5568:                                        if ((_tokenSet_6.member(LA(1)))) {
5569:                                            mHEX_DIGIT(false);
5570:                                        } else {
5571:                                            if (_cnt40 >= 1) {
5572:                                                break _loop40;
5573:                                            } else {
5574:                                                throw new NoViableAltForCharException(
5575:                                                        LA(1), getFilename(),
5576:                                                        getLine(), getColumn());
5577:                                            }
5578:                                        }
5579:
5580:                                        _cnt40++;
5581:                                    } while (true);
5582:                                }
5583:                                {
5584:                                    if ((LA(1) == 'L' || LA(1) == 'l')) {
5585:                                        mINTEGER_TYPE_SUFFIX(false);
5586:                                    } else {
5587:                                    }
5588:
5589:                                }
5590:                            } else {
5591:                                {
5592:                                    _loop43: do {
5593:                                        switch (LA(1)) {
5594:                                        case '0':
5595:                                        case '1':
5596:                                        case '2':
5597:                                        case '3':
5598:                                        case '4':
5599:                                        case '5':
5600:                                        case '6':
5601:                                        case '7': {
5602:                                            mOCTAL_DIGIT(false);
5603:                                            break;
5604:                                        }
5605:                                        case '8':
5606:                                        case '9': {
5607:                                            matchRange('8', '9');
5608:                                            canBeOctal = false;
5609:                                            break;
5610:                                        }
5611:                                        default: {
5612:                                            break _loop43;
5613:                                        }
5614:                                        }
5615:                                    } while (true);
5616:                                }
5617:                                {
5618:                                    switch (LA(1)) {
5619:                                    case 'D':
5620:                                    case 'F':
5621:                                    case 'd':
5622:                                    case 'f': {
5623:                                        mFLOAT_TYPE_SUFFIX(false);
5624:
5625:                                        _ttype = FLOATING_POINT_LITERAL;
5626:
5627:                                        break;
5628:                                    }
5629:                                    case '.': {
5630:                                        match('.');
5631:                                        {
5632:                                            _loop46: do {
5633:                                                if (((LA(1) >= '0' && LA(1) <= '9'))) {
5634:                                                    mDIGIT(false);
5635:                                                } else {
5636:                                                    break _loop46;
5637:                                                }
5638:
5639:                                            } while (true);
5640:                                        }
5641:                                        {
5642:                                            if ((LA(1) == 'E' || LA(1) == 'e')) {
5643:                                                mEXPONENT_PART(false);
5644:                                            } else {
5645:                                            }
5646:
5647:                                        }
5648:                                        {
5649:                                            if ((_tokenSet_7.member(LA(1)))) {
5650:                                                mFLOAT_TYPE_SUFFIX(false);
5651:                                            } else {
5652:                                            }
5653:
5654:                                        }
5655:
5656:                                        _ttype = FLOATING_POINT_LITERAL;
5657:
5658:                                        break;
5659:                                    }
5660:                                    case 'E':
5661:                                    case 'e': {
5662:                                        mEXPONENT_PART(false);
5663:                                        {
5664:                                            if ((_tokenSet_7.member(LA(1)))) {
5665:                                                mFLOAT_TYPE_SUFFIX(false);
5666:                                            } else {
5667:                                            }
5668:
5669:                                        }
5670:
5671:                                        _ttype = FLOATING_POINT_LITERAL;
5672:
5673:                                        break;
5674:                                    }
5675:                                    default:
5676:                                        if ((true) && (canBeOctal)) {
5677:                                            {
5678:                                                if ((LA(1) == 'L' || LA(1) == 'l')) {
5679:                                                    mINTEGER_TYPE_SUFFIX(false);
5680:                                                } else {
5681:                                                }
5682:
5683:                                            }
5684:                                        } else {
5685:                                            throw new NoViableAltForCharException(
5686:                                                    LA(1), getFilename(),
5687:                                                    getLine(), getColumn());
5688:                                        }
5689:                                    }
5690:                                }
5691:                            }
5692:
5693:                        }
5694:                        break;
5695:                    }
5696:                    case '.': {
5697:                        match('.');
5698:                        {
5699:                            if (((LA(1) >= '0' && LA(1) <= '9'))) {
5700:                                {
5701:                                    int _cnt53 = 0;
5702:                                    _loop53: do {
5703:                                        if (((LA(1) >= '0' && LA(1) <= '9'))) {
5704:                                            mDIGIT(false);
5705:                                        } else {
5706:                                            if (_cnt53 >= 1) {
5707:                                                break _loop53;
5708:                                            } else {
5709:                                                throw new NoViableAltForCharException(
5710:                                                        LA(1), getFilename(),
5711:                                                        getLine(), getColumn());
5712:                                            }
5713:                                        }
5714:
5715:                                        _cnt53++;
5716:                                    } while (true);
5717:                                }
5718:                                {
5719:                                    if ((LA(1) == 'E' || LA(1) == 'e')) {
5720:                                        mEXPONENT_PART(false);
5721:                                    } else {
5722:                                    }
5723:
5724:                                }
5725:                                {
5726:                                    if ((_tokenSet_7.member(LA(1)))) {
5727:                                        mFLOAT_TYPE_SUFFIX(false);
5728:                                    } else {
5729:                                    }
5730:
5731:                                }
5732:
5733:                                _ttype = FLOATING_POINT_LITERAL;
5734:
5735:                            } else {
5736:
5737:                                _ttype = SEP_DOT;
5738:
5739:                            }
5740:
5741:                        }
5742:                        break;
5743:                    }
5744:                    case '1':
5745:                    case '2':
5746:                    case '3':
5747:                    case '4':
5748:                    case '5':
5749:                    case '6':
5750:                    case '7':
5751:                    case '8':
5752:                    case '9': {
5753:                        matchRange('1', '9');
5754:                        {
5755:                            _loop57: do {
5756:                                if (((LA(1) >= '0' && LA(1) <= '9'))) {
5757:                                    mDIGIT(false);
5758:                                } else {
5759:                                    break _loop57;
5760:                                }
5761:
5762:                            } while (true);
5763:                        }
5764:                        {
5765:                            switch (LA(1)) {
5766:                            case 'L':
5767:                            case 'l': {
5768:                                mINTEGER_TYPE_SUFFIX(false);
5769:                                break;
5770:                            }
5771:                            case 'D':
5772:                            case 'F':
5773:                            case 'd':
5774:                            case 'f': {
5775:                                mFLOAT_TYPE_SUFFIX(false);
5776:
5777:                                _ttype = FLOATING_POINT_LITERAL;
5778:
5779:                                break;
5780:                            }
5781:                            case '.': {
5782:                                match('.');
5783:                                {
5784:                                    _loop60: do {
5785:                                        if (((LA(1) >= '0' && LA(1) <= '9'))) {
5786:                                            mDIGIT(false);
5787:                                        } else {
5788:                                            break _loop60;
5789:                                        }
5790:
5791:                                    } while (true);
5792:                                }
5793:                                {
5794:                                    if ((LA(1) == 'E' || LA(1) == 'e')) {
5795:                                        mEXPONENT_PART(false);
5796:                                    } else {
5797:                                    }
5798:
5799:                                }
5800:                                {
5801:                                    if ((_tokenSet_7.member(LA(1)))) {
5802:                                        mFLOAT_TYPE_SUFFIX(false);
5803:                                    } else {
5804:                                    }
5805:
5806:                                }
5807:
5808:                                _ttype = FLOATING_POINT_LITERAL;
5809:
5810:                                break;
5811:                            }
5812:                            case 'E':
5813:                            case 'e': {
5814:                                mEXPONENT_PART(false);
5815:                                {
5816:                                    if ((_tokenSet_7.member(LA(1)))) {
5817:                                        mFLOAT_TYPE_SUFFIX(false);
5818:                                    } else {
5819:                                    }
5820:
5821:                                }
5822:
5823:                                _ttype = FLOATING_POINT_LITERAL;
5824:
5825:                                break;
5826:                            }
5827:                            default: {
5828:                            }
5829:                            }
5830:                        }
5831:                        break;
5832:                    }
5833:                    default: {
5834:                        throw new NoViableAltForCharException(LA(1),
5835:                                getFilename(), getLine(), getColumn());
5836:                    }
5837:                    }
5838:                }
5839:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5840:                    _token = makeToken(_ttype);
5841:                    _token.setText(new String(text.getBuffer(), _begin, text
5842:                            .length()
5843:                            - _begin));
5844:                }
5845:                _returnToken = _token;
5846:            }
5847:
5848:            protected final void mHEX_DIGIT(boolean _createToken)
5849:                    throws RecognitionException, CharStreamException,
5850:                    TokenStreamException {
5851:                int _ttype;
5852:                Token _token = null;
5853:                int _begin = text.length();
5854:                _ttype = HEX_DIGIT;
5855:                int _saveIndex;
5856:
5857:                {
5858:                    switch (LA(1)) {
5859:                    case '0':
5860:                    case '1':
5861:                    case '2':
5862:                    case '3':
5863:                    case '4':
5864:                    case '5':
5865:                    case '6':
5866:                    case '7':
5867:                    case '8':
5868:                    case '9': {
5869:                        matchRange('0', '9');
5870:                        break;
5871:                    }
5872:                    case 'a':
5873:                    case 'b':
5874:                    case 'c':
5875:                    case 'd':
5876:                    case 'e':
5877:                    case 'f': {
5878:                        matchRange('a', 'f');
5879:                        break;
5880:                    }
5881:                    case 'A':
5882:                    case 'B':
5883:                    case 'C':
5884:                    case 'D':
5885:                    case 'E':
5886:                    case 'F': {
5887:                        matchRange('A', 'F');
5888:                        break;
5889:                    }
5890:                    default: {
5891:                        throw new NoViableAltForCharException(LA(1),
5892:                                getFilename(), getLine(), getColumn());
5893:                    }
5894:                    }
5895:                }
5896:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5897:                    _token = makeToken(_ttype);
5898:                    _token.setText(new String(text.getBuffer(), _begin, text
5899:                            .length()
5900:                            - _begin));
5901:                }
5902:                _returnToken = _token;
5903:            }
5904:
5905:            protected final void mINTEGER_TYPE_SUFFIX(boolean _createToken)
5906:                    throws RecognitionException, CharStreamException,
5907:                    TokenStreamException {
5908:                int _ttype;
5909:                Token _token = null;
5910:                int _begin = text.length();
5911:                _ttype = INTEGER_TYPE_SUFFIX;
5912:                int _saveIndex;
5913:
5914:                {
5915:                    switch (LA(1)) {
5916:                    case 'l': {
5917:                        match('l');
5918:                        break;
5919:                    }
5920:                    case 'L': {
5921:                        match('L');
5922:                        break;
5923:                    }
5924:                    default: {
5925:                        throw new NoViableAltForCharException(LA(1),
5926:                                getFilename(), getLine(), getColumn());
5927:                    }
5928:                    }
5929:                }
5930:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5931:                    _token = makeToken(_ttype);
5932:                    _token.setText(new String(text.getBuffer(), _begin, text
5933:                            .length()
5934:                            - _begin));
5935:                }
5936:                _returnToken = _token;
5937:            }
5938:
5939:            protected final void mOCTAL_DIGIT(boolean _createToken)
5940:                    throws RecognitionException, CharStreamException,
5941:                    TokenStreamException {
5942:                int _ttype;
5943:                Token _token = null;
5944:                int _begin = text.length();
5945:                _ttype = OCTAL_DIGIT;
5946:                int _saveIndex;
5947:
5948:                matchRange('0', '7');
5949:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5950:                    _token = makeToken(_ttype);
5951:                    _token.setText(new String(text.getBuffer(), _begin, text
5952:                            .length()
5953:                            - _begin));
5954:                }
5955:                _returnToken = _token;
5956:            }
5957:
5958:            protected final void mFLOAT_TYPE_SUFFIX(boolean _createToken)
5959:                    throws RecognitionException, CharStreamException,
5960:                    TokenStreamException {
5961:                int _ttype;
5962:                Token _token = null;
5963:                int _begin = text.length();
5964:                _ttype = FLOAT_TYPE_SUFFIX;
5965:                int _saveIndex;
5966:
5967:                {
5968:                    switch (LA(1)) {
5969:                    case 'f': {
5970:                        match('f');
5971:                        break;
5972:                    }
5973:                    case 'F': {
5974:                        match('F');
5975:                        break;
5976:                    }
5977:                    case 'd': {
5978:                        match('d');
5979:                        break;
5980:                    }
5981:                    case 'D': {
5982:                        match('D');
5983:                        break;
5984:                    }
5985:                    default: {
5986:                        throw new NoViableAltForCharException(LA(1),
5987:                                getFilename(), getLine(), getColumn());
5988:                    }
5989:                    }
5990:                }
5991:                if (_createToken && _token == null && _ttype != Token.SKIP) {
5992:                    _token = makeToken(_ttype);
5993:                    _token.setText(new String(text.getBuffer(), _begin, text
5994:                            .length()
5995:                            - _begin));
5996:                }
5997:                _returnToken = _token;
5998:            }
5999:
6000:            protected final void mDIGIT(boolean _createToken)
6001:                    throws RecognitionException, CharStreamException,
6002:                    TokenStreamException {
6003:                int _ttype;
6004:                Token _token = null;
6005:                int _begin = text.length();
6006:                _ttype = DIGIT;
6007:                int _saveIndex;
6008:
6009:                matchRange('0', '9');
6010:                if (_createToken && _token == null && _ttype != Token.SKIP) {
6011:                    _token = makeToken(_ttype);
6012:                    _token.setText(new String(text.getBuffer(), _begin, text
6013:                            .length()
6014:                            - _begin));
6015:                }
6016:                _returnToken = _token;
6017:            }
6018:
6019:            protected final void mEXPONENT_PART(boolean _createToken)
6020:                    throws RecognitionException, CharStreamException,
6021:                    TokenStreamException {
6022:                int _ttype;
6023:                Token _token = null;
6024:                int _begin = text.length();
6025:                _ttype = EXPONENT_PART;
6026:                int _saveIndex;
6027:
6028:                {
6029:                    switch (LA(1)) {
6030:                    case 'e': {
6031:                        match('e');
6032:                        break;
6033:                    }
6034:                    case 'E': {
6035:                        match('E');
6036:                        break;
6037:                    }
6038:                    default: {
6039:                        throw new NoViableAltForCharException(LA(1),
6040:                                getFilename(), getLine(), getColumn());
6041:                    }
6042:                    }
6043:                }
6044:                {
6045:                    switch (LA(1)) {
6046:                    case '+': {
6047:                        match('+');
6048:                        break;
6049:                    }
6050:                    case '-': {
6051:                        match('-');
6052:                        break;
6053:                    }
6054:                    case '0':
6055:                    case '1':
6056:                    case '2':
6057:                    case '3':
6058:                    case '4':
6059:                    case '5':
6060:                    case '6':
6061:                    case '7':
6062:                    case '8':
6063:                    case '9': {
6064:                        break;
6065:                    }
6066:                    default: {
6067:                        throw new NoViableAltForCharException(LA(1),
6068:                                getFilename(), getLine(), getColumn());
6069:                    }
6070:                    }
6071:                }
6072:                {
6073:                    int _cnt86 = 0;
6074:                    _loop86: do {
6075:                        if (((LA(1) >= '0' && LA(1) <= '9'))) {
6076:                            mDIGIT(false);
6077:                        } else {
6078:                            if (_cnt86 >= 1) {
6079:                                break _loop86;
6080:                            } else {
6081:                                throw new NoViableAltForCharException(LA(1),
6082:                                        getFilename(), getLine(), getColumn());
6083:                            }
6084:                        }
6085:
6086:                        _cnt86++;
6087:                    } while (true);
6088:                }
6089:                if (_createToken && _token == null && _ttype != Token.SKIP) {
6090:                    _token = makeToken(_ttype);
6091:                    _token.setText(new String(text.getBuffer(), _begin, text
6092:                            .length()
6093:                            - _begin));
6094:                }
6095:                _returnToken = _token;
6096:            }
6097:
6098:            protected final void mUNICODE_ESCAPE(boolean _createToken)
6099:                    throws RecognitionException, CharStreamException,
6100:                    TokenStreamException {
6101:                int _ttype;
6102:                Token _token = null;
6103:                int _begin = text.length();
6104:                _ttype = UNICODE_ESCAPE;
6105:                int _saveIndex;
6106:
6107:                match('\\');
6108:                {
6109:                    int _cnt72 = 0;
6110:                    _loop72: do {
6111:                        if ((LA(1) == 'u')) {
6112:                            match('u');
6113:                        } else {
6114:                            if (_cnt72 >= 1) {
6115:                                break _loop72;
6116:                            } else {
6117:                                throw new NoViableAltForCharException(LA(1),
6118:                                        getFilename(), getLine(), getColumn());
6119:                            }
6120:                        }
6121:
6122:                        _cnt72++;
6123:                    } while (true);
6124:                }
6125:                mHEX_DIGIT(false);
6126:                mHEX_DIGIT(false);
6127:                mHEX_DIGIT(false);
6128:                mHEX_DIGIT(false);
6129:                if (_createToken && _token == null && _ttype != Token.SKIP) {
6130:                    _token = makeToken(_ttype);
6131:                    _token.setText(new String(text.getBuffer(), _begin, text
6132:                            .length()
6133:                            - _begin));
6134:                }
6135:                _returnToken = _token;
6136:            }
6137:
6138:            protected final void mOCTAL_ESCAPE(boolean _createToken)
6139:                    throws RecognitionException, CharStreamException,
6140:                    TokenStreamException {
6141:                int _ttype;
6142:                Token _token = null;
6143:                int _begin = text.length();
6144:                _ttype = OCTAL_ESCAPE;
6145:                int _saveIndex;
6146:
6147:                match('\\');
6148:                {
6149:                    switch (LA(1)) {
6150:                    case '0':
6151:                    case '1':
6152:                    case '2':
6153:                    case '3': {
6154:                        matchRange('0', '3');
6155:                        {
6156:                            if (((LA(1) >= '0' && LA(1) <= '7'))
6157:                                    && (_tokenSet_8.member(LA(2)))) {
6158:                                matchRange('0', '7');
6159:                                {
6160:                                    if (((LA(1) >= '0' && LA(1) <= '7'))
6161:                                            && (_tokenSet_8.member(LA(2)))) {
6162:                                        matchRange('0', '7');
6163:                                    } else if ((_tokenSet_8.member(LA(1))) && (true)) {
6164:                                    } else {
6165:                                        throw new NoViableAltForCharException(
6166:                                                LA(1), getFilename(),
6167:                                                getLine(), getColumn());
6168:                                    }
6169:
6170:                                }
6171:                            } else if ((_tokenSet_8.member(LA(1))) && (true)) {
6172:                            } else {
6173:                                throw new NoViableAltForCharException(LA(1),
6174:                                        getFilename(), getLine(), getColumn());
6175:                            }
6176:
6177:                        }
6178:                        break;
6179:                    }
6180:                    case '4':
6181:                    case '5':
6182:                    case '6':
6183:                    case '7': {
6184:                        matchRange('4', '7');
6185:                        {
6186:                            if (((LA(1) >= '0' && LA(1) <= '7'))
6187:                                    && (_tokenSet_8.member(LA(2)))) {
6188:                                matchRange('0', '7');
6189:                            } else if ((_tokenSet_8.member(LA(1))) && (true)) {
6190:                            } else {
6191:                                throw new NoViableAltForCharException(LA(1),
6192:                                        getFilename(), getLine(), getColumn());
6193:                            }
6194:
6195:                        }
6196:                        break;
6197:                    }
6198:                    default: {
6199:                        throw new NoViableAltForCharException(LA(1),
6200:                                getFilename(), getLine(), getColumn());
6201:                    }
6202:                    }
6203:                }
6204:                if (_createToken && _token == null && _ttype != Token.SKIP) {
6205:                    _token = makeToken(_ttype);
6206:                    _token.setText(new String(text.getBuffer(), _begin, text
6207:                            .length()
6208:                            - _begin));
6209:                }
6210:                _returnToken = _token;
6211:            }
6212:
6213:            private static final long[] mk_tokenSet_0() {
6214:                long[] data = new long[4088];
6215:                data[0] = 68719476736L;
6216:                data[1] = 576460745995190270L;
6217:                data[2] = 297242231151001600L;
6218:                data[3] = -36028797027352577L;
6219:                for (int i = 4; i <= 6; i++) {
6220:                    data[i] = -1L;
6221:                }
6222:                data[7] = -270215977642229761L;
6223:                data[8] = 16777215L;
6224:                data[9] = -65536L;
6225:                data[10] = -432624840181022721L;
6226:                data[11] = 133144182787L;
6227:                data[13] = 288230376151711744L;
6228:                data[14] = -17179879616L;
6229:                data[15] = 4503588160110591L;
6230:                data[16] = -8194L;
6231:                data[17] = -536936449L;
6232:                data[18] = -65533L;
6233:                data[19] = 234134404065073567L;
6234:                data[20] = -562949953421312L;
6235:                data[21] = -8547991553L;
6236:                data[22] = 255L;
6237:                data[23] = 1979120929931264L;
6238:                data[24] = 576460743713488896L;
6239:                data[25] = -562949953419265L;
6240:                data[26] = 9007199254740991999L;
6241:                data[27] = 412319973375L;
6242:                data[36] = 2594073385365405664L;
6243:                data[37] = 17163091968L;
6244:                data[38] = 271902628478820320L;
6245:                data[39] = 4222140488351744L;
6246:                data[40] = 247132830528276448L;
6247:                data[41] = 7881300924956672L;
6248:                data[42] = 2589004636761075680L;
6249:                data[43] = 4294967296L;
6250:                data[44] = 2579997437506199520L;
6251:                data[45] = 15837691904L;
6252:                data[46] = 270153412153034720L;
6253:                data[48] = 283724577500946400L;
6254:                data[49] = 12884901888L;
6255:                data[50] = 283724577500946400L;
6256:                data[51] = 13958643712L;
6257:                data[52] = 288228177128316896L;
6258:                data[53] = 12884901888L;
6259:                data[56] = -9219572124669181954L;
6260:                data[57] = 127L;
6261:                data[58] = 2309621682768192918L;
6262:                data[59] = 805306463L;
6263:                data[61] = 4398046510847L;
6264:                data[66] = -4294967296L;
6265:                data[67] = 36028797018898495L;
6266:                data[68] = -1L;
6267:                data[69] = -2080374785L;
6268:                data[70] = -1065151889409L;
6269:                data[71] = 288230376151711743L;
6270:                for (int i = 120; i <= 121; i++) {
6271:                    data[i] = -1L;
6272:                }
6273:                data[122] = -4026531841L;
6274:                data[123] = 288230376151711743L;
6275:                data[124] = -3233808385L;
6276:                data[125] = 4611686017001275199L;
6277:                data[126] = 6908521828386340863L;
6278:                data[127] = 2295745090394464220L;
6279:                data[128] = -9223372036854775808L;
6280:                data[129] = -9223372036854775807L;
6281:                data[130] = 35180077121536L;
6282:                data[132] = 142986334291623044L;
6283:                data[133] = -4294967296L;
6284:                data[134] = 7L;
6285:                data[192] = 17455838012637344L;
6286:                data[193] = -2L;
6287:                data[194] = -6574571521L;
6288:                data[195] = 8646911284551352319L;
6289:                data[196] = -527765581332512L;
6290:                data[197] = -1L;
6291:                data[198] = 32767L;
6292:                for (int i = 312; i <= 637; i++) {
6293:                    data[i] = -1L;
6294:                }
6295:                data[638] = 274877906943L;
6296:                for (int i = 688; i <= 861; i++) {
6297:                    data[i] = -1L;
6298:                }
6299:                data[862] = 68719476735L;
6300:                for (int i = 996; i <= 999; i++) {
6301:                    data[i] = -1L;
6302:                }
6303:                data[1000] = 70368744177663L;
6304:                data[1004] = 6881498029467631743L;
6305:                data[1005] = -37L;
6306:                data[1006] = 1125899906842623L;
6307:                data[1007] = -524288L;
6308:                for (int i = 1008; i <= 1011; i++) {
6309:                    data[i] = -1L;
6310:                }
6311:                data[1012] = 4611686018427387903L;
6312:                data[1013] = -65536L;
6313:                data[1014] = -196609L;
6314:                data[1015] = 1152640029630136575L;
6315:                data[1016] = 6755399441055744L;
6316:                data[1017] = -11538275021824000L;
6317:                data[1018] = -1L;
6318:                data[1019] = 2305843009213693951L;
6319:                data[1020] = -8646911293141286896L;
6320:                data[1021] = -274743689218L;
6321:                data[1022] = 9223372036854775807L;
6322:                data[1023] = 425688104188L;
6323:                return data;
6324:            }
6325:
6326:            public static final BitSet _tokenSet_0 = new BitSet(mk_tokenSet_0());
6327:
6328:            private static final long[] mk_tokenSet_1() {
6329:                long[] data = new long[4088];
6330:                data[0] = 287948970162897407L;
6331:                data[1] = -8646911290859585538L;
6332:                data[2] = 297242235445968895L;
6333:                data[3] = -36028797027352577L;
6334:                for (int i = 4; i <= 6; i++) {
6335:                    data[i] = -1L;
6336:                }
6337:                data[7] = -270215977642229761L;
6338:                data[8] = 16777215L;
6339:                data[9] = -65536L;
6340:                data[10] = -432624840181022721L;
6341:                data[11] = 133144182787L;
6342:                data[12] = -1L;
6343:                data[13] = 288230389036613695L;
6344:                data[14] = -17179879616L;
6345:                data[15] = 4503588160110591L;
6346:                data[16] = -8194L;
6347:                data[17] = -536936449L;
6348:                data[18] = -65413L;
6349:                data[19] = 234134404065073567L;
6350:                data[20] = -562949953421312L;
6351:                data[21] = -8547991553L;
6352:                data[22] = -4899916411759099649L;
6353:                data[23] = 1979120929931286L;
6354:                data[24] = 576460743713488896L;
6355:                data[25] = -277081224642561L;
6356:                data[26] = 9007199254740991999L;
6357:                data[27] = 288017069284229119L;
6358:                data[36] = -864691128455135250L;
6359:                data[37] = 281268803485695L;
6360:                data[38] = -3186861885341720594L;
6361:                data[39] = 4503392135166367L;
6362:                data[40] = -3211631683292264476L;
6363:                data[41] = 9006925953907079L;
6364:                data[42] = -869759877059465234L;
6365:                data[43] = 281204393786303L;
6366:                data[44] = -878767076314341394L;
6367:                data[45] = 281215949093263L;
6368:                data[46] = -4341532606274353172L;
6369:                data[47] = 280925229301191L;
6370:                data[48] = -4327961440926441490L;
6371:                data[49] = 281212990012895L;
6372:                data[50] = -4327961440926441492L;
6373:                data[51] = 281214063754719L;
6374:                data[52] = -4323457841299070996L;
6375:                data[53] = 281212992110031L;
6376:                data[56] = -8647052022039707650L;
6377:                data[57] = 67076095L;
6378:                data[58] = 4323293666156225942L;
6379:                data[59] = 872365919L;
6380:                data[60] = -4422530440275951616L;
6381:                data[61] = -558551906910465L;
6382:                data[62] = 215680200883507167L;
6383:                data[66] = -4294967296L;
6384:                data[67] = 36028797018898495L;
6385:                data[68] = -1L;
6386:                data[69] = -2080374785L;
6387:                data[70] = -1065151889409L;
6388:                data[71] = 288230376151711743L;
6389:                for (int i = 120; i <= 121; i++) {
6390:                    data[i] = -1L;
6391:                }
6392:                data[122] = -4026531841L;
6393:                data[123] = 288230376151711743L;
6394:                data[124] = -3233808385L;
6395:                data[125] = 4611686017001275199L;
6396:                data[126] = 6908521828386340863L;
6397:                data[127] = 2295745090394464220L;
6398:                data[128] = -9223235697412870144L;
6399:                data[129] = -9223094959924576255L;
6400:                data[130] = 35180077121536L;
6401:                data[131] = 9126739968L;
6402:                data[132] = 142986334291623044L;
6403:                data[133] = -4294967296L;
6404:                data[134] = 7L;
6405:                data[192] = 17732914942836896L;
6406:                data[193] = -2L;
6407:                data[194] = -6473908225L;
6408:                data[195] = 8646911284551352319L;
6409:                data[196] = -527765581332512L;
6410:                data[197] = -1L;
6411:                data[198] = 32767L;
6412:                for (int i = 312; i <= 637; i++) {
6413:                    data[i] = -1L;
6414:                }
6415:                data[638] = 274877906943L;
6416:                for (int i = 688; i <= 861; i++) {
6417:                    data[i] = -1L;
6418:                }
6419:                data[862] = 68719476735L;
6420:                for (int i = 996; i <= 999; i++) {
6421:                    data[i] = -1L;
6422:                }
6423:                data[1000] = 70368744177663L;
6424:                data[1004] = 6881498030541373567L;
6425:                data[1005] = -37L;
6426:                data[1006] = 1125899906842623L;
6427:                data[1007] = -524288L;
6428:                for (int i = 1008; i <= 1011; i++) {
6429:                    data[i] = -1L;
6430:                }
6431:                data[1012] = 4611686018427387903L;
6432:                data[1013] = -65536L;
6433:                data[1014] = -196609L;
6434:                data[1015] = 1152640029630136575L;
6435:                data[1016] = 6755463865565184L;
6436:                data[1017] = -11538275021824000L;
6437:                data[1018] = -1L;
6438:                data[1019] = -6917529027641081857L;
6439:                data[1020] = -8646911293074243568L;
6440:                data[1021] = -274743689218L;
6441:                data[1022] = 9223372036854775807L;
6442:                data[1023] = 425688104188L;
6443:                return data;
6444:            }
6445:
6446:            public static final BitSet _tokenSet_1 = new BitSet(mk_tokenSet_1());
6447:
6448:            private static final long[] mk_tokenSet_2() {
6449:                long[] data = new long[2042];
6450:                data[0] = 287948901443420671L;
6451:                data[1] = -9223372036854775808L;
6452:                data[2] = 4294967295L;
6453:                data[12] = -1L;
6454:                data[13] = 12884901951L;
6455:                data[18] = 120L;
6456:                data[22] = -4899916411759099904L;
6457:                data[23] = 22L;
6458:                data[25] = 285868728776704L;
6459:                data[27] = 288016656964255744L;
6460:                data[36] = -3458764513820540914L;
6461:                data[37] = 281251640393727L;
6462:                data[38] = -3458764513820540914L;
6463:                data[39] = 281251646814623L;
6464:                data[40] = -3458764513820540924L;
6465:                data[41] = 1125625028950407L;
6466:                data[42] = -3458764513820540914L;
6467:                data[43] = 281200098819007L;
6468:                data[44] = -3458764513820540914L;
6469:                data[45] = 281200111401359L;
6470:                data[46] = -4611686018427387892L;
6471:                data[47] = 280925229301191L;
6472:                data[48] = -4611686018427387890L;
6473:                data[49] = 281200105111007L;
6474:                data[50] = -4611686018427387892L;
6475:                data[51] = 281200105111007L;
6476:                data[52] = -4611686018427387892L;
6477:                data[53] = 281200107208143L;
6478:                data[56] = 572520102629474304L;
6479:                data[57] = 67075968L;
6480:                data[58] = 2013671983388033024L;
6481:                data[59] = 67059456L;
6482:                data[60] = -4422530440275951616L;
6483:                data[61] = -562949953421312L;
6484:                data[62] = 215680200883507167L;
6485:                data[128] = 136339441905664L;
6486:                data[129] = 277076930199552L;
6487:                data[131] = 9126739968L;
6488:                data[192] = 277076930199552L;
6489:                data[194] = 100663296L;
6490:                data[1004] = 1073741824L;
6491:                data[1016] = 64424509440L;
6492:                data[1019] = -9223372036854775808L;
6493:                data[1020] = 67043328L;
6494:                return data;
6495:            }
6496:
6497:            public static final BitSet _tokenSet_2 = new BitSet(mk_tokenSet_2());
6498:
6499:            private static final long[] mk_tokenSet_3() {
6500:                long[] data = new long[2048];
6501:                data[0] = -549755823105L;
6502:                data[1] = -268435457L;
6503:                for (int i = 2; i <= 1022; i++) {
6504:                    data[i] = -1L;
6505:                }
6506:                data[1023] = 9223372036854775807L;
6507:                return data;
6508:            }
6509:
6510:            public static final BitSet _tokenSet_3 = new BitSet(mk_tokenSet_3());
6511:
6512:            private static final long[] mk_tokenSet_4() {
6513:                long[] data = new long[1025];
6514:                data[0] = 566935683072L;
6515:                data[1] = 5700160604602368L;
6516:                return data;
6517:            }
6518:
6519:            public static final BitSet _tokenSet_4 = new BitSet(mk_tokenSet_4());
6520:
6521:            private static final long[] mk_tokenSet_5() {
6522:                long[] data = new long[2048];
6523:                data[0] = -17179878401L;
6524:                data[1] = -268435457L;
6525:                for (int i = 2; i <= 1022; i++) {
6526:                    data[i] = -1L;
6527:                }
6528:                data[1023] = 9223372036854775807L;
6529:                return data;
6530:            }
6531:
6532:            public static final BitSet _tokenSet_5 = new BitSet(mk_tokenSet_5());
6533:
6534:            private static final long[] mk_tokenSet_6() {
6535:                long[] data = new long[1025];
6536:                data[0] = 287948901175001088L;
6537:                data[1] = 541165879422L;
6538:                return data;
6539:            }
6540:
6541:            public static final BitSet _tokenSet_6 = new BitSet(mk_tokenSet_6());
6542:
6543:            private static final long[] mk_tokenSet_7() {
6544:                long[] data = new long[1025];
6545:                data[1] = 343597383760L;
6546:                return data;
6547:            }
6548:
6549:            public static final BitSet _tokenSet_7 = new BitSet(mk_tokenSet_7());
6550:
6551:            private static final long[] mk_tokenSet_8() {
6552:                long[] data = new long[2048];
6553:                data[0] = -9217L;
6554:                for (int i = 1; i <= 1022; i++) {
6555:                    data[i] = -1L;
6556:                }
6557:                data[1023] = 9223372036854775807L;
6558:                return data;
6559:            }
6560:
6561:            public static final BitSet _tokenSet_8 = new BitSet(mk_tokenSet_8());
6562:
6563:        }
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.