From 3d23350629da0eef0b14d964ea1fa20c35cc9371 Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Mon, 27 Dec 2010 18:51:59 +0300 Subject: [PATCH] Fix 1..2 in lexer --- idea/src/org/jetbrains/jet/lexer/Jet.flex | 2 + .../org/jetbrains/jet/lexer/_JetLexer.java | 806 +++++++++--------- 2 files changed, 414 insertions(+), 394 deletions(-) diff --git a/idea/src/org/jetbrains/jet/lexer/Jet.flex b/idea/src/org/jetbrains/jet/lexer/Jet.flex index 916aa42008a..2411d498238 100644 --- a/idea/src/org/jetbrains/jet/lexer/Jet.flex +++ b/idea/src/org/jetbrains/jet/lexer/Jet.flex @@ -65,7 +65,9 @@ RAW_STRING_LITERAL = {THREE_QUO} {QUO_STRING_CHAR}* {THREE_QUO}? {EOL_COMMENT} { return JetTokens.EOL_COMMENT; } + {INTEGER_LITERAL}\.\. { yypushback(2); return JetTokens.INTEGER_LITERAL; } {INTEGER_LITERAL} { return JetTokens.INTEGER_LITERAL; } + {LONG_LITERAL} { return JetTokens.LONG_LITERAL; } {FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } {HEX_FLOAT_LITERAL} { return JetTokens.FLOAT_LITERAL; } diff --git a/idea/src/org/jetbrains/jet/lexer/_JetLexer.java b/idea/src/org/jetbrains/jet/lexer/_JetLexer.java index 89de0bda131..c905dc614d5 100644 --- a/idea/src/org/jetbrains/jet/lexer/_JetLexer.java +++ b/idea/src/org/jetbrains/jet/lexer/_JetLexer.java @@ -1,4 +1,4 @@ -/* The following code was generated by JFlex 1.4.3 on 12/15/10 2:07 PM */ +/* The following code was generated by JFlex 1.4.3 on 12/27/10 6:49 PM */ /* It's an automatically generated code. Do not modify it. */ package org.jetbrains.jet.lexer; @@ -13,7 +13,7 @@ import org.jetbrains.jet.lexer.JetTokens; /** * This class is a scanner generated by * JFlex 1.4.3 - * on 12/15/10 2:07 PM from the specification file + * on 12/27/10 6:49 PM from the specification file * /home/user/work/jet/idea/src/org/jetbrains/jet/lexer/Jet.flex */ class _JetLexer implements FlexLexer { @@ -37,15 +37,15 @@ class _JetLexer implements FlexLexer { * Translates characters to character classes */ private static final String ZZ_CMAP_PACKED = - "\11\5\1\3\1\10\1\0\1\3\1\0\16\5\4\0\1\3\1\62"+ - "\1\23\1\0\1\4\1\63\1\67\1\21\1\57\1\60\1\7\1\61"+ - "\1\74\1\17\1\15\1\6\1\11\11\1\1\72\1\73\1\64\1\66"+ - "\1\65\1\71\1\0\1\2\1\13\1\2\1\14\1\16\1\14\5\4"+ - "\1\4\3\4\1\20\7\4\1\12\2\4\1\53\1\22\1\54\1\0"+ - "\1\4\1\0\1\25\1\50\1\32\1\44\1\27\1\42\1\4\1\36"+ - "\1\37\1\52\1\51\1\35\1\26\1\24\1\45\1\31\1\4\1\41"+ - "\1\30\1\33\1\43\1\40\1\47\1\46\1\34\1\4\1\55\1\70"+ - "\1\56\1\0\41\5\2\0\4\4\4\0\1\4\2\0\1\5\7\0"+ + "\11\5\1\3\1\10\1\0\1\3\1\0\16\5\4\0\1\3\1\63"+ + "\1\24\1\0\1\4\1\64\1\70\1\22\1\60\1\61\1\7\1\62"+ + "\1\75\1\20\1\16\1\6\1\11\11\1\1\73\1\74\1\65\1\67"+ + "\1\66\1\72\1\0\1\2\1\13\1\2\1\15\1\17\1\15\5\4"+ + "\1\14\3\4\1\21\7\4\1\12\2\4\1\54\1\23\1\55\1\0"+ + "\1\4\1\0\1\26\1\51\1\33\1\45\1\30\1\43\1\4\1\37"+ + "\1\40\1\53\1\52\1\36\1\27\1\25\1\46\1\32\1\4\1\42"+ + "\1\31\1\34\1\44\1\41\1\50\1\47\1\35\1\4\1\56\1\71"+ + "\1\57\1\0\41\5\2\0\4\4\4\0\1\4\2\0\1\5\7\0"+ "\1\4\4\0\1\4\5\0\27\4\1\0\37\4\1\0\u013f\4\31\0"+ "\162\4\4\0\14\4\16\0\5\4\11\0\1\4\21\0\130\5\5\0"+ "\23\5\12\0\1\4\13\0\1\4\1\0\3\4\1\0\1\4\1\0"+ @@ -142,22 +142,23 @@ class _JetLexer implements FlexLexer { "\1\0\1\1\1\2\1\3\1\4\1\5\1\6\1\2"+ "\1\7\1\10\1\11\1\12\16\3\1\13\1\14\1\15"+ "\1\16\1\17\1\20\1\21\1\22\1\23\1\24\1\25"+ - "\1\26\2\1\1\27\1\30\1\31\1\32\3\33\1\34"+ - "\1\35\1\36\1\37\1\0\2\2\1\40\1\41\1\42"+ - "\1\43\1\44\2\11\3\12\3\3\1\45\10\3\1\46"+ - "\1\47\1\50\6\3\1\51\4\3\1\52\1\53\1\54"+ - "\1\55\1\56\1\57\1\60\1\61\1\62\1\63\1\64"+ - "\1\33\1\35\1\65\2\0\1\12\1\66\1\3\1\67"+ - "\13\3\1\70\1\71\1\3\1\72\1\3\1\73\1\74"+ - "\1\3\1\75\3\3\1\76\1\0\2\65\1\0\1\33"+ - "\2\0\1\3\1\77\1\3\1\100\3\3\1\101\1\102"+ - "\1\3\1\103\7\3\1\35\1\0\1\33\1\0\1\3"+ - "\1\104\1\3\1\105\2\3\1\106\1\107\1\3\1\110"+ - "\2\3\1\111\1\112\1\66\3\3\1\113\1\114\1\3"+ - "\1\115\6\3\1\116\1\3\1\117\1\120\1\3\1\121"; + "\1\26\2\1\1\27\1\30\1\31\1\32\1\33\3\34"+ + "\1\35\1\36\1\37\1\40\1\0\2\2\1\34\1\41"+ + "\1\42\1\43\1\44\1\45\2\11\3\12\3\3\1\46"+ + "\10\3\1\47\1\50\1\51\6\3\1\52\4\3\1\53"+ + "\1\54\1\55\1\56\1\57\1\60\1\61\1\62\1\63"+ + "\1\64\1\65\1\66\1\34\1\36\1\67\1\0\1\33"+ + "\3\0\1\12\1\70\1\3\1\71\13\3\1\72\1\73"+ + "\1\3\1\74\1\3\1\75\1\76\1\3\1\77\3\3"+ + "\1\100\1\0\2\67\1\0\1\34\2\0\1\3\1\101"+ + "\1\3\1\102\3\3\1\103\1\104\1\3\1\105\7\3"+ + "\1\36\1\0\1\34\1\0\1\3\1\106\1\3\1\107"+ + "\2\3\1\110\1\111\1\3\1\112\2\3\1\113\1\114"+ + "\1\70\3\3\1\115\1\116\1\3\1\117\6\3\1\120"+ + "\1\3\1\121\1\122\1\3\1\123"; private static int [] zzUnpackAction() { - int [] result = new int[197]; + int [] result = new int[203]; int offset = 0; offset = zzUnpackAction(ZZ_ACTION_PACKED_0, offset, result); return result; @@ -182,34 +183,35 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ROWMAP = zzUnpackRowMap(); private static final String ZZ_ROWMAP_PACKED_0 = - "\0\0\0\75\0\172\0\267\0\364\0\u0131\0\u016e\0\u01ab"+ - "\0\u01e8\0\u0225\0\u0262\0\u029f\0\u02dc\0\u0319\0\u0356\0\u0393"+ - "\0\u03d0\0\u040d\0\u044a\0\u0487\0\u04c4\0\u0501\0\u053e\0\u057b"+ - "\0\u05b8\0\u05f5\0\75\0\75\0\75\0\75\0\75\0\75"+ - "\0\u0632\0\u066f\0\u06ac\0\u06e9\0\u0726\0\u0763\0\u07a0\0\u07dd"+ - "\0\u081a\0\75\0\75\0\75\0\75\0\u0857\0\u0894\0\u08d1"+ - "\0\u090e\0\75\0\75\0\u094b\0\u0988\0\u09c5\0\75\0\75"+ - "\0\75\0\75\0\75\0\75\0\u0a02\0\u0a3f\0\u0a7c\0\u0ab9"+ - "\0\u0af6\0\u0b33\0\u0b70\0\267\0\u0bad\0\u0bea\0\u0c27\0\u0c64"+ - "\0\u0ca1\0\u0cde\0\u0d1b\0\u0d58\0\267\0\u0d95\0\267\0\u0dd2"+ - "\0\u0e0f\0\u0e4c\0\u0e89\0\u0ec6\0\u0f03\0\267\0\u0f40\0\u0f7d"+ - "\0\u0fba\0\u0ff7\0\75\0\75\0\75\0\75\0\75\0\75"+ - "\0\u1034\0\75\0\75\0\75\0\75\0\u1071\0\u10ae\0\u10eb"+ - "\0\u1128\0\u1165\0\75\0\u11a2\0\u11df\0\267\0\u121c\0\u1259"+ - "\0\u1296\0\u12d3\0\u1310\0\u134d\0\u138a\0\u13c7\0\u1404\0\u1441"+ - "\0\u147e\0\267\0\267\0\u14bb\0\267\0\u14f8\0\267\0\267"+ - "\0\u1535\0\267\0\u1572\0\u15af\0\u15ec\0\75\0\u1629\0\u1666"+ - "\0\75\0\u16a3\0\u16e0\0\u171d\0\u175a\0\u1797\0\267\0\u17d4"+ - "\0\267\0\u1811\0\u184e\0\u188b\0\u18c8\0\267\0\u1905\0\267"+ - "\0\u1942\0\u197f\0\u19bc\0\u19f9\0\u1a36\0\u1a73\0\u1ab0\0\75"+ - "\0\u1aed\0\u1128\0\u1b2a\0\u1b67\0\267\0\u1ba4\0\267\0\u1be1"+ - "\0\u1c1e\0\267\0\267\0\u1c5b\0\267\0\u1c98\0\u1cd5\0\267"+ - "\0\267\0\75\0\u1d12\0\u1d4f\0\u1d8c\0\267\0\267\0\u1dc9"+ - "\0\267\0\u1e06\0\u1e43\0\u1e80\0\u1ebd\0\u1efa\0\u1f37\0\267"+ - "\0\u1f74\0\267\0\267\0\u1fb1\0\267"; + "\0\0\0\76\0\174\0\272\0\370\0\u0136\0\u0174\0\u01b2"+ + "\0\u01f0\0\u022e\0\u026c\0\u02aa\0\u02e8\0\u0326\0\u0364\0\u03a2"+ + "\0\u03e0\0\u041e\0\u045c\0\u049a\0\u04d8\0\u0516\0\u0554\0\u0592"+ + "\0\u05d0\0\u060e\0\76\0\76\0\76\0\76\0\76\0\76"+ + "\0\u064c\0\u068a\0\u06c8\0\u0706\0\u0744\0\u0782\0\u07c0\0\u07fe"+ + "\0\u083c\0\76\0\76\0\76\0\76\0\76\0\u087a\0\u08b8"+ + "\0\u08f6\0\u0934\0\76\0\76\0\u0972\0\u09b0\0\u09ee\0\u0a2c"+ + "\0\76\0\76\0\76\0\76\0\76\0\76\0\u0a6a\0\u0aa8"+ + "\0\u0ae6\0\u0b24\0\u0b62\0\u0ba0\0\u0bde\0\272\0\u0c1c\0\u0c5a"+ + "\0\u0c98\0\u0cd6\0\u0d14\0\u0d52\0\u0d90\0\u0dce\0\272\0\u0e0c"+ + "\0\272\0\u0e4a\0\u0e88\0\u0ec6\0\u0f04\0\u0f42\0\u0f80\0\272"+ + "\0\u0fbe\0\u0ffc\0\u103a\0\u1078\0\76\0\76\0\76\0\76"+ + "\0\76\0\76\0\u10b6\0\76\0\76\0\76\0\76\0\76"+ + "\0\u10f4\0\u1132\0\u1170\0\u11ae\0\u11ae\0\u11ec\0\u122a\0\u1268"+ + "\0\76\0\u12a6\0\u12e4\0\272\0\u1322\0\u1360\0\u139e\0\u13dc"+ + "\0\u141a\0\u1458\0\u1496\0\u14d4\0\u1512\0\u1550\0\u158e\0\272"+ + "\0\272\0\u15cc\0\272\0\u160a\0\272\0\272\0\u1648\0\272"+ + "\0\u1686\0\u16c4\0\u1702\0\76\0\u1740\0\u177e\0\76\0\u17bc"+ + "\0\u17fa\0\u1838\0\u1876\0\u18b4\0\272\0\u18f2\0\272\0\u1930"+ + "\0\u196e\0\u19ac\0\u19ea\0\272\0\u1a28\0\272\0\u1a66\0\u1aa4"+ + "\0\u1ae2\0\u1b20\0\u1b5e\0\u1b9c\0\u1bda\0\76\0\u1c18\0\u11ae"+ + "\0\u1c56\0\u1c94\0\272\0\u1cd2\0\272\0\u1d10\0\u1d4e\0\272"+ + "\0\272\0\u1d8c\0\272\0\u1dca\0\u1e08\0\272\0\272\0\76"+ + "\0\u1e46\0\u1e84\0\u1ec2\0\272\0\272\0\u1f00\0\272\0\u1f3e"+ + "\0\u1f7c\0\u1fba\0\u1ff8\0\u2036\0\u2074\0\272\0\u20b2\0\272"+ + "\0\272\0\u20f0\0\272"; private static int [] zzUnpackRowMap() { - int [] result = new int[197]; + int [] result = new int[203]; int offset = 0; offset = zzUnpackRowMap(ZZ_ROWMAP_PACKED_0, offset, result); return result; @@ -233,211 +235,219 @@ class _JetLexer implements FlexLexer { private static final String ZZ_TRANS_PACKED_0 = "\1\2\1\3\1\4\1\5\1\4\1\2\1\6\1\7"+ - "\1\5\1\10\3\4\1\11\1\4\1\12\1\4\1\13"+ + "\1\5\1\10\4\4\1\11\1\4\1\12\1\4\1\13"+ "\1\2\1\14\1\15\1\16\1\17\1\20\2\4\1\21"+ "\1\22\3\4\1\23\1\24\1\25\1\26\1\4\1\27"+ "\1\30\1\4\1\31\1\32\2\4\1\33\1\34\1\35"+ "\1\36\1\37\1\40\1\41\1\42\1\43\1\44\1\45"+ - "\1\46\1\47\1\50\1\51\1\52\1\53\1\54\76\0"+ - "\1\3\7\0\1\3\2\0\1\55\1\56\1\57\10\0"+ - "\1\57\12\0\1\55\1\0\1\55\31\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\27\4\25\0\1\5\4\0\1\5\72\0\1\60\1\61"+ - "\56\0\1\62\74\0\1\63\7\0\1\64\7\0\1\64"+ - "\1\65\1\66\1\55\1\56\1\57\10\0\1\57\12\0"+ - "\1\55\1\0\1\55\1\0\1\65\1\0\1\66\25\0"+ - "\1\56\5\0\1\67\1\0\1\56\3\0\1\70\53\0"+ - "\1\71\22\0\1\72\46\0\1\73\6\0\10\13\1\0"+ - "\10\13\1\74\1\75\52\13\10\76\1\0\11\76\1\77"+ - "\1\100\51\76\1\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\4\1\101\1\4"+ - "\1\102\13\4\1\103\7\4\23\0\2\4\1\0\2\4"+ - "\3\0\4\4\1\0\1\4\1\0\1\4\3\0\4\4"+ - "\1\104\22\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\4\1\105\25\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\11\4\1\106\10\4\1\107\4\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\11\4\1\110\7\4\1\111\5\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\10\4\1\112\1\4\1\113\2\4"+ - "\1\114\11\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\115\3\4\1\116"+ - "\11\4\1\117\10\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\1\4\1\120"+ - "\25\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\121\23\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\4\1\122\15\4\1\123\1\4\1\124"+ - "\5\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\125\15\4\1\126"+ - "\5\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\17\4\1\127\4\4\1\130"+ - "\2\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\12\4\1\131\14\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\15\4\1\132\11\4\103\0\1\133\4\0"+ - "\1\134\74\0\1\135\74\0\1\136\74\0\1\137\74\0"+ - "\1\140\74\0\1\141\75\0\1\142\75\0\1\143\21\0"+ - "\1\144\54\0\1\145\3\0\1\56\7\0\1\56\2\0"+ - "\1\55\1\0\1\57\10\0\1\57\12\0\1\55\1\0"+ - "\1\55\31\0\1\146\7\0\1\146\2\0\1\55\2\0"+ - "\1\146\22\0\1\55\1\0\1\55\14\0\1\146\13\0"+ - "\10\60\1\0\64\60\7\147\1\150\65\147\1\0\1\64"+ - "\7\0\1\64\2\0\1\55\1\56\1\57\10\0\1\57"+ - "\12\0\1\55\1\0\1\55\30\0\1\151\2\65\5\151"+ - "\1\0\1\65\1\151\2\65\1\151\1\65\1\151\1\152"+ - "\4\151\1\65\1\151\1\65\1\151\1\152\1\65\7\151"+ - "\1\65\1\151\1\65\3\151\1\65\24\151\1\0\1\66"+ - "\7\0\1\66\63\0\10\13\1\0\64\13\10\76\1\0"+ - "\11\76\1\77\1\153\61\76\1\0\64\76\23\0\1\154"+ - "\52\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\2\4\1\155\24\4\23\0\2\4"+ - "\1\0\2\4\3\0\4\4\1\0\1\4\1\0\1\4"+ - "\3\0\23\4\1\156\3\4\23\0\2\4\1\0\2\4"+ - "\3\0\4\4\1\0\1\4\1\0\1\4\3\0\11\4"+ - "\1\157\15\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\7\4\1\160\17\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\4\4\1\161\22\4\23\0\2\4"+ - "\1\0\2\4\3\0\4\4\1\0\1\4\1\0\1\4"+ - "\3\0\7\4\1\162\17\4\23\0\2\4\1\0\2\4"+ - "\3\0\4\4\1\0\1\4\1\0\1\4\3\0\1\4"+ - "\1\163\25\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\1\164\26\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\5\4\1\165\21\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\13\4\1\166\1\4\1\167\11\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\17\4\1\170\7\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\1\171\26\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\11\4\1\172\3\4\1\173\11\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\7\4\1\174\6\4\1\175\10\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\11\4\1\176\15\4\23\0\2\4"+ - "\1\0\2\4\3\0\4\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\177\26\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\15\4\1\200"+ - "\11\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\6\4\1\201\20\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\7\4\1\202\17\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\26\4\1\203\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\13\4\1\204\13\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\3\4\1\205\23\4\110\0\1\206"+ - "\7\0\1\146\7\0\1\146\2\0\1\55\25\0\1\55"+ - "\1\0\1\55\30\0\7\147\1\207\65\147\6\210\1\211"+ - "\1\150\65\210\1\0\2\151\6\0\1\151\1\0\2\151"+ - "\1\0\1\151\1\0\1\212\4\0\1\151\1\0\1\151"+ - "\1\0\1\212\1\151\7\0\1\151\1\0\1\151\3\0"+ - "\1\151\25\0\1\213\1\151\6\0\1\213\1\0\2\151"+ - "\1\0\1\151\1\214\1\212\4\0\1\151\1\0\1\151"+ - "\1\0\1\212\1\151\7\0\1\151\1\0\1\151\3\0"+ - "\1\151\10\0\1\214\13\0\23\154\1\215\51\154\1\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\216\23\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\11\4\1\217\15\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\6\4\1\220"+ - "\20\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\221\23\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\222\23\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\223\22\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\7\4\1\224"+ - "\17\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\225\23\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\4\4\1\226\22\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\21\4\1\227\5\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\3\4\1\230"+ - "\23\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\21\4\1\231\5\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\17\4\1\232\7\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\233\22\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\21\4\1\234"+ - "\5\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\235\23\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\11\4\1\236\15\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\4\1\237\25\4\22\0\6\147\1\240\1\207\65\147"+ - "\7\210\1\241\65\210\1\0\1\146\7\0\1\146\5\0"+ - "\1\214\41\0\1\214\14\0\1\213\1\151\6\0\1\213"+ - "\1\0\1\151\1\242\1\0\1\151\1\0\1\212\4\0"+ - "\1\151\1\0\1\151\1\0\1\212\1\151\7\0\1\242"+ - "\1\0\1\242\3\0\1\151\25\0\1\146\7\0\1\146"+ - "\63\0\23\154\1\243\51\154\1\0\2\4\1\0\2\4"+ - "\3\0\4\4\1\0\1\4\1\0\1\4\3\0\4\4"+ - "\1\244\22\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\12\4\1\245\14\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\1\246\26\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\247\22\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\13\4\1\250"+ - "\13\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\21\4\1\251\5\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\23\4\1\252\3\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\7\4\1\253\17\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\15\4\1\254"+ - "\11\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\3\4\1\255\23\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\2\4\1\256\24\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\6\4\1\257\20\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\3\4\1\260"+ - "\23\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\25\4\1\261\1\4\22\0"+ - "\6\210\1\211\1\241\65\210\23\154\1\262\51\154\1\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\5\4\1\263\21\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\4\4\1\264\22\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\1\265\26\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\16\4\1\266\10\4\23\0\2\4"+ - "\1\0\2\4\3\0\4\4\1\0\1\4\1\0\1\4"+ - "\3\0\1\267\26\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\5\4\1\270"+ - "\21\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\7\4\1\271\17\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\1\4\1\272\25\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\13\4\1\273\13\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\17\4\1\274"+ - "\7\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\21\4\1\275\5\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\6\4\1\276\20\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\21\4\1\277\5\4\23\0\2\4\1\0\2\4\3\0"+ - "\4\4\1\0\1\4\1\0\1\4\3\0\3\4\1\300"+ - "\23\4\23\0\2\4\1\0\2\4\3\0\4\4\1\0"+ - "\1\4\1\0\1\4\3\0\4\4\1\301\22\4\23\0"+ - "\2\4\1\0\2\4\3\0\4\4\1\0\1\4\1\0"+ - "\1\4\3\0\3\4\1\302\23\4\23\0\2\4\1\0"+ - "\2\4\3\0\4\4\1\0\1\4\1\0\1\4\3\0"+ - "\1\303\26\4\23\0\2\4\1\0\2\4\3\0\4\4"+ - "\1\0\1\4\1\0\1\4\3\0\3\4\1\304\23\4"+ - "\23\0\2\4\1\0\2\4\3\0\4\4\1\0\1\4"+ - "\1\0\1\4\3\0\15\4\1\305\11\4\22\0"; + "\1\46\1\47\1\50\1\51\1\52\1\53\1\54\77\0"+ + "\1\3\7\0\1\3\2\0\1\55\1\56\1\57\1\60"+ + "\10\0\1\60\5\0\1\55\4\0\1\56\1\0\1\56"+ + "\31\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\27\4\25\0\1\5\4\0\1\5"+ + "\73\0\1\61\1\62\57\0\1\63\75\0\1\64\7\0"+ + "\1\65\7\0\1\65\1\66\1\67\1\55\1\56\1\57"+ + "\1\60\10\0\1\60\5\0\1\55\4\0\1\56\1\0"+ + "\1\56\1\0\1\66\1\0\1\67\25\0\1\70\5\0"+ + "\1\71\1\0\1\70\4\0\1\72\53\0\1\73\23\0"+ + "\1\74\46\0\1\75\6\0\10\13\1\0\11\13\1\76"+ + "\1\77\52\13\10\100\1\0\12\100\1\101\1\102\51\100"+ + "\1\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\4\1\103\1\4\1\104\13\4"+ + "\1\105\7\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\4\4\1\106\22\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\4\1\107\25\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\11\4\1\110\10\4\1\111\4\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\11\4\1\112\7\4\1\113\5\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\10\4\1\114\1\4\1\115\2\4\1\116\11\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\117\3\4\1\120\11\4\1\121"+ + "\10\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\4\1\122\25\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\3\4\1\123\23\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\1\4\1\124\15\4\1\125\1\4\1\126\5\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\3\4\1\127\15\4\1\130\5\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\17\4\1\131\4\4\1\132\2\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\12\4\1\133\14\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\15\4\1\134\11\4\104\0\1\135\4\0\1\136\75\0"+ + "\1\137\75\0\1\140\75\0\1\141\75\0\1\142\75\0"+ + "\1\143\76\0\1\144\76\0\1\145\22\0\1\146\54\0"+ + "\1\147\3\0\1\70\7\0\1\70\3\0\1\56\1\150"+ + "\1\60\10\0\1\60\12\0\1\56\1\0\1\56\31\0"+ + "\1\151\7\0\1\151\3\0\1\56\2\0\1\151\22\0"+ + "\1\56\1\0\1\56\14\0\1\151\13\0\10\61\1\0"+ + "\65\61\7\152\1\153\66\152\1\0\1\65\7\0\1\65"+ + "\3\0\1\56\1\70\1\60\10\0\1\60\12\0\1\56"+ + "\1\0\1\56\30\0\1\154\2\66\5\154\1\0\1\66"+ + "\1\154\1\66\1\155\1\66\1\156\1\66\1\154\1\157"+ + "\4\154\1\66\1\154\1\66\1\154\1\157\1\66\2\154"+ + "\1\155\4\154\1\66\1\154\1\66\3\154\1\66\24\154"+ + "\1\0\1\67\7\0\1\67\2\0\1\55\1\0\1\160"+ + "\17\0\1\55\40\0\1\70\7\0\1\70\3\0\1\56"+ + "\1\0\1\60\10\0\1\60\12\0\1\56\1\0\1\56"+ + "\30\0\10\13\1\0\65\13\10\100\1\0\12\100\1\101"+ + "\1\161\61\100\1\0\65\100\24\0\1\162\52\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\2\4\1\163\24\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\23\4"+ + "\1\164\3\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\11\4\1\165\15\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\7\4\1\166\17\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\4\4\1\167\22\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\7\4"+ + "\1\170\17\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\4\1\171\25\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\1\172\26\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\5\4\1\173\21\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\13\4\1\174"+ + "\1\4\1\175\11\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\17\4\1\176"+ + "\7\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\177\26\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\11\4\1\200\3\4\1\201\11\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\7\4\1\202\6\4\1\203\10\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\11\4\1\204\15\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\1\205"+ + "\26\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\15\4\1\206\11\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\6\4\1\207\20\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\7\4\1\210\17\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\26\4\1\211"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\13\4\1\212\13\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\213\23\4\111\0\1\214\7\0\1\151"+ + "\7\0\1\151\3\0\1\56\25\0\1\56\1\0\1\56"+ + "\30\0\7\152\1\215\66\152\6\216\1\217\1\153\66\216"+ + "\1\0\2\154\6\0\1\154\1\0\1\154\1\0\1\154"+ + "\1\0\1\154\1\0\1\220\4\0\1\154\1\0\1\154"+ + "\1\0\1\220\1\154\7\0\1\154\1\0\1\154\3\0"+ + "\1\154\25\0\2\154\6\0\1\154\1\0\1\154\1\0"+ + "\1\154\1\150\1\154\1\0\1\220\4\0\1\154\1\0"+ + "\1\154\1\0\1\220\1\154\7\0\1\154\1\0\1\154"+ + "\3\0\1\154\25\0\1\221\1\154\6\0\1\221\1\0"+ + "\1\154\1\0\1\154\1\0\1\154\1\222\1\220\4\0"+ + "\1\154\1\0\1\154\1\0\1\220\1\154\7\0\1\154"+ + "\1\0\1\154\3\0\1\154\10\0\1\222\31\0\1\150"+ + "\57\0\24\162\1\223\51\162\1\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\224\23\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\11\4\1\225\15\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\6\4\1\226\20\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\227\23\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\3\4"+ + "\1\230\23\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\4\4\1\231\22\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\7\4\1\232\17\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\233\23\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\4\4"+ + "\1\234\22\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\21\4\1\235\5\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\3\4\1\236\23\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\21\4\1\237\5\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\17\4"+ + "\1\240\7\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\4\4\1\241\22\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\21\4\1\242\5\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\3\4\1\243\23\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\11\4"+ + "\1\244\15\4\23\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\1\4\1\245\25\4"+ + "\22\0\6\152\1\246\1\215\66\152\7\216\1\247\66\216"+ + "\1\0\1\151\7\0\1\151\6\0\1\222\41\0\1\222"+ + "\14\0\1\221\1\154\6\0\1\221\1\0\1\154\1\0"+ + "\1\250\1\0\1\154\1\0\1\220\4\0\1\154\1\0"+ + "\1\154\1\0\1\220\1\154\7\0\1\250\1\0\1\250"+ + "\3\0\1\154\25\0\1\151\7\0\1\151\64\0\24\162"+ + "\1\251\51\162\1\0\2\4\1\0\2\4\3\0\5\4"+ + "\1\0\1\4\1\0\1\4\3\0\4\4\1\252\22\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\12\4\1\253\14\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\1\254\26\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\4\4\1\255"+ + "\22\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\13\4\1\256\13\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\21\4\1\257\5\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\23\4\1\260\3\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\7\4\1\261"+ + "\17\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\15\4\1\262\11\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\3\4\1\263\23\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\2\4\1\264\24\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\6\4\1\265"+ + "\20\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\266\23\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\25\4\1\267\1\4\22\0\6\216\1\217"+ + "\1\247\66\216\24\162\1\270\51\162\1\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\5\4\1\271\21\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\4\4\1\272"+ + "\22\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\1\273\26\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\16\4\1\274\10\4\23\0\2\4\1\0\2\4"+ + "\3\0\5\4\1\0\1\4\1\0\1\4\3\0\1\275"+ + "\26\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\5\4\1\276\21\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\7\4\1\277\17\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\1\4\1\300\25\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\13\4\1\301"+ + "\13\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\17\4\1\302\7\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\21\4\1\303\5\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\6\4\1\304\20\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\21\4\1\305"+ + "\5\4\23\0\2\4\1\0\2\4\3\0\5\4\1\0"+ + "\1\4\1\0\1\4\3\0\3\4\1\306\23\4\23\0"+ + "\2\4\1\0\2\4\3\0\5\4\1\0\1\4\1\0"+ + "\1\4\3\0\4\4\1\307\22\4\23\0\2\4\1\0"+ + "\2\4\3\0\5\4\1\0\1\4\1\0\1\4\3\0"+ + "\3\4\1\310\23\4\23\0\2\4\1\0\2\4\3\0"+ + "\5\4\1\0\1\4\1\0\1\4\3\0\1\311\26\4"+ + "\23\0\2\4\1\0\2\4\3\0\5\4\1\0\1\4"+ + "\1\0\1\4\3\0\3\4\1\312\23\4\23\0\2\4"+ + "\1\0\2\4\3\0\5\4\1\0\1\4\1\0\1\4"+ + "\3\0\15\4\1\313\11\4\22\0"; private static int [] zzUnpackTrans() { - int [] result = new int[8174]; + int [] result = new int[8494]; int offset = 0; offset = zzUnpackTrans(ZZ_TRANS_PACKED_0, offset, result); return result; @@ -478,14 +488,14 @@ class _JetLexer implements FlexLexer { private static final int [] ZZ_ATTRIBUTE = zzUnpackAttribute(); private static final String ZZ_ATTRIBUTE_PACKED_0 = - "\1\0\1\11\30\1\6\11\11\1\4\11\4\1\2\11"+ - "\1\0\2\1\6\11\36\1\6\11\1\1\4\11\3\1"+ - "\2\0\1\11\32\1\1\11\1\0\1\1\1\11\1\0"+ - "\1\1\2\0\22\1\1\11\1\0\1\1\1\0\16\1"+ - "\1\11\23\1"; + "\1\0\1\11\30\1\6\11\11\1\5\11\4\1\2\11"+ + "\1\0\3\1\6\11\36\1\6\11\1\1\5\11\3\1"+ + "\1\0\1\1\3\0\1\11\32\1\1\11\1\0\1\1"+ + "\1\11\1\0\1\1\2\0\22\1\1\11\1\0\1\1"+ + "\1\0\16\1\1\11\23\1"; private static int [] zzUnpackAttribute() { - int [] result = new int[197]; + int [] result = new int[203]; int offset = 0; offset = zzUnpackAttribute(ZZ_ATTRIBUTE_PACKED_0, offset, result); return result; @@ -793,327 +803,335 @@ class _JetLexer implements FlexLexer { case 3: { return JetTokens.IDENTIFIER; } - case 82: break; - case 60: - { return JetTokens.FOR_KEYWORD ; - } - case 83: break; - case 61: - { return JetTokens.OUT_KEYWORD ; - } case 84: break; - case 76: - { return JetTokens.RETURN_KEYWORD ; + case 62: + { return JetTokens.FOR_KEYWORD ; } case 85: break; case 63: - { return JetTokens.NULL_KEYWORD ; + { return JetTokens.OUT_KEYWORD ; } case 86: break; + case 78: + { return JetTokens.RETURN_KEYWORD ; + } + case 87: break; + case 65: + { return JetTokens.NULL_KEYWORD ; + } + case 88: break; case 20: { return JetTokens.LT ; } - case 87: break; - case 41: + case 89: break; + case 42: { return JetTokens.DO_KEYWORD ; } - case 88: break; + case 90: break; case 17: { return JetTokens.PLUS ; } - case 89: break; - case 54: + case 91: break; + case 27: + { return JetTokens.LONG_LITERAL; + } + case 92: break; + case 56: { return JetTokens.RAW_STRING_LITERAL; } - case 90: break; - case 43: + case 93: break; + case 44: { return JetTokens.PLUSEQ ; } - case 91: break; + case 94: break; case 26: { return JetTokens.COMMA ; } - case 92: break; - case 68: + case 95: break; + case 70: { return JetTokens.MATCH_KEYWORD ; } - case 93: break; + case 96: break; case 21: { return JetTokens.GT ; } - case 94: break; + case 97: break; case 4: { return JetTokens.WHITE_SPACE; } - case 95: break; - case 75: + case 98: break; + case 77: { return JetTokens.TYPEOF_KEYWORD ; } - case 96: break; + case 99: break; case 16: { return JetTokens.RPAR ; } - case 97: break; - case 67: + case 100: break; + case 69: { return JetTokens.TRUE_KEYWORD ; } - case 98: break; - case 49: + case 101: break; + case 50: { return JetTokens.ANDAND ; } - case 99: break; - case 53: + case 102: break; + case 55: { return JetTokens.DOC_COMMENT; } - case 100: break; - case 27: + case 103: break; + case 28: { return JetTokens.FLOAT_LITERAL; } - case 101: break; - case 28: + case 104: break; + case 29: { return JetTokens.EOL_COMMENT; } - case 102: break; + case 105: break; case 24: { return JetTokens.COLON ; } - case 103: break; - case 46: + case 106: break; + case 47: { return JetTokens.LTEQ ; } - case 104: break; + case 107: break; case 11: { return JetTokens.LBRACKET ; } - case 105: break; + case 108: break; + case 54: + { yypushback(2); return JetTokens.INTEGER_LITERAL; + } + case 109: break; case 9: { return JetTokens.CHARACTER_LITERAL; } - case 106: break; - case 57: + case 110: break; + case 59: { return JetTokens.VAR_KEYWORD ; } - case 107: break; - case 47: + case 111: break; + case 48: { return JetTokens.GTEQ ; } - case 108: break; + case 112: break; case 2: { return JetTokens.INTEGER_LITERAL; } - case 109: break; + case 113: break; case 14: { return JetTokens.RBRACE ; } - case 110: break; - case 69: + case 114: break; + case 71: { return JetTokens.CLASS_KEYWORD ; } - case 111: break; + case 115: break; case 18: { return JetTokens.EXCL ; } - case 112: break; - case 44: + case 116: break; + case 45: { return JetTokens.EXCLEQ ; } - case 113: break; - case 36: + case 117: break; + case 37: { return JetTokens.MINUSEQ ; } - case 114: break; - case 70: + case 118: break; + case 72: { return JetTokens.THROW_KEYWORD ; } - case 115: break; - case 73: + case 119: break; + case 75: { return JetTokens.WHILE_KEYWORD ; } - case 116: break; - case 35: + case 120: break; + case 36: { return JetTokens.MINUSMINUS; } - case 117: break; - case 78: + case 121: break; + case 80: { return JetTokens.CONTINUE_KEYWORD ; } - case 118: break; + case 122: break; case 5: { return JetTokens.DIV ; } - case 119: break; - case 52: + case 123: break; + case 53: { return JetTokens.ELVIS ; } - case 120: break; + case 124: break; case 23: { return JetTokens.QUEST ; } - case 121: break; - case 50: + case 125: break; + case 51: { return JetTokens.OROR ; } - case 122: break; + case 126: break; case 19: { return JetTokens.PERC ; } - case 123: break; - case 45: + case 127: break; + case 46: { return JetTokens.PERCEQ ; } - case 124: break; - case 33: + case 128: break; + case 34: { return JetTokens.RANGE ; } - case 125: break; + case 129: break; case 1: { return TokenType.BAD_CHARACTER; } - case 126: break; - case 51: + case 130: break; + case 52: { return JetTokens.SAFE_ACCESS; } - case 127: break; - case 79: + case 131: break; + case 81: { return JetTokens.NAMESPACE_KEYWORD ; } - case 128: break; - case 81: + case 132: break; + case 83: { return JetTokens.DECOMPOSER_KEYWORD ; } - case 129: break; + case 133: break; case 6: { return JetTokens.MUL ; } - case 130: break; + case 134: break; case 12: { return JetTokens.RBRACKET ; } - case 131: break; - case 42: + case 135: break; + case 43: { return JetTokens.PLUSPLUS ; } - case 132: break; - case 66: + case 136: break; + case 68: { return JetTokens.THIS_KEYWORD ; } - case 133: break; + case 137: break; case 7: { return JetTokens.DOT ; } - case 134: break; + case 138: break; case 25: { return JetTokens.SEMICOLON ; } - case 135: break; - case 40: + case 139: break; + case 41: { return JetTokens.IF_KEYWORD ; } - case 136: break; + case 140: break; case 22: { return JetTokens.EQ ; } - case 137: break; + case 141: break; case 15: { return JetTokens.LPAR ; } - case 138: break; + case 142: break; case 8: { return JetTokens.MINUS ; } - case 139: break; - case 72: + case 143: break; + case 74: { return JetTokens.FALSE_KEYWORD ; } - case 140: break; - case 65: + case 144: break; + case 67: { return JetTokens.TYPE_KEYWORD ; } - case 141: break; - case 58: + case 145: break; + case 60: { return JetTokens.REF_KEYWORD ; } - case 142: break; - case 59: + case 146: break; + case 61: { return JetTokens.FUN_KEYWORD ; } - case 143: break; - case 39: + case 147: break; + case 40: { return JetTokens.IS_KEYWORD ; } - case 144: break; - case 30: + case 148: break; + case 31: { return JetTokens.DIVEQ ; } - case 145: break; - case 80: + case 149: break; + case 82: { return JetTokens.EXTENSION_KEYWORD ; } - case 146: break; - case 37: + case 150: break; + case 38: { return JetTokens.AS_KEYWORD ; } - case 147: break; - case 64: + case 151: break; + case 66: { return JetTokens.ELSE_KEYWORD ; } - case 148: break; - case 38: + case 152: break; + case 39: { return JetTokens.IN_KEYWORD ; } - case 149: break; - case 48: + case 153: break; + case 49: { return JetTokens.EQEQ ; } - case 150: break; - case 56: + case 154: break; + case 58: { return JetTokens.VAL_KEYWORD ; } - case 151: break; - case 62: + case 155: break; + case 64: { return JetTokens.EQEQEQ ; } - case 152: break; - case 55: + case 156: break; + case 57: { return JetTokens.NEW_KEYWORD ; } - case 153: break; - case 31: + case 157: break; + case 32: { return JetTokens.MULTEQ ; } - case 154: break; + case 158: break; case 10: { return JetTokens.STRING_LITERAL; } - case 155: break; + case 159: break; case 13: { return JetTokens.LBRACE ; } - case 156: break; - case 71: + case 160: break; + case 73: { return JetTokens.ISNOT_KEYWORD ; } - case 157: break; - case 77: + case 161: break; + case 79: { return JetTokens.OBJECT_KEYWORD ; } - case 158: break; - case 74: + case 162: break; + case 76: { return JetTokens.BREAK_KEYWORD ; } - case 159: break; - case 29: + case 163: break; + case 30: { return JetTokens.BLOCK_COMMENT; } - case 160: break; - case 34: + case 164: break; + case 35: { return JetTokens.FILTER ; } - case 161: break; - case 32: + case 165: break; + case 33: { return JetTokens.MAP ; } - case 162: break; + case 166: break; default: if (zzInput == YYEOF && zzStartRead == zzCurrentPos) { zzAtEOF = true;